=>		    Using The MicroEmacs HELP screens	              (09/05/89)

------------------------Special Keys within HELP--------------------------------
Down-Arrow: Next screen      Up-Arrow: Previous Screen         Return: Exit HELP
--------------------------------------------------------------------------------
 These screens describe only the default MicroEMACS key functions, available on
   all terminals.  For details of the function keys on your terminal, see the
                          function key window.
--------------------------------------------------------------------------------
=>	       	   MicroEMACS Key naming conventions
--------------------------------------------------------------------------------
^x	:	Press Ctrl and the key "x" together
Meta 	:	The "Meta" key, normally "Esc", "Escape" or ^[ 
M-x	:	Press Meta, followed by "x"
KP1	:	The "1" key on a VT100-type numeric keypad
G-x	:	The "Gold" key - PF1 on a VT100 followed by "x"
FNx	:	Various extra "function keys" on some terminals
--------------------------------------------------------------------------------
=>		Other Help Features in MicroEMACS
--------------------------------------------------------------------------------

M-H	:	This HELP facility
M-A	:	Apropos - lists commands matching a given string
M-?	:	Turn function key display on/off
^X?	:	Describe key

--------------------------------------------------------------------------------
=>		(1) MOVING THE CURSOR
--------------------------------------------------------------------------------
^O  Forward character	M-F  Forward word	| On most terminals, ARROW KEYS
^T  Backward character	M-B  Backward word	| are used to move the cursor
^A  Front of line	M-G  Goto a line	|
^E  End of line					| ^B prefixes can be omitted on 
^N  Next line		M-N  Front of paragraph	| some terminals.
^P  Previous line	M-P  End of paragraph	|	
--------------------------------------------------------------------------------
=>		(2) DELETING & INSERTING
--------------------------------------------------------------------------------
^H, <--, Bs or <DELETE>	Delete previous character	|  Marking & action
^D or <DELETE>		Delete next character		|  of DELETE/BS key
^C			Insert a space			|  varies between
M-<--			Delete previous word		|  terminals.
M-D			Delete next word		|
^K			Close (delete) to end of line	|
--------------------------------------------------------------------------------
=>		(2a) MORE DELETING & INSERTING
--------------------------------------------------------------------------------
<RETURN>   Insert a newline		<TAB>  Advance to next tab stop
^J	   Insert a newline and indent	M-^W   Delete paragraph
^B^O	   Open (insert) line
^W	   Delete region between mark (set using M-<spacebar>) and cursor
M-W	   Copy region to kill buffer
^X^O	   Delete blank lines around cursor
--------------------------------------------------------------------------------
=>		(3) SEARCHING
--------------------------------------------------------------------------------
M-S	Search forward from cursor position.
M-R	Reverse search from cursor position.
^XS	Forward incremental search
^XR	Reverse incremental search

To enable wildcards, type ^XMmagic<RETURN>
--------------------------------------------------------------------------------
=>		(4) REPLACING
--------------------------------------------------------------------------------
^R   	Replace all instances of first typed-in string with second
	typed-in string.  End each string with ESC.
M-^R	Replace with query.  Answer with:
	^G  cancel		   .   exit to entry point
	!   replace the rest		Y    replace & continue
	?   Get a list of options	N   no replacement & continue
--------------------------------------------------------------------------------
=>		(5) CAPITALIZING & TRANSPOSING
--------------------------------------------------------------------------------
M-U	UPPERCASE word
M-C	Capitalize word 	    ^B^T    Transpose characters
M-L	lowercase word
^X^L	lowercase region
^X^U	uppercase region
^BQ	Quote next entry, so that control codes may be entered into text
--------------------------------------------------------------------------------
=>		(6) REGIONS & THE KILL BUFFER
--------------------------------------------------------------------------------
M-<spacebar>	set MARK at current position
^X^X		eXchange mark and cursor

A REGION will then be continuously-defined as the area between the mark and
the current cursor position.  The KILL BUFFER is the text which has been
most recently saved or deleted.
--------------------------------------------------------------------------------
=>		(7) COPYING AND MOVING
--------------------------------------------------------------------------------
^W  Delete (Wipe) region		M-W	copy region to KILL buffer
^Y  Yankback save buffer at cursor
Generally, the procedure for copying or moving text is:
    1)	Mark a REGION using M-<spacebar> at beginning and cursor at end.
    2)	Delete it (with ^W) or copy it (with M-W) into the KILL buffer.
    3)	Move the cursor to the desired location and yank it back (with ^Y).
