; filename: cssdir.cfg
; Factory released date: Jul 31, 2004 (ver 1.22) 
; works with cssdir.exe OS/2 eComStations versions 3.21  and later
; works with cssdir.exe Windows           versions 1.03 and later
; 
;
; This file provides Symbolics definitions or coded string names a user
; can reference from the command line without having to reEnter all the
; specific cssdir options; or resort to having a gazillon batch files 
; (either .bat or .cmd) clutter!
;
; This file currently allows 5 types of records
;  1.) a blank line
;  2.) any line that begins with a ';' is ignored
;  3.) a symbolic definition record
;    Each symbolic definition consists of 1 record
;    The format of that record is /$symbolicName$/:definition
;    The symbolicName can contain letters and/or digits or an underbar.
;    (Please start all such names with a letter, because this may be a 
;     requirement in the future.) Case of letters is insensitive.
;
;    The definition portion can contain just about anything even other 
;    symbolic names you define. Environment variables can be referenced by
;    using the following syntax /$$$envName$/ (beginning with 3 dollarsigns). 
;    One can also reference cssdir's automatically generated Symbolics via 
;    /$$autoGenerated$/ (beginning with ONLY 2 dollarSigns). Some of these
;    include /$$PID$/ for process ID, /$$DATE$/ for the current date of
;    the current cssdir invocation. For a complete list of the auto generated
;    issue: 'cssdir /Dumpo:s' , and find all that have the syntax /$$autogen$/
;    i.e. ones that start with '/$$' (not '/$$$') and end with '$/'.
;
;  4.) continuation record of a symbolic definition.
;     This type of record occurs when one places a comma ',' at the very end of 
;     a symbolic definition record. If it is used, then the next non-comment 
;     line much begin with a '+' character (leading spaces are ignored), 
;     all data after the '+' is concatenated onto the previous non-comment 
;     record. After which if this continuation record also ends with a ',' it 
;     too will look for yet another continuation record. Please note that if 
;     you have a record that needs to end with a comma you must give an empty 
;     continuation record, i.e just a line with only a '+'.
;
;  5.) records that start with '#include '. These records are expected to contain
;     a filename that follows the above 4 types of records and may also contain
;     subsequent '#include ' statements (limited to 5 deep). The contents of the
;     file specified by filename is processed just as if it is part of cssdir 
;     cfg file.
;
;  You can have multiple cssdir cfg files, that can be called anything.
;  The file cssdir.exe decides to use is based on the following:
;  if the environment variable cssdirCfg is not null, then cssdir will
;  use its value and try to open and read the filespec specified. If cssdirCfg
;  is not set, then cssdir.exe will look in its current dir for the
;  file called cssdir.cfg, if found it uses this one. If neither cssdirCfg is 
;  set or cssdir.cfg does not exist in the current dir, cssdir will then
;  look in the dir cssdir.exe resides (which is actively running) for 
;  cssdir.cfg. If found it uses this one, otherwise it will give you a warning.
; 

; In the following section user may want to customize for their specific
; perferences or systems.
;
;*** BEG BASE_CUSTOM_SECTION
;***************************
;
;  The following is set by default to env var tmp to a dir for scratch
;  cssdir storage, currently this storage is only used with a /Ecrc:y setting.
;  Also EnvVar cssdirTmp overrides (if its not null) /$cssdirTmp$/
/$cssdirtmp$/:/$$$tmp$/

;  default startup options for cssdir; 
;  env var cssdirDefArgs overrides (if its not null) /$cssdirDefArgs$/.
;  Put your default perferences immediately after the ':' on following line:
/$cssdirDefArgs$/:

;/$lodir1$/

;
; default startup options for snapshot compare mode /Sscm
;  env var cssdirDefArgsSscm overrides (if its not null) /$cssdirDefArgsSscm$/.
;  Put your default perferences immediately after the ':' on following line:
/$cssdirDefArgsSscm$/:

;  cdDrive
/$cdDrv$/:k

/$mozillaCache$/:"F:\OS2WEB\Mozilla\Profiles\Default User\7xb1u851.slt\Cache\"

