Recetas útiles¶
Hooks PO para pre-commit¶
Puedes usar pre-commit-po-hooks para comprobar por mensajes no traducidos, obsoletos o confusos (marcados como , fuzzy
) antes de cada commit.
- repo: https://github.com/mondeja/pre-commit-po-hooks
rev: v1.7.3
hooks:
- id: obsolete-messages
- id: untranslated-messages
- id: fuzzy-messages
untranslated-messages....................................................Failed
- hook id: untranslated-messages
- exit code: 1
Untranslated message at docs/locale/es/index.md.po:46
obsolete-messages........................................................Passed
fuzzy-messages...........................................................Failed
- hook id: fuzzy-messages
- exit code: 1
Found fuzzy message at docs/locale/es/index.md.po:48
mdpo¶
mdpo es el núcleo de mkdocs-mdpo-plugin. El paquete contiene un conjunto de programas para traducir archivos Markdown usando archivos PO, así que puedes usarlos directamente como una interfaz de línea de comandos o mediante sus hooks pre-commit.
Traducción simple de archivo README con pre-commit¶
md2po2md README.md -l es fr -o locale/{lang}
- repo: https://github.com/mondeja/mdpo
rev: v0.3.85
hooks:
- id: md2po2md
files: ^README\.md
args: ['-l', 'es', 'fr', '-o', 'locale/{lang}']
📁 locale
├── 📁 es
│ ├── 📄 README.md
│ └── 📄 README.md.po
└── 📁 fr
├── 📄 README.md
└── 📄 README.md.po
📄 README.md <-- único archivo existente antes de la ejecución
Selector de idioma de mkdocs-material relativo¶
Si estás usando el tema de mkdocs-material, puedes instalar el plugin mkdocs-material-relative-language-selector
para hacer relativos los links entre idiomas dentro de la misma página y eliminar el idioma actualmente desplegado del selector de idiomas:
pip install mkdocs-material-relative-language-selector
plugins:
- search
- material-relative-language-selector
- mdpo
plugins:
- search
- material-relative-language-selector:
root_domain: true
- mdpo