mirror of
https://github.com/9fans/plan9port.git
synced 2025-01-12 11:10:07 +00:00
1889a25783
R=rsc CC=plan9port.codebot https://codereview.appspot.com/12505045
51 lines
1 KiB
Text
51 lines
1 KiB
Text
# 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 ' ')
|
|
}
|
|
if(~ $rcname ?.out ?.rc */?.rc */?.out) prompt=('broken! ' ' ')
|
|
if(flag p) path=(/bin /usr/bin)
|
|
if not{
|
|
finit
|
|
# should be taken care of by rc now, but leave just in case
|
|
}
|
|
fn sigexit
|
|
if(! ~ $#cflag 0){
|
|
if(flag l && test -r $home/lib/profile) . $home/lib/profile
|
|
status=''
|
|
eval $cflag
|
|
exit $status
|
|
}
|
|
if(flag i){
|
|
if(~ $termprog 9term || ~ $termprog win){
|
|
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
|
|
}
|
|
if(flag l && test -r $home/lib/profile) . $home/lib/profile
|
|
status=''
|
|
if(! ~ $#* 0) . $*
|
|
. -i '/dev/stdin'
|
|
exit $status
|
|
}
|
|
if(flag l && test -r $home/lib/profile) . $home/lib/profile
|
|
if(~ $#* 0){
|
|
. /dev/stdin
|
|
exit $status
|
|
}
|
|
status=''
|
|
. $*
|
|
exit $status
|