mirror of
https://github.com/GnoConsortium/gno.git
synced 2024-11-09 07:07:59 +00:00
f6ad5e32aa
Added explanation of the (minor) changes made in the initial v2.0.6 checkin, and what still needs to be done. UpdateLog: Minor formatting change on some lines. link.script, mods: These files are obsolete.
186 lines
10 KiB
Plaintext
186 lines
10 KiB
Plaintext
GSH 2.0 UPDATES
|
|
^^^^^^^^^^^^^^^
|
|
|
|
24 Apr 98 [gdr] Fitted gsh sources into into GNO builds. While gsh
|
|
assembles and links (abeit using the v2.0.4 termcap library),
|
|
it does not currently run -- it just crashes. The changes
|
|
that were made includes:
|
|
- 'keep' lines were eliminated
|
|
- the 'mcopy' now takes the macro from the /obj/gno/bin/gsh
|
|
directory. This is in anticipation of having the macro
|
|
files generated from a single source file; there is a large
|
|
amount of duplication. For the moment, the makefile merely
|
|
copies the old macro files from the "M" directory to the
|
|
/obj/gno/bin/gsh directory.
|
|
- start each file with a dummy routine so that the source
|
|
code winds up in the *.o rather than the *.root file.
|
|
- added the 'setcom 60' directive; there were many source
|
|
lines that were otherwise getting truncated.
|
|
|
|
18 Nov 97 - [gdr] initial checkin into v2.0.6 repository. No changes
|
|
were made to the sources.
|
|
|
|
GSH 1.1 UPDATES
|
|
^^^^^^^^^^^^^^^
|
|
|
|
(unknown) - Removed two references to $E0C000 in shell.asm (signal
|
|
handlers). Bad Timmy!
|
|
2/25/92 d01 - fixed a problem with the command-line aborting after certain
|
|
built-ins are run.
|
|
4/03/92 d02 - .ttya and .ttyb are displayed as 'ta' and 'tb' respectively in
|
|
'ps'.
|
|
- "USER" field has been renamed to "MMID" in 'ps'.
|
|
d03 - removed all the extra newlines around 'There are stopped jobs'
|
|
message.
|
|
- 'exit' in a shell script aborts the script, instead of quitting
|
|
gsh itself.
|
|
- when getting a 'There are stopped jobs' message, a second
|
|
attempt to exit the shell will result in all jobs being killed
|
|
and the shell will exit. No commands may appear between the
|
|
two attempts to exit. This is basically just like csh behaviour.
|
|
d04 - motd pathname has been changed to '31:etc:motd' where 31 is the
|
|
location of GNO, not the user directory. eventually motd will
|
|
be removed from gsh and will be handled by login or something
|
|
similar.
|
|
4/07/92 d05 - ^D and TAB expansion now properly works on */ boot prefix.
|
|
4/13/92 d06 - started work on new string vector library.
|
|
- started new builtin - 'hash' to display all hashed files.
|
|
Extremely preliminary.
|
|
4/14/92 d07 - 'hash' now uses string vectors to build the hash list for
|
|
displaying
|
|
- fixed a problem if no files were hashed.
|
|
- sv_alloc now makes sure there is an extra null at the end
|
|
of the allocated string vector.
|
|
4/20/92 d08 - 'which' puts the filename after the path for commands in
|
|
the current directory.
|
|
d09 - wrote a string vector function for printing the string
|
|
vectors in columns like 'ls'. 'hash' now calls this.
|
|
4/21/92 d10 - wrote routine for sorting string vectors...'hash' now sorts the
|
|
list...
|
|
4/23/92 d11 - full directory stack support!! pushd, popd, and dirs!!
|
|
d12 - 'ps' displays 'nu' for the .null driver under TT field.
|
|
4/25/92 d13 - Added '-l' option to 'kill'.
|
|
6/22/92 d14 - Began writing custom stdio for the shell using GS/OS output.
|
|
6/23/92 - minor optimization to alias hashing.
|
|
- finished stdout and stderr for gsh.
|
|
d15 - history file is no longer deleted on gsh start-up
|
|
- fixed '~' printer used in 'dirs'. /usr2/ was displayed as
|
|
~2 if $home was /usr. Looked real dumb :) and was incorrect.
|
|
- optimizations to job control
|
|
d16 - echo flushes the stdio when finished.
|
|
6/24/92 - fixed bug in system() call vector..make should work better
|
|
now :)
|
|
- added a newline after 'pwd'.
|
|
- wrote 'edit' built-in.
|
|
6/26/92 d17 - began work on stdin for gsh. Uses GS/OS, ioctl(), etc...
|
|
- began rewriting editor. Now uses key translation tables and
|
|
command jump tables.
|
|
- editor now accepts multiple character commands.
|
|
6/27/92 - further work on editor
|
|
- started work on termcap support in gsh. most command-line
|
|
editing uses termcap now.
|
|
6/28/92 - continued work on editor and termcap
|
|
- 'clear' and 'echo' builtins now use termcap.
|
|
- prompt now uses termcap.
|
|
- hacked up a quick 'tset' builtin.
|
|
- wrote keybinding function, termcap arrow keys now bound!
|
|
- beta test release sent out
|
|
6/29/92 d18 - if alias 'precmd' is defined, it is executed before drawing
|
|
each prompt.
|
|
- if $pushdsilent is set, then directory stack not displayed
|
|
after 'pushd' and 'popd'.
|
|
- termcap optimizations for history mechanism in editor.
|
|
- termcap optimizations for kill-line and kill-end-of-line.
|
|
- fixed bug in overwrite mode of editor...required too many
|
|
returns to end line -> rts's weren't being pulled off the
|
|
stack :)
|
|
6/30/92 - fixed a bug in the 'which' command when displaying files in cwd.
|
|
- the cursor is now left on when running applications.
|
|
- added '-c' option to gsh command-line
|
|
- wrote 'source' built-in
|
|
7/04/92 - fixed two bugs in prompt display code.
|
|
7/17/92 - fixed puts to not choke on NULL strings.
|
|
7/21/92 - Temporarily added Push/PopVariables to the code
|
|
- ospeed is now set so that padding can be done by termcap.
|
|
This fixed the dropped characters on my Xerox terminal when
|
|
doing screen clears.
|
|
- fixed a bug in 'tset'. Was doing a jsr instead of jsl. oops.
|
|
- set term can be in gshrc w/o manually doing a tset now.
|
|
- 'ps' now scans job list to find names of 'forked' processes.
|
|
- 'ps' nows displays tty numbers, since the ttyname is set
|
|
in 31/etc/ttys and not necessarily second-guessed by gsh.
|
|
7/25/92 - fixed cursor off problems.
|
|
8/26/92 d19 - larger number of builtins can be redirected or piped.
|
|
- Open-Apple is now mapped to meta (ESC).
|
|
- The editor tells gnocon to translate arrows into VT100 codes.
|
|
- fixed editor bug clearing entire line.
|
|
- wrote 'bindkey' built-in.
|
|
8/27/92 d20 - faster built-in searching.
|
|
- wrote 'setenv' builtin.
|
|
8/28/92 - termcap optimizations to word completion
|
|
- word completion now matches variables if word starts with '$'.
|
|
8/29/92 - only executuables are expanded if the word is a command. All
|
|
files are expanded for arguments.
|
|
8/30/92 - words to complete no longer need to be separated with spaces,
|
|
';','|', and '&' are now also recognized.
|
|
9/01/92 - 'cd' no longer reports bad pathname syntax if $home not set.
|
|
- 'pid' parsing now does syntax checking :)
|
|
- kill won't allow killing process 0
|
|
- changed 'jobs' invocation from method 0 to method 1.
|
|
- word completion will not occur if the word contains an '=',
|
|
single quote or double quote.
|
|
9/03/92 - fixed memory trashing problem in 'source'
|
|
9/04/92 - 'ps' only displays processes with the users uid. Be sure to
|
|
use login, or you'll be the kernel's uid and get to see all
|
|
of the kernel's processes as your own.
|
|
9/10/92 - forgot to 'clc' when alias not found in 'alias foo'.
|
|
9/20/92 - fixed open-apple mapping
|
|
- changed keyboard mapping
|
|
- tab expands directories as the command
|
|
- set problem with '-f' fixed
|
|
9/21/92 - fixed 'cd' with no arguments.
|
|
- fixed 'set foo' and 'setenv foo'.
|
|
- fixed bug again in 'cd'.
|
|
- 'set' and 'setenv' list exported variable names in upper case
|
|
- fixed a probelm in puts when passed a null pointer.
|
|
- fixed pointer bug in '~' compactor
|
|
- wrote 256 byte buffer pool
|
|
9/22/92 - fixed parsing bug when parsing two or more command-lines
|
|
simultaneously.
|
|
- wrote 1024 byte buffer pool.
|
|
- word completion now matches built-ins
|
|
- wordmatching ignores matches if the suffix is contained in
|
|
the $fignore variable.
|
|
10/31/92 d21 - fixed bug in piping mechanism.
|
|
11/04/92 - fixed hashing problems.
|
|
11/17/92 - new builtin 'commands' lists all built-in commands. Try aliasing
|
|
help to this for beginning users.
|
|
01/17/93 b01 - fixed prefix not printing correctly if zero length prefix.
|
|
- word completion will expand to proper case.
|
|
01/20/93 b02 - removed motd printing from gsh
|
|
02/08/93 - fixed job control setting of terminal when background job
|
|
completes.
|
|
02/09/93 - ^C & ^Z printing removed from the shell. The kernel will do
|
|
this now.
|
|
02/17/93 b03 - gshrc is now read as '@:gshrc'
|
|
03/02/93 - 'set' automatically detects changing $term and auto-peforms a
|
|
tset. manually typing 'tset' is no longer required though it is
|
|
still included.
|
|
- prompts can now contain \n,\r,\t,\b.
|
|
03/10/93 - updated automatic variable setting code. works faster now.
|
|
- optimized low-level string routines
|
|
03/25/93 - fixed NULL commands aborting entire command-lines.
|
|
04/04/93 - history commands can now be greater than 256 characters, though
|
|
when being read, they are clipped to 1024.
|
|
- the history file location has been moved to '@:history'
|
|
- if $ignoreeof is set, then EOF (^D) will not quit the shell.
|
|
- %U and %u will start and end underlining in prompts.
|
|
04/22/93 b04 - 'df' displays device numbers
|
|
- gsh now takes commands as command-line input. ie.,
|
|
'gsh echo hello, world' will start gsh then gsh will run echo.
|
|
- fixed a nasty shell script bug that basically rendered it
|
|
useless.
|
|
- fixed memory trashing in shell scripts.
|
|
- fixed memory trashing in histories.
|
|
04/26/94 b05 - which no longers displays the command-name first.
|