odoo-i18n
Odoo i18n handles the full translation lifecycle for Odoo 14-19 modules: extracting translatable strings from Python, XML, and JavaScript into .pot templates and language-specific .po files, validating syntax and format specifiers, and managing RTL layouts for Arabic and other right-to-left languages. It includes tools for gap analysis, encoding checks, and deployment troubleshooting.
Odoo i18n extracts translatable strings from Odoo modules and generates .pot/.po files for multilingual deployments.
AI-generated summary based on this skill's SKILL.md
Install
ahmed-lakosha/odoo-plugins/odoo-i18n · repository language: Python
git clone https://github.com/ahmed-lakosha/odoo-plugins
cp -r odoo-plugins/odoo-i18n-plugin/odoo-i18n ~/.claude/skills/odoo-i18nnpx skillfed install ahmed-lakosha/odoo-plugins/odoo-i18nFrequently asked questions
AI-generated answers based on this skill's SKILL.md and metadata
How to extract translatable strings from odoo module?
Odoo i18n extracts translatable strings from your Odoo modules' Python, XML, and JavaScript files into .pot template files and language-specific .po files. The extraction process identifies all user-facing text marked for translation, organizing them by module and locale. You can then use these .pot/.po files to manage translations across Odoo 14-19 versions.
What does odoo i18n .po file validation check?
Odoo i18n validates .po translation files for syntax errors, encoding issues (UTF-8 compliance), format specifier mismatches, and structural integrity. The validation catches problems like malformed headers, missing plural forms, inconsistent variable placeholders, and fuzzy entries that could break translations in production. This prevents corrupted language packs from being deployed.
How can I find missing translations in Odoo modules?
Odoo i18n performs gap analysis to identify incomplete or missing translations in your modules. It compares extracted strings against existing .po files to highlight untranslated entries, fuzzy translations, and coverage gaps by language. This helps you prioritize translation work and ensure consistent multilingual deployment across Odoo 14-19.
How does odoo i18n configure Arabic and RTL language support?
Odoo i18n manages right-to-left (RTL) layout configuration for Arabic and other RTL languages, including Bootstrap RTL CSS integration for Odoo themes. It handles encoding validation, text direction settings, and theme adjustments needed for proper Arabic display. The tool also troubleshoots mojibake and character rendering issues in RTL contexts.
How do I export and import translations via Odoo CLI?
Odoo i18n facilitates translation export/import workflows using Odoo CLI commands and language pack management. You can export .po files from modules, import translated files back into your Odoo database, and manage language activation. This streamlines multilingual Odoo 14-19 deployments and handles encoding/format issues during transfer.
Why is my translation not showing after update in Odoo?
Odoo i18n troubleshoots deployment issues where translations fail to appear post-update. Common causes include encoding mismatches, format specifier errors in .po files, fuzzy entries blocking activation, or language pack loading failures. The tool validates your translation files and identifies which issues prevent strings from displaying in your Odoo interface.
SKILL.md
rendered from the published skill — quoted content, verbatim
name: odoo-i18n description: | Comprehensive Odoo i18n toolkit for extracting translatable strings, validating .po files, generating translation reports, managing Arabic/RTL layouts, and handling multilingual deployments across Odoo 14-19.
<example> Context: User wants to extract translatable strings user: "Extract all translatable strings from my Odoo 17 module to a .pot file" assistant: "I will use the odoo-i18n skill to scan Python _() calls, XML translate attributes, and field strings, then generate a properly structured .pot template file." <commentary>Core trigger - translation extraction workflow.</commentary> </example>
<example> Context: User wants Arabic translation user: "Generate an Arabic .po file for my Odoo module" assistant: "I will use the odoo-i18n skill to create an ar.po file with RTL-aware formatting and placeholder translations for all extractable strings." <commentary>Language-specific trigger - Arabic/RTL translation generation.</commentary> </example>
<example> Context: User wants to validate a translation file user: "Validate my Arabic .po file for errors" assistant: "I will use the odoo-i18n skill to check
(truncated - see the full file via the links below)
Read as markdown · JSON record · Browse the source repository
File tree — 7 files
odoo-i18n-plugin/odoo-i18n/SKILL.md
odoo-i18n-plugin/odoo-i18n/scripts/__init__.py
odoo-i18n-plugin/odoo-i18n/scripts/_common.py
odoo-i18n-plugin/odoo-i18n/scripts/i18n_converter.py
odoo-i18n-plugin/odoo-i18n/scripts/i18n_extractor.py
odoo-i18n-plugin/odoo-i18n/scripts/i18n_reporter.py
odoo-i18n-plugin/odoo-i18n/scripts/i18n_validator.py