=================================================================
NCD README


=================================================================
Description
===========
       ncd  is  an  interactive fullscreen directory browser that
       lets you select and change to the  desired  directory.  It
       also  lets you change quickly in non-interactive mode to a
       directory selected in  the  command  line.   ncd  supports
       incomplete  directory  specification  in the command line,
       and is able to perform automatic search in browser mode.

       This program is free software;  you  can  redistribute  it
       and/or modify it under the terms of the GNU General Public
       License as published by the Free Software Foundation.

       Read the files COPYING and COPYRIGHT for the legal stuff.
       See the man pages ncd.1 for more description.


=================================================================
Installation
============

Binary for Linux is included in this package.

It will work fine if your system have a TERMINFO database.
This is always true for Linux.  (if not see compiling) 
NCD now runs under Linux and SunOS. (and sould work on other OS)


Only the shell can change its dir, so you must add an alias :

*For the bash shell you MUST add this function to your .profile

         function ncd()
           {
             /usr/bin/ncd $*;
             if [ $? = 0 ]; then
                cd "$(cat $HOME/.ncd_sdir)";
             fi
           }

*For the tcsh shell, you MUST add this alias to your .cshrc or .tcshrc

alias ncd '/usr/bin/ncd \!* ; if $? == 0 cd "`cat $HOME/.ncd_sdir`" '


In NCD_OPTS environment variable you can define your preferred default
options. 

*For the bash shell :
          export NCD_OPTS=-s


*For the tcsh shell :
          setenv NCD_OPTS -s

Then exit current shell and login again so that the alias/function 
gets defined. An that's all, ncd is installed!




=================================================================
Compiling
=========



If you want to recompile the program :


* If you are using Linux, the NCURSES lib is already installed,
  just type :

         > make


* If you are using another OS, you'll have to compile NCURSES
  and edit the Makefile. (see Makefile for more info)

1) Compiling NCURSES

   The ncurses distribution is available at:
   ftp://ftp.netcom.com/pub/zm/zmbenhal/ncurses. It is also carried on
   the GNU distribution site at ftp://prep.ai.mit.edu/pub/gnu.

   There are bugs whith ncurses 1.9.7a.
   I have build ncurses 1.9.4 on a sparc SUN-OS 4.1, using commands :
   (where i'm not ROOT)
   
         > ./configure --prefix=/users/dsk03/dea9527/ncurses
         > make
         > make install

2) Compiling NCD

   Then comment out the defines about SUN in the Makefile, then
   type in the ncd dir :

         > make


That's all...


=================================================================
HISTORY
=======

-- version 0.9.7
  * Thanks to  Har-Peled Sariel <sariel@math.tau.ac.il> for his advice!
    The nasty warnings at compile-time have now gone away for ever.

-- version 0.9.8
  * Keyboard handling is now corrected. The ncurses ungetch() function
    was a bit problematic. Now I don't use it to detect keystrokes
    without actually reading them.

-- version 1.0
  * Addings to Borja's version by Czo (Olivier SIROL)
            - Key stroke recognition under X ( F1, home ...)
            - Subdir indentation 
                       ( -i [num] option )
            - Sorting capabilities : you can sort directory by name, 
              ignore or not case and leading '.'
                       ( -s, -S, -c  options )
            - Better handling of KEY_UP dir and KEY_DOWN dir
              which chooses a dir in the same depth (if possible)
            - Directory deletion 
                   ( F8 delete dir and ALL subdirs  [ rm -fr ] ) 
            - Also some option letters have been changed
                       ( type ncd -h for help )  

-- version 1.20 through 1.202
            - ncd now runs under Linux and SunOS. (and sould work on other OS)
            - Removed clear() in SortDir and RemoveDir
            - Modified opendir to handle NULL
            - include file is now curses.h for all sys no more LINUX define
            - removed KbHit funtion, it seems faster (even whith noisy lines)
            - modified Signal funtion to simply exit
            - updated README and man page
            - Handling xterm's change of size
            - Speed search handles now both direction ('<' and '>') 
              and fills its field whith current dir name if its empty
            - Added more color support
            - Added switch to choose the TERM
            - added toggle sort mode (ctrl+s)
            - and more... i can't remember!


=================================================================
TODO
====

I'd like to

- change code of remove dir (it's now using system("rm ...");)
- add F7 : mkdir (whith lovely window)
- add F6 : change dir name (whith lovely window)
- add interractive sorting 



=================================================================
BUGS
====

- If you have any improvement ,questions or bugfix,
  please mail to :

Olivier Sirol <sirol@ecoledoc.ibp.fr>

or

Borja Etxebarria <borja@bips.bi.ehu.es> 
              or <jtbecgob@s835cc.bi.ehu.es>.


=================================================================
$Id: README,v 1.6 1996/05/16 19:44:49 olivier Exp $
