home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / i18nv102.zip / DOC / MKCATDEF.DOC < prev    next >
Text File  |  1995-08-28  |  4KB  |  118 lines

  1.   mkcatdefs Command
  2.   -----------------
  3.   
  4.   
  5.   Purpose
  6.   -------
  7.   
  8.   Preprocesses a message source file.
  9.   
  10.  
  11.   Syntax
  12.   ------
  13.   
  14.   mkcatdefs SymbolName SourceFile ...  [  -h ]
  15.   
  16.  
  17.   Description
  18.   -----------
  19.   
  20.   The mkcatdefs command preprocesses a message source file for in-
  21.   put to the gencat command.
  22.   
  23.   The SourceFile message file contains symbolic identifiers.  The
  24.   mkcatdefs command produces the SymbolName_msg.h file, containing
  25.   statements that equate  symbolic identifiers with the set numbers
  26.   and message ID numbers assigned by the mkcatdefs command.
  27.   
  28.   The mkcatdefs command creates two outputs.  The first is a header
  29.   file called SymbolName_msg.h.  You must include this
  30.   SymbolName_msg.h file in your application program to associate
  31.   the symbolic names to the set and message numbers assigned by the
  32.   mkcatdefs command.
  33.   
  34.   The mkcatdefs command sends message source data, with numbers in-
  35.   stead  of  symbolic identifiers, to standard output.  This output
  36.   is suitable as input to the gencat command.  You can use the
  37.   mkcatdefs command output as input to the gencat command in the
  38.   following ways:
  39.   
  40.   *    Use the mkcatdefs command with a > (redirection symbol) to
  41.   write the new message source to a file.  Use this  file  as input
  42.   to the gencat command.
  43.   
  44.   *    Pipe the mkcatdefs command output file directly to the gencat
  45.   command.
  46.   
  47.   *    Use the runcat command rather than the mkcatdefs command.  The
  48.   runcat command automatically sends the message source file
  49.   through the mkcatdefs command and then pipes the file to the gen-
  50.   cat command.
  51.   
  52.   After running the mkcatdefs command, you can use symbolic names
  53.   in an application to refer to messages.
  54.   
  55.  
  56.   Flags
  57.   -----
  58.   
  59.   -h    Suppresses the generation of a SymbolName_msg.h file.  This
  60.   flag must be the last argument to the mkcatdefs command.
  61.   
  62.  
  63.   Examples
  64.   --------
  65.   
  66.   To process the symb.msg message source file and redirect the out-
  67.   put to the symb.src file, enter:
  68.   
  69.   mkcatdefs symb symb.msg > symb.src
  70.   
  71.   The generated symb_msg.h file looks similar to the following:
  72.   
  73.   #ifdef    _H_SYMB_MSG
  74.   #define    _H_SYMB_MSG
  75.   #include <limits.h>
  76.   #include <nl_types.h>
  77.   #define    MF_SYMB    "symb.cat"
  78.   /* The following was generated from symb.src. */
  79.   /* definitions for set MSFAC */
  80.   #define    SYM_FORM    1
  81.   #define    SYM_LEN    2
  82.   #define    MSG_H    6
  83.   #endif
  84.   
  85.   The mkcatdefs command also creates the symb.src message catalog
  86.   source file for the gencat command with numbers assigned to the
  87.   symbolic identifiers:
  88.   
  89.   $quote " Use double quotation marks to delimit message text
  90.   $delset 1
  91.   $set 1
  92.   1    "Symbolic identifiers can only contain alphanumeric \
  93.   characters or the _ (underscore character)\n"
  94.   2    "Symbolic identifiers cannot be more than 65 \
  95.   characters long\n"
  96.   5    "You can mix symbolic identifiers and numbers\n"
  97.   $quote
  98.   6    remember to include the "msg_h" file in your program
  99.   
  100.   The assigned message numbers are noncontiguous because the source
  101.   file contained a specific number.  The mkcatdefs program always
  102.   assigns the previous number plus 1 to a symbolic identifier.
  103.   
  104.   Note:    The mkcatdefs command inserts a $delset command before a
  105.   $set command in the output message source file. This means you
  106.   cannot add, delete, or replace single messages in an existing ca-
  107.   talog when piping to the gencat command.  You must enter all mes-
  108.   sages in the set.
  109.   
  110.  
  111.   Related Information
  112.   -------------------
  113.   
  114.   The  gencat command,  runcat command.
  115.   
  116.   The  catclose subroutine,  catgets subroutine,  catopen subrou-
  117.   tine.
  118.