;  The env var cssdirStartup decides whether to abort or be 
;  silent on scanning drives, when user makes invocation references of
;  auto generated symbolics /$$LclDrvs...$/, /$$RmtDrvs...$/.
;  env var cssdirStartup=A (for abort)  
;  env var cssdirStartup=S (continue and be silent)
;  if cssdirStartup is not set, then give a warning and continue
;  You may also skip drives by setting either the env var cssdirSkipDrvs or
;  symbolic /$cssdirSkipDrvs$/, cssdirSkipDrvs can have values of C-Z and
;  an '*' displays when skipping drives
/$cssdirSkipDrvs$/:/$cdDrv$/

; may want to adjust this as well or add to it.
/$sysExcFiles$/:/$$bdrv$/:\os2\system\SWAPPER.DAT;/$$bdrv$/:\DMISL\BIN\sl,
 +db.dmi;/$$bdrv$/:\IBMLAN\LOGS\NET.AUD;/$$bdrv$/:\os2\system\RAS\LOG0001.DAT;,
 +/$$bdrv$/:\IBMLAN\ACCOUNTS\NET.ACC;,
 +/$$bdrv$/:\os2\OS2.INI;/$$bdrv$/:\spool;/dirPrefix//$mozillaCache$/;

;*** END BASE_CUSTOM_SECTION
;***************************


;  symbolic to shut off copyright and command echo
/$noCE$/:/Ve:0 /Vn:0 /+Lxmf:N
/$ce$/:/Ve:* /Vn:*

;  symbolic to shut off 
;  copyright/ver (/Vn:0), cmd echo (/Ve:0), searching ... (/Soo:0)
/$NoCES$/:/$noCe$/ /Soo:0 

;  reverse of /$NoCES$/
/$CES$/:/Ve:* /Vn:* /Soo:* 

;  handy symbolic for getting summary stats
/$STAT$/:/00 /Soo:1 /Lxmf:1y /List:/AT

;  handy symbolic for getting summary stats
/$STAT1$/:/00 /Soo:1 /Lrgt /Lrab /Lrcb /Lrdi4 /Lref /Lrnd /Lrne /Lrnf /Lrns ,
   +/Lrrb /Lrsb /Lrse /Lrsf /Lrts /Lrhb

/$summary$/:/$stat$/

/$Chgs$/:/Srd:today /Lrrs0 /Lxlo:iXTAZSRHNFM /Lfa1 /Lfm /Lfz4 /Lfx4 ,
   +/Lrll /Lrtbeg:"Files changed today /$$date$/ (run @ /$$time$/)!"  

;  symbolic for boot drive changes that occurred today 
/$bootDrvChgs$/:/$chgs$/ /Ve:1 /Vn:0 /Soo:0 /$$bdrv$/:\ /s ,
   +/Lrtbeg:"Files changed today on (boot) drive /$$bdrv$/: /$$date$/ ,
   +(run @ /$$time$/)!" 

/$bDrvChgs$/:/$bootDrvChgs$/

