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