tag(3tcl)

NAME
tag - Manipulate tagged files

SYNOPSIS
tag option ?arg arg ...?

DESCRIPTION

The tag procedure provides a number of options for manipulating tagged files.

COMMANDS

tag readfile filename

    Reads the file with the given filename and returns a list where each list element is a tag record, which is represented by a list of label-value pairs, or label-value-endlabel triples.

    The tag header is the first element returned.

tag writefile filename list

    Takes a list in the format used internally in tcl programs for tagged data and writes it as a tagged file.

tag extract list tests

    Takes a list in tagged format, and a list of conditions, and returns a new list in tagged format which contains those tag records which match the conditions.

    The tests is a list of test items, each of which is a list of the form { labelname condition matchvalue }

    The conditions are

==  String equals

!=  String not equal

<=  Less than or equal

-in Is the test value a member of the list given as the matchvalue

-contains
    Does the match value contain the test value as a case insensitive substring.

-earlier
    Date earlier

-later
    Date later - dates are in ISO format (yyyy-mm-dd [hh:mm:ss]).

-exists
    Does the label exist in this record.

BUGS

tag readfile reads the whole file into memory before turning it into a list. Should be more memory efficient.

The -earlier and -later comparisons require TCL8.3

AUTHOR
John Lines (john@paladin.demon.co.uk)