# *********************************************************************
# maketable.txt: help text
#
# Copyright (c) 2001,2002,2003 Carlo Strozzi
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#
# *********************************************************************
# $Id: maketable.txt,v 1.3 2003/08/11 13:56:31 carlo Exp $

                      NoSQL operator: maketable

Builds a valid table header from a table cross-reference file.

Usage: maketable [options]

Options:
    --input (-i) 'file'
      Read input from 'file' instead of STDIN.

    --output (-o) 'file'
      Write output to 'file' instead of STDOUT.

    --help (-h)
      Display this help text.

    --count (-c)
      Add a data record with field positions to the output table.

    --match (-m) 'pattern'   
      Consider only those fields which *names* match the
      given regular expression. 'pattern' must be a valid
      mawk(1) pattern without surrounding slashes.

    --names-only (-n)
      Strip '\001' characters from output. This is useful when the
      column names are to to be passed to another program as
      command-line arguments, a common case. If this option is
      specified, then option '-c' is ignored.

Notes:

Takes a cross-reference file on stdin and prints the corresponding table
header to stdout. A cross-reference file is very similar to a 'list'
file, except that it only contains column names without the associated
values. Each column name may optionally be preceeded by its positional
number in the table header. For example:

##################################################
# Optional table comments
##################################################
1  Name1     Any comments ...
2  Name2     Any comments ...
3  Name3     Any comments ...
...

Field numbers are optional, and if they are present they must be
separated from the column names by blanks or tabs. Column documentation
comments are optional, and must be separated from the column name by
blanks and/or tabs. Warning: if the input list contains duplicated
entries, i.e. multiple rows with the same label (column name), the
resulting table may be broken.

