XGETTEXT

Section: User Commands (1)
Updated: February 2023
Index Return to Main Contents
 

NAME

xgettext - extract gettext strings from source  

SYNOPSIS

xgettext [,OPTION/] [,INPUTFILE/]...  

DESCRIPTION

Extract translatable strings from given input files.

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

Input file location:

INPUTFILE ...
input files
-f, --files-from=,FILE/
get list of input files from FILE
-D, --directory=,DIRECTORY/
add DIRECTORY to list for input files search

If input file is -, standard input is read.  

Output file location:

-d, --default-domain=,NAME/
use NAME.po for output (instead of messages.po)
-o, --output=,FILE/
write output to specified file
-p, --output-dir=,DIR/
output files will be placed in directory DIR

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

Choice of input file language:

-L, --language=,NAME/
recognise the specified language (C, C++, ObjectiveC, PO, Shell, Python, Lisp, EmacsLisp, librep, Scheme, Smalltalk, Java, JavaProperties, C#, awk, YCP, Tcl, Perl, PHP, Ruby, GCC-source, NXStringTable, RST, RSJ, Glade, Lua, JavaScript, Vala, Desktop)
-C, --c++
shorthand for --language=,C/++

By default the language is guessed depending on the input file name extension.  

Input file interpretation:

--from-code=,NAME/
encoding of input files (except for Python, Tcl, Glade)

By default the input files are assumed to be in ASCII.  

Operation mode:

-j, --join-existing
join messages with existing file
-x, --exclude-file=,FILE/.po
entries from FILE.po are not extracted
-cTAG, --add-comments=,TAG/
place comment blocks starting with TAG and preceding keyword lines in output file
-c, --add-comments
place all comment blocks preceding keyword lines in output file
--check=,NAME/
perform syntax check on messages (ellipsis-unicode, space-ellipsis,
quote-unicode, bullet-unicode)
--sentence-end=,TYPE/
type describing the end of sentence (single-space, which is the default,
or double-space)
 

Language specific options:

-a, --extract-all
extract all strings (only languages C, C++, ObjectiveC, Shell, Python, Lisp, EmacsLisp, librep, Scheme, Java, C#, awk, Tcl, Perl, PHP, GCC-source, Glade, Lua, JavaScript, Vala)
-kWORD, --keyword=,WORD/
look for WORD as an additional keyword
-k, --keyword
do not to use default keywords (only languages C, C++, ObjectiveC, Shell, Python, Lisp, EmacsLisp, librep, Scheme, Java, C#, awk, Tcl, Perl, PHP, GCC-source, Glade, Lua, JavaScript, Vala, Desktop)
--flag=,WORD/:ARG:FLAG
additional flag for strings inside the argument number ARG of keyword WORD
(only languages C, C++, ObjectiveC, Shell,
Python, Lisp, EmacsLisp, librep, Scheme, Java, C#, awk, YCP, Tcl, Perl, PHP, GCC-source, Lua, JavaScript, Vala)
-T, --trigraphs
understand ANSI C trigraphs for input (only languages C, C++, ObjectiveC)
--its=,FILE/
apply ITS rules from FILE (only XML based languages)
--qt
recognize Qt format strings (only language C++)
--kde
recognize KDE 4 format strings (only language C++)
--boost
recognize Boost format strings (only language C++)
--debug
more detailed formatstring recognition result
 

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
-e, --no-escape
do not use C escapes in output (default)
-E, --escape
use C escapes in output, no extended chars
--force-po
write PO file even if empty
-i, --indent
write the .po file using indented style
--no-location
do not write '#: filename:line' lines
-n, --add-location
generate '#: filename:line' lines (default)
--strict
write out strict Uniforum conforming .po file
--properties-output
write out a Java .properties file
--stringtable-output
write out a NeXTstep/GNUstep .strings file
--itstool
write out itstool comments
-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
--omit-header
don't write header with 'msgid ""' entry
--copyright-holder=,STRING/
set copyright holder in output
--foreign-user
omit FSF copyright in output for foreign user
--package-name=,PACKAGE/
set package name in output
--package-version=,VERSION/
set package version in output
--msgid-bugs-address=,EMAIL/@ADDRESS
set report address for msgid bugs
-m[STRING], --msgstr-prefix[=,STRING/]
use STRING or "" as prefix for msgstr values
-M[STRING], --msgstr-suffix[=,STRING/]
use STRING or "" as suffix for msgstr values
 

Informative output:

-h, --help
display this help and exit
-V, --version
output version information and exit
-v, --verbose
increase verbosity level
 

AUTHOR

Written by Ulrich Drepper.  

REPORTING BUGS

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

COPYRIGHT

Copyright © 1995-2020 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 xgettext is maintained as a Texinfo manual. If the info and xgettext programs are properly installed at your site, the command
info xgettext

should give you access to the complete manual.


 

Index

NAME
SYNOPSIS
DESCRIPTION
Input file location:
Output file location:
Choice of input file language:
Input file interpretation:
Operation mode:
Language specific options:
Output details:
Informative output:
AUTHOR
REPORTING BUGS
COPYRIGHT
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 08:54:32 GMT, March 28, 2024