/$bootDrvChgs2$/:/$bootDrvChgs$/ /List:/*;/Lxpo:ax/o-d/Lft2/Lfn2,
   +/Lrtbeg:"sorted by newest to oldest with Seconds!";/Lxpo:ax/o-s/Lrdi7,
   +/Lrtbeg:"sorted by descending size PLUS disk info!"

/$curDrvChgs$/:/$chgs$/ /$$cdrv$/:\ /s /Lrtbeg:"Files changed today /$$date$/,
   + (run @ /$$time$/)!" /List:/*;/Lrtbeg:"sort by extension"/Lxpo:ax/oen,
   + /Dumpo:2/c 

/$cDrvChgs$/:/$curDrvChgs$/

/$sysExcCrcs$/:/Xr2:/$sysExcFiles$/

;  symbolic to find all of today's changes across all local drives
/$sysChgs$/:/$Chgs$/ /s /$$lclDrvRoots$/ /$sysExcCrcs$/

; this will list the dirs (bare) and subdirs of a given dir
/$fullTree$/:/Bf3 /Lfm /ad /s /Lrrs0

; list fulltree of the current drive
/$curDrvTree$/:/$fullTree$/ \
/$cDrvTree$/:/$curDrvTree$/
/$bDrvTree$/:/$fullTree$/ /$$bDrv$/:\

; tree with other default fields, such as date,time ...
/$tree$/:/ad /Lrrs0

; list todays files sorted from oldest to newest
/$TODAY$/:/Srd:. /od 

; list this weeks files (ones since Monday) ordered oldest to newest
/$THISWEEK$/:/Srd:CURWEEK /od

; list all files that have eas
/$EAFILES$/:/Srz:1,$ /Lfz /oZ

; just 1 total line per request
/$reqTotSum$/:/Lrrs4 /Lxrst:1

; set size range for files 2gig or greater
/$2GIG$/:/Srs:2147483648,$

/$HSsetting$/:/a-H-S 

;  layout views that closely resembles standard dir's
/$loDir$/:/Lxlo:QIXDTSZAHF /Lfh0 /Lfz4 /Lfa0 /Lfq0 /Lxkt:1 /Lxmf:1234 /$HSsetting$/
/$loDira$/:/$loDir$/ /Lfa3 /Lfq2 
/$loDir1$/:/$loDir$/ /Lfh1 /Lfz4 /Lfa3 /Lxkt:0 /Lxmf:1234 /Lrrs0 
/$loDir2$/:/$loDir$/ /Lfh1 /Lfz4 /Lfa5 /Lxkt:0 /Lxmf:1234 /Lrrs0 

;  alternate layout view
/$loa$/:/Lxlo:IXQDTAZBSCUPHNLRFM
/$lo1$/:/$loa$/ /Lfx4 /Lfq2 /Lfa5 

/$eaCrc$/:/Ecrc:y /Lfb /Lfz4
/$noEaCrc$/:/Ecrc:n /Lfb0 
/$crc$/:/Fcrc:y /Lfc /Lrll
/$crcs$/:/$crc$/ /$eaCrc$/

;  syms finding ONLY hidden and/or system files/dirs
;  to shut off /s use /sCur on command line after /$hs...$/ 
/$hsSetup$/:/BD /Lrrs0 /Lfa2 /s /Lfx5
/$hsEntries$/:/$hsSetup$/ /a$h$s
/$hsDirs$/:   /$hsSetup$/ /a$h$sD
/$hsFiles$/:  /$hsSetup$/ /a$h$s-D
/$hsBdrv$/:   /$hsSetup$/ /a$h$s   /$$bDrv$/:\
/$hsCdrv$/:   /$hsSetup$/ /a$h$s   /$$cDrv$/:\

;  find duplicate files
/$Dups$/:/$lo1$/ /$crcs$/ /Lfq0 /Lfb /Lfa3 /Lfh7 /Lft2 /Lfi0 /Lrll,
   + /Lxpo:*dups-des 

; this one's nice to see if file names match without looking all the
;  way to the right of long filespecs especially with mult subdirs
/$Dups2$/:/$Dups$/ /Lfn5

; preview files that match in size, very fast preliminary check
; also could use with /Srs: to only look at Big files
/$noCrcDups$/:/$Dups$/ /Fcrc:n /Ecrc:n /Lfb0 
/$noCrcDups1$/:/$noCrcDups$/ /Lfn5


; find unique files; should supply two dirspecs!
/$ufOpt$/:/$crcs$/ /Lxuf: /Lfu /Lfa3 

; use to find files that differ in a filename's case only!!
/$UFnamesk$/:/Lxuf:K-D-S-C-Z-B-A

; use to find unique file names
/$UFnames$/:/Lxuf:-K-D-S-C-Z-B-A

;not sure if next two symbolics make sense all the time; still testing
/$ufOptar$/:/$ufOpt$/ /Lxpo:ar 
/$ufOptax$/:/$ufOpt$/ /Lxpo:ax 

/$diSetup$/:/00 /Ve:2 /Lxmf:N /Lanf:0

;  drive information definitions, Lcl= local, Rmt=Remote

/$DrvDi$/:  /$diSetup$/ /Lrdi6 
/$DrvFree$/:/$diSetup$/ /Lrdi1 
/$DrvSum$/: /$diSetup$/ /Lrdi3 
/$DrvSum1$/:/$diSetup$/ /Lrdi7 
/$DrvUsed$/:/$diSetup$/ /Lrdi2    

/$AllDrvsDi$/:  /$DrvDi$/   /$$allDrvs$/ 
/$AllDrvsFree$/:/$DrvFree$/ /$$allDrvs$/ 
/$AllDrvsSum$/: /$DrvSum$/  /$$allDrvs$/ 
/$AllDrvsSum1$/:/$DrvSum1$/ /$$allDrvs$/ 
/$AllDrvsUsed$/:/$DrvUsed$/ /$$allDrvs$/ 
/$di$/:/$AllDrvsSum1$/
                             
/$bDrvDi$/:  /$DrvDi$/   /$$bDrv$/:
/$bDrvFree$/:/$DrvFree$/ /$$bDrv$/:
/$bDrvSum$/: /$DrvSum$/  /$$bDrv$/:
/$bDrvSum1$/:/$DrvSum1$/ /$$bDrv$/:
/$bDrvUsed$/:/$DrvUsed$/ /$$bDrv$/:

/$LclDrvsDi$/:  /$DrvDi$/   /$$LclDrvs$/ 
/$LclDrvsFree$/:/$DrvFree$/ /$$LclDrvs$/ 
/$LclDrvsSum$/: /$DrvSum$/  /$$LclDrvs$/ 
/$LclDrvsSum1$/:/$DrvSum1$/ /$$LclDrvs$/ 
/$LclDrvsUsed$/:/$DrvUsed$/ /$$LclDrvs$/ 
/$ldi$/:/$LclDrvsSum1$/
                                   
/$RmtDrvsDi$/:  /$DrvDi$/   /$$RmtDrvs$/ 
/$RmtDrvsFree$/:/$DrvFree$/ /$$RmtDrvs$/ 
/$RmtDrvsSum$/: /$DrvSum$/  /$$RmtDrvs$/ 
/$RmtDrvsSum1$/:/$DrvSum1$/ /$$RmtDrvs$/ 
/$RmtDrvsUsed$/:/$DrvUsed$/ /$$RmtDrvs$/ 
/$rdi$/:/$RmtDrvsSum1$/

;*** BEG SNAPSHOT_RELATED_SECTION ****

/$snapShotList$/:/BD /Foo:1 /Soo:1 /Vn:1 /Ve:2 /Fcrc:y /Ecrc:y /a /Dumpo:a/c ,
 +/Ce2 /Pt4 /Tis ,
; +/$sysExcCrcs$/ ,
; + /Xr1:/dirPrefix//$mozillaCache$/ ,
; +/+Xr1:/dirPrefix//$$$tmp$/ ,
; +/+Xr1:/dirPrefix//$$$temp$/ ,
 +/List:/0/Lxmf:1y/AT,
 +/Lrtbeg:"** beg stats summaries **",
 +/Lrtend:"** end stats summaries **!";,
 +/BD/Lrrs4/Lxrst:1/Lxmf:t1/Lrzb,
 +/Lrtbeg:"** beg_1_line request summaries **",
 +/Lrtend:"** end_1_line request summaries **!",
 +/Lrdi6;,
 +/Lxpo:NX/Lxlo:dtazbscrnhf/Lfd2/Lft2/Lfa8/Lfz2/Lfb/Lfc/Lfs3/Lfc/Lfr2,
 +/Lfh8/Lff1/o:J/Lrrs0,
 +/Lrtbeg:++*@@@BegForDiffing@@@*,
 +/Lrtend:++*@@@EndForDiffing@@@*,
 +/Lrsl/Lfn0

/$ssl$/:/$snapShotList$/

/$snapShotList2$/:/$snapShotList$//Lfn6

/$ssl2$/:/$snapShotList2$/

/$noCrcSnapShotList$/: /$snapShotList$/  /Fcrc:n /Ecrc:n
/$noCrcSnapShotList2$/:/$snapShotList2$/ /Fcrc:n /Ecrc:n

/$kaseOnly$/:/Lxuff:-D-A-Z-B-S-CK 
/$dateOnly$/:/Lxuff:D-A-Z-B-S-C-K 
/$attrOnly$/:/Lxuff:-DA-Z-B-S-C-K 
/$kdaAnyOnly$/:/Lxuff:$D$A-Z-B-S-C$K 

; sift for files that have changed by 1 million bytes or more OR
; by at least 75% (+ or -) and at least 5000 bytes
/$sscBigChgs$/:/1/Lrlh0/Lrlp0/Lfx3/Lff3/Lfp3/Lxsrds:1000000,$,
 +/Lxsrdp:5000,75,$/Lxut:c/Lrtbeg:"!** beg_files that had dramatic changes **!",
                         +/Lrtend:"** end_files that had dramatic changes **"
/$sscReportA$/:/1/Lfp3/Lfx3/Lff3/Lrll/Lrlp0/Lrlh0/Lxspc:1/Lrto

; following sym really should use /Of: option with suboption /m for multiple
; files; some of those files could then be used with zip -@ option.
; see exam_ss.txt
/$sscStdReport$/:/BD /Dumpo:y/c /List:/$sscReportA$/,
 +;/0/Lff3/Lxut:a/Lrtbeg:"!** Beg_new files **!"/Lrtend:"** End_new files **",
 +;/0/Lff3/Lxut:c/Lrtbeg:"!** Beg_chg files **!"/Lrtend:"** End_chg files **",
 +;/0/Lff3/Lxut:d/Lrtbeg:"!** Beg_del files **!"/Lrtend:"** End_del files **",
 +;/$sscBigChgs$/

; /$sscStdReportACDBare$/ is same as /$sscStdReport$/ withOUT ACD titles
; very handy when using option /Of: with suboption /m i.e. /Of:sscRep./m
; verbose changes                           will be generated to sscRep
; only full filespec names of added   files will be generated to sscRep.1
; only full filespec names of chged   files will be generated to sscRep.2
; only full filespec names of deled   files will be generated to sscRep.3
;                                   bigchgs will be generated to sscRep.4
/$sscStdReportACDbare$/:/BD /Dumpo:y/c /List:/$sscReportA$/,
 +;/0/Lff3/Lxut:a,
 +;/0/Lff3/Lxut:c,
 +;/0/Lff3/Lxut:d,
 +;/$sscBigChgs$/

/$sscStdReportAC_dirsMarked$/:/00 /Lff3 /Lxut:ac /Lfm

;number diffs, show delta bytes change/percentages, uniq fld, hintstr, filespec
/$sscReportB$/:/00 /Lfx3 /Lfp3 /Lfu /Lfh /Lff3 /Lrll
/$sscReportC$/:/$sscReportB$/ /Lfa3 /Lfh0
/$sscReportD$/:/$sscreportb$/ /Lff1 /Lrsl /Lfa3 
;*** END SNAPSHOT_RELATED_SECTION ****

/$fileLWDatesQuestionable$/:/Srd:+1 /Lxpo:nx /Lff3 /o-d /Lfd2 /Lanf:0

;*** BEG MY_CUSTOM_SECTION ****

; generates a script for use with a rexx parsing routine used 
; internally by CSS and the boxer editor
/$FORBOXER$/:/List:/0/Lrgt;/Lrtbeg:"++:$BareFilesStart$:++" /Bf3 ,
 +/Dumpo:y/c /+Xr1:.pdf;.zip;.exe;.dll 

;*** END MY_CUSTOM_SECTION ****

/$searchpath$/:/Lanf:0 /$$.#path$/
/$specialFileAttrs$/:/Lfa8 /Lrzb /a$t$c$o$e$v$l$p$n$#
/$which$/:/Soo:0 /$searchPath$/ /Wc:

;#include "userSym.cfg"
