MSGCMP(1)

πŸ’… MSGCMP(1) β€” the msgcmp page, bestie edition ✨

okay so this is the manual for msgcmp, a User Command, and yes it's giving "I check your translation homework" energy πŸŽ€


✨ NAME ✨

msgcmp β€” compare message catalog and template πŸ¦‹


🌸 SYNOPSIS 🌸

msgcmp [OPTION] def.po ref.pot

πŸ’– DESCRIPTION πŸ’–

So what this does is compare two Uniforum style .po files to check that both of them contain the same set of msgid strings. That's the whole vibe check. πŸ’…

Here's the tea on the two files:

  • def.po is an existing PO file with the translations β€” that's the one you've been pouring your heart into πŸ’œ
  • ref.pot is the last created PO file, or a PO Template file (generally created by xgettext)

This is useful for checking that you have translated each and every message in your program. Not one skipped, not one forgotten, periodt. πŸ‘‘

Where an exact match cannot be found, fuzzy matching is used to produce better diagnostics β€” so like, it'll still try to help you figure out what's up instead of just ghosting you 🫢

✨ Little note: mandatory arguments to long options are mandatory for short options too. No exceptions bestie, the rules apply to everyone.

πŸ“ Input file location πŸ“

  • def.po β€” translations πŸ’¬
  • ref.pot β€” references to the sources πŸ—‚οΈ
  • -D, --directory=DIRECTORY β€” add DIRECTORY to list for input files search πŸ”

βš™οΈ Operation modifiers βš™οΈ

  • -m, --multi-domain β€” apply ref.pot to each of the domains in def.po 🌈
  • -N, --no-fuzzy-matching β€” do not use fuzzy matching πŸ™…β€β™€οΈ
  • --use-fuzzy β€” consider fuzzy entries πŸŒ€
  • --use-untranslated β€” consider untranslated entries πŸ«₯

πŸ“ Input file syntax πŸ“

  • -P, --properties-input β€” input files are in Java .properties syntax β˜•
  • --stringtable-input β€” input files are in NeXTstep/GNUstep .strings syntax 🍎

πŸ“’ Informative output πŸ“’

  • -h, --help β€” display this help and exit πŸ†˜
  • -V, --version β€” output version information and exit 🏷️

πŸ‘‘ AUTHOR πŸ‘‘

Written by Peter Miller. Iconic of him, honestly. πŸ’


πŸ› REPORTING BUGS πŸ›

Found a bug? Not me being the bearer of bad news, but fr fr, report it in the bug tracker at <https://savannah.gnu.org/projects/gettext> or by email to <bug-gettext@gnu.org>. They wanna hear it, bestie 🫢


Copyright Β© 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. 🫠 (yes, that's the dramatic part, respect it)


πŸ¦‹ SEE ALSO πŸ¦‹

The full documentation for msgcmp is maintained as a Texinfo manual. If the info and msgcmp programs are properly installed at your site, the command

info msgcmp

should give you access to the complete manual. Go read it, it's the main character of documentation 🌟


k byeee, that was GNU gettext-tools 1.0, from January 2026 β€” thanks for reading my whole thing, ily, go translate something beautiful πŸ’–βœ¨πŸŽ€πŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from