home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.wwiv.com
/
ftp.wwiv.com.zip
/
ftp.wwiv.com
/
pub
/
BBS
/
LLIST102.ZIP
/
LLIST.DOC
< prev
next >
Wrap
Text File
|
1995-01-17
|
28KB
|
590 lines
■ L-List ■
──────────
(C) 1994 Alessandro Trebbi, All Rights Reserved
L-List is not a free software !!! L-List is ShareWare: you can try
it, and if you decide to use it after a short period of evaluation
(about 1 month), you must register . L-List required many hours
of work: if you like it and would like to support me in developing
this and other similar products, please register. See
Register.Frm for more details.
■ Contents ■
───────────
You should have found following files in L-List package:
* LLIST.EXE Executable
* LLISTCFG.ZIP Example of configuration files, to be edited
* LLIST.DOC This file
* SCAN_CD.EXE Utility, see appendice
* REGISTER.FRM Info about registration
* FILE_ID.DIZ Package description
* WHATSNEW.nnn Last changes
These files are created by L-List for internal use:
* LLIST.TIM Date for Announces
* FSEARCH.DUP Searchs already done
* TIC.DUP Files already sent
* LLIST.DB List of announced files
These files are created by L-List for your use:
* LLIST.BAD Msg that could not be posted
* LLIST.LOG Log file (can be renamed, setting environment
variable LLISTLOG)
■ Install ■
───────────
Make a directory, named LLIST, and unpack there all files in the
distribution package; L-List must be able to locate your file-area
configuration files (if you use it with a Bbs); this can be easily
made setting dos environment variable LORA, RA or MAX, or setting
it in keyword BbsDir of LList.Cfg. If you have no Bbs (or a Bbs
that is not supported), run Scan_Cd to import file areas from your
HD & CD. Now L-List is ready to run, enjoy it!
■ Abstract ■
───────────
What does L-List do? Really a lot of things... mainly it is
designed to make file lists and edit your Files.Bbs, but it can
announce new files, make searches in your file base using msg (in
AllFix or FSearch style), compile other kinds of useful lists (for
example, a list of dupes files), can rewrite your Files.Bbs to let
you make a batch maintenance, can keep an index file of all your
files (used by Lora for file request), can process TIC files.
The first time you run L-List, you will subscribe the terms for
evaluation period (up to 30 days); at the end of this period, you
can choice between registering the software or deleting it, if you
think that it is not useful; however, you can distribute the
original archive, if you do not modify it and if no additional
cost is required (except distribution expenses). You can insert
this archive (with no modification) in any shareware collection
(Cd-Rom, for example), but please let me know about it.
No warranty of any kind is given with this program.
■ Supported BBS ■
─────────────────
L-List reads directly info from several configuration files; it
can use Lora's SysFile.Dat (2.35), SuperBbs' FlSearch.Bbs (1.16),
Remote Access' Files.Ra (2.01), Maximus' Area.Dat (2.00) and
QuickBbs' FileCfg.Dat (2.75). The number between parenthesis is
the version supported (of course, every version compatible will be
as well). You can force selection of one of these files
(overriding detect phase) using parameter LORA/SBBS/RA/MAX/QBBS in
command line (however, you should better define a supported
environment variable, RA MAX or LORA, see after); if RA
environment variable is found, L-List assumes you are using RA and
its value is stored in BbsDir (overriding value defined in
LList.Cfg with BbsDir keyword); if LORA environment variable is
found, L-List assumes you are using LORA and its value is stored
in BbsDir. This is very useful in multitasking environments, if
you have different directories for your Bbs installations.
If you are running another Bbs, you can use utility Scan_Cd, that
will create configuration file for Lora Bbs (that is, SysFile.Idx
and SysFile.dat) that are fully supported; look at the appendice
(at the end of this document) for details.
■ Configuring L-List ■
──────────────────────
L-List uses a configuration file, where it will get parameters to
run; most of them can be re-defined by command line (see next
section).
If you don't use extended options, which need msg area
definitions, L-List will run even without its config file, using
default parameters; anyway, you should better edit example .Cfg
(contained in LLISTCFG.ZIP); no matter with it; large comments are
provided to help you in this work. In this way you will obtain
better performances.
■ Running L-List ■
──────────────────
L-List can be run in several ways; using options in command line,
you can choice its way to operate; running L-List with no options
will let you edit your Files.Bbs, any wrong option will let you
get a brief screen with summary of available options.
Some general options can be defined in command line to select
areas and type of files to list:
AREA <n>|<n1-n2> [<n>|<n1-n2>]
Adds the file area specified by <n> [<n>], or in the range
specified by <n1-n2> [<n1-n2>]... this command can be specified
more than once, first area is 0 and last 32767. Using Lora, area
number can be different from the record position in config file,
as L-List uses area number specified in the area file
configuration.
GROUP <n>|<n1-n2> [<n>|<n1-n2>]
Same as AREA option; select groups to list.
MAXLEV <n>
L-List will discard file areas whose level is greater then
specified level in numeric form. Can't be greater of MaxLev
command in LList.Cfg.
NEWDAYS <n>
This option overwrites the parameter defined in config file (look
at it for details). Can be used with n=0 if you don't want to
generate new files list, with n>0 will be used as max number of
days that a file must have to be inserted in new files list.
ORY (ORN)
OFY (OFN)
OTY (OTN)
These options will let you select the kind of files to list: L-
List knows 3 kinds of files, which are ORFANI (presents in the
download directory and not listed in Files.Bbs and which do not
match any of EXCLUDE parameters defined in config file), OFFLINE
(listed in Files.Bbs but not present in download directory), and
other files (files which are not orfani and are not offline).
Each of these kinds can be separately selected by command line:
OTY (select other files) is default parameter, default parameters
for OR e OF will be got from config file (Orphan and OffLine
keywords).
BDL <n>
This option will generate a list of Best Downloaded Files. <n> is
the number of files to be classified, L-List will create a .ASC,
.ANS and .AVT bullettins, and a report is added at the head of
file lists.
NOOKFILE
This option prevents L-List from create OkFile list, with list of
downloads directories (used for file request by Lora and Binkley).
SORT SORTDATE
These options are used to sort files; default is NoSort, that is
files will be listed in the same order they are found in
Files.Bbs. Files will be listed in order specified in command line
only among each section of Files.Bbs standing between comments;
this has been done to preserve old comments, as a complete sort
would have put comments in wrong places; this option is active
only when making file lists, while when fixing Files.Bbs L-List
will use value found in option FixFBbsSort. In other options
(search and announce) files will always be sorted alphabetically.
This parameter does not affect order of NewFiles that is always
sorted by date.
VC (VCN)
Using this option, L-List will list content of compressed files;
.LZH, .ZIP, .ARC (.PAK) and .ARJ are supported (self extracting
too). This option will also list specifics of graphic files .GIF
(version and resolution). VCN will list content of files only if
they are new (that is, whose age is less than Newdays). This
option can be used with Search option too, adding -VC (-VCN) to
the string to look for (for example, Search:/Fax_/Modem_-VC).
CON
Redirect AllFiles to standard output. If standard output is not
redirected and if a driver ansi is detected, L-List will use ansi
colors.
CD (NOCD)
Include only Cd-Rom areas (Exclude Cd-Rom areas, that is include
only HD areas). If used together, no area will be listed.x
NODB
Used in conjunction with Search option in local mode, prevents L-
List from searching files in LList.Db.
FILELIST
By default L-List creates AllFiles.Txt, complete list of your
ksystem, NewFiles.Txt, files newer than 90 days sorted by date
(new files before), and OkFile.Lst, list of download paths for use
with binkley and compatible front-end. At the head of Allfiles.Txt
and NewFiles.Txt L-List adds several infos: a list of listed file
areas, a list of Magic Names (that you must have previously
defined in LList.Cfg), and a report of Most Downloaded Files if
BDL command line option is used (see after). You can insert your
banners at the end and at the foot of the lists, adding their
names after keyword HEADER and FOOTER in LList.Cfg.
FILEIDX
With this option L-List will create an index file which is used by
Lora for file requests (with performances better than using
OkFile). Even if you don't use Lora, you will need this index
file to create COMMA list (a brief list, where only file name and
area number are listed, and files are sorted for name and area
number: use COMMA option on command line to crete it) and to
detect new files in ANNOUNCE option. Comma list can be restricted
to only dupes files, using COMMADUP: files are considered dupes if
they have the same name (extension is not considered): for
example, dupes will be considered SCANV113.ZIP and SCANV113.ARJ.
Some files with particular extensions are not considered in dupes
search: these are .SDA and .WNT, that always accomplish a
compressed file with the same name (these are hard coded, you
can't change them).
If a file with the same name of idx file that must be created is
found, the new idx file will be appended to it (previous file must
already be sorted, if not LList will truncate it at the first
record that is not in the right order ignoring it and followings):
you can use this option to maintain a global idx file (you can
create it with your cd rom content, and then every day run L-List
to update info about your hd with announce option, see backward).
FileIdx will list files found in download directory AND listed in
Files.Bbs, only once even if they have multiple descriptions; the
index file is automatically updated after ANNOUNCE, rewriting
records of areas where L-List found new files, so you normally
need FileIdx option only to create index the first time, as it
will then be kept updated with Announce option.
FIXFBBS[,<opt>]
This extended option will rewrite Files.Bbs, according to the
options specified; for example, using OFN e ORY will let you
import orphan files (adding a line in Files.Bbs with file name and
standard description defined in config file as ORPHANSTR and
getting description from File_Id.Diz contained in compressed file;
imported file will be updated so that it will be found as new by
Announce option) and deleting description of deleted files from
Files.Bbs.
New Files.Bbs will be sorted according to the cfg option
FixNewFBbs (default, no sort). If you select OTN, the new index
file will be created with extension .NEW, otherwise the old
Files.Bbs will be overwritten and a back-up Files.Bbs, with
extension .BAK, will be created; other options can be specified,
which let you modify download counters: StripDC (FixFBbs,StripDC)
puts all download counters to 0, DecDC (FixFBbs,DecDC) decrements
by 1 download counters (this last option is intended to be used in
Files.Bbs maintenance, used regularly prevents old files from
being listed in Best Downloaded Files).
You can import description from File_Id.Diz from any file using
FixFBbs,ReadFile_Id (by default, this option is only active for
imported orphan files; using ,Pack too will rewrap description got
from File_Id.Diz), and repack files different from Repack type
(look at example cfg) to Repack type using FixFBbs,Repack.
ANNOUNCE[:<tag>]
This option will write Msg with announce of new files. Detection
of new files is based on date and on presence in index file (using
RA, the upload date will be used). For each AnnounceMsg L-List
keeps in LLIST.TIM date of last announce so that when you run L-
List again files whose date is greater than last run date will be
announced; the file will be announced even if the date is not
greater but the file is not present in the index file (that will
be updated after having made the announces). L-List will never
search new files in Cd-Rom areas and will not announce files that
match any of ANNOUNCEEXCLUDE keywords.
Please read (and edit!) example cfg to get information about
configuring Msg. In every AnnounceMsg section of Cfg file, you
will have to put a different Tag that will be used to identify msg
if you want to write only it: this can be done using
Announce:<tag> (using only Announce, all Msg configured will be
generated).
SEARCH[REP|[[<n>]:<string>]
COPY[<n>][NQ]:<string>
Using only SEARCH, L-List will scan msg areas specified in config
file looking for Msg to "AllFix", "AllFix+", "LList" and to
"FSearch"; you can specify keywords in Msg Subject, separated by
spaces (enclose in double quotes if keyword contains spaces), or
in Msg Text, in lines starting with DIR or KEYWORD; L-List has a
powerful wildcard management, using "?" and "*" you can easily
search every file. When a valid Msg is found, L-List will process
the information request searching in areas specified in Search
definition (look at Example.Cfg for details), and will answer if
it finds files which match the information request.
This is the typical format of a Msg to L-List:
b
From: Alessandro Trebbi
To: LList
Subj: SHEZ*.* /Comp*Shell /Arc*Shell
====================================
DIR SHEZ*.*
KEYWORD COMP*SHELL
KEYWORD ARC*SHELL
---
(Note: you can add a keyword AND between search strings, if you
want a file to match only if both search strings area found).
The same keyword strings are defined in msg subject and in msg
text, but however it is enough use only one of these methods; L-
List will answer to your Msg if any matching file is found (or
even if no file was found, but it was a private Msg); if many
files are found, L-List will stop search when it has found more
than SEARCHMAXFILES files, adding at the end of the answer Msg
info on how to obtain more info (that can be done sending a Msg
with same subject but now addressed to LLIST <Node>, that is
simply answering to L-List response message).
LList searchs differently for Path or Keyword strings:
Path strings are only searched in file name, in Dos style; you you
can also use the "*" to match filenames with specific letters
somewhere inside the name, for example *113*.*; you can use
wildcards in any combiantion you desire, for example LL*ST*.*; a
path is specified as it is in a Msg Subject;
Keyword strings are searched both in name and descriptions,
conceptually a <keyword> is always searched as if it were
*<keyword>*, and it can contain wildcards like a path ("?" and
"*"); it can be specified in Msg subject (or in command line)
preceeded by a "/" or between """, that is you must write either
/4DOS or "4DOS" if you want to search 4DOS in file name and in
file descriptions. Other robots often do not support wildcards in
keyword strings, if you are writing a Msg that will be processed
by other filefinder, add another keyword in subject of Msg
obtained stripping "*" and substituting "?" with blanks; this
keyword string will not affect L-List performances, as L-List
searchs only most generic strings (does not search for strings
that will be automatically matched if a more generic string is
matched).
Other options can let you perform the same searchs in local mode:
<string> must have the same syntax used in subject of Msg to LList
(spaces replaced by underscores); option SEARCHDB (look at example
cfg) is always active in local mode, you can disabilitate it using
command line option NODB; using COPY instead of SEARCH, you can
copy found files to diskette (use COPYNQ to copy files without
confirm): if an error occures (152: drive not ready, 101: disk
full), you can recover it.
Using Search, ORN will be forced; OFFLINE can be selected or
discarded using parameter OFY (OFN) in command line.
EDITFBBS
This option will let you modify your Files.Bbs; several features
are already available (you can get an help on line with all
available commands pressing [F1]).
If you run L-List with no option, this will be choosen.
L-List is a full-screen Files.Bbs editor; current Files.Bbs will
be shown in the form L-List is going to save it; in the first and
in the last line of the screen you can see info about current file
and current area; extended description are fully supported (for
tag commands and description editing), and tag/untag commands are
implemented (files are tagged in the order you tag them, and in
this order they will be copied/moved etc.); every packer is
supported using a fully configurable packer engine, to let you
repack files and import File_Id.Diz; inter area Copy/Move is
allowed. Command Alt-H will let you hatch current file in the area
you select, sending it together with created TIC to nodes linked
to the selected area (with flag "&" inactive).
TIC
With this option, L-List will manage tic files; tic areas and tic
nodes must be defined in LList.Cfg. Tic nodes can be flagged
create, that will allow you create new areas in LList.Cfg (areas
can then be imported to Lora configuration files with external
utility Scan_Cd.Exe; this method will allow you set whatever
parameter to new created areas); nodes flagged AutoLink will be
automatically linked to new areas; you can optionally repack
received tic files, fix crc if it is wrong, update received files
using keywords "RepackTic", "UpdateTic" and "FixCRCTic" in
LList.Cfg. You can strip SeenBy lines, limiting info to only your
local echo nodes, using keyword "TinySeenBy" in LList.Cfg. If at
least one .Tic is present in inbound dir, L-List will search
NETAREAID for msgs to Raid before processing tics; msgs to Raid
are used to link/unlink echo file areas (write %HELP in the body
of the msg to get info about available commands). If any tic is
processed, L-List takes care to make announces and update fileidx.
L-List TIC can be quickly configured importing a standard Tic.Cfg
config file (define its path with keyword "TICCFG" in LList.Cfg);
new areas will be created, echo data of already existing areas
will be updated, and unknown echo nodes will be created; some
other general infos are needed to run TIC (look at example cfg
file);
*Hints*
*Give TicAreas a level greater than 0; this will let you disable
use of raid to TicNodes at level 0 [see next];
*Give your uplinks level 0 (they must not use raid to unlink file
areas);
*Give areas you want always linked to your sublinks a high level;
*Use flags "*&" for areas such as UPLOAD; in this way, each node
that will link to this area will be able to send files to your
system but will not receive files sent in this area by other nodes
("*&"); you can manually add your uplink with no flag, if you want
him to receive these files too (usually needed to send files
routed to a file area moderator);
*Use flag "*" (enable node to send file in area) only when really
needed (bi-directional links), it is better to use no flag for
sublinks and flags "*&" for uplinks (this can prevent problems);
however, you can use "*&" for uplink and "*" for downlinks, in
this way files received by sublinks will be hatched to other
sublinks but not to your uplink (useful for areas such as
NODELIST, you can hatch local segments for your sublinks);
■ Appendices ■
──────────────
■ SCAN_CD ■
Scan_Cd is an utility that can help to configure L-List if your
BBS software is not directly supported; in fact, it can create
configuration files that can be read by L-List, searching
directories which contain index file (it searchs a Files.Bbs or
whatever else you specify with parameter LOOK, see backward) or
importing a text file. However, Scan_Cd can be used if you want to
setup quickly Lora, as it lets you easily import file areas from
whatever else configuration based on Files.Bbs (most of Bbs I
know); so, you can specify much more parameter, which are not
supported by L-List but that are useful with Lora. These includes:
Access level (L-List can use this with L-List parameter MaxLev
<n>), DownLoad level and Upload level: these are set with
parameters LEV, LEVDOWN and LEVUP followed by a number that is
level in numeric form (see Lora manual for correspondence with
levels in verbose form); must be multiple of 16 and less or equal
than 192 (that is, 16, 32, 48, .. up to 192), and are taken equal
to 176 as default. Then you can specify an Upload path (not used
by L-List) using parameter UPLOAD followed by a valid path, and
valid flags (among these, only D is used by L-List, meaning no
file date will be shown in lists). The parameter LOOK lets you
specify a filename that will be searched to detect a file area: if
you specify a path after parameter COPYFBBS, this index file will
be copied in the path specified (copying index from Cd to Hd can
speed up many operations and speeds up L-List too), if you specify
a parameter CREATEFBBS will let you import areas that do not
contain an index file, creating it (without descriptions) in the
path specified. Parameter F<n> lets you specify options about
number of new areas: if you don't specify it, the first number
will be the successor of last area in SysFile.dat (if this file
does not exist, 1 is assumed); if you specify F0, numbers will
start from first valid number in successive ten (that is, x0), F1
from second valid number (x1), F00 with first valid number in
successive hundreds (x00), F01 second valid number (x01).
Scan_Cd allows you to delete/hide non-existing and dupes areas, in
order to maintain easily your file base (if you often change your
cd-rom, you can add new areas and delete old invalid areas simply
with "SCAN_CD E: PURGE"); you can renumber file areas, with
"SCAN_CD RENUMBER", or sort them for name or download path (SORT:N
or SORT:D options).
Scan_Cd can export file are configuration in a text file, named
SCAN_CD.IMP; the same file can be used to import file areas, you
can safely use this method as Scan_Cd does not import areas which
have a download path equal to another existing file area; each
line of SCAN_CD.IMP is an area file; line starts withh download
path, followed by a comma and name of area file; if name of index
file is different from Files.Bbs in download path, you must add
another comma followed by the complete path of index file; this is
an example of SCAN_CD.IMP:
==================================================================
C:\LORA\FILE\GENERAL,Miscellanea Ms-Dos
C:\LORA\FILE\UPLOAD,New Uploads
C:\LORA\FILE\UPLOAD\UNCHECK,Uploads non verificati
==================================================================
These areas have all an index file named Files.Bbs in download
path, otherwise the path of index file should be added after name
in each line of SCAN_CD.IMP, preceeded by a comma.
■ MultiTasker ■
L-List is multitasker aware, due to the method it uses to look for
files and to wait for keyboard input; you can run multiple copies
of L-List, setting in each task the environment variable LLISTLOG
to a different value (this will be the full path of L-List log
file). It can be useful to set attribute +r (read only) to
LList.Exe, in order to allow access to Disk Overlay from multiple
programs (Disk Overlay are used if XMS/EMS are not available).
■ Runtime Error xxx at xxxx:xxxx. ■
Sometimes you could get a Runtime Error, that will be logged in
your log file; these are the most common:
RTE 003; You have simply miss defined a path name; check LList.Cfg
for wrong path names;
RTE 203: You need more memory, could happen with very large file
areas; run LList after having freed some memory.
If you get any other RTE, please send me info about it: number
(xxx), address (xxxx:xxxx), Files.Bbs of area where it happened,
your LList.Cfg and command line you used.
■ EXAMPLES ■
Generate several file lists (AllFiles, NewFiles, OkFile)
========================================================
LList FileList
Generate only AllFiles.Txt, sorting files by name
=================================================
LList FileList NewDays 0 NoOkFile Sort
Generate AnnounceMsg with tag UPLOAD
====================================
LList Announce:Upload
Generate all AnnounceMsg
========================
LList Announce
Check for presence of a file
============================
LList Search1:ScanV111.Arj
Fix Files.Bbs in upload dir (import orphans, deletes offlines)
==============================================================
LList Area 1 FixFBbs,ReadFile_Id,Repack OrY OfN
Create list of orphan files
===========================
LList FileLIst NewDays 0 NoOkFile OtN OfN OrY
Scan msg base for msg to LList, and answers if any is found
===========================================================
LList Search Ofn
Search locally for "MODEM", output to console (with content of files)
=====================================================================
LList Search:Modem_-VC NODB
Search locally for "MODEM" in LLIST.DB (Area 0 should not exist)
=================================================================
LList Area 0 Search:Modem
Update fileidx
==============
LList FileIdx Area 1-100
Create list of dupes files
==========================
LList CommaDup
Process TIC files
=================
LList TIC