
                            Led's Change Directory

                     Copyright (c) 1990 by Keith Ledbetter


   LCD is a program designed to make changing directories much easier,
especially when you have a large hard drive with lots of different partitions.

   LCD is a work-alike to Peter Norton's NCD command, but with one significant
difference.   LCD works "across all drives" by maintaining the directory
database of ALL drives on drive C:, instead of one database on each individual
drive like NCD does.   This means that you don't have to specify a drive letter
when changing across drives, like you do with NCD.

   For program instructions, simply invoke LCD with no command-line parameters.
If you like, LCD can be renamed to GO.EXE, TO.EXE, or any other name that you
prefer.

               Keith Ledbetter


Bulletin Board Numbers:
-----------------------

  You can always find the latest versions of all of my PC utilities (such
as WhereIs, LCD, DelDir, AdMenu, etc.) on the following BBS's:


         Name               Location          Number
   ------------------      ----------       ------------
   Blue Ridge Express      East coast       804-790-1675  (21 lines)
   Hard Disk Cafe          Midwest          618-684-3990  (file area "Z")
   C & C                   Midwest          618-253-3608
   ATT-PAC                 West coast       415-829-6062



------------------------------------------
V1.4 Additions and Changes - Nov. 24, 1990
------------------------------------------

     o   For detailed help, just invoke LCD with no parameters.  LCD's
         entire "manual" is now on-line and can be viewed at any time
         by simply doing "LCD <enter>".  You can also print this info
         to the printer with the command "LCD >prn".

     o   LCD can now be used as a TOTAL replacement for DOS's "cd",
         "rd", and "md" commands.  LCD will now try to immediately
         change to the directory name that you specify; if that
         fails, only then will it go to the directory database to
         search for fuzzy matches.  In other words, if you have the
         following two directories somewhere:

                  C:\TELIX\DOWNLOAD
                  C:\PROCOMM\DOWNLOAD

         and you are currently in the C:\PROCOMM directory, then
         "LCD download" will change you to the \PROCOMM\DOWNLOAD
         directory without invoking the dialog box.  Since I use
         4DOS, I have aliases set up as follows:

                      alias cd `lcd %1`
                      alias md `lcd md %1`
                      alias rd `lcd rd %1`

     o   LCD can now create and delete directories itself, with
         immediate updating of the directory database at the same
         time.  The syntax is:

                        LCD md directory_name
                        LCD rd directory_name

         These commands are most useful when used with an aliasing shell
         like CED or 4DOS.  See the detailed on-line help for information
         on setting these up.

     o   You can now set an environment variable named LCD to the
         drive that you'd like your LCD.IDX file stored on (for
         example, SET LCD=D tells LCD to maintain your database in
         the file D:\LCD.IDX).  If there is no LCD environment variable,
         the file will be kept on drive C: just like before.

     o   When in the scrollable dialog box, you now have use of the full
         movement keys (PgUp, PgDn, Home, End, arrow keys).  You can also
         press C through Z to go immediately to that drive's directories.
         This is most useful when doing "LCD *" to see all directory names
         in the database.



------------------------------------------
V1.3 Additions and Changes - Oct. 15, 1990
------------------------------------------


     o   Fixed a bug where LCD would get confused if you had a
         one-letter directory name, and that letter also occurred
         in its parent directory (ie: "c:\aRc\R").  This problem
         is now fixed.

     o   Of course, the above change can be a problem if (a) you have
         a one-character directory name, as in R, and you also have a
         lot of other directories that begin with R.  So, I have changed
         LCD so that it understands an asterisk ('*') as a wildcard
         character.  Some examples are the easiest way to explain:

                LCD r*      :   find all paths that BEGIN with the letter
                                'r'.
                LCD *on     :   find all paths that have the word "on"
                                in them.
                LCD *       :   show me all paths in the database.

     o   A few people wanted to be able to change to either (a) the
         parent directory, or (b) the root directory while still using
         LCD.  LCD will now allow this, so you can do:

                         LCD ..              ;go up one level
                         LCD \               ;go to the root.



------------------------------------------
V1.2 Additions and Changes - Oct. 11, 1990
------------------------------------------


     o   A lot of people (in fact, everyone who has contacted me) have
         suggested that LCD should give the highest priority to the
         first positions of the pathname specified.  In other words,
         if you have the following 2 paths on your hard drive:

                          c:\testing\programs
                          c:\atest\data

         then "LCD TEST" should change to the \testing\ subdirectory
         immediately.   v1.2 now does this.

     o   Overall, the matching logic in v1.2 has been greatly improved.
         It now does a much better job of figuring out what you really
         wanted it to do (did I REALLY just say that??).  But, it will
         probably help if you know exactly how LCD does it's searching.
         In a nutshell, here is what LCD does:

               1.  Look for an EXACT match on the directory name
                   specified.  If more than one found, display the
                   dialog box. If none found, go to step 2.

               2.  Look for a "fuzzy" match on the name.  By LCD's
                   standards, a fuzzy match is the name you specified
                   followed by any extra data.  For example, if you
                   specify "LCD data", then all of the following would
                   match:

                                c:\data1
                                c:\database
                                f:\dataset

                   If more than one match found, display the dialog box.
                   If none found, go to step 3.

               3.  At this point, LCD just looks for the partial string
                   anywhere in a path name, preceeded or followed by
                   any characters.

     o   Since so very few people use extensions on their directory names,
         I changed the logic to once again use "*." for directory searches
         instead of "*.*".  This speeds the /SCAN function up by about 50%.
         If you have directory names with extensions on them, then you must
         use the /ESCAN switch instead of /SCAN.  Operation is the same,
         except that LCD will then use the slower scanning method.


-----------------------------------------
V1.1 Additions and Changes - Oct. 4, 1990
-----------------------------------------


     o   Since the .IDX file is stored a little differently, you MUST do a
         /SCAN before using LCD v1.1 (this is for those of you currently
         using v1.0).

     o   LCD is now much smarter on "fuzzy" directory names.  For example,
         "lcd pcp" will now change you to your "d:\pcplus" directory always,
         even if you have "pcplus\downloads" and "pcplus\uploads", etc.

     o   When LCD can't figure out which directory you really want, it will
         now pop up a scrollable dialog box with all of the matches found
         in it.  You simply move the highlighted bar to the directory that
         you want, and then press <Enter>.

         A lot of people requested something like this, and I wasn't sure
         how I was going to like it at first.  But, after playing with it
         for a couple of days, I think it was a good idea.  It's much more
         logical than LCD trying to "cycle" through all of the matches one
         invocation at a time.   If any of you have any feedback, please
         leave me Email and let me know what you think about it.

     o   A few people also complained about LCD not seeing directories that
         have an extension on them (ie: MYDATA.DIR).  I still can't sneak by
         anybody on this issue!  So, LCD v1.1 now sees directories with
         extensions;  you will notice that the /SCAN function takes around
         twice as long to run now.

  Enjoy,
     Keith
