[net.micro.pc] Microemacs for EGA Part 1 of 4

toma@tekgvs.UUCP (Thomas Almy) (07/03/86)

Well, response was somewhat mixed for the previous posting, so I decided
to chance this one.  By writing directly to the display memory, performance
is greatly enhanced, but portability sure isn't!  The posting for "version
3.6J" works, and can be used by those people who cannot get my copy running
on their version.  My previous posting should work on all systems with 
either a CGA *clone* (those adapters which do not have the "snow" problem
that I was not willing to fix because none of my adapters have this problem)
with a COLOR display (B/W is no good), or an EGA with a COLOR display.
It will not work with a Monochrome adapter, or a b/w display, or work well
with a standard CGA.  Again, I apologize, but one version just cannot handle
every combination.

And neither does this one.  This is for an EGA/hi-res color monitor (such
as IBM Enhanced Color Display) ONLY!  It runs the display in 80x43 mode.
It requires NANSI.SYS (reposted here).  It is a beauty to run.

The programs has the same commands as the original 3.6 source posting but
I have added ^X-D which deletes the current window.  You will enjoy running
many windows with this version!

The remainder of this article is the emacs.hlp file, which I have corrected
in several places.

Tom Almy
EMACS FAN

-----------------cut here---------------------
		MicroEMACS 3.6 Help screens		(06/02/86)

	M-  means to use the <ESC> key prior to using another key
	^A  means to use the control key at the same time as the A key

^V or [Pg Dn]     Scroll down		M-< or [HOME]	Begining of file
M-V ^Z or [Pg Up] Scroll up		M-> or [END]	End of file
^X^N		  Scroll window down	^X^P		Scroll window up
-----------------------------------------------------------------------
		(1) MOVING THE CURSOR

^F  Forward character   M-F    Forward word		Keypad arrows
^B  Backward character  M-B    Backward word		are active!
^A  Front of line	
^E  End of line		
^N  Next line		M-N    Front of paragraph
^P  Previous line	M-P    End of paragraph
M-G Goto line
-----------------------------------------------------------------------
		(2) SEARCHING

^S	Search forward from cursor position.  Type in a string to be searched
	for at the prompt and end it with ESC.  Either case matches either
	unless EXECT mode is set for the current buffer
^R	As above, but Reverse search from cursor position.
<ALT> S	Search for the next occurence of the last string (IBM-PC only)
<ALT> R	Search for the last occurence of the last string (IBM-PC only)
-----------------------------------------------------------------------
		(3) REPLACING

M-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
-----------------------------------------------------------------------
		(4) CAPITALIZING & TRANSPOSING

M-U	UPPERCASE word
M-C	Capitalize word		^T	Transpose characters
M-L	lowercase word
^X^L	lowercase region
^X^U	uppercase region
^Q	Quote next entry, so that control codes may be entered into text
-----------------------------------------------------------------------
		(5) REGIONS & THE KILL BUFFER

M-<spacebar> M-.	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.
-----------------------------------------------------------------------
		(6) DELETING & INSERTING

<--	Delete previous character	M-<--	Delete previous word
^D	Delete next character		M-D	Delete next word
^K	Close (delete) to end of line	^C <INSERT>  Insert a space 
^O	Open (insert) line		<DELETE>  Delete next char 
^X^O	Delete blank lines
^W	Delete region between mark (set using M-<spacebar>) and cursor
M-W	Copy region to kill buffer
M-^W	Kill paragraph to kill buffer
^I Tab	Insert tab			^J	Newline and indent
^M CR	Insert newline
-----------------------------------------------------------------------
		(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

M-M	Add Global Mode		M-^M	Delete Global Mode
^X M	Add Mode		^X ^M	Delete Mode
	OVER	Replaces (overwrites) rather than inserts characters
	WRAP	Turns on word wrap (automatic carraige return).
	VIEW	Allows viewing file without insertion and deletion.
	EXACT	All searches done with exact case matching
	CMODE	Automatic indenting for C program entry
		(automatically set on any files ending with .C or .H)
-----------------------------------------------------------------------
		(9) ON-SCREEN FORMATTING

^Un^X F		Set fill column to n
Mn-<tab>	Set tab spacing to n characters between tabs stops
M-Q		Format paragraph so that text lies between margins
^X =		Position report -- displays line number, char count, size
-----------------------------------------------------------------------
		(10) 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.

^X 2	Split the current window in two	^X 1	remove all but current window
^X D    Delete current window (space goes to previous window)
^X O	cursor to next window		^X P	cursor to previous window
^X ^ ^X Z  Enlarge current window	^X ^Z   Shrink current window
M-^V	scroll down, other window	M-^Z	scroll up, other window
-----------------------------------------------------------------------
		(11) MULTIPLE BUFFERS

A BUFFER is a named area containing a document being edited.  Many buffers
may be activated at once.
^X B	Switch to another buffer.  <CR> = use just-previous buffer
^X ^B	Type buffer directory in a window
^X ^F	Find file; read into a new buffer created from filename.
^X K	Delete a non-displayed buffer.
^X X	Switch to next buffer in buffer list
M-^N	Rename buffer
-----------------------------------------------------------------------
		(12) READING FROM DISK

^X^F	Find file; read into a new buffer created from filename.
	(This is the usual way to begin editing a new file.)
^X^R	Read file into current buffer, erasing its previous contents.
	No new buffer will be created.
^X^I	Insert file into current buffer at cursor's location.
^X^V	Find a file to make current in VIEW mode
-----------------------------------------------------------------------
		(13) SAVING TO DISK

^X^S	Save current buffer to disk, using the buffer's filename
^XS	as the name of the disk file.  Any disk file of that name
	will be overwritten.
^X^W	Write current buffer to disk.  Type in a new filename at the
	prompt to write to; it will become the current buffer's filename.
M-Z	Write out all changed buffers and exit MicroEMACS
-----------------------------------------------------------------------
		(14) ACCESSING THE OPERATING SYSTEM

^X!	Send one command to the operating system and return
^XC	Start a new command processer under MicroEMACS
^XD	Suspend MicroEMACS into the background (UNIX BSD4.2 only)
^X^C	Exit MicroEMACS
^XN	Rename file
M-Z	Write out all changed buffers and then Exit MicroEMACS
-----------------------------------------------------------------------
		(15) MACROS

^X(	Begin Macro		^X)	End macro
^XE	Execute Macro
-----------------------------------------------------------------------
		(16) SPECIAL KEYS AND KEY BINDINGS

^G		Cancel current command and return to top level of processing.
^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
M-K		Bind a key to a named command
M-^K		Unbind a key
^X?		Describe key
M-?		Read this file into a buffer

describe-bindings
		List the current key bindings in a buffer
execute-buffer
		execute a buffer of command lines
execute-command-line
		execute a command line of form: n command args
execute-file
		execute a file of commands (emacs.rc, for instance)
----------------------------------------------------------------------
        (17) IBM PC FUNCTION KEY BINDINGS

PC KEY          BOUND TO
F1		set-mark M-spc
F2		kill-region ^W
F3		yank ^Y
F4		kill-to-end-of-line ^K
F6		delete-next-word M-D
F7		search-reverse ^R
F8		search-forward ^S
F9		hunt-backward 
F10		hunt-forward