sphinx-intl(1)
| SPHINX-INTL(1) | sphinx-intl | SPHINX-INTL(1) |
NAME
sphinx-intl - sphinx-intl 2.3.2
sphinx-intl is a utility tool that provides several features that make it easy to translate and to apply translation to Sphinx generated document. Optional: support the Transifex service for translation with Sphinx . Read the Docs (master)PyPI[image: PyPI - Python Version] [image] LicenseGitHub Actions CI statusGitHub stars.SH DOCUMENTATION
- •
- http://sphinx-intl.rtfd.io/
LICENSE
Licensed under the BSD license.
CONTENTS
Quick Start
Installation
Please install sphinx-intl using pip (8.1.1 or later).
$ pip install sphinx-intl
QuickStart for sphinx translation
This section describe how to translate with Sphinx and sphinx-intl command.
- 1.
- Create your document by using Sphinx.
- •
- working-example project is here: https://github.com/sphinx-doc/sphinx-intl/tree/master/doc
- 2.
- Add configurations to your conf.py:
locale_dirs = ['locale/'] # path is example but recommended. gettext_compact = False # optional.
locale_dirs is required and gettext_compact is optional.
refs example.
- 3.
- Extract document's translatable messages into pot files:
$ make gettext
This invokes the sphinx gettext builder that generates *.pot files under _build/gettext directory.
- 4.
- Setup/Update your po files under locale_dir:
$ sphinx-intl update -p _build/gettext -l de -l ja
After this, you get these directories that contain po files:
- ./locale/de/LC_MESSAGES/
- ./locale/ja/LC_MESSAGES/
- 5.
- Translate your po files under ./locale/<lang>/LC_MESSAGES/.
- 6.
- Make translated document.
On Linux/BSD:
$ make -e SPHINXOPTS="-Dlanguage='ja'" html
On Windows:
$ set SPHINXOPTS=-Dlanguage=ja $ make html
That's all!
For more information, please refer to References.
QuickStart console log
(.venv) C:/sphinx-intl/doc> pip install -r requirements.txt sphinx-intl ... (.venv) C:/sphinx-intl/doc> tree /f C:.
authors.rst
basic.rst
changes.rst
conf.py
dev.rst
index.rst
make.bat
Makefile
quickstart.rst
refs.rst
requirements.txt (.venv) C:/sphinx-intl/doc> make gettext Running Sphinx v2.0.1 making output directory... done building [gettext]: targets for 0 template files building [gettext]: targets for 7 source files that are out of date updating environment: 7 added, 0 changed, 0 removed reading sources... [100%] refs looking for now-outdated files... none found pickling environment... done checking consistency... done preparing documents... done writing output... [100%] refs writing message catalogs... [100%] refs build succeeded. The message catalogs are in _build/gettext. (.venv) C:/sphinx-intl/doc> tree /f C:. │ authors.rst │ basic.rst │ changes.rst │ conf.py │ dev.rst │ index.rst │ make.bat │ Makefile │ quickstart.rst │ refs.rst │ requirements.txt │ └─_build
└─gettext
│ authors.pot
│ basic.pot
│ changes.pot
│ dev.pot
│ index.pot
│ quickstart.pot
│ refs.pot
│
└─.doctrees (.venv) C:/sphinx-intl/doc> sphinx-intl update -p _build/gettext -l de -l ja Create: locale/de/LC_MESSAGES/authors.po Create: locale/ja/LC_MESSAGES/authors.po Create: locale/de/LC_MESSAGES/basic.po Create: locale/ja/LC_MESSAGES/basic.po Create: locale/de/LC_MESSAGES/changes.po Create: locale/ja/LC_MESSAGES/changes.po Create: locale/de/LC_MESSAGES/dev.po Create: locale/ja/LC_MESSAGES/dev.po Create: locale/de/LC_MESSAGES/index.po Create: locale/ja/LC_MESSAGES/index.po Create: locale/de/LC_MESSAGES/quickstart.po Create: locale/ja/LC_MESSAGES/quickstart.po Create: locale/de/LC_MESSAGES/refs.po Create: locale/ja/LC_MESSAGES/refs.po (.venv) C:/sphinx-intl/doc> tree /f C:. │ authors.rst │ basic.rst │ changes.rst │ conf.py │ dev.rst │ index.rst │ make.bat │ Makefile │ quickstart.rst │ refs.rst │ requirements.txt │ ├─locale │ ├─de │ │ └─LC_MESSAGES │ │ authors.po │ │ basic.po │ │ changes.po │ │ dev.po │ │ index.po │ │ quickstart.po │ │ refs.po │ │ │ └─ja │ └─LC_MESSAGES │ authors.po │ basic.po │ changes.po │ dev.po │ index.po │ quickstart.po │ refs.po │ └─_build
└─gettext
│ authors.pot
│ basic.pot
│ changes.pot
│ dev.pot
│ index.pot
│ quickstart.pot
│ refs.pot
│
└─.doctrees (.venv) C:/sphinx-intl/doc> # ================================ (.venv) C:/sphinx-intl/doc> # Edit po files for each languages (.venv) C:/sphinx-intl/doc> # ================================ (.venv) C:/sphinx-intl/doc> set SPHINXOPTS=-Dlanguage=ja (.venv) C:/sphinx-intl/doc> make html Running Sphinx v2.0.1 loading translations [ja]... done making output directory... done building [mo]: targets for 7 po files that are out of date writing output... [100%] locale/ja/LC_MESSAGES/refs.mo building [html]: targets for 7 source files that are out of date updating environment: 7 added, 0 changed, 0 removed reading sources... [100%] refs looking for now-outdated files... none found pickling environment... done checking consistency... done preparing documents... done writing output... [100%] refs generating indices... genindex writing additional pages... searchc:/project/sphinx-dev/sphinx-intl/.venv/lib/site-packages/sphinx_rtd_theme/search.html:20: RemovedInSphinx30Warning: To modify script_fil es in the theme is deprecated. Please insert a <script> tag directly in your theme instead.
{{ super() }} copying static files... done copying extra files... done dumping search index in Japanese (code: ja) ... done dumping object inventory... done build succeeded. The HTML pages are in _build/html. (.venv) C:/sphinx-intl/doc> tree /f C:. │ authors.rst │ basic.rst │ changes.rst │ conf.py │ dev.rst │ index.rst │ make.bat │ Makefile │ quickstart.rst │ refs.rst │ requirements.txt │ ├─locale │ ├─de │ │ └─LC_MESSAGES │ │ authors.po │ │ basic.po │ │ changes.po │ │ dev.po │ │ index.po │ │ quickstart.po │ │ refs.po │ │ │ └─ja │ └─LC_MESSAGES │ authors.po │ basic.po │ changes.po │ dev.po │ index.po │ quickstart.po │ refs.po │ └─_build
├─doctrees
│
├─gettext
│ │ authors.pot
│ │ basic.pot
│ │ changes.pot
│ │ dev.pot
│ │ index.pot
│ │ quickstart.pot
│ │ refs.pot
│ │
│ └─.doctrees
│
└─html
│ .buildinfo
│ authors.html
│ basic.html
│ changes.html
│ dev.html
│ genindex.html
│ index.html
│ objects.inv
│ quickstart.html
│ refs.html
│ search.html
│ searchindex.js
│
├─_sources
└─_static
Basic
- Basic Features
- Optional features
- Installation
Basic Features
- create or update po files from pot files.
- build mo files from po files.
Optional features
These features depends on the Transifex Client tool. Please refer Installation section to install it.
- create .transifexrc file from environment variable, without interactive input.
- create .tx/config file without interactive input.
- update .tx/config file from locale/pot files automatically.
- build mo files from po files in the locale directory.
You need to use tx command for below features:
- tx push -s : push pot (translation catalogs) to transifex.
- tx pull -l ja : pull po (translated catalogs) from transifex.
Installation
It is strongly recommended to use virtualenv/venv for this procedure:
$ pip install sphinx-intl
If you want to use Optional Features, you need install Transifex CLI tool. Please refer to Installation instructions.
References
- •
- Commands
- •
- sphinx-intl
- build
- create-transifexrc
- create-txconfig
- stat
- update
- update-txconfig-resources
- Environment Variables
- Sphinx conf.py
- Makefile / make.bat
Commands
Type sphinx-intl without arguments, options to show command help.
sphinx-intl
sphinx-intl [OPTIONS] COMMAND [ARGS]...
Options
- -c, --config <FILE>
- Sphinx conf.py file to read a locale directory setting.
- -t, --tag <TAG>
- Pass tags to conf.py, as same as passed to sphinx-build -t option.
Environment variables
- SPHINXINTL_TAG
build
Build specified language's po files into mo.
sphinx-intl build [OPTIONS]
Options
- -d, --locale-dir <DIR>
- locale directories that allow comma separated string. This option override locale_dir in conf.py setting if provided. Default is empty list.
- Default
- 'locales'
- -o, --output-dir <DIR>
- mo files directory where files are written. Default is to match the '--locale-dir' path.
- -l, --language <LANG>
- Target language to update po files. Default is ALL.
Environment variables
- SPHINXINTL_LOCALE_DIR
- SPHINXINTL_OUTPUT_DIR
- SPHINXINTL_LANGUAGE
create-transifexrc
Create $HOME/.transifexrc (deprecated)
sphinx-intl create-transifexrc [OPTIONS]
Options
- --transifex-token <TOKEN>
- Required Your transifex token. (DEPRECATED)
Environment variables
- SPHINXINTL_TRANSIFEX_TOKEN
create-txconfig
Create ./.tx/config
sphinx-intl create-txconfig [OPTIONS]
stat
Print statistics for all po files.
sphinx-intl stat [OPTIONS]
Options
- -d, --locale-dir <DIR>
- locale directories that allow comma separated string. This option override locale_dir in conf.py setting if provided. Default is empty list.
- Default
- 'locales'
- -l, --language <LANG>
- Target language to update po files. Default is ALL.
Environment variables
- SPHINXINTL_LOCALE_DIR
- SPHINXINTL_LANGUAGE
update
Update specified language's po files from pot.
For examples:
sphinx-intl update -l de -l ja sphinx-intl update -l de,ja
sphinx-intl update [OPTIONS]
Options
- -d, --locale-dir <DIR>
- locale directories that allow comma separated string. This option override locale_dir in conf.py setting if provided. Default is empty list.
- Default
- 'locales'
- -p, --pot-dir <DIR>
- pot files directory which is generated by sphinx. Default is 'pot' directory under '--locale-dir' path.
- -l, --language <LANG>
- Target language to update po files. Default is ALL.
- -w, --line-width <WIDTH>
- The maximum line width for the po files, 0 or a negative number disable line wrapping
- Default
- 76
- --no-obsolete
- Remove obsolete #~ messages.
- -j, --jobs <JOBS>
- The number of CPUs to use for updates. 0 means all
- Default
- 0
Environment variables
- SPHINXINTL_LOCALE_DIR
- SPHINXINTL_POT_DIR
- SPHINXINTL_LANGUAGE
- SPHINXINTL_LINE_WIDTH
- SPHINXINTL_NO_OBSOLETE
- SPHINXINTL_JOBS
update-txconfig-resources
Update resource sections of ./.tx/config.
sphinx-intl update-txconfig-resources [OPTIONS]
Options
- --transifex-organization-name <ORGANIZATION-NAME>
- Required Your transifex organization name.
- --transifex-project-name <PROJECT-NAME>
- Required Your transifex project name.
- -d, --locale-dir <DIR>
- locale directories that allow comma separated string. This option override locale_dir in conf.py setting if provided. Default is empty list.
- Default
- 'locales'
- -p, --pot-dir <DIR>
- pot files directory which is generated by sphinx. Default is 'pot' directory under '--locale-dir' path.
Environment variables
- SPHINXINTL_TRANSIFEX_ORGANIZATION_NAME
- SPHINXINTL_TRANSIFEX_PROJECT_NAME
- SPHINXINTL_LOCALE_DIR
- SPHINXINTL_POT_DIR
Environment Variables
All command-line options can be set with environment variables using the format SPHINXINTL_<UPPER_LONG_NAME>. Dashes (-) have to be replaced with underscores (_).
For example, to set the languages:
export SPHINXINTL_LANGUAGE=de,ja
This is the same as passing the option to sphinx-intl directly:
sphinx-intl <command> --language=de --language=ja
Sphinx conf.py
Add below settings to sphinx document's conf.py if they do not exists:
locale_dirs = ['locale/'] #for example gettext_compact = False #optional
Makefile / make.bat
make gettext will generate pot files into _build/gettext directory, however it is much convenient if pot files are generated into the locale/pot directory. You can achieve this by replacing _build/gettext with locale/pot in your Makefile and/or make.bat that was generated by sphinx-quickstart.
Development
Code of Conduct
By contributing you agree to abide by the Contributor Code of Conduct.
Contribution Guideline
Report Issue
To Be Written
- •
- https://github.com/sphinx-doc/sphinx-intl/issues
Pull Request
To Be Written
- •
- https://github.com/sphinx-doc/sphinx-intl/pulls
Setup development environment
- Requires supported Python version
- Do setup under sphinx-intl.git repository root as:
$ pip install -U uv $ uv sync
- •
- Install Transifex CLI tool (refer to Installation instructions):
$ curl -o- https://raw.githubusercontent.com/transifex/cli/master/install.sh | bash
Testing
Tests with supported python version that are in:
- tox.ini
- .github/workflow/ci.yml
Run test
Just run tox:
$ tox
tox have several sections for testing.
CI (Continuous Integration)
All tests will be run on GitHub Actions.
- •
- https://github.com/sphinx-doc/sphinx-intl/tree/master/.github/workflows/
Releasing
New package version
The sphinx-intl package will be uploaded to PyPI: https://pypi.org/project/sphinx-intl/.
Here is a release procedure:
Procedure:
- 1.
- update release version/date in CHANGES.rst
- 2.
- create GitHub Release with new version tag, it will create a release on PyPI. tag MUST following semver. e.g.: 2.3.1
- 3.
- check PyPI page: https://pypi.org/p/sphinx-intl
- 4.
- prepareing for the next release: bump version in CHANGES.rst then commit/push it onto GitHub
Updated documentation
Sphinx documentation under doc/ directory on the master branch will be automatically uploaded into ReadTheDocs: http://sphinx-intl.rtfd.io/.
AUTHORS
- Takayuki Shimizukawa <https://github.com/shimizukawa>
- Takeshi Komiya <https://github.com/tk0miya>
Original
This utility derived from these projects.
- https://bitbucket.org/tk0miya/sphinx-gettext-helper
- https://bitbucket.org/shimizukawa/sphinx-transifex
CHANGES
2.3.2 (2025/08/02)
Environments
- add python-3.14 support by @rffontenelle in https://github.com/sphinx-doc/sphinx-intl/pull/115
- Release to PyPI with digital attestations (PEP-740) by @shimizukawa in https://github.com/sphinx-doc/sphinx-intl/pull/125
Incompatibility
Features
Bug Fixes
- •
- #116: Update doesn't respect default value of locale_dirs from -c passed conf.py by @shimizukawa in https://github.com/sphinx-doc/sphinx-intl/pull/122
Documentation
Internals
- FIX: set exist_ok=True in os.makedirs() by @Dengda98 in https://github.com/sphinx-doc/sphinx-intl/pull/120
- using uv for dev setup, build, publish by @shimizukawa in https://github.com/sphinx-doc/sphinx-intl/pull/114
- Bump astral-sh/setup-uv from 3 to 6 in the all-github-actions group by @dependabot[bot] in https://github.com/sphinx-doc/sphinx-intl/pull/124
2.3.1 (2024/12/01)
Environments
- •
- Add missing files under sphinx-intl/tests/ for sdist by @shimizukawa in https://github.com/sphinx-doc/sphinx-intl/pull/113
Incompatibility
Features
Bug Fixes
Documentation
Internals
2.3.0 (2024/11/10)
Environments
- Drop python-3.7 support by @kloczek in https://github.com/sphinx-doc/sphinx-intl/pull/101
- Drop Python-3.8 support by @shimizukawa in https://github.com/sphinx-doc/sphinx-intl/pull/111
- Avoid unrelated CI test for doc changes, and cache using setup-python action by @rffontenelle in https://github.com/sphinx-doc/sphinx-intl/pull/106
Incompatibility
Features
- •
- Perform update in parallel by @rtobar in https://github.com/sphinx-doc/sphinx-intl/pull/110
Bug Fixes
Documentation
Internals
- Modernize release procedures by @shimizukawa in https://github.com/sphinx-doc/sphinx-intl/pull/102
- Modernize formatter: use ruff instead of flake8 by @shimizukawa in https://github.com/sphinx-doc/sphinx-intl/pull/103
- add devcontainer and related dependabot config by @shimizukawa in https://github.com/sphinx-doc/sphinx-intl/pull/104
- Add CI test for sphinx-intl's doc by @rffontenelle in https://github.com/sphinx-doc/sphinx-intl/pull/107
- fix for lint by @shimizukawa in https://github.com/sphinx-doc/sphinx-intl/pull/108
2.2.0 (2024/04/20)
Environments
- •
- Support for Python 3.13. Update version in workflow actions and enable 3.13 by @rffontenelle in https://github.com/sphinx-doc/sphinx-intl/pull/97
Incompatibility
Features
- Set resource_name in .tx/config files to preserve resource naming behavior prior to 2.1.0 by @jpmckinney in https://github.com/sphinx-doc/sphinx-intl/pull/90
- Support no obsolete option by @jdknight in https://github.com/sphinx-doc/sphinx-intl/pull/65
Bug Fixes
- Correctly format hyperlink by @DelazJ in https://github.com/sphinx-doc/sphinx-intl/pull/82
- Fixed errors in the ~/.transifexrc file generated by the create-transifexrc command by @shimizukawa in https://github.com/sphinx-doc/sphinx-intl/pull/83 Note: create-transifexrc command and SPHINXINTL_TRANSIFEX_TOKEN have been deprecated. They will be removed after six months. Please use the TX_TOKEN environment variable instead.
Documentation
- •
- refs #93 documentation for sphinx-intl comman-line options by @shimizukawa in https://github.com/sphinx-doc/sphinx-intl/pull/94
Internals
- drop six usage by @jdknight in https://github.com/sphinx-doc/sphinx-intl/pull/87
- Add pyproject.toml, remove setup.py by @rffontenelle in https://github.com/sphinx-doc/sphinx-intl/pull/86
- Drop six from pyproject.toml by @rffontenelle in https://github.com/sphinx-doc/sphinx-intl/pull/92
- add readthedocs conf by @shimizukawa in https://github.com/sphinx-doc/sphinx-intl/pull/95
- test: Update expectations for tx > 1.6.7 by @jpmckinney in https://github.com/sphinx-doc/sphinx-intl/pull/96
- Cache using hash from pyproject.toml instead of setup.py by @rffontenelle in https://github.com/sphinx-doc/sphinx-intl/pull/99
2.1.0 (2023/02/05)
Environments
- #71: Drop Python 3.5 support. Thanks to @rffontenelle.
- #81: Drop Python 3.6 support.
- #72 and #77: Support for Python 3.11 and Python 3.12. Thanks to @rffontenelle.
Incompatibility
Features
- •
- #62: Migrate from transifex-client to transifex cli. Thanks to @TheTripleV.
Documentation
- •
- #74 Update documentation. Thanks to @rffontenelle. - Update CI status badge in README and doc/index.rst, as CI changed from Travis to GitHub Actions. - Replace info regarding old Python transifex-client library with the new implementation of Transifex CLI tool.
Bug Fixes
- #53: Set locale of created po files. Thanks to @igo95862.
- #55: FileNotFoundError on update-txconfig-resources in the subdirectory. Thanks to @tkoyama010.
2.0.1 (2020/04/11)
Environments
Incompatibility
Features
Documentation
Bug Fixes
- •
- #38: transifex: Sort dirs and files alphabetically
2.0.0 (2019/06/01)
Environments
- •
- #31 Drop supporting Python-2.7
Incompatibility
Features
Documentation
Bug Fixes
1.0.0 (2019/05/12)
Environments
- •
- Adopt to semver
Incompatibility
Features
Documentation
- #6: http://sphinx-intl.rtfd.io/
- #23: Add working example for generating pot/po files
Bug Fixes
0.9.12 (2019/05/12)
Environments
- Drop supporting Python-3.4
- Add supporting Python-3.7.
#25: Python-3.7 introduce __dir__ module function by PEP 562, so the attribute must not override for another purpose. Thanks to Julien Enselme.
Incompatibility
- •
- #27: settings resource name will be renamed to settings_ on Transifex. Thanks to Anthony.
Features
- •
- #28,#29: Add option '-w', '--line-width' for the maximum line width of PO files. Thanks to Armand Ciejak.
Documentation
- •
- #22: `_build/locale (for old sphinx) -> _build/gettext (for current sphinx)
Bug Fixes
0.9.11 (2018/02/12)
Environments
- •
- Support transifex-client~=0.13
Incompatibility
Features
- •
- #17,#18: Adding --tag -t option, to pass tags from arguments to conf.py.
- to
- Claudio Alarcon-Reyes.
Documentation
Bug Fixes
0.9.10 (2017/09/13)
Environments
- Drop supporting Python-3.3 and 2.6
- Add supporting Python-3.6
Bug Fixes
- Unit tests overwrite real .transifexrc file in HOME directory.
- #7, #8: Added tags variable for conf.py. Thanks to Dongping Xie.
- #15: default value of locale_dirs must be ['locales'] instead of ['locale']. Thanks to cocoatomo.
0.9.9 (2016/01/17)
Bug Fixes
- On Python-3 environment, 'update' command breaks po files.
- #4: 'fuzzy' cause crush on 'update' command.
0.9.8 (2015/12/28)
Environments
- Add supporting Python-3.5
- Drop supporting Python-2.5
- Use transifex-client>=0.11 for all environments
- Switch test runner to py.test
- BB#11 Switch to babel that is used with Sphinx.
Incompatibility
- •
- glossary resource name will be renamed to glossary_ on Transifex. Since Aug 2015, Transifex reject 'glossary' resource name because the slug is reserved.
Features
- •
- #2,#3: Add option to create MO files in a separate directory. Thanks to Campbell Barton.
Bug Fixes
- •
- #1: update_txconfig_resources command on Python 3.4/3.5 causes KeyError.
0.9.7 (2015/11/07)
Environments
- BB#8 Drop supporting Python-3.1 and 3.2
- BB#10 Depends to click for command-line feature.
0.9.6 (2015/09/22)
Features
- BB-PR#9: Support fuzzy translations. Thanks to Guilherme Brondani Torri.
- BB-PR#8: Detects pot_dir automatically if sphinx has generated. Thanks to Takeshi Komiya.
Bug Fixes
- BB-PR#6: update_txconfig_resources command raise errors with pot filename including symbols and spaces. Thanks to Takeshi Komiya.
- BB-PR#7: sphinx-intl could not find conf.py in projects separating build and source directories. Thanks to Takeshi Komiya.
- BB-PR#10: Add __file__ to conf.py's namespace.
- On Windows environment, now using "transifex<0.9" because "transifex>=0.9" requires unnecessary py2exe installation.
0.9.5 (2014/07/10)
Environments
- •
- Add supporting Python-3.4
Features
- •
- BB-PR#3: Skip building process if mo file is newer than po file. Thanks to Nozomu Kaneko.
Bug Fixes
- BB-PR#2, BB-PR#4: update-txconfig-resources disregarded --pot-dir option. Thanks to Giacomo Spettoli, Takeshi Komiya.
- BB-PR#5: update-txconfig-resources command raise errors when project name includes spaces and dots. Thanks to Takeshi Komiya.
0.9.4 (2013/12/10)
Environments
- •
- Now using setuptools instead of distribute.
Features
- •
- BB#3: update-txconfig-resources command now detect project-name from .tx/config that already exists.
Bug Fixes
- sphinx-intl didn't use SPHINXINTL_CONFIG environment value.
- tox test raises a error with transifex-client-0.10
0.9.3 (2013/04/20)
Bug Fixes
- •
- because --config option did not consider directory path, locale_dir did not contain directory path to conf.py file.
0.9.2 (2013/4/11)
Features
- Add stat command for displaying statistics like 'msgfmt --statistics'.
- Documentation and error messages are improved.
Bug Fixes
- •
- update command did not detect pot/po difference when translated count and untranslated count are not difference.
0.9.1 (2013/4/10)
Environments
- •
- Add flake8 test and fix some errors.
Incompatibility
- •
- Drop multiple locale directories feature. Now use only first directory of locale_dirs in conf.py.
Features
- Add --pot-dir option. default is pot directory under locale_dir. If you using Sphinx default settings, -p _build/locale is useful.
- Add append/deprecated msgid count information for update command.
Bug Fixes
- •
- Fix: -c option is not working. Thanks @tk0miya!
0.9.0 (2013/4/7)
- •
- First release that provides these commands:
- update
- build
- create-transifexrc
- create-txconfig
- update-txconfig-resources
AUTHOR
Sphinx team
COPYRIGHT
Sphinx team
| September 13, 2025 | 2.3.2 |