--------------------------------------------------------------------------------
=>		(8) MODES OF OPERATION
^XM	Add mode in buffer		M-M    Add global mode
^X^M	Delete mode in buffer		M-^M   Delete global mode
OVER		Replaces (overwrites) rather than inserts characters
WRAP		Turns on word wrap (automatic newlines)
VIEW		Allows viewing file without insertion and deletion
CMODE		Automatic indenting for C program entry
EXACT/MAGIC	Changes how search and replace commands work (see next page)
--------------------------------------------------------------------------------
=>		(9) SEARCH AND REPLACE MODES
--------------------------------------------------------------------------------
EXACT	Uppper/lower case is not ignored in searches
MAGIC	Regular pattern matching characters are active
    .	Matches any one character
    *	Matches any any number of the preceding character
    ^	Beginning of line	 [ ]   Character class enclosure
    $	End of line		 \     Quote next character
--------------------------------------------------------------------------------
=>		(10) ON-SCREEN FORMATTING
--------------------------------------------------------------------------------
^XF		Set fill column
Mn-<tab>	Set tab spacing to n characters. Use negative n for hard tabs.
M-Q		Format paragraph so that text lies between margins
^X=		Position report -- displays line number, char count,
				   file size and character under cursor
M-^C		Count words/lines/chars in marked region
--------------------------------------------------------------------------------
=>		(11) MULTIPLE WINDOWS
--------------------------------------------------------------------------------
Many WINDOWS may be active at once on the screen.  All windows may show
different parts of the same buffer, or each may display a different one.
^X2	Split the current window in two	^XO	Change to next window
^X0	delete current window		^XP	Change to previous window
^X1	delete all other windows	M-^V	Page down next window
					M-^Z	Page up other window
--------------------------------------------------------------------------------
=>		(12) CONTROLLING WINDOWS AND THE SCREEN
--------------------------------------------------------------------------------
^X^	Enlarge current window	 M-<n> ^XW   Resize window to <n> lines
^X^Z	Shrink current window
^X^N	Move window down
^X^P	Move window up - ^X^P^P on PAD terminals
M-^L	Reposition window
^L	Refresh the screen - ^BL on ADM terminals.
--------------------------------------------------------------------------------
=>		(13) MULTIPLE BUFFERS
--------------------------------------------------------------------------------
^XB	Switch to another buffer.  		| A BUFFER is the area in which
	<CR> = use just-previous buffer		| a file being edited is stored.
^XX	Switch to next buffer in buffer list	| Many buffers may be active at
M-^N	Change name of current buffer		| once. Each has a unique name,
^XK	Delete a non-displayed buffer.		| by default this is the same
^X^B	Display buffer directory in a window	| as the filename.
--------------------------------------------------------------------------------
=>		(14) READING FROM DISK
--------------------------------------------------------------------------------
^FF 	Find file; read into a new buffer created from filename.
	(This is the usual way to begin editing a new file.)
^FR 	Read file into current buffer, erasing its previous contents.
	No new buffer will be created.
