File Index Builder 4.52 *Perl version*
Config file keywords


Output files

Output file
In this file Main filelist will be stored. If directory is not found, FileNdx attempts to create it. If name is empty, file is not created.

NewOutput file
In this file New files list will be stored. If directory is not found, FileNdx attempts to create it. If name is empty, file is not created.

BestOutput file
In this file Best files list will be stored. If directory is not found, FileNdx attempts to create it. If name is empty, file is not created.

BinOutput file
This file will be used as binary filelist, used in New files checking and by FreqMgr program. If directory is not found, FileNdx attempts to create it. If name is empty, file is not created.

AreaFile file_name_template
If MultipleFile includes Normal, this template determines file name for a single area file for Main filelist.

NewAreaFile file_name_template
If MultipleFile includes New, this template determines file name for a single area file for New files list.

Log file
This file will be used for error logging. If it is prefixed with ">", then it will be appended on every program start instead of overwriting it.


Area configuration, files to process

Area Tag Path[,Access_Level] Description
Specifies an area to scan.
Tag must be unique.
If AccessLevel is omitted, DefaultAccessLevel is used.
Path must end with slash (or other path delimiter).

SubArea
Same as Area, but specifies Sub-Area.

OfflineArea Tag ListFile[,Access_Level] Description
Same as Area, but specifies an offline area. Each line in ListFile should have the following format:

FileName Size Date Time [Counter] Description, where

FileName containing spaces should be enclosed in double quotes
Size is a plain number
Date has format: DD/MM/[YY]YY or DD.MM.[YY]YY
Time has format: HH:MM[:SS]

Exclude filemask...
All files matching any of specified masks will be ignored in directory scanning and log processing.

ExcludeDescription string
Files with description matching string will be excluded from processing.


Template files

Header File
Specified file is used as Main filelist header template.

Footer File
Specified file is used as Main filelist footer template.

NewHeader File
Specified file is used as a header template for New files list.

NewFooter File
Specified file is used as a footer template for New files list.

BestHeader File
Specified file is used as a header template for Best files list.

BestFooter File
Specified file is used as a footer template for Best files list.

AreaStart File
Specifies file to use as area start template.

SubAreaStart File
Specifies file to use as sub-area start template.

AreaEnd File
Specifies file to use as area end template.

SubAreaEnd File
Specifies file to use as sub-area end template.

AreaListStart File
This file will be used as area list start template in Main filelist.

AreaListEnd File
This file will be used as area list end template in Main filelist.

NewAreaListStart File
This file will be used as area list start template in New files list.

NewAreaListEnd File
This file will be used as area list end template in New files list.


Line templates

FileFormat Format_Line
This line will be used for single file line in Main filelist.

FileFormatCont Format_Line
This line will be used for continuing file description in Main filelist if description does not fit on single line.

LFNFileFormat Format_Line
This line will be used for single file line in Main filelist, if file name length is greater than MaxSFNLength.

LFNFileFormatCont Format_Line
This line will be used for continuing file description in Main filelist if description does not fit on single line, if file name length is greater than MaxSFNLength.

 

NewFileFormat Format_Line
This line will be used for single file line in New files list.

NewFileFormatCont Format_Line
This line will be used for continuing file description in New files list if description does not fit on single line.

NewLFNFileFormat Format_Line
This line will be used for single file line in New files list, if file name length is greater than MaxSFNLength.

NewLFNFileFormatCont Format_Line
This line will be used for continuing file description in New files list if description does not fit on single line, if file name length is greater than MaxSFNLength.

 

BestFileFormat Format_Line
This line will be used for single file line in Best files list.

BestFileFormatCont Format_Line
This line will be used for continuing file description in Best files list if description does not fit on single line.

BestLFNFileFormat Format_Line
This line will be used for single file line in Best files list, if file name length is greater than MaxSFNLength.

BestLFNFileFormatCont Format_Line
This line will be used for continuing file description in Best files list if description does not fit on single line, if file name length is greater than MaxSFNLength.

AreaListItem String
This string will be used as a template for area list item in Main filelist.

SubAreaListItem String
This string will be used as a template for sub-area list item in Main filelist.

OfflineAreaListItem String
This string will be used as a template for offline area list item in Main filelist.

NewAreaListItem String
This string will be used as a template for area list item in New files list.

NewSubAreaListItem String
This string will be used as a template for sub-area list item in New files list.

NewOfflineAreaListItem String
This string will be used as a template for offline area list item in New files list.


Other output formatting

IncludeEmpty Yes/No
Specifies whether empty areas should be included in output files.

MarkNewFiles Yes/No
Specifies whether new files will be marked in main file list.

AddCopyright Yes/No
If AddCopyright is On, small copyright message will be appended to main output files.

WrapLongDescription Yes/No/Line
If WrapLongDescription is Yes, description is always wrappable.
If WrapLongDescription is No, description is never wrapped.
If WrapLongDescription is Line, only single-line description is wrappable.

DescWidth Number
Width of description field in Main filelist. Used if WrapLongDescription specifies that description is to be wrapped.

NewDescWidth Number
Width of description field in New files list. Used if WrapLongDescription specifies that description is to be wrapped.

BestDescWidth Number
Width of description field in Best files list. Used if WrapLongDescription specifies that description is to be wrapped.

IncludeAreaList Yes/No/Normal/New
Specifies whether area list is to be added in cerain list.

MultipleFile Yes/No
Specfies whether areas in filelist are to be located in different files. See AreaFile, NewAreaFile.

SFNCase None(=Preserve)/Upper/Lower/Capitalize
Specifies how short filename case is changed.

LFNCase None(=Preserve)/Upper/Lower/Capitalize
Specifies how long filename case is changed.

