home *** CD-ROM | disk | FTP | other *** search
/ Atari FTP / ATARI_FTP_0693.zip / ATARI_FTP_0693 / Mint / Shells / ksh_v04a.lzh / kshrc.ksh < prev    next >
Text File  |  1991-02-24  |  3KB  |  122 lines

  1. #    $PS1 is unset in a shell script
  2.  
  3. if [ -z "$PS1" ]
  4. then
  5.     interactive=FALSE
  6. else
  7.     interactive=TRUE
  8. fi
  9.  
  10. #    make sure that we get command line editing
  11. set -o emacs
  12. #    maintain the hash table of commands
  13. set -o trackall
  14.  
  15. #    set up my aliases
  16.  
  17. alias a=alias
  18. a l='ls -l'
  19. a lt='ls -lt'
  20. a la='ls -la'
  21. a h='fc -l'
  22. a which='whence -v'
  23. a vt='vtree -v'
  24. a up=unixpath
  25. #    DOS has such a bad influence :-)
  26. a md=mkdir
  27. a rd=rmdir
  28.  
  29. export HISTFILE=$HOME/sh_hist
  30. #    Sorry HISTSIZE isn't implemented yet, it default's to 100
  31. #export HISTSIZE=50
  32.  
  33. typeset PS1='[! $PWD] '
  34.  
  35. #    TERMCAP variable doesn't work correctly if you use a name that doesn't
  36. #    start with a '/' hence the /dev/d.. stuff instead of d:
  37. #
  38. #    Don't try setting this in the profile.ksh, mgr unset's TERMCAP as well
  39. #    as TERM, as far as I can see this causes more problems than it solves.
  40.  
  41. export TERMCAP=/dev/d/etc/termcap
  42.  
  43. #    this bit rather assumes a hi-res startup in 50 line mode
  44.  
  45. export TERM=${TERM:-atari50}
  46. case $TERM in 
  47.     vt*|at* )
  48.         ;;
  49.     mgr )
  50.         ulimit -m 1024        # This works fine on my Mega 4, but may need
  51.                             # changing. 1Mb is just enough for gcc.
  52.         a cls="vt52 cls"    # not only does this clear the screen but it resets
  53.                             # the screen size to 25 * 80
  54.         ;;
  55. esac
  56.  
  57. #    Added this one - saves typing
  58. CDPATH="d:/usr;d:/usr/work;e:/mint"
  59.  
  60. #    a bit primitive, but it does the job if you've compressed all your man pages
  61. #    I should install Bill Rosenkranz's man package instead.
  62. export MANDIR=d:/man
  63.  
  64. function man {
  65.     if [ $# -ne 1 ]
  66.     then
  67.         echo Usage: $0 file
  68.         return 1
  69.     fi
  70.  
  71.     name=${1%%.ma?}
  72.  
  73.     for dir in . $MANDIR
  74.     do
  75.         if [ -r $dir/$name.man ]
  76.         then
  77.             less $dir/$name.man
  78.             return
  79.         elif [ -r $dir/$name.maz ]
  80.         then
  81.             compress -dc $dir/$name.maz | less
  82.             return
  83.         fi
  84.     done
  85. }
  86.  
  87. #    just for testing
  88. a new='exec ~/ksh.tos'
  89.  
  90. if [ $interactive = "TRUE" ]    # Can't really be bothered to load these on 
  91. then                            # a non interactive shell.
  92.     . ~/pushd                    # Add functions for dirs, pushd, popd
  93. fi                                # Taking this out speeds up scripts quite a bit
  94.  
  95. unset interactive
  96.  
  97. typeset -l PWD                    # I like pwd's to be lower case
  98.  
  99. # basename/dirname as shell functions
  100.  
  101. function basename {
  102.     case $# in
  103.         1)    ;;
  104.         2)    eval set \${1%$2} ;;
  105.         *)    echo Usage: $0 pathname '[suffix]'
  106.             return 1;;
  107.     esac
  108.     echo ${1##*[\\/]}
  109.     return 0
  110. }
  111.  
  112. function dirname {
  113.     if [ $# -ne 1 ]
  114.     then
  115.         echo Usage: $0 pathname
  116.         return 1
  117.     fi
  118.     echo ${1%[\\/]*}
  119.     return 0
  120. }
  121.  
  122.