Dist::Zilla::App::Command::msg_compile(3) Compile language translation files


In dist.ini:

  textdomain = My-App
  lang_dir = po

On the command line:

  dzil msg-compile po/fr.po


This command compiles one or more GNU gettext <http://www.gnu.org/software/gettext/>-style language catalogs into a directory in your distribution. The idea is to be able to easily compile a catalog while working on it, to see how it works, without having to compile the entire distribution. It can either compile the specified translation files, or will scan the language directory to compile all the translation files in the distribution. It relies on the settings from the "LocaleTextDomain" plugin for its settings, and requires that the GNU gettext utilities be available.




Destination directory for the compiled catalogs. The compiled language files will be stored in this directory as LocaleData/$language/LC_MESSAGES/$textdomain.mo. As long as the specified directory is in Perl's @INC, Locale::TextDomain should be able to find them there. Defaults to the current directory.


The location of the "msgfmt" program, which is distributed with GNU gettext <http://www.gnu.org/software/gettext/>. Defaults to just "msgfmt" (or "msgfmt.exe" on Windows), which should work if it's in your path.


David E. Wheeler <[email protected]>

Copyright and License

This software is copyright (c) 2012-2013 by David E. Wheeler.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.