Skip to main content

MkDocs i18n plugin using static translation markdown files

Project description

MkDocs static i18n plugin

mkdocs-static-i18n pypi version

An MkDocs plugin that helps you support multiple language versions of your site / documentation.

The mkdocs-static-i18n plugin allows you to support multiple languages of your documentation by adding static translation files to your existing documentation pages.

Multi language support is just one .<language>.md file away!

If you want to see how it looks, check out the demo documentation here.

Language detection logic

This plugin is made to be as simple as possible and will generate a default version of your website + one per configured language on the <language>/ path.

  • the default version will use any .md documentation file first and fallback to any .<default_language>.md file found
  • the /<language> language versions will use any .<language>.md documentation file first and fallback to any .<default_language>.md file before fallbacking to any default .md file found

Since demonstrations are better than words, check out the demo documentation here which showcases the logic.

Installation

Just pip install mkdocs-static-i18n!

Configuration

All the parameters are mandatory:

  • default_language: string
  • languages: mapping of language name: display value
plugins:
  - i18n:
      default_language: en
      languages:
        en: english
        fr: français

Example output

Using the configuration above on the following docs/ structure will build the following site/ (leaving out static files for readability):

docs
├── index.fr.md
├── index.md
├── topic1
│   ├── index.en.md
│   └── index.fr.md
└── topic2
    ├── index.en.md
    └── index.md
site
├── en
│   ├── index.html
│   ├── topic1
│   │   └── index.html
│   └── topic2
│       └── index.html
├── fr
│   ├── index.html
│   ├── topic1
│   │   └── index.html
│   └── topic2
│       └── index.html
├── index.html
├── topic1
│   └── index.html
└── topic2
    └── index.html

Compatibility with other plugins

This plugin is compatible with the following mkdocs plugins:

  • MkDocs Material: the search plugin text will be switched automatically to the right language depending on the version you're browsing
  • MkDocs Awesome Pages Plugin: the page ordering is preserved on the language specific versions of your site

TODO

Contributions welcome!

Feel free to ask questions, enhancements and to contribute to this project!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mkdocs-static-i18n-0.4.tar.gz (5.6 kB view details)

Uploaded Source

File details

Details for the file mkdocs-static-i18n-0.4.tar.gz.

File metadata

  • Download URL: mkdocs-static-i18n-0.4.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.1.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.7

File hashes

Hashes for mkdocs-static-i18n-0.4.tar.gz
Algorithm Hash digest
SHA256 fcdb82c61e9bacd941709d42701a74c6c4686f861226bb93fd0697ea28bc03db
MD5 27c941559bfcca7c1d5a447074fe9ff8
BLAKE2b-256 2ac66487627764784e544b2efb2db851042733247516df63ea36d3faba2e7f79

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page