home *** CD-ROM | disk | FTP | other *** search
- /* Look at the command at the end of the script an change it accordingly to your
- TeX setup */
-
- /*** START ***/
-
- options results
-
- address 'GOLDED.1'
- LOCK CURRENT
- /*** Look if DVIprint is already busy ***/
-
- IF SHOW('P','dviprint') THEN DO
- 'REQUEST BODY="DVIprint is already running, please wait"'
- UNLOCK
- EXIT
- END
-
- /*** Look if the user forgot to state which printer to use ***/
-
- noprinter = mygetenv("DVIPRINT")
-
- IF noprinter=="" THEN DO
- 'REQUEST OLD="printer=" BODY="Use which printer and draft ?" STRING'
- printer=RESULT
- /* I hope you stated something reasonable */
- CALL mysetenv("DVIPRINT",'"'printer'"') /* Look at that tricky construction !! */
- END
-
- CALL SETCLIP("pages")
-
-
- QUERY FILE
- filename=RESULT
- QUERY PATH
- pathname=RESULT
-
-
- if (RIGHT(pathname,1)) ~= ":" THEN DO
- pathname = pathname||"/"
- END
-
-
- filename = left(filename,lastpos('.',filename)-1)
-
- /*** is there a .dvi file ? ***/
- IF ~EXISTS(pathname||filename||".dvi") THEN DO
- 'REQUEST BODY="The corresponding .dvi file does not exist|Use Start_TeX to generate one."'
- UNLOCK
- EXIT 5
- END
-
- /*** I want to know if the customer wants to print the whole text ***/
-
- 'REQUEST BODY="Print all pages ?" BUTTON="_Yep|_Nope"'
- if (RESULT = 0) THEN DO
- 'REQUEST LONG TITLE="Print from which page ?" MIN=0 MAX=10000 VAR=pagefrom'
- IF pagefrom='' THEN DO
- 'REQUEST BODY="Enter a number!"'
- UNLOCK
- EXIT
- END
- pagefrom=RESULT
- 'REQUEST LONG OLD="" TITLE="Print to which page ?" MIN=0 MAX=1000 VAR=pageto'
- IF pageto='' THEN DO
- 'REQUEST BODY="Enter a number!"'
- UNLOCK
- EXIT
- END
- pageto=RESULT
- 'REQUEST BODY="Print every (<RET>), ODD or EVEN pages?" STRING'
- whatpage=result
- IF whatpage = "" THEN
- CALL SETCLIP("pages","FROM" pagefrom" TO "pageto" ")
- else
- CALL SETCLIP("pages","FROM" pagefrom" TO "pageto whatpage" ")
- END
-
-
-
-
- /* now lets start the command given by the user and unlock GoldED */
-
-
- ADDRESS COMMAND "tex:bin/DVIPRINT -l -p -r "||GETCLIP("pages")||pathname||filename
-
- UNLOCK
-
- EXIT 0 /* Get outta here */
-
- mygetenv: procedure /* when will ARexx supply GetEnv/SetEnv ? */
- PARSE ARG name /* Thanks to Georg ! */
-
- IF open(TEMPFILE,"ENV:"||name,'r') THEN DO
- gives = readln(TEMPFILE)
- CALL close TEMPFILE
- END
- ELSE gives = ""
-
- RETURN gives
-
- mysetenv: procedure
- PARSE ARG name,content
-
- ADDRESS COMMAND "SetEnv" name content
-
- RETURN
- END
-