^FI 	Insert file into current buffer at cursor's location.
^FV	Find a file to make current in VIEW mode
--------------------------------------------------------------------------------
=>		(15) SAVING BUFFERS AND REGIONS TO DISK
--------------------------------------------------------------------------------
^FS 	Save current buffer to disk
^FW 	Write current buffer to disk
^FN	Change file name of current buffer
M-Z	Write out all changed buffers and exit MicroEMACS
^X<	Make everything outside the current region invisable
^X>	Restore invisible text
-------------------------------------------------------------------------------
=>		(16) ACCESSING THE OPERATING SYSTEM
-------------------------------------------------------------------------------
^X!	Send one command to the operating system and return
^X@	Pipe DOS command results to buffer
^X#	Filter buffer through DOS/UNIX program. Output REPLACES buffer!
^XC	Start a new command processor under MicroEMACS
^XD	Suspend MicroEMACS into the background (UNIX BSD4.2 c-shell only)
^X^C	Exit MicroEMACS
--------------------------------------------------------------------------------
=>		(17) KEY BINDINGS AND COMMANDS
--------------------------------------------------------------------------------
M-K	Bind a key to a command        M-A  Describe a class of commands
M-^K	Unbind a key from a command
^X?	Describe command bound to a key
M-X	Execute a named (and possibly unbound) command
{Describe-bindings}
	Display a list of all commands and key bindings to a buffer
--------------------------------------------------------------------------------
=>		(18) COMMAND EXECUTION
Commands can be specified as command lines in the form:
	<optional repeat count> {command-name} <optional arguments>
{Execute-command-line}	execute a typed in command line
{Execute-buffer}	executes commands lines in a buffer
{Execute-file}		executes command lines from a file
{clear-message-line}	clears the message line during execution
   M-~			clears the modified flag for a buffer
--------------------------------------------------------------------------------
=>		(19) MACRO EXECUTION
--------------------------------------------------------------------------------
^X(	Start recording keyboard macro
^X) 	Stop recording keyboard macro
^XE	Execute keyboard macro
M-<n> {store-macro}	Start recording named macro
      !endm		Stop recording named macro
{execute-macro-n}	Execute macro n (where n is from 1 to 20)
--------------------------------------------------------------------------------
=>		(20) SPECIAL KEYS
--------------------------------------------------------------------------------
^G		Cancel current command and return to top level of processing.
		Also, breaks out of execting macro.
^U or		Universal repeat.  May be followed by an integer (default = 4)
M-<digit>	and repeats the next command that many times.
M-X		Execute a named (and possibly unbound) command

--------------------------------------------------------------------------------
=>		(21) VARIABLES - SETTING AND DISPLAYING
--------------------------------------------------------------------------------
^XA name <RETURN> value <RETURN>	Set variable "name" to "value"
^XG name <RETURN>			Show value of variable "name"
----------------------------In COMMAND mode-------------------------------------
describe-variables			Produce list of current variables
set name value				Set variable "name" to "value"
User-defined variables must start with "%" built-in variables with "$"
--------------------------------------------------------------------------------
=>		(22) TAB STOPS - HARD
--------------------------------------------------------------------------------
HARD tabs insert a special character (^I) in the text.  Deleting this removes the
whole tab.  Inserting characters does not upset the tabulation.  Changes to
the tab size instantly update the display.  Outside of MicroEMACS, 
tabstops are determined by the terminal - usually 8 characters.  Filter files
with other tab sizes through "expand" to print correctly - e.g:
expand -4 fred.c | lpr
--------------------------------------------------------------------------------
=>		(22a) TAB STOPS - SOFT
--------------------------------------------------------------------------------
Soft tabs work by inserting the appropriate number of spaces.  Subsequent 
editing	will upset the tabulation, and changing the tab size has no effect
on existing text.  Less convenient to edit than hard tabs, but useful to
produce files which can be typed regardless of the terminal's tab settings or
for applications which object to tab characters in the file.

--------------------------------------------------------------------------------
=>		(22b) TAB STOPS - SETTING
--------------------------------------------------------------------------------
Default is 8 character long hard tabs.  Each buffer can have it's own settings:
M-n<TAB>	Use n-character soft tabs in current buffer.
M--n<TAB>	(i.e. Meta minus-n) Use n-character hard tabs in current buffer.
Defaults are determined by the following variables:
$softtab	If non-zero - default size of soft tabs for new buffers.
$hardtab	Default size of hard tabs for new buffers (used if $softtab = 0)

