Manual Page Result
0
Command: strextract | Section: 1 | Source: Digital UNIX | File: strextract.1.gz
strextract(1) General Commands Manual strextract(1)
NAME
strextract - batch string extraction
SYNOPSIS
strextract [ -p patternfile ] [ -i ignorefile ] [ -d ] [ source-pro-
gram... ]
DESCRIPTION
The strextract command extracts text strings from source programs.
This command also writes the string it extracts to a message text file.
The message text file contains the text for each message extracted from
your input source program. The strextract command names the file by ap-
pending .str to the name of the input source program.
In the source-program argument, you name one or more source programs
from which you want messages extracted. The strextract command does not
extract messages from source programs included using the #include di-
rective. Therefore, you might want a source program and all the source
programs it includes on a single strextract command line.
You can create a patterns file (as specified by patternfile ) to con-
trol how the strextract command extracts text. The patterns file is di-
vided into several sections, each of which is identified by a keyword.
The keyword must start at the beginning of a new line, and its first
character must be a dollar sign ($). Following the identifier, you
specify a number of patterns. Each pattern begins on a new line and
follows the regular expression syntax you use in the regexp(3) routine.
For more information on the patterns file, see the patterns(4) refer-
ence page.
In addition to the patterns file, you can create a file that indicates
strings that extract ignores. Each line in this ignore file contains a
single string to be ignored that follows the syntax of the regexp(3)
routine.
When you invoke the strextract command, it reads the patterns file and
the file that contains strings it ignores. You can specify a patterns
file and an ignore file on the strextract command line. Otherwise, the
strextract command matches all strings and uses the default patterns
file.
If strextract finds strings which match the ERROR directive in the pat-
tern file, it reports the strings to standard error (stderr.) but does
not write the string to the message file.
After running strextract, you can edit the message text file to remove
text strings which do not need translating before running strmerge.
It is recommended that you use extract command as a visual front end
to the strextract command rather than running strextract directly.
FLAGS
-i Ignore text strings specified in ignorefile. By default, the
strextract command searches for ignorefile in the current working
directory, your home directory, and /usr/lib/nls.
If you omit the -i option, strextract recognizes all strings spec-
ified in the patterns file.
-p Use patternfile to match strings in the input source program. By
default, the command searches for the pattern file in the current
working directory, your home directory, and finally /usr/lib/nls.
If you omit the -p option, the strextract command uses a default
patterns file that is stored in /usr/lib/nls/patterns.
-d Disables warnings of duplicate strings. If you omit the -d option,
strextract prints warnings of duplicate strings in your source
program.
RESTRICTIONS
Given the default pattern file, you cannot cause strextract to ignore
strings in comments that are longer than one line.
You can specify only one rewrite string for all classes of pattern
matches.
The strextract command does not extract strings from files include with
#include directive. You must run the strextract commands on these files
separately. % strextract -p c_patterns prog.c prog2.c % vi prog.str %
strmerge -p c_patterns prog.c prog2.c % gencat prog.cat prog.msg
prog2.msg % vi nl_prog.c % vi nl_prog2.c % cc nl_prog.c nl_prog2.c
In this example, the strextract command uses the c_patterns file to de-
termine which strings to match. The input source programs are named
prog.c and prog2.c.
If you need to remove any of the messages or extract one of the created
strings, edit the resulting message file, prog.str. Under no condi-
tions should you add to this file. Doing so could result in unpre-
dictable behavior.
You issue the strmerge command to replace the extracted strings with
calls to the message catalog. In response to this command, strmerge,
creates the source message catalogs, prog.msg and prog2.msg, and the
output source programs, nl_prog.c and nl_prog2.c.
You must edit nl_prog.c and nl_prog2.c to include the appropriate
catopen and catclose function calls.
The gencat command creates a message catalog and the cc command creates
an executable program.
RELATED INFORMATION
gencat(1), extract(1), strmerge(1), regexp(3), catopen(3), patterns(4)
Writing Software for the International Market delim off
strextract(1)