Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ montbl(1M) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

localeconv(3C)

setlocale(3C)






       montbl(1M)                                                montbl(1M)


       NAME
             montbl - create monetary database

       SYNOPSIS
             montbl [-o outfile] infile

       DESCRIPTION
             The montbl command takes as input a specification file,
             infile, that describes the formatting conventions for monetary
             quantities for a specific locale.

             -o outfile  Write the output on outfile; otherwise, write the
                         output on a file named LC_MONETARY.

             The output of montbl is suitable for use by the localeconv
             function [see localeconv(3C)].  Before outfile can be used by
             localeconv, it must be installed in the /usr/lib/locale/locale
             directory with the name LC_MONETARY by a user with appropriate
             privilege or a member of group bin.  locale is the locale
             whose monetary formatting conventions are described in infile.
             This file must be readable by user, group, and other; no other
             permissions should be set.  To use formatting conventions for
             monetary quantities described in this file, use setlocale(3C)
             to change the locale for category LC_MONETARY to locale [see
             setlocale(3C)].

             Once installed, this file will be used by the localeconv
             function to initialize the monetary specific fields of a
             structure of type struct lconv.  For a description of each
             field in this structure, see localeconv(3C).

                   struct      lconv       {
                         char *decimal_point;          /* "." */
                         char *thousands_sep;          /* "" (zero length string) */
                         char *grouping;               /* "" */
                         char *int_curr_symbol;  /* "" */
                         char *currency_symbol;  /* "" */
                         char *mon_decimal_point;      /* "" */
                         char *mon_thousands_sep;      /* "" */
                         char *mon_grouping;           /* "" */
                         char *positive_sign;          /* "" */
                         char *negative_sign;          /* "" */
                         char int_frac_digits;         /* CHAR_MAX */
                         char frac_digits;       /* CHAR_MAX */
                         char p_cs_precedes;           /* CHAR_MAX */
                         char p_sep_by_space;          /* CHAR_MAX */


                           Copyright 1994 Novell, Inc.               Page 1













      montbl(1M)                                                montbl(1M)


                        char n_cs_precedes;           /* CHAR_MAX */
                        char n_sep_by_space;          /* CHAR_MAX */
                        char p_sign_posn;       /* CHAR_MAX */
                        char n_sign_posn;       /* CHAR_MAX */
                  };

            The specification file specifies the value of each struct
            lconv member, except for the first three members,
            decimal_point, thousands_sep, and grouping, which are set by
            the LC_NUMERIC category of setlocale(3C).  Each member's value
            is given on a line with the following format:
                keyword <white space> value

            where keyword is identical to the struct lconv field name and
            value is a quoted string for those fields that are a char *
            and an integer for those fields that hold an integer value.
            For example,

                  int_curr_symbol         "ITL."
                  int_frac_digits         0

            will set the international currency symbol and the number of
            fractional digits to be displayed in an internationally
            formatted monetary quantity to ITL. and 0, respectively.

            Blank lines and lines starting with a # are taken to be
            comments and are ignored.  A character in a string may be in
            octal or hex representation.  For example, \141 or \x61 could
            be used to represent the letter 'a'.  If there is no
            specification line for a given structure member, then the
            default "C" locale value for that member is used (see the
            values in comments in the struct lconv definition above).

            Given below is an example of what the specification file for
            Italy would look like:

                  # Italy
                  int_curr_symbol         "ITL."
                  currency_symbol         "L."
                  mon_decimal_point ""
                  mon_thousands_sep "."
                  mon_grouping            "\3"
                  positive_sign           ""
                  negative_sign           "-"
                  int_frac_digits         0
                  frac_digits       0


                          Copyright 1994 Novell, Inc.               Page 2













       montbl(1M)                                                montbl(1M)


                   p_cs_precedes           1
                   p_sep_by_space          0
                   n_cs_precedes           1
                   n_sep_by_space          0
                   p_sign_posn       1
                   n_sign_posn       1

             The first three elements of the lconv structure,
             decimal_point, thousand_sep, and grouping are set by the
             LC_NUMERIC category of setlocale(3C). The chrtbl(1M) utility
             can be used to generate the LC_NUMERIC data containing this
             information.

       FILES
             /usr/lib/locale/locale/LC_MONETARY
                   LC_MONETARY database for locale

             /usr/lib/locale/C/montbl_C
                   input file used to construct LC_MONETARY in the default
                   locale

       REFERENCES
             localeconv(3C), setlocale(3C)

























                           Copyright 1994 Novell, Inc.               Page 3








Typewritten Software • bear@typewritten.org • Edmonds, WA 98026