.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{ . if \nF \{ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "RENROT 1p" .TH RENROT 1p "2013-06-08" "perl v5.20.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" renrot \- rename and rotate images according EXIF data .SH "SYNOPSIS" .IX Header "SYNOPSIS" renrot [\s-1OPTIONS\s0] [[\fB\-\-\fR] \s-1FILE1 FILE2 ...\s0] .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fBRenrot\fR is intended to work with a set of files containing \s-1EXIF\s0 data and can do two things to them \*(-- rename and rotate. A set of files can be given either explicitly or using the \fB\-\-extension\fR option, which select the files with the given suffix. \fBRenrot\fR operates on files in current working directory, unless given the \fB\-\-work\-directory\fR option, which changes this default. .PP \&\fBRenrot\fR renames input files using a flexible name template (which, among others, uses DateTimeOriginal and FileModifyDate \s-1EXIF\s0 tags, if they exist, otherwise names the file according to the current timestamp). Further, \&\fBrenrot\fR can aggregate files according to the shooting time period or to a given template. .PP Additionally, it rotates files and their thumbnails, as per Orientation \s-1EXIF\s0 tag. If that tag is absent, the program allows to set rotation parameters using \fB\-\-rotate\-angle\fR and \fB\-\-rotate\-thumb\fR command line options. This is currently implemented only for \s-1JPEG\s0 format. .PP The program can also place commentaries into the following locations: .Sp .RS 4 \&\- Commentary tag from file (see \fB\-\-comment\-file\fR option) .Sp \&\- UserComment tag from configuration variable (see \*(L"\s-1TAGS\*(R"\s0 section) .RE .PP Personal details may be specified via \s-1XMP\s0 tags defined in a configuration file, see \*(L"\s-1TAGS\*(R"\s0 section. .PP In addition, \fBrenrot\fR can aggregate all files in different directories, according to a given date/time pattern template, set with \fB\-\-aggr\-template\fR. .SH "OPTIONS" .IX Header "OPTIONS" .IP "\fB\-c\fR or \fB\-\-config\-file\fR \fI\s-1FILE\s0\fR" 4 .IX Item "-c or --config-file FILE" Path to the configuration file. .IP "\fB\-d\fR or \fB\-\-work\-directory\fR \fI\s-1DIR\s0\fR" 4 .IX Item "-d or --work-directory DIR" Define the working directory. .IP "\fB\-\-exclude\fR \fI\s-1FILE\s0\fR" 4 .IX Item "--exclude FILE" Specify files to exclude. Wildcards are not allowed. If a set of files is given, there must be as many occurrences of this option as there are files in the set. .IP "\fB\-\-sub\-fileset\fR \fI\s-1FILE\s0\fR" 4 .IX Item "--sub-fileset FILE" Get names of files to operate upon from \fI\s-1FILE\s0\fR. The file must contain a file name per line. This option is useful when you need to process only a set of X from Y files in the directory. If specified, the rest of files given in the command line is ignored. .IP "\fB\-e\fR or \fB\-\-extension\fR \fI\s-1EXTENSION\s0\fR" 4 .IX Item "-e or --extension EXTENSION" Process the files with given \fI\s-1EXTENSION\s0\fR (\s-1JPG,\s0 jpeg, \s-1CRW,\s0 crw, etc). Depending on the operating system, the extension search might or might not be case-sensitive. .IP "\fB\-\-mtime\fR, \fB\-\-no\-mtime\fR" 4 .IX Item "--mtime, --no-mtime" Defines whether to set the file's mtime, using DateTimeOriginal tag value. Use \fB\-\-no\-mtime\fR to set it to current time stamp after processing. .IP "\fB\-\-no\-renrot\fR or \fB\-\-nochg\fR" 4 .IX Item "--no-renrot or --nochg" Do not rename, rotate, tag and mtime images. It saves files from any changes while allows to do aggregation, contact sheet generation e.t.c. .IP "\fB\-\-use\-color\fR, \fB\-\-no\-use\-color\fR" 4 .IX Item "--use-color, --no-use-color" Colorize output. This does \s-1NOT\s0 work under Windows. .IP "\fB\-\-dry\-run\fR" 4 .IX Item "--dry-run" Do not do anything, only print would have been done. .IP "\fB\-g\fR or \fB\-\-generate\-thumb\fR" 4 .IX Item "-g or --generate-thumb" Generation and writing ThumbnailImage tag. The original value of the ThumbnailImage tag remains intact. To rewrite it you need to delete it first (look exiftool examples). .IP "\fB\-\-use\-ipc\fR, \fB\-\-no\-use\-ipc\fR" 4 .IX Item "--use-ipc, --no-use-ipc" Rotate thumbnails using pipe, rather than files. This does \s-1NOT\s0 work under Windows. .IP "\fB\-v\fR" 4 .IX Item "-v" Increase debugging level by 1. Debugging levels from 1 to 4 are internal levels, the levels from 5 till 9 are equivalent to levels 1\-5 levels ExifTool with the maximum verbosity for \fBrenrot\fR. .IP "\fB\-?\fR or \fB\-\-help\fR" 4 .IX Item "-? or --help" Display short usage summary and exit. .IP "\fB\-\-version\fR" 4 .IX Item "--version" Output version information and exit. .SH "\fBAGGREGATION\fP" .IX Header "AGGREGATION" .IP "\fB\-\-aggr\-mode\fR \fI\s-1MODE\s0\fR" 4 .IX Item "--aggr-mode MODE" Run aggregation process in given \fI\s-1MODE\s0\fR. Possible values are: none, delta or template. .IP "\fB\-\-aggr\-delta\fR \fI\s-1NUMBER\s0\fR" 4 .IX Item "--aggr-delta NUMBER" Aggregation time delta, in seconds. Files with DateTimeOriginal and ones of the previous file delta, greater than \fB\-\-aggr\-delta\fR are placed in the directories, with the names are constructed by concatenating the value of the \&\fB\-\-aggr\-directory\fR option and the directory name counter. .IP "\fB\-\-aggr\-directory\fR \fI\s-1DIR\s0\fR" 4 .IX Item "--aggr-directory DIR" Aggregation directory name prefix (default is \fIImages\fR), have to be on the same file system (or on the file system which supports symbolic links in case of virtual aggregation), relative to the current working directory or an absolute path. .IP "\fB\-a\fR or \fB\-\-aggr\-template\fR \fI\s-1TEMPLATE\s0\fR" 4 .IX Item "-a or --aggr-template TEMPLATE" File name template to use for file aggregation. Images are aggregated by date/time patterns. You may use combination of \fB\f(CB%d\fB\fR, \fB\f(CB%H\fB\fR, \fB\f(CB%M\fB\fR, \fB\f(CB%m\fB\fR, \&\fB\f(CB%S\fB\fR, \fB\f(CB%Y\fB\fR, and \fB\f(CB%y\fB\fR meta-characters. The template can also be defined in the configuration file (see Aggregation Template variable). The default is \fI\f(CI%Y\fI%m%d\fR. For the detailed description, refer to \fB\-\-name\-template\fR option. For practical uses, see \*(L"\s-1TEMPLATE EXAMPLES\*(R"\s0 section. .IP "\fB\-\-aggr\-virtual\fR, \fB\-\-no\-aggr\-virtual\fR" 4 .IX Item "--aggr-virtual, --no-aggr-virtual" Defines virtualization for existent aggregation modes. The main effect of \&\fB\-\-aggr\-virtual\fR is that any files to be aggregated remain untouched in their places, and relative symbolic links pointing to them are stored in the directory tree created. Use \fB\-\-no\-aggr\-virtual\fR to prevent virtualization. .SH "\fBCONTACT SHEET GENERATOR\fP" .IX Header "CONTACT SHEET GENERATOR" .IP "\fB\-\-contact\-sheet\fR, \fB\-\-no\-contact\-sheet\fR or \fB\-\-cs\fR, \fB\-\-no\-cs\fR" 4 .IX Item "--contact-sheet, --no-contact-sheet or --cs, --no-cs" Create the contact sheet. Currently it works with ThumbnailImage EXIFs and the files defined as thumbnails (see the option \fB\-\-contact\-sheet\-thm\fR, below) .IP "\fB\-\-contact\-sheet\-file\fR or \fB\-\-cs\-file\fR \fI\s-1FILE\s0\fR" 4 .IX Item "--contact-sheet-file or --cs-file FILE" Base file name for montage files. .IP "\fB\-\-contact\-sheet\-dir\fR or \fB\-\-cs\-dir\fR \fI\s-1DIR\s0\fR" 4 .IX Item "--contact-sheet-dir or --cs-dir DIR" Temporary directory for montage (created in the begining and deleted at the end of the process) .IP "\fB\-\-contact\-sheet\-thm\fR or \fB\-\-cs\-thm\fR" 4 .IX Item "--contact-sheet-thm or --cs-thm" Files for the montage are already thumbnails .PP Options bellow are native ImageMagic montage options look ImageMagick documentation for montage options: \fImontage \-\-help\fR and \&\fIhttp://www.imagemagick.org/\fR .PP Note please, for \fI\s-1COLOR\s0\fR use \s-1RGB\s0 triplets only like \fI000\fR for the \fIblack\fR or \fIF00\fR for the \fIred\fR. .IP "\fB\-\-contact\-sheet\-tile\fR or \fB\-\-cs\-tile\fR \fI\s-1GEOMETRY\s0\fR" 4 .IX Item "--contact-sheet-tile or --cs-tile GEOMETRY" Tile MxN (\s-1IM:\s0 \-tile) .IP "\fB\-\-contact\-sheet\-title\fR or \fB\-\-cs\-title\fR \fI\s-1STRING\s0\fR" 4 .IX Item "--contact-sheet-title or --cs-title STRING" Set the title of the contact sheet (\s-1IM:\s0 \-title). .IP "\fB\-\-contact\-sheet\-bg\fR or \fB\-\-cs\-bg\fR \fI\s-1COLOR\s0\fR" 4 .IX Item "--contact-sheet-bg or --cs-bg COLOR" Background color (\s-1IM:\s0 \-background). .IP "\fB\-\-contact\-sheet\-bd\fR or \fB\-\-cs\-bd\fR \fI\s-1COLOR\s0\fR" 4 .IX Item "--contact-sheet-bd or --cs-bd COLOR" Border color (\s-1IM:\s0 \-bordercolor). .IP "\fB\-\-contact\-sheet\-mt\fR or \fB\-\-cs\-mt\fR \fI\s-1COLOR\s0\fR" 4 .IX Item "--contact-sheet-mt or --cs-mt COLOR" Frame color (\s-1IM:\s0 \-mattecolor). .IP "\fB\-\-contact\-sheet\-fn\fR or \fB\-\-cs\-fn\fR \fI\s-1STRING\s0\fR" 4 .IX Item "--contact-sheet-fn or --cs-fn STRING" Render text with this font (\s-1IM:\s0 \-font). .IP "\fB\-\-contact\-sheet\-fl\fR or \fB\-\-cs\-fl\fR \fI\s-1COLOR\s0\fR" 4 .IX Item "--contact-sheet-fl or --cs-fl COLOR" Color to fill the text (\s-1IM:\s0 \-fill). .IP "\fB\-\-contact\-sheet\-lb\fR or \fB\-\-cs\-lb\fR \fI\s-1STRING\s0\fR" 4 .IX Item "--contact-sheet-lb or --cs-lb STRING" Assign a label to an image (\s-1IM:\s0 \-label). .IP "\fB\-\-contact\-sheet\-fr\fR or \fB\-\-cs\-fr\fR \fI\s-1GEOMETRY\s0\fR" 4 .IX Item "--contact-sheet-fr or --cs-fr GEOMETRY" Surround image with an ornamental border in N pixels (\s-1IM:\s0 \-frame). .IP "\fB\-\-contact\-sheet\-pntsz\fR or \fB\-\-cs\-pntsz\fR \fI\s-1NUMBER\s0\fR" 4 .IX Item "--contact-sheet-pntsz or --cs-pntsz NUMBER" Font point size (\s-1IM:\s0 \-pointsize). .IP "\fB\-\-contact\-sheet\-shadow\fR or \fB\-\-cs\-shadow\fR" 4 .IX Item "--contact-sheet-shadow or --cs-shadow" Set the shadow beneath a tile to simulate depth (\s-1IM:\s0 \-shadow). .IP "\fB\-\-contact\-sheet\-thm\-fl\fR or \fB\-\-cs\-thm\-fl\fR \fI\s-1COLOR\s0\fR" 4 .IX Item "--contact-sheet-thm-fl or --cs-thm-fl COLOR" Color to fill the text in generated thumbnail. .IP "\fB\-\-contact\-sheet\-thm\-fn\fR or \fB\-\-cs\-thm\-fn\fR \fI\s-1STRING\s0\fR" 4 .IX Item "--contact-sheet-thm-fn or --cs-thm-fn STRING" Render the generated thumbnail text with this font (\s-1IM:\s0 \-font). .IP "\fB\-\-contact\-sheet\-thm\-grfr\fR or \fB\-\-cs\-thm\-grfr\fR \fI\s-1COLOR\s0\fR" 4 .IX Item "--contact-sheet-thm-grfr or --cs-thm-grfr COLOR" Generated thumbnail background gradient COLOR-from .IP "\fB\-\-contact\-sheet\-thm\-grto\fR or \fB\-\-cs\-thm\-grto\fR \fI\s-1COLOR\s0\fR" 4 .IX Item "--contact-sheet-thm-grto or --cs-thm-grto COLOR" Generated thumbnail background gradient COLOR-to .IP "\fB\-\-contact\-sheet\-thm\-text\fR or \fB\-\-cs\-thm\-text\fR \fI\s-1STRING\s0\fR" 4 .IX Item "--contact-sheet-thm-text or --cs-thm-text STRING" Generated thumbnail text .IP "\fB\-\-contact\-sheet\-rank\fR or \fB\-\-cs\-rank\fR" 4 .IX Item "--contact-sheet-rank or --cs-rank" Run ranking process according to the ranks defined with \&\fB\-\-contact\-sheet\-rank\-file\fR The result is the colored frames of the thumbnails of contact sheets. .IP "\fB\-\-contact\-sheet\-rank\-file\fR or \fB\-\-cs\-rank\-file\fR" 4 .IX Item "--contact-sheet-rank-file or --cs-rank-file" Path to the file with ranks. Its format is a \*(L"file rankcolor\*(R" per line. Filename separated from the color by space or tabulation. .RS 4 .Sp .RS 4 01.file.jpg red .Sp 02.JPG CornflowerBlue .Sp 03.jpg aquamarine .Sp 04.file.JPG green .RE .RE .RS 4 .Sp Only the files found in the file will be ranked. .RE .SH "\fBKEYWORDIZER\fP" .IX Header "KEYWORDIZER" .IP "\fB\-\-keywords\fR, \fB\-\-no\-keywords\fR" 4 .IX Item "--keywords, --no-keywords" Whether to fill Keywords tag. Default is to not. Be careful, since with this option enabled, the existing keywords are rewriten. The keywords are taken from \&\fI.keywords\fR file or file specified with option \fB\-\-keywords\-file\fR. .IP "\fB\-k\fR or \fB\-\-keywords\-file\fR \fI\s-1FILE\s0\fR" 4 .IX Item "-k or --keywords-file FILE" Path to the file with keywords. Its format is a keyword per line. The \s-1CR\s0 and \&\s-1LF\s0 symbols are removed. Empty (only whitespace) lines are ignored. Any leading and trailing whitespace is removed. For example, the line \f(CW\*(C` _Test_ CRLF\*(C'\fR is read as \f(CW\*(C`_Test_\*(C'\fR. .IP "\fB\-\-keywords\-replace\fR, \fB\-\-no\-keywords\-replace\fR" 4 .IX Item "--keywords-replace, --no-keywords-replace" Replace existing Keywords tag list rather than add new values to it. Default is not to replace. .SH "\fBRENAMING\fP" .IX Header "RENAMING" .IP "\fB\-n\fR or \fB\-\-name\-template\fR \fI\s-1TEMPLATE\s0\fR" 4 .IX Item "-n or --name-template TEMPLATE" A template to use for creating new file names while renaming. It can also be defined in the configuration file (variable Name Template). The default is \&\fI\f(CI%Y\fI%m%d%H%M%S\fR. For practical uses, see \*(L"\s-1TEMPLATE EXAMPLES\*(R"\s0 section. .Sp Interpreted sequences are: .RS 4 .Sp .RS 4 \&\fB%%\fR a literal % .Sp \&\fB%#\fR a literal # .Sp \&\fB\f(CB%C\fB\fR Numeric part of the original file name. Implemented for the sake of cameras, that do not supply FileNumber \s-1EXIF\s0 tag (currently all makes, except \fICanon\fR). Such cameras generate file names starting with letters and ended with digits. No other symbols are allowed in file names, except \&\f(CW\*(C`\-\*(C'\fR, \f(CW\*(C`.\*(C'\fR and \f(CW\*(C`_\*(C'\fR. .Sp \&\fB\f(CB%c\fB\fR Ordinal number of file in the processed file set (see also \&\fB\-\-counter\-fixed\-field\fR option). .Sp \&\fB\f(CB%d\fB\fR Day of month (01\-31). .Sp \&\fB\f(CB%E\fB\fR The value of ExposureTime tag, if defined. .Sp \&\fB\f(CB%e\fB\fR Old file extension .Sp \&\fB\f(CB%F\fB\fR The value of FNumber tag, if defined. .Sp \&\fB\f(CB%H\fB\fR Hour (00\-23). .Sp \&\fB\f(CB%I\fB\fR The value of \s-1ISO\s0 tag, if defined. .Sp \&\fB\f(CB%i\fB\fR FileNumber tag if exists (otherwise, it is replaced by string \&\f(CW\*(C`NA\*(C'\fR). .Sp \&\fB\f(CB%M\fB\fR Minute (00\-59). .Sp \&\fB\f(CB%m\fB\fR Month (01\-12). .Sp \&\fB\f(CB%n\fB\fR Previous filename (the one before \fBrenrot\fR started processing). .Sp \&\fB\f(CB%O\fB\fR Base part of the original filename (see \fB\f(CB%o\fB\fR). In other words, the first part from the beginning to the last dot character. .Sp \&\fB\f(CB%o\fB\fR The name file had before it was processed by \fBrenrot\fR for the first time. If the file was processed only once, the tag RenRotFileNameOriginal is set to the original file name. .Sp \&\fB\f(CB%S\fB\fR Second (00\-59) .Sp \&\fB\f(CB%W\fB\fR The value of WhiteBalance tag, if defined. .Sp \&\fB\f(CB%Y\fB\fR Year with the century (1900, 1901, and so on) .Sp \&\fB\f(CB%y\fB\fR Year without a century (00..99) .Sp You can use value of any \s-1EXIF\s0 tag to be included as name part. To do that you need to embrace tag name with sign \fB\*(L"#\*(R"\fR, while building name template (see \*(L"\s-1TEMPLATE EXAMPLES\*(R"\s0). .Sp Be careful, since any binary \s-1EXIF \s0(like ThumbnaiImage) can produce totally unexpected results. .RE .RE .RS 4 .RE .IP "\fB\-\-no\-rename\fR" 4 .IX Item "--no-rename" Do not rename files (default is to rename them to YYYYmmddHHMMSS.ext) .IP "\fB\-\-counter\-fixed\-field\fR, \fB\-\-no\-counter\-fixed\-field\fR" 4 .IX Item "--counter-fixed-field, --no-counter-fixed-field" Set fixed length for file counter, used in file name templates (see \fB\f(CB%c\fB\fR). It is enabled by default. Use \fB\-\-no\-counter\-fixed\-field\fR to undo its effect. .IP "\fB\-\-counter\-start\fR \fI\s-1NUMBER\s0\fR" 4 .IX Item "--counter-start NUMBER" Initial value for the file counter (default is \fI1\fR) .IP "\fB\-\-counter\-step\fR \fI\s-1NUMBER\s0\fR" 4 .IX Item "--counter-step NUMBER" Step to increment file counter with (default is \fI1\fR) .SH "\fBROTATING\fP" .IX Header "ROTATING" .IP "\fB\-r\fR or \fB\-\-rotate\-angle\fR \fI\s-1ANGLE\s0\fR" 4 .IX Item "-r or --rotate-angle ANGLE" Define the angle to rotate files and thumbnails. Allowed values for \fI\s-1ANGLE\s0\fR are 90, 180 or 270. It is useful for files not having Orientation tag. .IP "\fB\-\-rotate\-thumb\fR \fI\s-1ANGLE\s0\fR" 4 .IX Item "--rotate-thumb ANGLE" Rotate only thumbnails. Allowed values for \fI\s-1ANGLE\s0\fR are 90, 180 or 270 degrees. Use if the files which were already rotated, but their thumbnails were not. .IP "\fB\-\-only\-orientation\fR" 4 .IX Item "--only-orientation" Rotate by changing the value of Orientation tag, no real rotation will be made. The sequence of values to rotate an image from normal (0 degrees) by 90 degrees clockwise is: 0 \-> 90 \-> 180 \-> 270 \-> 0. It means. set Orientation tag to 90cw after the first rotation, and increase that value by 90 each time the rotation is applied. For 270cw the rotation algorithm uses the reverted sequence. Rotation by 180cw triggers values in two pairs: 0 <\-> 180 and 90 <\-> 270. This option cannot be applied to mirror values of Orientation tag. .IP "\fB\-\-trim\fR, \fB\-\-no\-trim\fR" 4 .IX Item "--trim, --no-trim" Pass the \f(CW\*(C`\-trim\*(C'\fR option to \fIjpegtran\fR\|(1), to trim if needed. By default, trimming is enabled. Use \fB\-\-no\-trim\fR to disable it. .IP "\fB\-\-no\-rotate\fR" 4 .IX Item "--no-rotate" Do not rotate images (default is to rotate according to \s-1EXIF\s0 data). .SH "\fBTAG WRITER\fP" .IX Header "TAG WRITER" .IP "\fB\-\-comment\-file\fR \fI\s-1FILE\s0\fR" 4 .IX Item "--comment-file FILE" File with commentaries. It is a low priority alias to \fITagFile = Comment: \s-1FILE\s0\fR. .IP "\fB\-\-user\-comment\fR \fI\s-1STRING\s0\fR" 4 .IX Item "--user-comment STRING" A low priority alias to \fI\-\-tag UserComment: \s-1STRING\s0\fR .IP "\fB\-t\fR or \fB\-\-tag\fR \fI\s-1TAG\s0\fR" 4 .IX Item "-t or --tag TAG" See the section \*(L"\s-1TAGS\*(R"\s0, for the detailed description .IP "\fB\-\-no\-tags\fR" 4 .IX Item "--no-tags" No user's defined tags will be written. .SH "\fBTEMPLATE EXAMPLES\fP" .IX Header "TEMPLATE EXAMPLES" The name template \f(CW\*(C`01.%c.%Y%m%d%H%M%S.%i.shtr\-%E.f\-%F.wb\-%W.iso\-%I\*(C'\fR (where \&\fIF\fR stays for FNumber, \fIE\fR for ExposureTime, \fII\fR for \s-1ISO\s0 and \fIW\fR for WhiteBalance) can produce the following names: .Sp .RS 4 01.0021.20030414103656.NA.shtr\-1by40.f\-2.8.wb\-Auto.iso\-160.jpg .Sp 01.0024.20040131230857.100\-0078.shtr\-1by320.f\-2.8.wb\-Auto.iso\-50.jpg .Sp 01.0022.20000820222108.NA.jpg .RE .PP The name template \&\f(CW\*(C`01.%c.%Y%m%d%H%M%S.%i.shtr\-#ExposureTime#.f\-#FNumber#.wb\-#WhiteBalance#.iso\-#ISO#\*(C'\fR can produce the following names: .Sp .RS 4 01.0021.20030414103656.NA.shtr\-1_40.f\-2.8.wb\-Auto.iso\-160.jpg .Sp 01.0024.20040131230857.100\-0078.shtr\-1_320.f\-2.8.wb\-Auto.iso\-50.jpg .Sp 01.0022.20000820222108.NA.jpg .RE .PP The aggregation template \f(CW\*(C`%Y%m%d\*(C'\fR produces the following aggregation: .PP these three files .Sp .RS 4 01.11.20030414103656.NA.jpg .Sp 01.12.20030414103813.NA.jpg .Sp 01.13.20030414103959.NA.jpg .RE .PP will be stored in the directory \fI20030414\fR, and .Sp .RS 4 01.14.20040131130857.100\-0078.jpg .Sp 01.15.20040131131857.100\-0079.jpg .Sp 01.16.20040131133019.100\-0080.jpg .RE .PP will be stored in the directory \fI20040131\fR. .SH "CONFIG" .IX Header "CONFIG" A configuration file can be used to set some variables. \fBRenrot\fR looks for its configuration file, named \fIrenrot.conf\fR, in system configuration directories \fI/etc/renrot\fR and \fI/usr/local/etc/renrot\fR, and in subdirectory \&\fI.renrot\fR. of the current user home directory. An alternate configuration file can also be explicitly given using the \fB\-\-config\-file\fR option. .PP The configuration file consists of a set of case-insensive keywords and their values separated by equal sign. Each such keyword/value pair occupies a separate line. Boolean variables can have one of the following values: 0, No, False, Off, Disable for false, and 1, Yes, True, On, Enable for true. .PP The variables defined for use in the configuration file are, for example: .IP "\fBmtime\fR" 4 .IX Item "mtime" Set to \f(CW\*(C`Yes\*(C'\fR for synchronize mtime with tags, otherwise set it to \f(CW\*(C`No\*(C'\fR. .IP "\fBname template\fR" 4 .IX Item "name template" File name template (see \fB\-\-name\-template\fR, for the description). .IP "\fBtrim\fR" 4 .IX Item "trim" Set to \f(CW\*(C`Yes\*(C'\fR to trim rotated images when using \fIjpegtran\fR\|(1). .IP "\fBaggregation mode\fR" 4 .IX Item "aggregation mode" Aggregation mode, possible values are: none, delta or template. .IP "\fBaggregation template\fR" 4 .IX Item "aggregation template" Aggregation template, which defines the file aggregation (see \&\fB\-\-aggr\-template\fR, for the description). .IP "\fBaggregation virtual\fR" 4 .IX Item "aggregation virtual" Defines virtualization for the existing aggregation modes (see the \&\fB\-\-aggr\-virtual\fR option). .IP "\fBTag\fR, \fBTagFile\fR" 4 .IX Item "Tag, TagFile" Refer to the section \*(L"\s-1TAGS\*(R"\s0, for the detailed description .IP "\fBinclude\fR" 4 .IX Item "include" Include the named file. .SH "TAGS" .IX Header "TAGS" A \fI\s-1TAG\s0\fR is defined by the following combination: \fITagName [Group]: 'value'\fR. The defined tags are selected to be set and writen to the \s-1EXIF\s0 tree using the command line option \fB\-\-tag\fR and/or configuration file options \fBTag\fR. .PP The syntax of the command line option \fB\-\-tag\fR is: .Sp .RS 4 \&\fB\-\-tag\fR \fITagName [Group]: 'value'\fR .RE .PP The syntax of the configuration file option \fBTag\fR: .Sp .RS 4 \&\fBTag\fR = \fITagName [Group]: 'value'\fR .RE .PP The parameters \fITagName\fR and \fIGroup\fR are passed to ExifTool as is. The name of the group must be enclosed in square brackets. Its \fIvalue\fR (after the semicolon) can be enclosed in single quotes. .PP The TagFile keyword allows to set multi-line tags from a file. Its syntax is: .Sp .RS 4 \&\fBTagFile\fR = \fITagName [Group]:\fR \fI\s-1FILE\s0\fR .RE .PP The following table summarizes the tags that can be used with the \fB\-\-tag\fR option and \fBTag\fR keyword: .IP "\fBCopyright\fR" 4 .IX Item "Copyright" Copyright notes. .IP "\fBComment\fR" 4 .IX Item "Comment" General comment. .IP "\fBUserComment\fR" 4 .IX Item "UserComment" Anything you would like to put as a comment. .IP "\fBCreatorContactInfoCiAdrCity\fR" 4 .IX Item "CreatorContactInfoCiAdrCity" A city tag. .IP "\fBCreatorContactInfoCiAdrCtry\fR" 4 .IX Item "CreatorContactInfoCiAdrCtry" A country tag. .IP "\fBCreatorContactInfoCiAdrExtadr\fR" 4 .IX Item "CreatorContactInfoCiAdrExtadr" Extended address (usually includes street and apartment number). .IP "\fBCreatorContactInfoCiAdrPcode\fR" 4 .IX Item "CreatorContactInfoCiAdrPcode" Zip code. .IP "\fBCreatorContactInfoCiAdrRegion\fR" 4 .IX Item "CreatorContactInfoCiAdrRegion" Region. .IP "\fBCreatorContactInfoCiEmailWork\fR" 4 .IX Item "CreatorContactInfoCiEmailWork" Email. .IP "\fBCreatorContactInfoCiTelWork\fR" 4 .IX Item "CreatorContactInfoCiTelWork" Phone number. .IP "\fBCreatorContactInfoCiUrlWork\fR" 4 .IX Item "CreatorContactInfoCiUrlWork" \&\s-1URL.\s0 .PP Additionally, you can add any known tag here, using \fBTag\fR or \fBTagFile\fR options as described above. .SH "FILES" .IX Header "FILES" .IP "\(bu" 4 The main configuration file \fBrenrot.conf\fR is searched in the following locations (in the order of their appearance): .RS 4 .IP "\fB~/.renrot/\fR" 4 .IX Item "~/.renrot/" directory under user's home place .IP "\fB/usr/local/etc/renrot/\fR" 4 .IX Item "/usr/local/etc/renrot/" system directory .IP "\fB/etc/renrot/\fR" 4 .IX Item "/etc/renrot/" system directory .RE .RS 4 .Sp Take into consideration, the files which are found will be loaded and parsed in the order when user's configuration has maximal priority. .RE .IP "\(bu" 4 Other configuration files with additional options could be included into main file: .RS 4 .IP "\fBcolors.conf\fR" 4 .IX Item "colors.conf" colors setup for different output facilities .IP "\fBtags.conf\fR" 4 .IX Item "tags.conf" different tags setup .RE .RS 4 .RE .IP "\(bu" 4 The following files could be placed locally in the working directory: .RS 4 .IP "\fB.keywords\fR" 4 .IX Item ".keywords" file with keywords (see \fB\-\-keywords\-file\fR) .IP "\fB.rank\fR" 4 .IX Item ".rank" file with ranks (see \fB\-\-contact\-sheet\-rank\-file\fR) .RE .RS 4 .RE .SH "BUGS" .IX Header "BUGS" If you found some bug or have some nice propositions, you are welcome. Additionally, please, read the section \s-1RESTRICTIONS\s0 in file \s-1README.\s0 .IP "1." 4 It seems that on FreeBSD 6, Perl versions 5.8.x exhibits a bug that causes \&\fBrenrot\fR to crash. The overal amount of memory for the perl process increasing up to the user datasize limit (in FreeBSD default is 512M). .Sp It seems to be a bug in perl's own malloc implementation. The bug should not occur in any perl which uses the system malloc (unless the system malloc has the same bug). .Sp \&\fBrenrot\fR aborts with the error message: .RS 4 .Sp .RS 4 Out of memory during \*(L"large\*(R" request for \s-1XXXX\s0 bytes ... .RE .RE .RS 4 .Sp This, however, does not happen with Perl v.5.6.x .RE .IP "2." 4 Some versions of ImageMagick render contact sheets incorrectly. it seems it is the question to ImageMagick. .SH "AUTHORS" .IX Header "AUTHORS" Copyright 2005\-2012, Zeus Panchenko, Andy Shevchenko. .PP This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIImage::ExifTool\fR\|(3pm), \&\fIexiftool\fR\|(1), \&\fIjpegtran\fR\|(1), \&\fIImage::Magick\fR\|(3pm)