home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 317b.lha / SKSH_v1.2 / Addendum1.2.doc.pp / Addendum1.2.doc
Text File  |  1989-12-05  |  10KB  |  397 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.                               Addendum for Version 1.2
  17.  
  18.                                         SKSH
  19.  
  20.                            A ksh-like Shell for the Amiga
  21.  
  22.                                      Version 1.2
  23.  
  24.  
  25.                                   (Copyright) 1989 
  26.  
  27.                                      Steve Koren
  28.  
  29.                                   November 19, 1989
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.           Addendum to Version 1.2
  74.  
  75.             This document describes additions and  changes  to  SKsh  since
  76.             version 1.1.
  77.  
  78.             Shell name changed
  79.  
  80.                The most obvious change is  that  the  shell  is  no  longer
  81.                called 'Ash'.  There  are  apparently  at  least  two  other
  82.                Amiga shells called 'Ash', so I changed the  name  to  avoid
  83.                confusion with those shells.  It is now called  SKsh  ("ess-
  84.                kay-shell", for Steve Koren's shell).
  85.  
  86.                This  name  change  will  cause  some  confusion  for   this
  87.                release, but hopefully will prevent it in the  future.   For
  88.                now, note the following:
  89.  
  90.                  1)  The  .ashrc  and  .ashinit  files   are   now   called
  91.                      .skshinit and .skshrc.  Delete the old  .ashinit  file
  92.                      and replace it with the new .skshinit file.   You  can
  93.                      simply rename the old .ashrc file to .skshrc.
  94.  
  95.                  2)  Delete the old Ash binary and replace it with the  new
  96.                      SKsh binary.
  97.  
  98.  
  99.             Directory expansion bug fixed!!
  100.  
  101.                By far the most important change in 1.2 is that  I  fixed  a
  102.                bug in the directory expansion mechanism  that  was  causing
  103.                system crashes at times.  This was a very serious  bug,  and
  104.                I had suspected it was there for quite  some  time,  but  it
  105.                took me awhile to find it.  It is fixed now.  (There  was  a
  106.                good reason I called the last two releases 'beta'  versions!
  107.                :-)
  108.  
  109.  
  110.             $LINES and $COLUMNS set automatically
  111.  
  112.                The LINES and COLUMNS variables are  now  set  automatically
  113.                when the window is resized.  Actually, the are  set  at  the
  114.                next interactive prompt; if  you  resize  the  window  while
  115.                either editing a command or running a  script  or  function,
  116.                the variables will not be set.
  117.  
  118.                The 'R' option is provided to  turn  this  behavior  off  if
  119.                desired.  When enabled (by default), this  provides  a  very
  120.                nice behavior when combined with the new 'ls' output  format
  121.                which uses the COLUMNS variable.  You can resize the  window
  122.                horizontally  and  not  have  messy  directories.   However,
  123.                window sizes which are  too  small  will  confuse  the  line
  124.                editor.  Also, the value set in the COLUMNS variable is  two
  125.                less than the actual column width, since the console  device
  126.                scrolls at less than the actual width.
  127.  
  128.  
  129.           SKSH Amiga Shell             Page 2              Addendum to 1.2
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.             Run function changed
  142.  
  143.                The 'run' function defined in .skshinit has been changed  to
  144.                use the new -s option to  which.   It  will  now  report  an
  145.                error if the command to be run is not found  in  the  search
  146.                path.
  147.  
  148.  
  149.             -s (silent) option added to which
  150.  
  151.                A -s option has  been  added  to  the  which command.  which
  152.                will exit silently if the names are not found in the  search
  153.                path.  Without the '-s' option,  it  outputs  a  message  in
  154.                this case.  The '-s' option is useful in test statements:
  155.  
  156.                if [ $(which -s some_file) = '' ]
  157.                then
  158.                   echo "some_file not found in search path"
  159.                fi
  160.  
  161.  
  162.             Command Line Editing changes
  163.  
  164.                The shift arrow  keys  can  now  be  used  to  move  to  the
  165.                beginning of a line, the end of a line,  the  first  history
  166.                line, or the last history line.
  167.  
  168.                Also, an <esc>-. command was added which  inserts  the  last
  169.                parameter  of  the   previous   line.    See   the   UserMan
  170.                documentation on command line editing for details.
  171.  
  172.  
  173.             force bug fixed
  174.  
  175.                Version  1.1  contained  a  bug  which  caused  the  'force'
  176.                command to not evaluate all its  arguments.   The  following
  177.                function now works correctly, where it would not before:
  178.  
  179.                function cd {
  180.                   force -b cd $*
  181.                   dir
  182.                }
  183.  
  184.  
  185.             dir : bug fixed
  186.  
  187.                A bug in 1.1 caused a 'dir :' command to enter  an  infinite
  188.                loop.  This has been fixed in 1.2.
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.           SKSH Amiga Shell             Page 3              Addendum to 1.2
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.             ls command enhanced
  206.  
  207.                Several enhancements were added to the 'ls'  command.   Most
  208.                significantly, a '-F' option was added.  This option can  be
  209.                used to change the output of the command in  a  customizable
  210.                way.  See the entries  for  the  _FILE_S,  _FILE_E,  _DIR_S,
  211.                _DIR_E, _EXEC_S, and  _EXEC_E  variables  in  the  Reference
  212.                manual for details.  'ls -F' can be used  to,  for  example,
  213.                underline file names and highlight directory  names  with  a
  214.                different pen color.
  215.  
  216.                The short directory form now has a cleaner output.  It  will
  217.                examine the longest file name, the  value  of  the  $COLUMNS
  218.                variable, and adjust  its  display  accordingly.   Thus,  if
  219.                there are mostly short file names  in  the  directory,  'ls'
  220.                will use more columns for output.
  221.  
  222.                The '-v' option to 'ls' now prints the total  file  size  as
  223.                well as the number of entries printed.
  224.  
  225.  
  226.             .skshinit and .skshrc now movable
  227.  
  228.                The two initialization files are no longer  required  to  be
  229.                in the s: directory.  They  are  now  searched  for  in  the
  230.                SKSH: directory.  If SKSH: points to s:, then the result  is
  231.                the same.  SKSH: can be changed to any legal directory.
  232.  
  233.  
  234.             New tests added
  235.  
  236.                Test expressions can  now  test  for  the  script  bit,  the
  237.                archive bit, and the pure bit by using -S, -A, or  -P.   See
  238.                the  test  expression  section  of  the  user's  guide   for
  239.                details.
  240.  
  241.  
  242.             Break notification
  243.  
  244.                Typing the break key (^c) during an SKsh command will  cause
  245.                '*** break' to be printed.
  246.  
  247.  
  248.             Recursive copy only on -r option
  249.  
  250.                In version 1.1, the copy  command  always  did  a  recursive
  251.                copy (ignoring the -r option).  This has been fixed.
  252.  
  253.  
  254.             Touch command added
  255.  
  256.                A new 'touch' command has been added which 1) creates  files
  257.                if  they  do  not  already  exist,  and   2)   updates   the
  258.                modification times on files if they do exist.
  259.  
  260.  
  261.           SKSH Amiga Shell             Page 4              Addendum to 1.2
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.             Clone (-c) option on cp
  274.  
  275.                The 'cp' command now supports  a  -c  (clone)  option  which
  276.                duplicates the file  times  and  protection  status  on  all
  277.                files copied.  The clone option is not the default, but  can
  278.                be made to act like it with the following alias:
  279.  
  280.                  alias cp = 'force -b cp -c'
  281.  
  282.  
  283.             quit alias added
  284.  
  285.                A 'quit' alias has been added that is like 'exit', but  does
  286.                not execute the value of the LOGOUT first.
  287.  
  288.  
  289.             cp buffer size increased
  290.  
  291.                The 'cp' buffer size has been  increased  to  32K  from  4K.
  292.                This should reduce thrashing when copying a file to  another
  293.                location on the  same  floppy.   Also,  the  buffer  is  now
  294.                dynamically allocated, not placed on the stack as with  SKsh
  295.                1.1.
  296.  
  297.  
  298.             chmod command added
  299.  
  300.                SKsh now has a built-in chmod command.  Permissions  can  be
  301.                set to an explicit value  or  added  or  subtracted.   Also,
  302.                more than one file can be operated upon at  once.   See  the
  303.                reference manual for details.
  304.  
  305.  
  306.             Documenation updates
  307.  
  308.                The documentation has been updated to  reflect  the  changes
  309.                in 1.2, and some documentation bugs  have  been  fixed.   In
  310.                particular, note that  the  installation  instructions  have
  311.                changed; please insure that  you  have  correctly  performed
  312.                all the steps listed.
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.           SKSH Amiga Shell             Page 5              Addendum to 1.2
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.           Other Notes
  341.  
  342.             I am  considering  this  to  be  the  first  "real"  (non-beta)
  343.             release of SKsh.  I will, of course, continue to enhance it  in
  344.             the future.  I believe most of the  critical  bugs  are  worked
  345.             out  now;  I'm  sure  there  are  still  some  bugs  left,  but
  346.             hopefully nothing like the directory expansion bug  above  that
  347.             was causing system crashes.
  348.  
  349.             One final note: be sure that you re-install the .skshinit  file
  350.             in the s: directory, since it has  changed  from  version  1.0.
  351.             The .skshrc file has not changed, so that one need not  be  re-
  352.             installed.  (In fact, that is the  concept  behind  having  two
  353.             init files; all users changes should  be  in  .skshrc  so  they
  354.             will not be overwritten by updates of .skshinit.)
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367.  
  368.  
  369.  
  370.  
  371.  
  372.  
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.           SKSH Amiga Shell             Page 6              Addendum to 1.2
  394.  
  395.  
  396.  
  397.