NAME
iptckeyword - List and manipulate the IPTC keyword metadata stored in an image file.
SYNOPSIS
iptckeyword [--list] args
iptckeyword --add | --set | --remove keyword[,keyword...] args
iptckeyword --match (keywords and booleans) args
iptckeyword --copy source_file args
iptckeyword --synonyms [--synfile file] args
iptckeyword --help | --man
(args can be files or directories)
DESCRIPTION
iptckeyword uses the Image::IPTCInfo module to list and/or manipulate the keyword information that can be stored in the IPTC headers of an image file. iptckeyword can add, set or remove keywords, or match a list of keywords in the list of files/directories given on the command line. It can also expand a list of keyword synonyms and assign those synonyms to files.
OPTIONS
- --help
-
Print a brief help message and exits.
- --man
-
Prints the manual page and exits.
- --r
-
Allows directory recursion in the argument list. Without the -r flag, iptckeyword will ignore any directories in the arg list. Warning: this can be dangerous, especially adding, setting, or removing keywords. You have been warned.
- --list
-
Lists keywords. --list is assumed if no other options are given. It can also be combined with other options, and will list the keywords after any other operations (add, remove, etc) are performed.
- --add
-
Adds given keywords to keywords already in the file(s).
- --set
-
Sets keywords in file to exact list given on command line. Use --set '' to clear the keywords in the file(s).
- --remove
-
Removes given keywords from file. iptckeyword will not complain if the keyword doesn't exist.
- --copy
-
Copies keywords from file given as argument to --copy to any other file(s) specified.
- --match
-
Matches keywords given against file(s) given. Uses Text::Query::ParseAdvanced to parse the matchwords. This allows matches like 'horse and rider and not saddle' or '(cougar or puma or mountain lion) and arizona'. Words separated by spaces are considered to be part of the same phrase. Will match whole words only--however, one word from a multi-word phrase will match ('mount' wouldn't match the phrase 'mountain lion', but 'mountain' would). If you wish to avoid this behavior, use underscores instead of spaces ('mountain_lion' instead of 'mountain lion').
- --synonyms
-
Reads keywords in file(s) given on the command line, and looks in a synonyms file for a list of synonym keywords to expand out. By default, the synonyms file is the file .iptc_synonyms in your home directory. The format of the synonyms file is: keyword: other, keywords, that, the, first_keyword, expands to A keyword can expand to another keyword that also has expansions. iptckeywords parses them recursively, but avoids getting caught in a loop. For example: patas: monkey, zoo monkey: primate primate: animal So a file with the keyword of 'patas' will end up with patas, zoo, monkey, primate, and animal. This is a powerful way of adding multiple keywords that iptckeyword (or other programs) can then use to search by.
- --synfile
-
Takes the argument of an alternative synonyms file when using the --synonyms switch.
AUTHOR
Paul Archer (paul at paularcher dot org)
DEPENDENCIES
Image::IPTCInfo, Getopt::Long, Pod::Usage, File::Finder, Text::Query
BUGS
Probably.
Text::Query::ParseAdvanced throws two warnings. You'll have to modify the subroutines that contain the offending lines by removing the prototyping info in order to get rid of the warnings.
LICENSE
iptckeyword is released under the GNU Public License (GPL).
4 POD Errors
The following errors were encountered while parsing the POD:
- Around line 392:
You forgot a '=back' before '=head1'
- Around line 399:
You forgot a '=back' before '=head1'
- Around line 408:
You forgot a '=back' before '=head1'
- Around line 411:
=over without closing =back