*scrollHeight:			400
*ps.label:			ps
*ps.translations:		#override <Btn1Up>:  notify()
*ps.accelerators:		#override <Key>Return: set()  notify() 
*quit.label:			quit
*clear.label:	 		clear
*psoptions.width:	        20
*psoptions.string:
*psoptions.accelerators:	#override\n\
				<Key>Delete: delete-previous-character()\n\
				<Key>BackSpace: delete-previous-character()\n\
				<Key>: insert-char()
*multiList.cursor:		pirate
*multiList.pasteBuffer:		true
*multiList.translations:        #override <Btn1Down>: Toggle() 
*helpshell.title:		xzap help
*helpshell.iconName:		xzap help
*helpbox.orientation:		vertical
*helpdismiss.label:		dismiss
*helptext.height:		400
*helptext.width:		400
*helptext.wrap:			word
*helptext.scrollVertical:        whenNeeded
*helptext*string:		\
Xzap is an X version of the zap command described in Kernighan & Pike's\
 "The Unix Programming Environment". It provides an easy way to kill \
Unix processes.\n\
\n\
Using the left mouse button you may select any number of processes \
from the ps output & send the kill(2) signal to them all by hitting \
the skull & crossbones command button. \
Successfully delivered signals are indicated by the appropriate \
line(s) becoming insensitive.\n\
\n\
You may deselect a process by clicking on the left or right mouse button \
or deselect all processes by hitting the clear command button.\n\
\n\
To reinvoke ps hit the ps command button. You may add arguments \
to ps by typing into the options text widget to the right of the \
ps command button.  Typing return also causes the ps to be executed.\n\
\n\
Xzap tries to resize itself to contain the output from the ps, \
up to a height specified by the scrollHeight resource, at which point it adds a vertical scroll bar. \
If you resize the window so its height is greater than this \
height, then this has the effect \
of changing the resource.\
 You can also specify this resource from the command line option\
 -scrollHeight height in pixels. \n\
\n\
Since hitting the ps command button simply causes xzap to construct a \
call to popen(3) whose argument is the concatenation of "ps" & the \
contents the options text widget, you can apply a filter to the ps \
output. \n\
\n\
For example, setting options to\n\
\n\
aux|sort -r -n +4 -5\n\
\n\
on my machine gives a listing of all processes in process size order \
(if ps doesn't  run any columns together).\n\
\n\
WARNING\n\
\n\
When applying a filter, the ps header line may not be correct. \
This is because xzap makes no \
assumptions about the format of ps output other than that process \
numbers are in a column headed PID.  If such a column is not found \
in the first output line then the previous header is displayed. \
It is therefore possible for xzap to "kill" the wrong process if the \
ps output does not match the currently displayed header line.\n\
\n\
See the xzap manual page for details of xzap's widget hierarchy \
to enable you to override the default resource settings.\
\n\
\n\
Gerry Tomlinson (gerry.tomlinson@newcastle.ac.uk) January  1992
