Bcsh Patch #2
chris
chris at globetek.UUCP
Wed Feb 5 08:46:34 AEST 1986
This is Patch #2 for bcsh, the Bourne shell cshell-emulator. It is a context
diff, suitable for use with patch (say 'patch < thisfile'). If you do not
have patch, I will be happy to mail you a copy, or else you can simply apply
the diffs by hand.
Problem: ^foo^bar^ style command substitutions failed.
Repeat by: Enter "echo foo foo foo", then "^foo^bar" or "^foo^bar^.
Index: bcsh
*** newbcsh Tue Feb 4 17:42:47 1986
--- bcsh Tue Feb 4 17:36:21 1986
***************
*** 841,847
;;
esac
case "$cmd" in
! *\^*\^*)
# see if the substitution is global
--- 841,847 -----
;;
esac
case "$cmd" in
! *\^*\^*\^*)
# see if the substitution is global
***************
*** 866,874
# find what substitution is wanted
! first="`expr \"$cmd\" : '.*\^\(.*\)\^.*\^.*'`"
! second="`expr \"$cmd\" : '.*\^.*\^\(.*\)\^.*'`"
! rest="`expr \"$cmd\" : '.*\^.*\^.*\^\(.*\)'`"
cmd="`echo \"$lastcmd\" | sed -e \"s@$first@$second@$global\"`$rest"
# see if the substitution worked
--- 866,874 -----
# find what substitution is wanted
! first="`expr \"$cmd\" : '*\^\(.*\)\^.*\^.*'`"
! second="`expr \"$cmd\" : '*\^.*\^\(.*\)\^.*'`"
! rest="`expr \"$cmd\" : '*\^.*\^.*\^\(.*\)'`"
cmd="`echo \"$lastcmd\" | sed -e \"s@$first@$second@$global\"`$rest"
# see if the substitution worked
--
Christine Robertson {linus, ihnp4, decvax}!utzoo!globetek!chris
Money may not buy happiness, but misery in luxury has its compensations...
More information about the Comp.sources.bugs
mailing list