.\" Hey, Emacs! This is -*-nroff-*- you know...
.\"
.\" derb.1: manual page for the derb utility
.\"
.\" Copyright (C) 2000-2002 IBM, Inc. and others.
.\"
.TH DERB 1 "16 April 2002" "ICU MANPAGE" "ICU @VERSION@ Manual"
.SH NAME
.B derb
\- disassemble a resource bundle
.SH SYNOPSIS
.B derb
[
.BR "\-h\fP, \fB\-?\fP, \fB\-\-help"
]
[
.BR "\-V\fP, \fB\-\-version"
]
[
.BR "\-v\fP, \fB\-\-verbose"
]
[
.BI "\-e\fP, \fB\-\-encoding" " encoding"
]
[
.BI "\-\-bom"
]
[
.BI "\-l\fP, \fB\-\-locale" " locale"
]
[
.BI "\-t\fP, \fB\-\-truncate" " \fR[ \fPsize\fR ]\fP"
]
[
.BI "\-s\fP, \fB\-\-sourcedir" " source"
]
[
.BI "\-d\fP, \fB\-\-destdir" " destination"
]
[
.BI "\-i\fP, \fB\-\-icudatadir" " directory"
]
[
.BI "\-c\fP, \fB\-\-to\-stdout"
]
.IR bundle " \.\.\."
.SH DESCRIPTION
.B derb
reads the compiled resource
.I bundle
files passed on the command line and write them back in text form.
The resulting text files have a
.B .txt
extension while compiled resource bundle source files typically have a 
.B .res
extension.
.PP
It is customary to name the resource bundles by their locale name,
i.e. to use a local identifier for the
.I bundle
filename, e.g.
.B ja_JP.res
for Japanese (Japan) data, or
.B root.res
for the root bundle.
This is especially important for
.B derb
since the locale name is not accessible directly from the compiled
resource bundle, and to know which locale to ask for when opening
the bundle.
.B derb
will produce a file whose base name is either the value of the
.BI "\-l\fP, \fB\-\-locale"
option, or the same as the base name of the compiled resource file itself.
If the
.BI "\-\-to\-stdout\fP, \fB\-c\fP"
option is used, however, the text will be written on the standard output.
.SH OPTIONS
.TP
.BR "\-h\fP, \fB\-?\fP, \fB\-\-help"
Print help about usage and exit.
.TP
.BR "\-V\fP, \fB\-\-version"
Print the version of
.B derb
and exit.
.TP
.BR "\-v\fP, \fB\-\-verbose"
Display extra informative messages during execution.
.TP
.BI "\-e\fP, \fB\-\-encoding" " encoding"
Set the encoding used to write output files to
.IR encoding .
The default encoding is the invariant (subset of ASCII or EBCDIC)
codepage for the system (see section
.BR "INVARIANT CHARACTERS" ).
The choice of the encoding does not affect the data, just their
representation. Characters that cannot be represented in the
.I encoding
will be represented using
.BI \eu "hhhh"
escape sequences.
.TP
.BI "\-\-bom"
Write a byte order mark (BOM) at the beginning of the file.
.TP
.BI "\-l\fP, \fB\-\-locale" " locale"
Set the
.I locale
for the resource bundle, which is used both in the generated text and
as the base name of the output file.
.TP
.BI "\-t\fP, \fB\-\-truncate" " \fR[ \fPsize\fR ]\fP"
Truncate individual resources (strings or binary data) to
.I size
bytes. The default if
.I size
is not specified is
.B 80
bytes.
.TP
.BI "\-s\fP, \fB\-\-sourcedir" " source"
Set the source directory to
.IR source .
The default source directory is the current directory.
If 
.B -
is passed for
.IR source ,
then the
.I bundle
will be looked for in its default location, specified by
the 
.B ICU_DATA
environment variable (or defaulting to
the location set when ICU was built if 
.B ICU_DATA
is not set).
.TP
.BI "\-d\fP, \fB\-\-destdir" " destination"
Set the destination directory to
.IR destination .
The default destination directory is specified by the environment variable
.BR ICU_DATA
or is the location set when ICU was built if 
.B ICU_DATA
is not set.
.TP
.BI "\-i\fP, \fB\-\-icudatadir" " directory"
Look for any necessary ICU data files in
.IR directory .
For example, when processing collation overrides, the file
.B ucadata.dat
must be located.
The default ICU data directory is specified by the environment variable
.BR ICU_DATA .
.TP
.BI "\-c\fP, \fB\-\-to\-stdout"
Write the disassembled
.I bundle
on standard output instead of into a file.
.SH CAVEATS
When the option
.BI \-\-bom
is used, the character
.B U+FEFF
is written in the destination
.I encoding
regardless of whether it is a Unicode transformation format (UTF) or not.
This option should only be used with an UTF encoding, as byte order marks
are not meaningful for other encodings.
.SH INVARIANT CHARACTERS
The
.B invariant character set
consists of the following set of characters, expressed as a standard POSIX
regular expression:
.BR "[a-z]|[A-Z]|[0-9]|_| |+|-|*|/" .
This is the set which is guaranteed to be available regardless of code page.
.SH ENVIRONMENT
.TP 10
.B ICU_DATA
Specifies the directory containing ICU data. Defaults to
.BR @thepkgicudatadir@/@PACKAGE@/@VERSION@/ .
Some tools in ICU depend on the presence of the trailing slash. It is thus
important to make sure that it is present if
.B ICU_DATA
is set.
.SH AUTHORS
Vladimir Weinstein
.br
Yves Arrouye
.SH VERSION
1.0
.SH COPYRIGHT
Copyright (C) 2002 IBM, Inc. and others.
.SH SEE ALSO
.BR genrb (1)