Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
MSGFMT(1)			  User Commands 		       MSGFMT(1)

NAME
     msgfmt - compile message catalog to binary format

SYNOPSIS
     msgfmt [OPTION] filename.po ...

DESCRIPTION
     Generate binary message catalog from textual translation description.

     Mandatory	arguments  to  long options are mandatory for short options too.
     Similarly for optional arguments.

   Input file location:
     filename.po ...
	    input files

     -D, --directory=DIRECTORY
	    add DIRECTORY to list for input files search

     If input file is -, standard input is read.

   Operation mode:
     -j, --java
	    Java mode: generate a Java ResourceBundle class

     --java2
	    like --java, and assume Java2 (JDK 1.2 or higher)

     --csharp
	    C# mode: generate a .NET .dll file

     --csharp-resources
	    C# resources mode: generate a .NET .resources file

     --tcl  Tcl mode: generate a tcl/msgcat .msg file

     --qt   Qt mode: generate a Qt .qm file

     --desktop
	    Desktop Entry mode: generate a .desktop file

     --xml  XML mode: generate XML file

   Output file location:
     -o, --output-file=FILE
	    write output to specified file

     --strict
	    enable strict Uniforum mode

     If output file is -, output is written to standard output.

   Output file location in Java mode:
     -r, --resource=RESOURCE
	    resource name

     -l, --locale=LOCALE
	    locale name, either language or language_COUNTRY

     --source
	    produce a .java file, instead of a .class file

     -d DIRECTORY
	    base directory of classes directory hierarchy

     The class name is determined by appending the locale name to  the	resource
     name, separated with an underscore.  The -d option is mandatory.  The class
     is written under the specified directory.

   Output file location in C# mode:
     -r, --resource=RESOURCE
	    resource name

     -l, --locale=LOCALE
	    locale name, either language or language_COUNTRY

     -d DIRECTORY
	    base directory for locale dependent .dll files

     The  -l and -d options are mandatory.  The .dll file is written in a subdi-
     rectory of the specified directory whose name depends on the locale.

   Output file location in Tcl mode:
     -l, --locale=LOCALE
	    locale name, either language or language_COUNTRY

     -d DIRECTORY
	    base directory of .msg message catalogs

     The -l and -d options are mandatory.  The .msg file is written in the spec-
     ified directory.

   Desktop Entry mode options:
     -l, --locale=LOCALE
	    locale name, either language or language_COUNTRY

     -o, --output-file=FILE
	    write output to specified file

     --template=TEMPLATE
	    a .desktop file used as a template

     -d DIRECTORY
	    base directory of .po files

     -kWORD, --keyword=WORD
	    look for WORD as an additional keyword

     -k, --keyword
	    do not to use default keywords

     The -l, -o, and --template options are mandatory.	If -D is specified,  in-
     put  files  are  read  from the directory instead of the command line argu-
     ments.

   XML mode options:
     -l, --locale=LOCALE
	    locale name, either language or language_COUNTRY

     -L, --language=NAME
	    recognise the specified XML language

     -o, --output-file=FILE
	    write output to specified file

     --template=TEMPLATE
	    an XML file used as a template

     -d DIRECTORY
	    base directory of .po files

     --replace-text
	    output XML with translated text replacing  the  original  text,  not
	    augmenting the original text

     The  -l, -o, and --template options are mandatory.  If -D is specified, in-
     put files are read from the directory instead of  the  command  line  argu-
     ments.

   Input file syntax:
     -P, --properties-input
	    input files are in Java .properties syntax

     --stringtable-input
	    input files are in NeXTstep/GNUstep .strings syntax

   Input file interpretation:
     -c, --check
	    perform  all  the  checks implied by --check-format, --check-header,
	    --check-domain

     --check-format
	    check language dependent format strings

     --check-header
	    verify presence and contents of the header entry

     --check-domain
	    check for conflicts between domain directives and the  --output-file
	    option

     -C, --check-compatibility
	    check that GNU msgfmt behaves like X/Open msgfmt

     --check-accelerators[=CHAR]
	    check presence of keyboard accelerators for menu items

     -f, --use-fuzzy
	    use fuzzy entries in output

   Output details:
     --no-convert
	    don't convert the messages to UTF-8 encoding

     --no-redundancy
	    don't  pre-expand  ISO  C  99  <inttypes.h>  format string directive
	    macros

     -a, --alignment=NUMBER
	    align strings to NUMBER bytes (default: 1)

     --endianness=BYTEORDER
	    write out 32-bit numbers in the given byte order (big or little, de-
	    fault depends on platform)

     --no-hash
	    binary file will not include the hash table

   Informative output:
     -h, --help
	    display this help and exit

     -V, --version
	    output version information and exit

     --statistics
	    print statistics about translations

     -v, --verbose
	    increase verbosity level

AUTHOR
     Written by Ulrich Drepper, Bruno Haible, and Daiki Ueno.

REPORTING BUGS
     Report bugs in the bug tracker  at  <https://savannah.gnu.org/projects/get-
     text> or by email to <bug-gettext@gnu.org>.

COPYRIGHT
     Copyright (C) 1995-2026 Free Software Foundation, Inc.  License GPLv3+: GNU
     GPL version 3 or later <https://gnu.org/licenses/gpl.html>
     This  is  free software: you are free to change and redistribute it.  There
     is NO WARRANTY, to the extent permitted by law.

SEE ALSO
     The full documentation for msgfmt is maintained as a  Texinfo  manual.   If
     the  info and msgfmt programs are properly installed at your site, the com-
     mand

	    info msgfmt

     should give you access to the complete manual.

GNU gettext-tools 1.0		  January 2026			       MSGFMT(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=msgfmt&sektion=1&manpath=FreeBSD+15.1-RELEASE+and+Ports>

home | help