2003-11-23 18:29:41 +00:00
|
|
|
# rcmain: Plan 9 on Unix version
|
|
|
|
if(~ $#home 0) home=$HOME
|
|
|
|
if(~ $#home 0) home=/
|
|
|
|
if(~ $#ifs 0) ifs='
|
|
|
|
'
|
|
|
|
switch($#prompt){
|
|
|
|
case 0
|
|
|
|
prompt=('% ' ' ')
|
|
|
|
case 1
|
|
|
|
prompt=($prompt ' ')
|
|
|
|
}
|
2004-03-26 17:31:41 +00:00
|
|
|
if(~ $rcname ?.out ?.rc */?.rc */?.out) prompt=('broken! ' ' ')
|
2004-05-14 17:45:39 +00:00
|
|
|
if(flag p) path=(/bin /usr/bin)
|
2003-11-23 18:29:41 +00:00
|
|
|
if not{
|
|
|
|
finit
|
2005-01-13 04:49:19 +00:00
|
|
|
# should be taken care of by rc now, but leave just in case
|
2003-11-23 18:29:41 +00:00
|
|
|
}
|
|
|
|
fn sigexit
|
|
|
|
if(! ~ $#cflag 0){
|
2004-03-25 23:03:22 +00:00
|
|
|
if(flag l && test -r $home/lib/profile) . $home/lib/profile
|
2003-11-23 18:29:41 +00:00
|
|
|
status=''
|
|
|
|
eval $cflag
|
2005-03-18 19:50:15 +00:00
|
|
|
exit $status
|
2003-11-23 18:29:41 +00:00
|
|
|
}
|
2005-03-18 19:50:15 +00:00
|
|
|
if(flag i){
|
2003-12-02 22:03:35 +00:00
|
|
|
if(~ $TERM 9term){
|
2005-08-10 16:59:19 +00:00
|
|
|
fn cd {
|
|
|
|
# builtin cd $1 && flag i && awd
|
|
|
|
# is not sufficient when running in a subshell
|
|
|
|
# that is rc -e (like mk uses!)
|
|
|
|
if(builtin cd $1){
|
|
|
|
if(flag i) $PLAN9/bin/9 awd || status=''
|
|
|
|
status=''
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$PLAN9/bin/9 awd
|
2003-12-02 22:03:35 +00:00
|
|
|
}
|
2004-05-14 17:45:39 +00:00
|
|
|
if(flag l && test -r $home/lib/profile) . $home/lib/profile
|
2003-11-23 18:29:41 +00:00
|
|
|
status=''
|
|
|
|
if(! ~ $#* 0) . $*
|
|
|
|
. -i '/dev/stdin'
|
2005-03-18 19:50:15 +00:00
|
|
|
exit $status
|
2003-11-23 18:29:41 +00:00
|
|
|
}
|
2005-03-18 19:50:15 +00:00
|
|
|
if(flag l && test -r $home/lib/profile) . $home/lib/profile
|
|
|
|
if(~ $#* 0){
|
|
|
|
. /dev/stdin
|
|
|
|
exit $status
|
2003-11-23 18:29:41 +00:00
|
|
|
}
|
2005-03-18 19:50:15 +00:00
|
|
|
status=''
|
|
|
|
. $*
|
2003-11-23 18:29:41 +00:00
|
|
|
exit $status
|