MSGPRE(1)

πŸ’… MSGPRE(1) β€” the manual, but make it cute πŸ’…

okay bestie, gather round, because this is msgpre from the GNU gettext-tools lineup, and she is that girl. pretranslation? in this economy? yes. let's go. πŸ¦‹


✨ NAME ✨

msgpre β€” pretranslate a message catalog


🌸 SYNOPSIS 🌸

msgpre [OPTION...]

πŸŽ€ DESCRIPTION πŸŽ€

so what she does is: she pretranslates a translation catalog. that's the whole gig. πŸ’–

⚠️ Warning, and I need you to actually read this one: the pretranslations might not be what you expect. They might be of the wrong form, be of poor quality, or reflect some biases. 😭 that's not me being dramatic, that's literally in the manual. the vibes are not guaranteed.

Mandatory arguments to long options are mandatory for short options too. (yes, say it with me: mandatory means mandatory, no skipping. periodt.)


🧚 OPTIONS 🧚

πŸ“₯ Input file location:

  • -i, --input=INPUTFILE β€” the input PO file goes here
  • -D, --directory=DIRECTORY β€” add DIRECTORY to the list of places we go looking for input files

If no input file is given, or if it's -, standard input is read. slay, stdin stays winning. ✨

πŸ“€ Output file location:

  • -o, --output-file=FILE β€” write the output to the file you named

The results are written to standard output if no output file is specified or if it is -. 🫢

🎯 Message selection:

  • --keep-fuzzy β€” keep fuzzy messages unmodified. only pretranslate the untranslated ones. no touching the fuzzy ones, hands off. πŸ™ˆ

πŸ€– Large Language Model (LLM) options:

  • --species=TYPE β€” specifies the type of LLM. the default and only valid value is 'ollama'. (one species only, she's monogamous πŸ’€)
  • --url=URL β€” specifies the URL of the server that runs the LLM
  • -m, --model=MODEL β€” specifies the model to use
  • --prompt=TEXT β€” specifies the prompt to use before standard input
  • --postprocess=COMMAND β€” specifies a command to post-process the output

πŸ“ Input file syntax:

  • -P, --properties-input β€” input file is in Java .properties syntax
  • --stringtable-input β€” input file is in NeXTstep/GNUstep .strings syntax

🎨 Output details:

  • --color β€” use colors and other text attributes always
  • --color=WHEN β€” use colors and other text attributes if WHEN. WHEN may be 'always', 'never', 'auto', or 'html'.
  • --style=STYLEFILE β€” specify CSS style rule file for --color
  • --force-po β€” write PO file even if empty (empty but brave πŸ’…)
  • --indent β€” indented output style
  • --no-location β€” suppress '#: filename:line' lines
  • -n, --add-location β€” preserve '#: filename:line' lines (default)
  • --strict β€” strict Uniforum output style
  • -p, --properties-output β€” write out a Java .properties file
  • --stringtable-output β€” write out a NeXTstep/GNUstep .strings file
  • -w, --width=NUMBER β€” set output page width
  • --no-wrap β€” do not break long message lines, longer than the output page width, into several lines
  • -s, --sort-output β€” generate sorted output
  • -F, --sort-by-file β€” sort output by file location

πŸ“£ Informative output:

  • -h, --help β€” display this help and exit
  • -V, --version β€” output version information and exit
  • -q, --quiet, --silent β€” suppress progress indicators

πŸ‘‘ AUTHOR πŸ‘‘

Written by Bruno Haible. (the icon, the legend, the moment. 🌈)


πŸ› REPORTING BUGS πŸ›

found a bug? bestie, tell them, don't just suffer in silence. Report bugs in the bug tracker at <https://savannah.gnu.org/projects/gettext> or by email to <bug-gettext@gnu.org>. 🫢


Copyright Β© 2001-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. (read it again. NO WARRANTY. not a vibe, just the law. 😭)


πŸ” SEE ALSO πŸ”

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

info msgpre

should give you access to the complete manual. go read her, she's thorough. πŸ“šβœ¨


okay that's the whole thing, you're officially a msgpre girlie now πŸ’– this page is from GNU gettext-tools 1.0, dated January 2026, and it lives at section MSGPRE(1). mwah. πŸŽ€ bye bestie!! πŸŒΈπŸ’…πŸ¦‹

πŸ“¦ where this page comes from