NewMark String
%I parameter in file template will expand to this string, if file is New.

NotNewMark String
%I parameter in file template will expand to this string, if file is not New.

MaxSFNLength Number
Specifies maximal file name length to be consideres as Short.

SizeLimit1 Number
Specifies file size boundary before which size will be in bytes, followed by SizeTag1. Otherwize SizeLimit2 is used.

SizeLimit2 Number
Specifies file size boundary before which size will be in kilobytes, followed by SizeTag2. Otherwie size is in megabytes, followed by SizeTag3.

SizeTag1 string
This string will be appended to file size, whan it is presented in bytes. See SizeLimit1, SizeLimit2.

SizeTag2 string
This string will be appended to file size, whan it is presented in kilobytes. See SizeLimit1, SizeLimit2.

SizeTag3 string
This string will be appended to file size, whan it is presented in megabytes. See SizeLimit1, SizeLimit2.

DateFormat Format_Line
This line specifies format with which date values will be displayed.

AddDirInfo Yes/No/(Normal|New|Best)
Specifies whether contents of Dirinfo files are to be added in certain list.

DirInfo filename...
These files will be used as DirInfo files - if AddDirInfo permits, their contents will be added directly after area header.


New and Best files specific

NewFileDays Number
File is considered new, if its modification date is less than number days before current or it has been for the first time scanned less than number days before.

BestFiles Number
No more than number files will appear in Best files list.

PromptForNew Yes/No/Auto/Manual
If file has no description, then:
a) If PromptForNew is Yes or Auto and Descriptor is found for this file, it is used to determine description.
b) If PromptForNew is Yes or Manual, user is prompted to enter description.

DefaultDescription string
This will be used as default desctiption for file, if user input is disabled.

ExcludeFromNew areamask...
All areas with tag matching any of specified masks will not appear in New files list.

ExcludeFromBest
All areas with tag matching any of specified masks will not appear in Best files list.


User variables and conditional configuring

Set Variable[=]Value
Assign a value to a variable.

DefSet Variable[=]Value
Assign a value to a variable, if it was not yet assigned. Equivalent to:

IfnDef Variable Set Variable=Value

UnSet or UnDef Variable
Undefines a variable.

IfDef Variable Config_String
Use specified config string, if variable is defined.

IfnDef Variable Config_String
Use specified config string, if variable is not defined.

If Condition Config_String
Use specified config string, if condition evaluates to TRUE. Condition can include any arithmetic, bitwise and comparison operators, as well as any defined Perl functions.

Unless Condition Config_String
Use specified config string, if condition evaluates to FALSE. Condition can include any arithmetic, bitwise and comparison operators, as well as any defined Perl functions.


FILES.BBS processing

ListFile filename
This file (usually FILES.BBS) is used to store file descriptions and download counts. It is created in the directory where files from certain area are located.

SmartListUpdate Yes/No
Specifies whether FILES.BBS will be updated every time or only when needed.

DeleteNonExisting Yes/No
Specifies whether not existing files should be deleted from FILES.BBS.

UseMultiLineChar Yes/No
If Yes, then multi-line descriptions in FILES.BBS will start from character specified in MultiLineChar, otherwise they will be aligned to LDescStart symbols from line start, e.g:

---- UseMultiLineChar No ------

	YACL0160.ZIP [000] Yet Another Class Library (GNU, Visual, Watcom, Borland,
	                   IBM, EMX, SGI, Sun native C++)
---- UseMultiLineChar Yes --- MultiLineChar > ---

	YACL0160.ZIP [000] Yet Another Class Library (GNU, Visual, Watcom, Borland,
	>IBM, EMX, SGI, Sun native C++)
MultiLineChar character
This character will be used to mark long descriptions in FILES.BBS. See UseMultiLineChar.

LDescStart number
Specifies position to which description is aligned in FILES.BBS.

ListFileCounter number
If number>0, then download counter will be included in FILES.BBS in form [000], using number digits.


Log analyzing

LogAnalyzer Yes/No
If LogAnalyzer is on, FileNdx will attempt to find files that were requested from your system using mailer or BBS log. See also: AnalyzeLog, LogString.

AnalyzeLog file...
If LogAnalyzer is On, these files will be treated as mailer/BBS logs and will be searched for files that were requested from you system. See LogString.

LogString n1 n2 regexp
When looking through log files, regexp will be matched with any line in the file, and if it matches, parameter with number n2 will be treated as file name and parameter with number n1 will stand for unique identifier of this very file transfer, usually date and time.

LogBinary File
In this file filenames detected in logs will be stored to prevent them being counted more than once.


Other

VersionStamp major.minor
Specifies version of FileNdx for which config file has been created. Currently not used, but ater versions can make use of it.

Include File
Read file as a config file.

Verbose Yes/No
In Verbose mode FileNdx will print what is it doing now.

WaitInput number
Specifies time in seconds, for which FileNdx will wait for user input.
WARNING! This option is NOT working yet!

AccessLevel number[=]Description
Specifies names for different access levels. If no exact number os found upon lookup, lext lower is used.

DefaultAccessLevel number
Specifies default access level for an area.

ProcessPath pattern_match
Used to create %P parameter in file and area templates.
For every $Path operation '$Path=~pattern_match' is done.
Useful to convert paths to UNIX-like style, remove leading path part etc.

Descriptor [filemask ... =]Program CommandLine[,OutFile]
Used to automatically generate file descriptions.
If no filemasks are given, '*' (all files) is assumed.
Then Program is run, expanding %N to the name of file to describe, %F to name with path and %P to path only.
If OutFile is specified, then its contents are used as file description, otherwise Program's STDOUT is used.