Provided by: ondir_0.2.3+git0.55279f03-1_amd64 bug

NAME

       ondir - automatically execute scripts when traversing directories at the command line

SYNPOSIS

       ondir <old-directory> [<new-directory>]

DESCRIPTION

       NOTE:  The 0.2.x series has been completely rewritten in C. In addition, the configuration
       file format is substantially different.

       ondir is a program that executes a script when entering or leaving a  directory.  It  also
       executes all scripts in the intermediate directories between the two.

       For example, when changing from /opt/music to /home, leave scripts for /opt/music and /opt
       are executed, then the enter script for /home is executed.

       The scripts are defined in either the system-wide rc file (/etc/ondirrc) or  per  user  rc
       files (~/.ondirrc).

       The  way ondir works is by using auxiliary scripts that override shell builtins (cd, pushd
       and popd in BASH) to execute ondir whenever a user changes directory.  These  scripts  are
       included in the section SCRIPTS, below.

       The  scripts  are  available in the source tarball and are called scripts.sh, scripts.tcsh
       for Bourne shell variants and TCSH, respectively.

OPTIONS

       <old-directory>
              The last directory you were in, after having changed to the new directory.

       [<new-directory>]
              The current directory.  This  is  optional,  but  can  be  useful  when  traversing
              symbolically linked paths, as it will use the logical path rather than the physical
              path. If left out, ondir uses getcwd().

CONFIGURATION

       The configuration files /etc/ondirrc and ~/.ondirrc are in the form:

       # Comment
       [final] enter <path>[:<path>[:...]]
            <shell script body>
       [final] leave <path>[:<path>[:...]]
            <shell script body>

       Any line with leading whitespace is assumed to belong to the last  valid  enter  or  leave
       section.

       final indicates that the section will be the last one executed for the matching directory.
       Directories further down the hierarchy will still be matched.

       <path> is the path to match. Regular expression support has been  included  since  version
       0.2.1 thanks to Arvind (?). A path must match completely to be considered a match. Because
       : is the path delimiter, it can not be used in any regular expressions.

       Arvind also re-added (from version 0.1.x) support for $ONDIRWD expansion. This environment
       variable will contain the directory currently being traversed.

       A perfect example of the usefulness of this program is a users public_html directory.

       I  personally  set my default umask to 077, but when editing in my public_html directory I
       want my umask to be 022. To do this automatically, I would have add the  following  to  my
       ~/.ondirrc

       ~/.ondirrc
              enter /home/athomas/public_html
                   umask 022
              leave /home/athomas/public_html
                   umask 077

       Another  good example is if you have a "bin" directory in a project, but don't want to add
       it permanently to your PATH. The following ondir scripts take care of that:

       ~/.ondirrc
              enter /home/athomas/projects/myproject
                   PATH=$PATH:$CWD/bin
              leave /home/athomas/projects/myproject
                   PATH=`echo $PATH | sed -e "s,:$CWD/bin,,g"`

SCRIPTS

       On Debian systems the integration scripts are installed in /usr/share/ondir/integration to
       simplify  integration  into  one's  own shell. To enable ondir, one needs to include these
       files in the shells startup.

       When using bash, add the following to your ~/.bashrc:

       source /usr/share/ondir/integration/bash

       When using zsh, add the following to your ~/.zshrc:

       source /usr/share/ondir/integration/zsh

       When using fish, run the following commands:

       mkdir -p ~/.config/fish/conf.d
       ln -s /usr/share/ondir/integration/fish \
             ~/.config/fish/conf.d/ondir_prompt_hook.fish

AUTHORS

       Alec Thomas <alec@swapoff.org>

SEE ALSO

       devtodo(1) <http://swapoff.org/DevTodo>

NOTES

       ondir also has the ability to execute scripts in the directories  being  traversed.  These
       scripts  are  named .onenter and .onleave. This ability is disabled by default, but can be
       enabled by editing conf.h and uncommenting:

       #define USE_ONENTERLEAVE

       This functionaliy is disabled in the Debian package for security reasons.