Extract Translatable Messages from R Files in a Package
xgettext(dir, verbose = FALSE, asCall = TRUE)xngettext(dir, verbose = FALSE)xgettext2pot(dir, potFile, name = "R", version, bugs)
- the directory of a source package.
- logical: should each file be listed as it is processed?
- logical: if
TRUEeach argument is returned whole, otherwise the strings within each argument are extracted.
- name of
potemplate file to be produced. Defaults to R-pkgname.pot where pkgname is the basename of dir.
- name, version, bugs
- as recorded in the template file:
versiondefaults the version number of the currently running R, and
Leading and trailing white space (space, tab and linefeed) is removed
for calls to
message, as it is by the internal code that
passes strings for translation.
We look to see if these functions were called with
domain = NA
and if so omit the call if
asCall = TRUE: note that the
call might contain a call to
gettext which would be visible if
asCall = FALSE.
xgettext and then
and writes a PO template file for use with the GNU Gettext
tools. This ensures that the strings for simple translation are
unique in the file (as GNU Gettext requires), but does not do so
ngettext calls (and the rules are not stated in the Gettext
msgfmt complains if there is duplication between
If applied to the base package, this also looks in the .R files in R_HOME/share/R.
xgettext, a list of objects of class
"xgettext"(which has a
xngettext, a list of objects of class
"xngettext", which are themselves lists of length-2 character strings.
update_pkg_po() which calls