


JOE(1)							JOE(1)


NNAAMMEE
       joe - Joe's Own Editor

SSYYNNOOPPSSIISS
       jjooee ffiillee
       jjooee

DDEESSCCRRIIPPTTIIOONN
       JOE  is	a  screen editor designed to be easy to learn for
       novice users and powerful enough to be useful for  experi-
       enced  users.  After you invoke the editor, you can hit ^K
       H ('^' mean hold the Ctrl key down while pressing the fol-
       lowing  key)  to	turn  on  the	help text.  From this you
       should be able to figure out how to use the editor.  A few
       things need further explanation however.

       Note that JOE is a student written program and is not sup-
       ported by WPI or the CCC.  This means that JOE will not be
       maintained  by the CCC staff and that the CCC staff do not
       have to help you use it.	Use this  program  at	your  own
       risk.   However,	as  long as the author of the program is
       here at WPI, he will be glad to help you.  Mail any  ques-
       tions you have to 'rcarter@wpi.wpi.edu'


UUSSAAGGEE
       JOE  uses  the "TERM" environment variable and the termcap
       database to determine the height and width of  the  screen
       and  to	determine if the terminal uses scrolling regions.
       Except  for  these  differences	the  terminal	must   be
       ANSI/VT100 compatible.

       JOE  also  tries	to  get  the width and the height of the
       screen from the TIOCGSIZE ioctl if your system supports it
       and  if it reports that its values are valid.  This allows
       JOE to use resizable windows.  Unfortunately,  the  values
       returned	by  TIOCGSIZE are occasionally wrong when JOE is
       used on a normal serial terminal.  If you find  that  this
       is the case, you can force the values TIOCGSIZE returns by
       typing the commands: 'stty rows 24' and 'stty cols 80'

       To customize the help screen or the key bindings, copy the
       file  /usr/local/stusrc/joe/.joerc  to your home directory
       and modify it.  The comments at the beginning of the  file
       explain how to do this.

       Be sure that the baud rate as reported by stty is correct.
       JOE uses this to optimize its screen  writes.   If  you're
       going over a network, set the baud rate to your best esti-
       mate of the actual throughput.  If you're using JOE in  an
       X  window, set the baud rate to the highest possible (usu-
       ally 'stty extb' or 'stty 38400').

       ^K J reformats the current paragraph.  ^T R can be used to



								1





JOE(1)							JOE(1)


       change  the right margin.  The default is the width of the
       screen.	If auto-indent mode is set,  indented  paragraphs
       are formatted.

       Use  ^K	B to set the beginning of a block and ^K K to set
       the end of a block.  You can  then  copy,  move,	save  or
       delete  the  marked  block.  To turn the highlighting off,
       hit ^K B ^K K (make the beginning and ending the	same  or
       move  the  beginning  past  the	ending or move the ending
       before the beginning).

       ^K O splits a window into two.  You can then use ^K  E  to
       load  a	file  into the new window.  ^K I shows either one
       window or it shows all of the windows.  Use ^C  to  elimi-
       nate a window.

       Control	characters  (0-31,  127)  are  shown  underlined.
       Characters above 127 are shown in inverse.  You can use	`
       and  ^ to  enter control characters or characters with the
       7th bit set.

       Hit ^K F to find text.  You will be prompted to enter  the
       search string.  After hitting Return, you will be prompted
       for options- you can type 1 or more of:

		      i	Ignore case
		      b	Backwards
		      r	Replace
		      nnn  Find	the  nth  occurance  or  do  nnn
       replacements

		 If you hit r, you will also be prompted to enter
       the	   replacement string.

		 Hit ^L to find the next occurance of the  previ-
       ous  search	    string  (with  all the same options
       except nnn).

       Hit ^K L to goto an entered line number.

       Hit ^K 0 to execute a shell command.  If a block was  set,
       the shell command gets the block on its standard input and
       the any output the command writes to it's standard  output
       will replace the block.	If a block was not set, any stan-
       dard output is simply inserted into the text at the cursor
       location.

       You  may wish to capture the error output from the command
       instead of its standard output.	This may be done by  giv-
       ing  appropriate	shell	modifiers along with the command.
       For example if you want to run the command 'make bsd':

	    make bsd		stderr -> screen, stdout ->  edi-
       tor



								2





JOE(1)							JOE(1)


	    make  bsd >&2	     stderr -> screen, stdout ->
       screen
	    make bsd 2>&1	    stderr -> editor, stdout  ->
       editor
	    make  bsd 3>&1 1>&2 2>&3	stderr -> editor, std-
       out -> screen

       If for some reason JOE gets a signal (that it's	going  to
       crash  or  that	the system is messing up), it attempts to
       save all of its modified files into a  file  "DEADJOEnnnn"
       (where nnnn is the process I.D.) in the current directory.
       Edit this file to get your latest modifications back after
       such an occurance.


MMOODDEESS
       A  number  of  editing modes are settable with the ^T com-
       mand:

	    Insert/Overtype
			   When you type  characters,  they  will
       either be
			   inserted  before  the existing text or
       will
			   replace the existing text.

	    Tab Magic on/off
			   When tab magic is on, the column  num-
       ber of
			   characters  preceded by tab characters
       will
			   automatically be maintained.

	    Word Wrap on/off
			   When word wrap is on, words typed past
       the
			   right  margin  will automatically wrap
       to the
			   left edge of the screen.

	    Autoindent on/off
			   When autoindent is on, new lines  will
       begin
			   with	same  amount  of whitespace from
       the left
			   edge of  the	screen.   Also	indented
       paragraphs
			   will be formatted properly.

	    Picture mode on/off
			   When	picture  mode	is on, the right-
       arrow and
			   down-arrow keys will	move  freely  on
       the screen.



								3





JOE(1)							JOE(1)


			   I.E., right arrow will not wrap to the
       next
			   line and down arrow will not	stop  at
       the end
			   of the file.


FFIILLEESS
	.joerc			Initialization	file.	JOE looks
       for
				this in	the  current  directory,
       the
				user's home directory and in the
				directory containing JOE


RREESSTTRRIICCTTIIOONNSS
       The file size is limited to the system process size limit


BBUUGGSS
       Send bug reports to rcarter@wpi.wpi.edu (Joseph H. Allen).
       This should be valid to at least January, 1991.	You  can
       also contact me through snail mail:

				Joseph H. Allen
				28 Dale Lane
				Smithtown, N.Y. 11787





























								4


