d$!{DO} HELP {topic or .topic or ?} $! Retains the topic text for obtaining HELP on various levels. ,$! $! topic Append the new topic to the already shown topics, $! and obtain HELP on this new set of topics. X$! .topic Replace the lowest level of the current topics with $! the new topic. $! (ret) Delete the lowest level topic and prompt again. $! $! ? Obtain the HELP information on the current set of L$! topics. $! EXIT Exit from the procedure. $! x$! HELP Print this DOHELP file. $! @$!-end.of.info- $ $ LEV = 8 l$ $CYCLEV: 4$ IF( P'LEV .NES."" ) THEN GOTO SHOW $ LEV = LEV-1 $ IF( LEV .GT. 0 ) THEN GOTO CYCLEV ` $ $DOHELP: ( $ info help $ $GETINP: T $ WRITE SYS$OUTPUT "" $ INQUIRE PIN "Do help " 'P1 'P2 'P3 'P4 'P5 'P6 'P7 'P8  $ IF( PIN .EQS. "?" ) THEN GOTO SHOW $ IF( PIN .EQS. " " ) THEN GOTO REDUCE $ IF( PIN .EQS. "EXIT" ) THEN GOTO FINI H $ IF( 'F$LOCATE( ".", PIN ) .EQ. 0 ) THEN GOTO REPLACE $ $ LEV = LEV+1 t$ P'LEV := 'PIN' $ GOTO SHOW <$ $REDUCE: $ IF( LEV.LE.0 ) THEN GOTO GETINP h$ P'LEV := " " $ LEV = LEV-1 0$ GOTO GETINP $ $REPLACE: \$ IF( LEV.LE.0 ) THEN GOTO GETINP $ P'LEV := 'F$EXTRACT(1,100,PIN) $$ GOTO SHOW $ $SHOW: P$ HELP 'P1 'P2 'P3 'P4 'P5 'P6 'P7 'P8 $ GOTO GETINP $ |$FINI: