NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.
To learn about what's going on, see About the Archive Site.
Hi, A couple of months ago I sent a note with the tcl/tk script that will pop-up an X window with a bulletin from the LDM. This is nice, so you don't have to print every statement, warning etc. Today I added the ability to print the bulletin, via a print button. So I thought I would pass it along. In order to run this you must have tcl/tk installed, many systems do. I am running this on Linux. In order to print you must have your printer defined, ie lp0 in my case. An example pqact.conf entry that will pop-up any Tropical Bulletins from the NHC: DDPLUS ^WTNT.. KNHC PIPE -strip -close /weather/ldm/bin/ldmxnotify -d wxdata3:0 lp0 The '-d wxdata3:0' is the X display definition The 'lp0' is the print spool. If you have any questions let me know, Mike Dross Below is the script: ldmxnotify --------------> #!/usr/bin/wish # gets printer spool name from command line variable argv # take the stdin text and assign to variable $info set info [exec cat] text .xstdin -yscrollcommand {.s set} .xstdin insert 1.0 $info scrollbar .s -orient vertical -command {.xstdin yview} button .b1 -text Exit -command exit button .b2 -text "Print" -command Prnt # .b1 gets the entire bottom of the window. pack .b1 -side bottom pack .b2 -side bottom # Pack .s next, so that if the user decreases the size # of the window, the Text widget shrinks instead of # the Scrollbar. .s gets the right-hand side of the space # left over. It fills it vertically. pack .s -side right -fill y # Pack .xstdin last. Expand its packing space into # any additional space that becomes available if the # user resizes the window. Have the Text widget # completely fill its packing space. pack .xstdin -expand yes -fill both # Beep on pop-up bell # Sleep 5 minutes (300,000 milliseconds) then close window after 300000 exit proc Prnt {} { # Make info a global variable otherwise would not get read in a prodcedure global info argv # Spool to printer exec lpr -P$argv <<$info }
ldm-users
archives: