Skip to content

mondeja/mkdocs-mdpo-plugin

Repository files navigation

mkdocs-mdpo-plugin

PyPI version Downloads Test Documentation Cloudflare DNS

Translations for Mkdocs using PO files, fully customizable. Compatible with mkdocs-material, based on mdpo.

Documentation: en - es

Install

pip install mkdocs-mdpo-plugin

Usage

Enable the plugin in your mkdocs.yml:

plugins:
  - mdpo

Minimal configuration

theme:
  name: material
  language: en

extra:
  alternate:
    - name: English
      lang: en
    - name: Español
      link: es
      lang: es

plugins:
  - mdpo

Standalone

plugins:
  - mdpo:
      languages:
        - en     # first language is the original
        - es

Both previous configurations will create the same layout of files building the documentation. Given the next layout in a docs/ directory:

📁 docs
└── 📄 index.md

After the build, you will get:

📁 docs
├── 📁 es
│   └── 📄 index.md.po
└── 📄 index.md

Just translate the strings in docs/es/index.md.po into Spanish, build again with mkdocs build and the site/ directory will look like:

📁 site
├── 📄 404.html
├── 📁 assets
│   ├── 📁 images
│   ├── 📁 javascripts
│   └── 📁 stylesheets
├── 📁 es
│   └── 📄 index.html
├── 📄 index.html
├── 📄 sitemap.xml
└── 📄 sitemap.xml.gz

Simple and easy. The extraction of messages process and the produced layout are fully customizable, you can even translate code blocks! Check the full documentation here.