MPW 3.2.3 Help Summaries

Copyright Apple Computer, Inc. 1986-1992
	All rights reserved.


	Help summaries are available for each of the MPW commands.	
	To see the list of all commands enter "Help Commands".  To see
	a partial list of commands, e.g., those relating to compilers, enter
	"Help Languages".  Some commands may appear in more than one category.
	In addition, brief descriptions of Expressions, Patterns, Selections,
	Characters, Shortcuts, and Variables, are also included.

	To see Help summaries, Enter a command such as

	Help Commands		# a list of all commands
	Help Editing		# a list of commands useful for editing
	Help FileSystem		# a list of commands relating to files, 
						# 	directories, and volumes
	Help Languages		# a list of compiler/assembler names
	Help Projector		# a list of commands in Projector,
						# 	a project/source control system
	Help Scripting		# a list of commands useful primarily within scripts
	Help System			# a list of commands that perform system functions
	Help Miscellaneous	# a list of utilities and aids to software construction
	Help Window			# a list of commands pertaining to windows
	Help Expressions	# summary of expressions
	Help Patterns		# summary of patterns (regular expressions)
	Help Selections 	# summary of selections
	Help Characters 	# summary of MPW Shell special characters
	Help Shortcuts		# summary of MPW Shell shortcuts
	Help Variables		# summary of the standard MPW shell variables
	
	
	
-	
Commands
	This is a full alphabetic list of all commands in MPW.  This includes build-in
	commands, commands that are implemented as scripts, and commands that are 
	implemented as tools.  To get details, enter a command such as
	
	Help AddMenu 		# add a menu item
	Help AddPane		# split the window into panes
	Help Adjust			# adjust lines
	Help Alert			# display an alert box
	Help Alias			# define or write command aliases
	Help Align			# align text to left margin
	Help Asm 			# MC68xxx Macro Assembler
	Help Backup			# folder file backup
	Help Beep			# generate tones
	Help Begin			# group commands
	Help Break			# break from For or Loop
	Help Browser		# invoke Marker Browser
	Help BuildCommands	# show build commands
	Help BuildMenu		# create the Build menu
	Help BuildProgram	# build the specified program
	Help C				# C compiler
	Help Canon			# canonical spelling tool
	Help Catenate		# concatenate files
	Help CFront			# C++ to C translator
	Help CheckIn 		# check a file into a project
	Help CheckOut		# check a file out from a project
	Help CheckOutDir 	# specify the directory where checked out files will placed
	Help Choose			# choose or list network file server volumes and printers
	Help Clear			# clear the selection
	Help Close			# close specified windows
	Help CMarker		# generate Mark commands for C and C++ function definitions
	Help Commando		# present a dialog interface for commands
	Help Compare 		# compare text files
	Help CompareFiles	# compare text files and interactively view differences
	Help CompareRevisions# compare two revisions of a file in a project
	Help Confirm 		# display a confirmation dialog box
	Help Continue		# continue with next iteration of For or Loop
	Help Copy			# copy selection to Clipboard
	Help Count			# count lines and characters
	Help CPlus			# script to compile C++ source
	Help CreateMake		# create a simple makefile
	Help Cut 			# copy selection to Clipboard and delete it
	Help Date			# write the date and time
	Help Delete			# delete files and directories
	Help DeleteMenu		# delete user-defined menus and menu items
	Help DeleteNames 	# delete user-defined symbolic names
	Help DeletePane		# delete panes from the window
	Help DeleteRevisions # delete previous revisions of files in a project
	Help DeRez			# resource decompiler
	Help Directory		# set or write the default directory
	Help DirectoryMenu	# create the Directory menu
	Help DoIt			# highlight and execute a series of shell commands
	Help DumpCode		# write formatted CODE resources
	Help DumpFile		# display contents of any file
	Help DumpObj 		# write formatted object file
	Help Duplicate		# duplicate files and directories
	Help Echo			# echo parameters
	Help Eject			# eject volumes
	Help Entab			# convert runs of spaces to tabs
	Help Equal			# compare files and directories
	Help Erase			# initialize volumes
	Help Evaluate		# evaluate an expression
	Help Execute 		# execute command file in the current scope
	Help Exists			# confirm the existence of a file or directory
	Help Exit			# exit from a command file
	Help Export			# make variables available to commands
	Help FileDiv 		# divide a file into several smaller files
	Help Files			# list files and directories
	Help Find			# find and select a text pattern
	Help Flush			# flush the tools that the Shell has cached
	Help For 			# repeat commands once per parameter
	Help Format			# set or display formatting options for a window
	Help Gestalt		# output information about the operating environment
	Help Get			# get a record from an indexed file 
	Help GetErrorText	# display error messages based on message number
	Help GetFileName 	# display a Standard File dialog box
	Help GetListItem 	# display items for selection in a dialog box
	Help Help			# write summary information
	Help If				# conditional command execution
	Help Lib 			# combine object files into a library file
	Help Line			# find line in the target window
	Help Link			# link an application, tool, or resource
	Help Loop			# repeat commands until Break
	Help Make			# build up-to-date version of a program
	Help MakeErrorFile	# create error message textfile
	Help Mark			# assign a marker to a selection
	Help Markers 		# list markers
	Help MatchIt 		# semi-intelligent language sensitive bracket matcher
	Help MergeBranch 	# merge a branch revision onto the trunk
	Help ModifyReadOnly	# enables a read-only Projector file to be edited
	Help Mount			# mount volumes
	Help MountProject	# mount projects
	Help Move			# move files and directories
	Help MoveWindow		# move window to h,v location
	Help NameRevisions	# define a symbolic name
	Help New 			# open a new window
	Help Newer			# compare modification dates of files
	Help NewFolder		# create a new folder
	Help NewProject		# create a new project
	Help Open			# open file(s) in window(s)
	Help OrphanFiles 	# remove Projector information from a list of files
	Help Parameters		# write parameters
	Help Pascal			# Pascal compiler
	Help PasMat			# Pascal programs formatter
	Help PasRef			# Pascal cross-referencer
	Help Paste			# replace selection with Clipboard contents
	Help PerformReport	# generate a performance report
	Help Position		# display current line position
	Help Print			# print text files
	Help PrintProff		# analyze a .proff file and print the results
	Help ProcNames		# display Pascal procedure and function names
	Help Project 		# set or write the current project
	Help ProjectInfo 	# display information about a Project
	Help Quit			# quit MPW
	Help Quote			# echo parameters, quoting if needed
	Help Rename			# rename files and directories
	Help Replace 		# replace the selection
	Help Request 		# request text from a dialog box
	Help ResEqual		# compares the resources in two files
	Help Revert			# revert window to previous saved state
	Help Rez 			# resource compiler
	Help RezDet			# detect inconsistencies in resources
	Help RotateWindows	# send active (frontmost) window to back
	Help Save			# save specified windows
	Help SaveOnClose	# set save behavior when closing windows
	Help Search			# search files for pattern
	Help Set 			# define or write Shell variables
	Help SetDirectory	# set the default directory
	Help SetFile 		# set file attributes
	Help SetPrivilege	# set access privileges for directories on file servers
	Help SetVersion		# maintain version and revision number
	Help Shift			# renumber command file positional parameters
	Help ShowSelection	# place the selection within an editor window
	Help Shutdown		# power down or restart the machine
	Help SizeWindow		# set a window's size
	Help Sort			# sort or merge lines of text
	Help StackWindows	# arrange windows diagonally
	Help StreamEdit		# scriptable text editor
	Help Target			# make a window the target window
	Help TileWindows 	# arrange windows in a tiled fashion
	Help TransferCkid	# move Projector information from one file to another
	Help Translate		# translate characters
	Help Unalias 		# remove aliases
	Help Undo			# undo the last edit
	Help Unexport		# remove variable definitions from the export list
	Help Unmark			# remove a marker from a window
	Help Unmount 		# unmount volumes
	Help UnmountProject	# unmount projects
	Help Unset			# remove Shell variable definitions
	Help UserVariables	# uses Commando to set all the user variables
	Help Version		# print the version of the MPW Shell
	Help VersionList	# print version info from files
	Help Volumes 		# list mounted volumes
	Help WhereIs 		# find the location of a file
	Help Which			# determine which file the shell will execute
	Help Windows 		# list windows
	Help ZoomWindow		# enlarge or reduce a window's size
	
-
Editing
    The commands in this list are primarily useful for the editing of files.
	To get details, enter a command such as
	
    Help Adjust         # adjust lines
    Help Align          # align text to left margin
    Help Canon          # canonical spelling tool
    Help Clear          # clear the selection
    Help CompareFiles   # compare text files and interactively view differences
    Help Copy           # copy selection to Clipboard
    Help Cut            # copy selection to Clipboard and delete it
    Help Entab          # convert runs of spaces to tabs
	Help FileDiv        # divide a file into several smaller files
    Help Find           # find and select a text pattern
    Help Format         # set or display formatting options for a window
    Help Line           # find line in the target window
    Help Mark           # assign a marker to a selection
    Help Markers        # list markers
    Help MatchIt        # semi-intelligent language sensitive bracket matcher
    Help Paste          # replace selection with Clipboard contents
    Help Replace        # replace the selection
    Help ShowSelection  # place the selection within an editor window
    Help StreamEdit     # scriptable text editor
    Help Translate      # translate characters
    Help Undo           # undo the last edit
    Help Unmark         # remove a marker from a window
	
-
FileSystem
	The commands in this list relate to the manipulation of files and volumes.
	To get details, enter a command such as
	
	Help Catenate		# concatenate files
	Help Close			# close specified windows
	Help Compare 		# compare text files
	Help CompareFiles	# compare text files and interactively view differences
	Help Count			# count lines and characters
	Help Delete			# delete files and directories
	Help Directory		# set or write the default directory
	Help DumpFile		# display contents of any file
	Help Duplicate		# duplicate files and directories
	Help Equal			# compare files and directories
	Help Erase          # initialize volumes
	Help Exists         # confirm the existence of a file or directory
	Help FileDiv 		# divide a file into several smaller files
	Help Files			# list files and directories
	Help Move			# move files and directories
	Help Mount			# mount volumes
	Help New 			# open a new window
	Help Newer			# compare modification dates of files
	Help NewFolder		# create a new folder
	Help Open			# open file(s) in window(s)
	Help Position		# display current line position
	Help Print			# print text files
	Help Rename			# rename files and directories
	Help Save			# save specified windows
	Help Search			# search files for pattern
	Help SetDirectory	# set the default directory
	Help SetFile 		# set file attributes
	Help SetPrivilege	# set access privileges for directories on file servers
	Help SetVersion		# maintain version and revision number
	Help Target			# make a window the target window
	Help Unmount 		# unmount volumes
	Help Volumes 		# list mounted volumes
	Help WhereIs 		# find the location of a file
	
-
Languages
	The user should note that under normal circumstances, CFront should not be
	called directly.  It has been made available primarily for those who wish to
	use a C compiler other than MPW C.  If it is desired to see the intermediate 
	C code produced from C++ source, use "CPlus -c …".  For help, enter a command
	such as
	
	Help Asm 			# MC68xxx Macro Assembler
	Help C				# C compiler
	Help CFront			# C++ to C translator
	Help CPlus			# script to compile C++ source
	Help Pascal			# Pascal compiler
	
-
Projector
	Projector is a collection of built–in MPW commands and windows that
	help programmers (both individuals and teams) control and account for
	changes to all the files (documentation, source, applications etc.)
	associated with a software project.
	
	Here is a brief summary of the commands (the CheckIn, CheckOut, and
	NewProject commands also have windows that can be opened using the
	“-w” option to the respective command).  For help, enter a command such as
	
	Help CheckIn			# check a file into a project
	Help CheckOut			# check a file out from a project
	Help CheckOutDir		# specify the directory where checked out files will placed
	Help CompareRevisions	# compare two revisions of a file in a project
	Help DeleteNames		# delete user-defined symbolic names
	Help DeleteRevisions	# delete previous revisions of files in a project
	Help MergeBranch		# merge a branch revision onto the trunk
	Help ModifyReadOnly 	# enables a read-only Projector file to be edited
	Help MountProject		# mount projects
	Help NameRevisions		# define a symbolic name
	Help NewProject 		# create a new project
	Help OrphanFiles		# remove Projector information from a list of files
	Help Project			# set or write the current project
	Help ProjectInfo		# display information about a Project
	Help TransferCkid		# move Projector information from one file to another
	Help UnmountProject 	# unmount projects
	
-
Scripting
	The commands in this list are particularly useful within scripts.  
	To get details, enter a command such as
	
	Help AddMenu 		# add a menu item
	Help Alert			# display an alert box
    Help Alias          # define or write command aliases
	Help Beep			# generate tones
	Help Begin			# group commands
	Help Break			# break from For or Loop
	Help Confirm 		# display a confirmation dialog box
	Help Continue		# continue with next iteration of For or Loop
	Help Date			# write the date and time
	Help DeleteMenu		# delete user-defined menus and menu items
	Help DirectoryMenu	# create the Directory menu
	Help DoIt			# highlight and execute a series of shell commands
	Help Echo			# echo parameters
	Help Evaluate		# evaluate an expression
	Help Execute 		# execute command file in the current scope
	Help Exists			# confirm the existence of a file or directory
	Help Exit			# exit from a command file
	Help Export			# make variables available to commands
	Help For 			# repeat commands once per parameter
	Help GetFileName 	# display a Standard File dialog box
	Help GetListItem 	# display items for selection in a dialog box
	Help If				# conditional command execution
	Help Loop			# repeat commands until Break
	Help Parameters		# write parameters
	Help Quote			# echo parameters, quoting if needed
	Help Request 		# request text from a dialog box
	Help Set 			# define or write Shell variables
	Help Shift			# renumber command file positional parameters
	Help Unexport		# remove variable definitions from the export list
	Help Unset			# remove Shell variable definitions
	
-
System
	The following commands provide direct access from MPW to certain system
	functions.  For help, enter a command such as
	
	Help Choose			# choose or list network file server volumes and printers
	Help Date           # write the date and time
	Help Gestalt		# output information about the operating environment
	Help GetErrorText   # display error messages based on message number
	Help SetPrivilege	# set access privileges for directories on file servers
	Help Shutdown		# power down or restart the machine
	
-
Miscellaneous
	The following commands are a conglomeration of miscellaneous utilities
	and tools that are of use in the software construction process.  To get details,
	enter a command such as
	
	Help Backup         # folder file backup
    Help BuildCommands  # show build commands
    Help BuildMenu      # create the Build menu
    Help BuildProgram   # build the specified program
    Help CMarker        # generate Mark commands for C and C++ function definitions
    Help Commando       # present a dialog interface for commands
    Help CreateMake     # create a simple makefile
    Help DeRez          # resource decompiler
    Help DumpCode       # write formatted CODE resources
    Help DumpObj        # write formatted object file
    Help Help           # write summary information
    Help Lib            # combine object files into a library file
    Help Link           # link an application, tool, or resource
    Help Make           # build up-to-date version of a program
    Help MakeErrorFile  # create error message textfile
    Help PasMat         # Pascal programs formatter
    Help PasRef         # Pascal cross-referencer
    Help PerformReport  # generate a performance report
    Help ProcNames      # display Pascal procedure and function names
    Help Rez            # resource compiler
    Help RezDet         # detect inconsistencies in resources
    Help SetVersion     # maintain version and revision number
    Help Sort           # sort or merge lines of text
    Help Unalias        # remove aliases
    Help Version        # print the version of the MPW Shell
	Help VersionList	# print version info from files
    Help Which          # determine which file the shell will execute
	
-
Window
	The following commands are used to manipulate windows.  For details, 
	enter a command such as
	
	Help AddPane		# split the window into panes
	Help Close          # close specified windows
	Help DeletePane		# delete panes from the window
	Help Format         # set or display formatting options for a window
	Help MoveWindow     # move window to h,v location
	Help New            # open a new window
    Help Open           # open file(s) in window(s)
    Help RotateWindows  # send active (frontmost) window to back
    Help Save           # save specified windows
    Help SaveOnClose    # set save behavior when closing windows
    Help ShowSelection  # place the selection within an editor window
    Help SizeWindow     # set a window's size
    Help StackWindows   # arrange windows diagonally
    Help Target         # make a window the target window
    Help TileWindows    # arrange windows in a tiled fashion
    Help Windows        # list windows
    Help ZoomWindow     # enlarge or reduce a window's size

-
Variables
	To see the current value, enter a command such as Echo {<var name>}
	
	Variables defined by the MPW Shell:
	
	Echo {Active}			# full pathname of current active window
	Echo {Aliases}			# list of all defined aliases
	Echo {Boot}				# volume name of the boot disk
	Echo {Command}			# full pathname of the last command executed
	Echo {MPW}				# full pathname of the Macintosh Programmer's Workshop.
	Echo {ShellDirectory}	# full pathname of the directory that contains the MPW Shell
	Echo {Status}			# result of the last command executed (0 means successful)
	Echo {SystemFolder}		# full pathname of the system folder
	Echo {Target}			# full pathname of the target window
	Echo {User}				# the current user name (initialized to the “Chooser” name)
	Echo {Windows}			# list of current windows 	
	Echo {Worksheet} 		# full pathname of the Worksheet window
	
	Variables used by the MPW Shell:
	
	Echo {Commando}			# name of the commando tool
	Echo {Commands}			# list of directories to search for commands
	Echo {DirectoryPath} 	# list of common directories to speed changing directories
	Echo {Echo}				# control the echoing of commands to diagnostic output
	Echo {Exit}				# control script termination based on {Status}
	Echo {IgnoreCmdPeriod}	# control use of cmd-. during critical sections
	Echo {HideHelpKey}		# deactivate "help" key on extended keyboard
	Echo {Test}				# control execution of tools and applications
	Echo {AutoIndent}		# auto indent setting used for new windows
	Echo {CaseSensitive} 	# control case sensitivity for searching
	Echo {Font}				# font used for new windows
	Echo {FontSize}			# font size used for new windows
	Echo {NewWindowRect} 	# window rectangle used for new windows (top,left,bottom,right)
	Echo {PrintOptions}		# options used by the print menu commands
	Echo {SearchBackward}	# control direction of searching
	Echo {SearchType}		# control type of searching (literal/word/expression)
	Echo {SearchWrap}		# control wrap-around search
	Echo {StackOptions}		# options used by the Stack Windows menu command
	Echo {Tab}				# tab size used for new windows
	Echo {TileOptions}		# options used by the Tile Windows menu command
	Echo {WordSet}			# set of characters that constitue a word
	Echo {ZoomWindowRect}	# window rectangle used for a zoomed window (top,left,bottom,right)
	
	Variables automatically set before script execution:
	
	{0} 				name of the currently executing script
	{1}, {2}, … {n} 	first, second, and nth parameter to the script
	{#} 				number of parameters
	{Parameters}		equivalent to {1} {2} … {n}
	{"Parameters"}		equivalent to "{1}" "{2}" … "{n}"
	
	Variables used for libraries and include files:
	
	Echo {AIncludes} 		# directories to search for assemby-language include files		
	Echo {CIncludes} 		# directories to search for C include files
	Echo {CLibraries}		# directory containing C library files
	Echo {Libraries} 		# directory containing shared library files
	Echo {PInterfaces}		# directory containing Pascal interface files
	Echo {PLibraries}		# directory containing Pascal library files
	Echo {RIncludes} 		# directory containing Rez include files

-
Characters

	The characters listed below have special meanings in the command language.


	Space			Space separates words.
	Tab 			Tab also separates words.

	Return			Return separates commands.
	;				Semicolon also separates commands.
	|				Pipe separates commands and pipes output to input.
	&&				And separates commands, executing second if first succeeds.
	||				Or separates commands, executing second if first fails.
	(…) 			Parenthesis group commands.
					Parenthesis also group characters in filename patterns.

	#				Comment begins comments.

	∂				Escape (Option-D) quotes the following character.
	'…' 			Single quote quotes all other characters.
	"…" 			Double quote quotes all characters except ∂, {, and `.
	/…/ 			Slash quotes all characters except ∂, {, and `.
	\…\ 			Backslash quotes all characters except ∂, {, and `.

	{…} 			Braces denote variable substitution.
	`…` 			Backquotes denote command substitution.

	?				Question mark matches any character in filename patterns.
	≈				Approximately (Option-X) matches any string in patterns.
	[…] 			Brackets enclose character sets in filename patterns.
	*				Star indicates zero or more repetitions in patterns.
	+				Plus indicates one or more repetitions in patterns.
	«…» 			European quotes (Option-\ and Option-Shift-\) enclose
					repeat counts.

	<				Less-than indicates an input file specification.
	>				Greater-than indicates an output file specification.
	>>				Indicates appending to an output file specification.
	≥				Greater-than-or-equal indicates a diagnostic specification.
	≥≥				Indicates appending to a diagnostic file specification.
	∑				Capital sigma (option-w) indicates both an output file and
					diagnostic output file specification.
	∑∑				Indicates appending to the output and diagnostic file
					specification.
	
	…				Elipsis (Option-;) signals the Shell to use Commando

-
Expressions

	Numbers may be expressed in decimal, hexadecimal, octal, or
	binary.  Any of the following formats may be used:
	
	[0-9]+			decimal number
	0x[0-9a-f]+ 	hexadecimal number
	$[0-9a-f]+		hexadecimal number
	0[0-7]+ 		octal number
	0b[01]+ 		binary number
	
	The operators listed below are used in expressions in the
	Evaluate, If, Else If, Break, Continue, and Exit commands.

	Alternate spellings of several operators are provided.
	All of the operators are evaluated from left to right.
	Operators with the highest precedence are listed first,
	and operators in the same group have equal precedence.


	(…) 			expression grouping

	-				unary negation
	~				bitwise negation
	!	 NOT  ¬ 	logical NOT (¬ is Option-L)

	*				multiplication
	÷	 DIV		division (÷ is Option-/)
	%	 MOD		modulus division

	+				addition
	-				subtraction

	<<				shift left
	>>				shift right

	<				less than
	<=	 ≤			less than or equal to (≤ is Option-<)
	>				greater than
	>=	 ≥			greater than or equal to (≥ is Option->)

	==				equal
	!=	 <>   ≠ 	not equal (≠ is Option-=)
	=~				equal to a pattern
	!~				not equal to a pattern

	&				bitwise AND

	^				bitwise XOR

	|				bitwise OR

	&&	 AND		logical AND

	||	 OR 		logical OR

-
Selections - selections specify a selection or insertion point

	§						current selection (Option-6)
	n						line number n
	!n						line n lines after end of current selection
	¡n						line n lines before start of selection (Option-1)
	position				position (defined below)
	markerName				selection marked by markerName
	pattern 				pattern  (defined below)
	(selection) 			selection grouping
	selection:selection 	both selections and everything in between
	
position - positions specify an insertion point

	•						position before first character of file (Option-8)
	∞						position after last character of file (Option-5)
	∆selection				position before first character of selection (Option-J)
	selection∆				position after last character of selection (Option-J)
	selection!n 			position n characters after selection
	selection¡n 			position n characters before selection (Option-!)
	
pattern - patterns specify characters to be matched

	/entireRE/				regular expression - search forward
	\entireRE\				regular expression - search backward
	
	Help Patterns			# See "Help Patterns" for more information.
	
-
Patterns - Patterns specify characters to be matched

	/entireRE/				regular expression - search forward
	\entireRE\				regular expression - search backward
	
entireRE

	•RE 					regular expression at beginning of line (Option-8)
	RE∞ 					regular expression at end of line (Option-5)
	RE						regular expression
	
RE

	simpleExpr				simple regular expression - defined below
	(RE)®digit				tagged RE - refer to match as ®digit (Option-R)
	'string'				literal - no characters within '…' are special
	"string"				literal - only ∂, {, and ` are special within "…"
	RE1RE2					regular expression RE1 followed by RE2
	
simpleExpr
	
	(RE)					regular expression grouping
	charExpr				single character regular expression - defined below
	simpleExpr* 			simple expression zero or more times
	simpleExpr+ 			simple expression one of more times
	simpleExpr«n»			simple expression n times (Option-\, Option-Shift-\)
	simpleExpr«n,»			simple expression at least n times
	simpleExpr«n1,n2»		simple expression at least n1, at most n2 times
	
charExpr
	
	character				character (unless it has special meaning)
	∂character				character - defeats any special meaning (Option-D)
	?						any character except Return
	≈						zero or more characters, except Return (Option-X)
	[charList]				any character in the list
	[¬charList] 			any character not in the list (Option-L)
	
charList
	
	[						[ first in the list represents itself
	]						] first in the list represents itself
	-						- first in the list represents itself
	character				character
	charList character		list of characters
	character-character 	character range (e.g. A-Z)
	
-
ShortCuts
	The following is a list of MPW Shell shortcuts:
	
	Double click		select word
	Triple click		select line
	Double Clicking on any of the characters (,),[,],{,},',",/,\,` will select
		everything between the character and its mate.

	LeftArrow				 move insertion point one character to the left
	RightArrow				 move insertion point one character to the right
	UpArrow 				 move insertion point one line above current position
	DownArrow				 move insertion point one line below current position	
	
	Opt-LeftArrow			 move insertion point one word to the left
	Opt-RightArrow			 move insertion point one word to the right
	
	Shift-LeftArrow			 extend selection one character to the left
	Shift-RightArrow		 extend selection one character to the right
	Shift-UpArrow		 	 extend selection one line above current position  
	Shift-DownArrow			 extend selection one line below current position
	
	Shift-Opt-LeftArrow		 extend selection one word to the left
	Shift-Opt-RightArrow	 extend selection one word to the right
	
	Cmd-LeftArrow			 move insertion point to beginning of current line
	Cmd-RightArrow			 move insertion point to end of current line
	Cmd-UpArrow 			 move insertion point up one screen size
	Cmd-DownArrow			 move insertion point down one screen size
	
	Cmd-Shift-LeftArrow		 extend selection to beginning of current line
	Cmd-Shift-RightArrow	 extend selection to end of current line
	Cmd-Shift-UpArrow 		 extend selection up one screen size
	Cmd-Shift-DownArrow		 extend selection down one screen size
	
	Cmd-Opt-UpArrow			 move insertion point to beginning of file
	Cmd-Opt-DownArrow		 move insertion point to end of file
	
	Cmd-Shift-Opt-UpArrow	 extend selection to beginning of file
	Cmd-Shift-Opt-DownArrow	 extend selection to end of file

	Delete					 delete character to the left
	Del (Extended Keyboard)	 delete character to the right
	
	Shift-Delete			 delete character to the left
	Shift-Del 	 			 delete character to the right
	
	Opt-Delete				 delete word to the left
	Opt-Del					 delete word to the right
	
	Cmd-Delete				 delete from current position to end of file
	Cmd-Del					 delete from current position to end of file
	
	Searching shortcuts
		Cmd-Shift-G 	reverse the direction of "Find Same"
		Cmd-Shift-H 	reverse the direction of "Find Selection"
		Cmd-Shift-T 	reverse the direction of "Replace Same"
		Holding down Shift while selecting OK will reverse the direction
			of "Find" and "Find and Replace"
	
	Holding down Option while selecting "Tile Windows" or "Stack Windows"
		will include the worksheet in the tiling or stacking
	Holding down Option while pressing Return will disable auto-indent
		for that line.
	Holding down Option while pressing Enter will invoke Commando on that
		command line.
	
	In Dialogs without an EditText item
		Y				Yes
		N				No
		CMD .			Cancel
		ESC 			Cancel

-
AddMenu 		# add a menu item
AddMenu [menu [item [command…]]]  > menuList
	
	Note: Item can contain the following metacharacters ("<char>" means
	any character):
		/<char> 	Assign the keyboard equivalent Command-<char>
		!<char> 	Place <char> to the left of the menu item
		^n			Item has an icon, where n is the icon number
		(			Item is disabled
		<style		Item has a special style: "style" can be any of the following:
						B	Bold
						I	Italic
						U	Underline
						O	Outline
						S	Shadow

-
AddPane			# split the window into panes
AddPane	[-p paneSpec] [-y ySplit | -h xSplit] [window]
	-p paneSpec				# choose a pane to split
	-y ySplit				# horizontal split at ySplit pixels from top
	-x xSplit				# vertical split at xSplit pixels from left
	
	Note: paneSpec is an alternating catenation of strings of the 
	form cm and rn, where m is a column ordinal and n is a row ordinal.

-
Adjust			# adjust lines
Adjust [-c count] [-l spaces] selection [window]
	-c count				# repeat the Adjust count times
	-l spaces				# shift lines by “spaces” spaces

-	
Alert			# display an alert box
Alert [-s] [message…] < file
	-s						# silent, don't beep when dialog is displayed

-	
Alias			# define or write command aliases
Alias [name [word…]]  > aliasList

-	
Align			# align text to left margin
Align [-c count] selection [window]
	-c count				# repeat the Align count times

-	
Asm 			# MC68xxx Macro Assembler
Asm [option…] [file…]  < file > listing ≥ progress
	-addrsize size			# set size of address display
	-blksize blocks 		# use blocks * 512 byte I/O buffers
	-case on				# distinguish between upper and lower case
	-case obj[ect]			# preserve case in object file
	-case off				# ignore case (default)
	-c[heck]				# syntax check only, don't create object file
	-d[efine] name			# equivalent to: name EQU 1
	-d[efine] name=value	# equivalent to: name EQU value
	-d[efine] &name 		# equivalent to: &name SET[AC] 1
	-d[efine] &name=value	# equivalent to: &name SET[AC] value
	-e[rrlog] file			# write errors and warnings to file
	-f						# suppress page ejects in listing
	-font name[,size]		# set listing font and size
	-h						# suppress page headers in listing
	-i directory,…			# search for includes in directory,…
	-l						# write full listing to output
	-lo file				# listing output file or directory
	-model far				# allow generation of load-time relocatable 32-bit references	
	-model near				# prohibit generation of load-time relocatable 32-bit
							#	references (the default)
	-o objname				# generate code in file or directory objname
	-pagesize l[,w] 		# set listing page length and width
	-print mode 			# equivalent to: PRINT mode
	-p						# write progress information to diagnostics
	-s						# write short listing to output
	-sym off				# no SADE records
	-sym on|full			# full SADE records; can modify with [,nolines] [,notypes] [,novars]
	-t						# write time and total lines to diagnostics
	-w						# suppress warnings
	-wb 					# suppress warnings on branch instructions

-	
Backup			# folder file backup
Backup [option…] -from folder -to folder [file…]  > commands ≥ progress
	-a						# copy all files in "from" not in "to"
	-alt					# alternate prompts for disk drives
	-busy folder			# move busy files to specified folder
	-c						# create "to" folders if they don't exist
	-check checkopt,…		# produce reports based on checkopt
							# checkopt=from 	"from" not in "to"
							#		   to		"to" not in "from"
							#		   allfroms "from" not in "to" even if none
							#		   alltos	"to" not in "from" even if none
							#		   folders	"from" folders not in "to"
							#		   newer	"to"s newer than "from"s
	-co filename			# redirect -check reports to filename
	-compare [only][,'opts']# write compare commands for out-of-date files
	-d						# write delete commands for files in "to" not in "from"
	-do [only][,'command']	# write the command string specified by command…
	-e						# eject disk when done
	-from folder|drive		# specify source folder or drive (1 or 2)
	-l						# write directory listing of "from" files
	-lastcmd 'command'		# write the command string as the last command
	-level n				# restrict -a and -d to files beyond level n
	-m						# multi-disk -- more than one "from" or "to" disk
	-n						# show folder nesting by indenting commands 
	-p						# write progress information to diagnostics
	-r						# recursively process nested folders
	-revert 				# revert "to" files to their "from" state
	-since date[,time]|fname# process only files since specified time
	-sync					# synchronize both source and destination folders
	-t type 				# process only files of specified type
	-to folder|drive		# specify destination folder or drive (1 or 2)
	-y						# suppress duplicate -y option

-	
Beep			# generate tones
Beep [note [,duration [,level]]]…
	#	duration is given in sixtieths of a second (default is 15)
	#	sound level is given as a number from 0 to 255 (default is 128)

-	
Begin			# group commands
Begin
	command…
End

-	
Break			# break from For or Loop
Break [If expression]

-
Browser			# invoke Marker Browser

				# The MPW Browser command is used to navigate source files or other text.  It 
				# presents a window containing a list of the files in the current directory
				# and, for the selected file, a list of markers.  Double-clicking on the marker
				# opens the file with the selection point at the marker.  Entering a marker name
				# in a text box searches all files in the directory for that marker, and if found 
				# opens the file with the selection point at the marker.

-
BuildCommands	# show build commands
BuildCommands program [option…] > commands
	option… 				# Make command options

-
BuildMenu		# create the Build menu
BuildMenu

-
BuildProgram	# build the specified program
BuildProgram program [option…] > log
	option… 				# Make command options

-
C				# C compiler
C [option…] [file]	< file > preprocessor ≥ progress
    -b                      # put string constants into code and generate PC-relative references
							# 	for function addresses
	-b2 					# implies '-b' above, and allows string constants to be overlaid
    -b3                     # overlaid string constants in code (but A5-relative references
							#	for function addresses)
	-bigseg					# generate single large (>32K) code segment, 68020 only
	-c						# syntax check only, don't create object file
	-d name 				# equivalent to: #define name 1
	-d name=string			# equivalent to: #define name string
	-e						# write preprocessor results to output
	-e2 					# implies '-e' above, and strips comments
	-elems881				# generate MC68881 code for transcendentals
	-i directory			# search for includes in directory
	-k directory			# create load/dump files in directory
	-m						# generate 32-bit references for data (less efficient code)
	-mbg ch8				# v2.0 compatible macsbug symbols
	-mbg off				# no macsbug symbols in the code 
	-mbg on|full			# full macsbug symbols
	-mbg <n>				# macsbug symbols to length <n> (<n> can be 0..255)
	-mc68020				# generate MC68020 code 
	-mc68881				# generate MC68881 code for arithmetic operations
	-model farCode|         # generate load-time relocatable 32-bit references for
        farData|far         #   code, data, or both
    -model nearCode|        # generate 16-bit references for code, data, or both 
        nearData|near       #   (the default)
	-n						# turn pointer assignment incompatibility errors into warnings
	-notonce				# do not automatically suppress multiple inclusion of files
	-o objname				# generate code in file or directory objname
	-opt off				# don't apply code optimizations
	-opt on | full			# choose level of code optimization (on is default); 
							#   can modify with [,nopeep] [,nocse] 
							#   (no peephole, no common subexpression)
	-p						# write progress information to diagnostic
	-r						# warn on calling a function that has no definition
	-s segment				# generate code in segment
	-sym off				# don't generate SADE records
	-sym on | full			# generate SADE records; can modify with [,nolines] [,notypes] [,novars]
	-t						# write compilation time to diagnostic
	-trace always|never		# enable/disable calls to profiler or MacApp debugger
							# 	(overrides #pragma trace on|off)
	-trace on|off			# enable/disable calls to profiler or MacApp debugger
							#	(subject to #pragma trace on|off)
	-u name 				# equivalent to: #undef name
	-warnings on|off|full	# set warning level; "on" is the default
	-y directory			# create temporary files in directory

-	
Canon			# canonical spelling tool
Canon [option…] dictionary [file…]	< file > new
	-s						# case sensitive replacement
	-a						# assembler identifiers (include $, %, @)
	-c n					# consider only the first n characters

-	
Catenate		# concatenate files
Catenate [file…]  < file > catenation

-
CFront			# C++ to C translator
CFront [option…] [file…] < file > intermediate output ≥ progress
	-a						# force ANSI-style intermediate C code (default)
	-a0						# force K&R-style (pre-ANSI) intermediate C code
	-a1						# force ANSI-style intermediate C code (default)
	-c						# intermediate code to standard output; no object file
	-d name                 # equivalent to: #define name 1
    -d name=string          # equivalent to: #define name string
	-dump filename			# save state of C++ compilation in filename
	-dumpc filename			# save state of C++ compilation in filename (compressed)
	-e                      # write preprocessor results to output
    -e2                     # implies '-e' above, and strips comments
    -elems881               # generate MC68881 code for transcendentals
	-f filename				# act as if input comes from named file when it actually is from stdin 
	-i directory            # search for includes in directory
    -k directory            # create load/dump files in directory
	-l						# in C output generate #line nn directives as #nn
	-l0						# in C output generate no #line nn directives at all
	-load filename			# load saved C++ compilation state from filename
	-mark fcts|types|data|	# create MPW markers for the specified items in file being compiler
		globals
	-mark all				# create MPW markers for all of the above
	-maxerrors <n>			# specify that CFront abort after reporting <n> errors (default 12)
	-mbg ch8				# v2.0 compatible macsbug symbols
	-mbg off				# no macsbug symbols in the code (link/unlk only if necessary)
	-mbg on|full			# full macsbug symbols
	-mbg <n>				# macsbug symbols to length <n> (<n> can be 0..255)
	-mc68020                # generate MC68020 code 
    -mc68881                # generate MC68881 code for arithmetic operations
	-mf						# use MultiFinder memory if there is not enough MPW memory
	-model near|far			# use 32-bit addresses for global code and data (model far) or A5 references (model near) -- "near" is default
	-mtbl0					# suppress output of method tables for Object Pascal classes
	-mtbl1					# force output of method tables for Object Pascal classes
    -p                      # write progress information to diagnostic
    -s segment              # generate code in segment
	-sym off				# no SADE records
	-sym on|full			# full SADE records; can modify with [,nolines] [,notypes] [,novars]
    -u name                 # equivalent to: #undef name
	-vtbl0					# suppress output of virtual tables for ordinary classes
	-vtbl1					# force output of virtual tables for ordinary classes
    -w                      # suppress warnings
	-w1						# generate additional warnings from CFront
	-w2						# generate maximum warnings from CFront and the C compiler
    -y directory            # create temporary files in directory
	-z0						# force 'inline' functions to be non-inline
	-z3						# suppress name encoding of local vars and struct members (default)
	-z4						# encode names of local vars and struct members
	-z5						# don't strip unused static objects that have constructors or destructors
	-z6						# force enums always to be int variables
	-z7						# relax requirement on static class member initialization
	-z15					# optimize nested inline constructor-allocator code
	-z17					# allow inline expansion of functions of any size
	
	Note: CFront does not generate object files.  To compile a C++ program, use the CPlus command.
	
-
CheckIn 		# check a file into a project
CheckIn -w | -close | [options…] files… > progress
	-a						# checkin all files in current directory
	-b						# check in files… as branches
	-c						# cancel if conflict occurs (avoids dialog)
	-cf file				# the comment is contained in file.
	-close					# close the Check In window
	-cs comment 			# a description of changes made to the file
	-delete 				# delete the file after checking it in
	-m						# check out the files for modification after checking in
	-n						# answer no to all dialogs (avoids dialogs)
	-new					# add a new file to the project
	-p						# write progress information to standard output
	-project project		# name of project that contains the files
	-t task 				# a short description of task accomplished
	-touch					# touch the mod date of file after checking in
	-u user 				# name of current user
	-verify					# verify the contents of the checked in file
	-w						# open the Check In window
	-y						# answer yes to all dialogs (avoids dialogs)

-
CheckOut		# check a file out from a project
CheckOut -w | -close | [options…] name… > progress *
	-a						# check out all the files in the current project
	-b						# checkout specified files on a new branch
	-c						# cancel if conflict occurs (avoids dialog)
	-cancel 				# cancel the checkout of the files
	-cf file				# the comment is contained in files
	-close					# close the Check Out window
	-cs comment 			# a short description of changes
	-d dir					# directory where the checked out files should go
	-m						# check out a modifiable copy of the file
	-n						# answer no to all dialogs (avoids dialogs)
	-newer					# checkout latest copy of all files in the project
	-noTouch				# don't touch the mod date of the checked out files
	-open					# open the files after checking out
	-p						# write progress information to standard output
	-project project		# name of project that contains the files
	-r						# recursively checkout files
	-t task 				# a short description of task accomplished
	-u user 				# name of current user
	-update 				# checkout latest copy of all files you already have
	-verify					# verify the contents of the checked out file
	-w						# open the Check Out window
	-y						# answer yes to all dialogs (avoids dialogs)
	
*name = file name | NameRevisions name

-
CheckOutDir 	# specify the directory where checked out files will placed
CheckOutDir [-project project | -m] [-r] [-x | directory]
	-project project		# name of project to associate with the checkout directory
	-m						# list the checkout directories of all root projects
	-r						# recursively set or display the checkout directories
	-x						# reset the checkout directories to ":"

-
Choose			# choose or list network file server volumes and printers
Choose [option…] [[zone]:server[:volume] …]
	-askpw					# ask for server password (in a "safe" dialog box)
	-askvp					# ask for volume password (in a "safe" dialog box)
	-c						# output in the form of further "Choose" commands.
	-cp 					# print driver name and type of current printer.
	-dr driverFileName		# name of printer driver file in system folder (e.g. "LaserWriter")
	-guest					# log-in to the file server as a guest.
	-list					# list entities (don't choose them).
	-p						# print version information.
	-pr 					# choose printers (instead of file servers).
	-pw password			# specify server log-in password.
	-u username 			# specify user name for server log-in.
	-v						# verbose (print names of volumes really mounted).
	-vp volumePassword		# specify volume password (to mount it).
	-type type				# specify type of entity to list or choose (or '≈').

	Names take the form 	"zone:server:volume"

	The wildcard '≈' may be used in place of a zone, server, volume or
	type name.	A leading ':' (empty zone name) or '*:' indicates the
	current zone.  A name of the form "…server:" will mount all volumes
	on the server, unless a specific volume name is given.

-	
Clear			# clear the selection
Clear [-c count] selection [window]
	-c count				# repeat the Clear count times

-	
Close			# close specified windows
Close [-y | -n | -c] [ -a | window…]
	-y						# save modified windows before closing (avoids dialog)
	-n						# don't save any modified windows (avoids dialog)
	-c						# cancel if there is a modified window (avoids dialog)
	-a						# close all the windows

-
CMarker 	# generate Mark commands for C and C++ function definitions
CMarker [option…] [file…]
	-a[nachronisms]			# suppress anachronisms messages
	-d[efine] name[=string]	# define name to the preprocessor (same as #define)
		[,name[=string]]… 
	-e						# show macro expansion in the listing (default with -ppout)
	-ext[ensions] on|off 	# turn on or off Apple compiler extensions (default on)
	-errors					# suppress marking if errors are detected
	-i[ncludes] pathname 	# search for include files in the specified directories (Max of 15)
		[,pathname],… 
	-lang[uage] C|"C++"		# specify target sources as either C or C++ (Default is C)
	-linesize n				# maximum number of characters generated in a single listing line
	-l[ist[ing]] 			# generate a listing of the source to stdout
	-mc68881				# define the macro name mc68881 as having the value 1
	-msi 					# mark include (header) files
	-pp						# preprocessing only (no markers will be generated)
	-ppout filename			# write the preprocessor output to the specified filename
	-p[rogress]				# write version, progress and summary information to stderr
	-showskipped 			# show lines skipped by conditional compilation in the listing output
	-t						# display processing time and number of lines to stderr
	-u[ndefine] name 		# undefine the preprocessor symbol name  (same as #undef)
		[,name]…	

-	
Commando		# present a dialog interface for commands
Commando [command] [-modify]
	-modify 				# enable Commando’s built-in editor

-	
Compare 		# compare text files
Compare [option…] file1 [file2]  < file2 > differences ≥ progress
	-b						# treat several blanks or tabs as a single blank
	-c c1-c2[,c1-c2]		# compare only specified columns
	-d depth				# maximum stack depth
	-e context				# display specified number of context lines
	-g groupingFactor		# grouping factor (matching lines for resync)
	-h width				# write differences horizontally
	-l						# lower case (i.e. ignore case differences)
	-m						# suppress displays of mismatched lines
	-n						# don't write to output if files match
	-p						# write progress information to diagnostics
	-s						# use static grouping factor
	-t						# ignore trailing blanks
	-v						# suppress line numbers in vertical displays
	-x						# don't expand tabs

-	
CompareFiles	# compare text files and interactively view differences
CompareFiles [-9 | -13 | -16 | -LC | -b x y | -Portrait |
              -TwoPage | -r t,l,b,r] oldFile newFile
	-9						# assume a screen size of 512 x 342
	-13 					# assume a screen size of 640 x 480
	-16						# assume a screen size of 832 x 624 (16" RGB)
	-LC						# assume a screen size of 512 x 384 (12" RGB)
	-b x y					# tile windows into the rectangle specified by x y
	-Portrait				# screen size for Apple Macintosh Portrait Display
	-TwoPage				# screen size for Apple Two-Page Monochrome Monitor
	-r t,l,b,r				# specify rectangle in global pixel coordinates;
							#  0,0 is upper left corner of primary monitor


-	
CompareRevisions # compare two revisions of a file in a project
CompareRevisions file…

-	
Confirm 		# display a confirmation dialog box
Confirm [-t] [message…] < file
	-t						# three buttons (Yes, No, Cancel)

-	
Continue		# continue with next iteration of For or Loop
Continue [If expression]

-	
Copy			# copy selection to Clipboard
Copy [-c count] selection [window]
	-c count				# copy the nth selection, where n = count

-	
Count			# count lines and characters
Count [-l] [-c] [file…]  < file > counts
	-l						# write only line counts
	-c						# write only character counts

-	
CPlus			# script to compile C++ source
CPlus [option…] [file…] < file > intermediate output ≥ progress
	-a						# force ANSI-style intermediate C code (default)
	-a0						# force K&R-style (pre-ANSI) intermediate C code
	-a1						# force ANSI-style intermediate C code (default)
	-b						# passed thru to C compiler (put string constants into code and generate PC-relative references)
	-b2 					# passed thru to C compiler (implies '-b' above, and allows string constants to be overlaid)
	-b3 					# passed thru to C compiler (overlaid string constants in code--but not PC-relative refs.)
	-c						# intermediate code to standard output; no object file
	-comp name options		# use a different C compiler in "name" and give it "options"
	-d name                 # equivalent to: #define name 1
    -d name=string          # equivalent to: #define name string
	-dump filename			# save state of C++ compilation in filename
	-dumpc filename			# save state of C++ compilation in filename (compressed)
	-e                      # write preprocessor results to output
    -e2                     # implies '-e' above, and strips comments
    -elems881               # generate MC68881 code for transcendentals
	-f filename				# act as if input comes from named file when it actually is from stdin 
    -f1                     # send text version of C code to C compiler (no token stream)
    -f2                     # send token stream of C code to C compiler (default)
	-i directory            # search for includes in directory
    -k directory            # create load/dump files in directory
	-l						# in C output generate #line nn directives as #nn
	-l0						# in C output generate no #line nn directives at all
	-load filename			# load saved C++ compilation state from filename
    -m                      # passed to C compiler: generate 32-bit references for data
	-mark fcts|types|data|	# create MPW markers for the specified items in file being compiled
		globals
	-mark all				# create MPW markers for all of the above
	-maxerrors <n>			# specify that CFront abort after reporting <n> errors (default 12)
	-mbg ch8				# v2.0 compatible macsbug symbols
	-mbg off				# no macsbug symbols in the code (link/unlk only if necessary)
	-mbg on|full			# full macsbug symbols
	-mbg <n>				# macsbug symbols to length <n> (<n> can be 0..255)
	-mc68020                # generate MC68020 code 
    -mc68881                # generate MC68881 code for arithmetic operations
	-mf						# use MultiFinder memory if there is not enough MPW memory
	-model near|far			# use 32-bit addresses for global code and data (model far) or A5 references (model near) -- "near" is default
	-mtbl0					# suppress output of method tables for Object Pascal classes
	-mtbl1					# force output of method tables for Object Pascal classes
    -n                      # passed to C compiler: turn pointer assignment incompatibility errors into warnings
    -o objname              # generate code in file or directory objname
    -opt off                # passed to C compiler: don't apply code optimizations
    -opt on | full          # passed to C compiler: choose level of code optimization (on is default); 
                            #   can modify with [,nopeep] [,nocse] 
                            #   (no peephole, no common subexpression)
    -p                      # write progress information to diagnostic
	-patch					# use AT&T's "patch" mechanism for static constructors (use with -comp)
    -s segment              # generate code in segment
	-sym off				# no SADE records
	-sym on|full			# full SADE records; can modify with [,nolines] [,notypes] [,novars]
    -t                      # passed to C compiler: write compilation time to diagnostic
	-trace on				# passed to C compiler: generate tracing code--calls to %_EP and %_BP
	-trace off				# passed to C compiler: generate no tracing code (default)
	-trace always			# passed to C compiler: always generate tracing code--calls to %_EP and %_BP
	-trace never			# passed to C compiler: never generate tracing code (default)
    -u name                 # equivalent to: #undef name
	-vtbl0					# suppress output of virtual tables for ordinary classes
	-vtbl1					# force output of virtual tables for ordinary classes
    -w                      # suppress warnings
	-w1						# generate additional warnings from CFront
	-w2						# generate maximum warnings from CFront and the C compiler
	-w3						# passed through to C compiler (supresses "unused" warnings)
    -warnings on|off|full   # passed to C compiler: set warning level; "on" is the default
	-x filename				# generate C code for a different processor, using size and alignment info in filename
    -y directory            # create temporary files in directory
	-z0						# force 'inline' functions to be non-inline
	-z3						# suppress name encoding of local vars and struct members (default)
	-z4						# encode names of local vars and struct members
	-z5						# don't strip unused static objects that have constructors or destructors
	-z6						# force enums always to be int variables
	-z7						# relax requirement on static class member initialization
	-z15					# optimize nested inline constructor-allocator code
	-z17					# allow inline expansion of functions of any size

-
CreateMake		# create a simple makefile
CreateMake ([ -Application] [ -c creator ] [-sym on] | -Tool [-sym on] | 
                     -DA | -CR -m mainEntryPoint -rt resourceType [ -t fileType ] 
                     [ -c creator ] [-sym on] | -SIOW [ -sym on ]) 
                     [ -mc68020 | -mc68881 | -elems881] program file…
	-Application			# create an Application (default)
	-c creator				# optional Creator for Application or Code Resource
	-Tool					# create a Tool
	-DA 					# create a Desk Accessory
	-CR 					# create a Code Resource
	-SIOW					# create a Simple Input/Output Window
	-m mainEntryPoint		# required Main Entry Point for Code Resource
	-rt resourceType		# required Resource Type for Code Resource
	-t type 				# optional File Type for Code Resource
	-sym on 				# include SADE information in the object file
	-mc68020				# generate 68020 instructions
	-mc68881				# generate 68881 instructions for elementary operations
	-elems881				# generate 68881 instructions for transcendental functions

-
Cut 			# copy selection to Clipboard and delete it
Cut [-c count] selection [window]
	-c count				# cut the next count selections

-	
Date			# write the date and time
Date ([-a | -s] [-d | -t] [-c seconds]) | [-n] > date
	-a						# abbreviated date (e.g. Wed, Jun 18, 1986)
	-s						# short date (e.g. 6/18/86)
	-d						# write date only
	-t						# write time only
	-c seconds				# write date corresponding to seconds
	-n						# write seconds since January 1, 1904

-
Delete			# delete files and directories
Delete [-y | -n | -c] [-i] [-p] name…  ≥ progress
	-y						# delete directory contents (avoids dialog)
	-n						# don't delete directory contents (avoids dialog)
	-c						# cancel if a directory is to be deleted (avoids dialog)
	-i						# ignore errors (no diagnostics)
	-p						# write progress information to diagnostics

-	
DeleteMenu		# delete user-defined menus and menu items
DeleteMenu [menuName [itemName]]

-
DeleteNames 	# delete user-defined symbolic names
DeleteNames [-u user] [-project project] [-public | -private] [-r] [names… | -a]
	-u user 				# name of current user
	-private				# delete private names
	-project project		# name of project that contains the files
	-public 				# delete public names (the default)
	-r						# delete names recursively
	-a						# delete all names

-
DeletePane		# delete panes from the window
DeletePane [-p paneSpec | -a] [window]
	-p paneSpec				# choose a  pane to delete
	-a						# reset the window to one pane
	
	Note: paneSpec is an alternating catenation of strings of the 
	form cm and rn, where m is a column ordinal and n is a row ordinal.

-
DeleteRevisions # delete previous revisions of files in a project
DeleteRevisions [-u user] [-project project] [-file] [-y] revision…
	-u user 				# name of current user
	-project project		# name of project that contains the files
	-file					# deletes the file and all its revisions
	-y						# delete the file/revision (avoids dialog)

-	
DeRez			# resource decompiler
DeRez [option…] resourceFile [file…]  > description ≥ progress
	-c[ompatible]			# generate output compatible with Rez 1.0
	-e[scape]				# don't escape chars < $20 or > $D8
	-d[efine] name[=value]	# equivalent to #define name [value]
	-i[nclude] pathname 	# search this path when looking for #include files
	-m[axstringsize] n		# write strings n characters per line
	-only typeExpr			# process only resources of this type
	-p[rogress] 			# write progress information to diagnostics
	-rd 					# suppress warnings for redeclared types
	-s[kip] typeExpr		# skip resources of this type
	-u[ndef] name			# equivalent to #undef name

	Note: A typeExpr may have one of these forms:
		  type
		"'type'(id)"
		"'type'(id:id)"
		"'type'(∂"name∂")"

-	
Directory		# set or write the default directory
Directory [-q | directory]	> directory
	-q						# don't quote directories with special characters

-	
DirectoryMenu	# create the Directory menu
DirectoryMenu [directory…]

-
DoIt			# highlight and execute a series of shell commands
DoIt (CommandFile [-echo] [-dump]) | [-selection]
	-echo					# echo commands before execution
	-dump					# dump unexecuted commands after error
	-selection				# execute command in the current selection

-
DumpCode		# write formatted CODE resources
DumpCode [option…] resourceFile  > dump ≥ progress
    -n                      # dump only resource names
    -d                      # don't dump object code
    -h                      # don't write headers (offsets, hex, etc.)
    -a                      # show offsets from beginning of segment
    -jt                     # don't dump jump table
    -di                     # don't dump data initialization info
    -ri                     # don't dump a5- and segment-relocation info
    -p                      # write progress information to diagnostics
    -r byte1[,byte2]        # dump code from address byte1 (through byte2)
    -rt type[=id]           # dump only resources with this type (and id)
    -s name                 # dump only resource with this name

-
DumpFile		# display contents of any file
DumpFile  [ option… ]  filename > dump ≥ progress
	-rf 					# display the resource fork of the file. (Default is data fork.)
	-bf 					# display both forks of the file
	-a						# suppress display of ASCII character values.
	-h						# suppress display of hexadecimal characters.
	-o						# suppress display of file offsets.
	-w nn					# width - display nn bytes on each line of output.
	-g nn					# group nn bytes together without intervening spaces.
	-p						# write progress information to diagnostic output.
	-r byte1[,byteN]		# display only the byte range from byte1 to byteN.

-	
DumpObj 		# write formatted object file
DumpObj [option…] objectFile  > dump ≥ progress
	-co						# only dump disassembly
	-d						# don't dump object code
	-h						# don't write headers (offsets, hex, etc.)
	-i						# use ids, rather than names, in dump
	-jn 					# just use names, rather than ids, in dump
	-l						# dump file locations of object records
	-m name 				# dump only module "name" or module containing 
							# entry-point "name" (-m option may be used repeatedly)
	-n						# dump only the dictionary of names
	-p						# write progress information to diagnostics
	-r byte1[,byte2]		# dump code from byte1 in file (through byte2)
	-sym [Off]				# disable symbolic output
		 [On | Full]		# enable symbolic output (default), can be followed by:
			[,NoLabels] 	#	omit label information
			[,NoLines]		#	omit source line information
			[,NoTypes]		#	omit type information
			[,NoVars]		#	omit variable information
	-mods					# dump a module summary with entry point information
	-mh 					# omit module summary header

-	
Duplicate		# duplicate files and directories
Duplicate [-y | -n | -c] [-p] [-d | -r] name… target  ≥ progress
	-y						# overwrite target files (avoids dialog)
	-n						# don't overwrite target files (avoids dialog)
	-c						# cancel if conflict occurs (avoids dialog)
	-p						# write progress information to diagnostics
	-d						# duplicate data fork only
	-r						# duplicate resource fork only

-	
Echo			# echo parameters
Echo [-n] [parameter…]	> parameters
	-n						# don't write return following the parameters

-	
Eject			# eject volumes
Eject [-m] volume…
	-m						# leave the volume mounted

-	
Entab			# convert runs of spaces to tabs
Entab [option…] [file…]  < file > tabbed ≥ progress
	-a minValue 			# Min run of blanks that can be replaced with a tab
	-d tabValue 			# input tab setting
	-l quote…				# left quotes that prevent EnTab (default '")
	-n						# no quote characters, EnTab everything
	-p						# write progress information to diagnostics
	-q quote…				# quotes that prevent EnTab (default '")
	-r quote…				# right quotes that prevent EnTab (default '")
	-t tabValue 			# output tab setting

-	
Equal			# compare files and directories
Equal [-d | -r] [-i] [-p] [-q] name… target  > differences ≥ progress
	-d						# compare data forks only
	-r						# compare resource forks only
	-i						# ignore files in target not in directory name
	-p						# write progress information to diagnostics
	-q						# quiet - don't write output, just set {Status}

-	
Erase			# initialize volumes
Erase [-y] [-s] volume…
	-y						# yes - erase the disk (avoids dialog)
	-s						# single-sided - 400K (default 800K)

-
Evaluate		# evaluate an expression
Evaluate [-h | -o | -b] [word…]  > value
Evaluate Name [binary operator]= expression
	-h						# display result in hexadecimal (leading 0x)
	-o						# display result in octal (leading 0)
	-b						# display result in binary (leading 0b)

-
Execute 		# execute command file in the current scope
Execute commandFile

-
Exists			# confirm the existence of a file or directory
Exists [-d | -f | -w] [-q] name…  > file
	-d						# check if name is a directory
	-f						# check if name is a file
	-w						# check if name is a file and writeable
	-q						# don't quote file names with special characters

-
Exit			# exit from a command file
Exit [status] [If expression]

-
Export			# make variables available to commands
Export [-r | -s | name…]  > exports
	-r						# generate Unexport commands for all exported variables
	-s						# print the names only

-
FileDiv 		# divide a file into several smaller files
FileDiv [option…] file [prefix]  ≥ progress
	-b						# input is a byte stream instead of lines
	-f						# split file at formfeed character
	-n splitPoint			# split file after splitPoint lines or bytes (-b)
	-p						# write progress information to diagnostics
	-s n					# set -b input buffer to n * 512 bytes

-	
Files			# list files and directories
Files [option…] [name…]  > fileList
	-c creator				# list only files with this creator
	-d						# list only directories
	-f						# list full pathnames
	-i						# treat all arguments as files
	-l						# long format (type, creator, size, dates, etc.)
	-m columns				# n column format, where n = columns
	-n						# don't print header in long or extended format
	-o						# omit directory headers
	-q						# don't quote filenames with special characters
	-r						# recursively list subdirectories
	-s						# suppress the listing of directories
	-t type 				# list only files of this type
	-x format				# extended format with the fields specified by format
	
	Note: The following characters can specify the format
		a	Flag attributes
		b	Logical size, in bytes, of the data fork
		r	Logical size, in bytes, of the resource fork
		c	Creator of File ("Fldr" for folders)
		d	Creation date
		k	Physical size in kilobytes of both forks
		m	Modification date
		t	Type
		o	Owner (only for folders on a file server)
		g	Group (only for folders on a file server)
		p	Privileges (only for folders on a file server)

-	
Find			# find and select a text pattern
Find [-c count] selection [window]
	-c count				# find the nth selection, where n = count

-
Flush			# flush the tools that the Shell has cached
Flush

-
For 			# repeat commands once per parameter
For name In word…
	command…
End

-
Format			# set or display formatting options for a window
Format [[-f font] [-s fontsize] [-t tabsize] [-a attr]] | [-x fmt] [window…]
	-f fontName 			# set font to fontName
	-s fontSize 			# set the font size to fontSize
	-t tabSize				# set the tab size to tabSize
	-a attr 				# set the auto indent and show invisibles flags
	-x fmt					# output the current format in the specified format
	
	Note: The following attributes may be used with the -a option:
		A	auto indentation on
		a	auto indentation off
		I	show invisibles on
		i	show invisibles off
		L	lock auto scrolling
		l	unlock auto scrolling
	
	Note: The following characters may be used with the -x option:
		f	font name
		s	font size
		t	tab size
		a	attributes

-
Gestalt			# output information about the operating environment
Gestalt [option…] [selector…]
	-c						# output only the number of bits in a Gestalt response
	-k						# output the title even if only one selector is chosen
	-h						# output the response as a hexadecimal number
	-s						# output responses as strings if they exist in
							#   Gestalt tools's data base
	-e						# generate error message if selector is not in data base
	-sel					# output selector together with title and value
	-slots					# output information about the cards in the machine slots
	-type					# output info using only selectors which return a "type" 
	-vers					# output info using only selectors which return a "vers"
	-addr					# output info using only selectors which return an "addr"
	-size					# output info using only selectors which return a "size"
	-attr					# output info using only selectors which return an "attr"
	-t n					# entab the output with the specified value
	-t1 n					# place one tab of the specified value between the 
							#   title and value
	-w n					# write title in field of fixed width n (default: 24)
	-p						# write version information
	-env					# use SysEnvirons instead of Gestalt Manager

-
Get				# get a record from an indexed file
Get (dataFile… | -dfl listfFle) [-x] [-k key] [-width w] [-d default key] [-h | -h2] 
	[-l] [-m] [-nf] [-q] [-s] [-search] [-t] [-sfl] [-y] [-field field list 
	[-format format string] ] [-lessFields field list]
	
	dataFile				# a specially formatted help file which must be
							# accompanied by an index file whose name is of
							# the form: dataFile.index, and whose type is 'btre'
	-dfl listFile			# listFile contains a list of datafiles
	-k keyword				# keyword in the datafile's index file
	-width w 				# column format for key lists, w = 1..200 is the 
							# 	window width in characters
	-d default				# use default keyword if no keyword is specified
	-h						# write full header
	-h2						# write short header (only the used datafile)
	-l						# list all keys in the first data file that begin
							# 	with nnn, where nnn is the keyword following -k
	-lessFields tag [,tag]…	# remove the named items from the existing field
							# 	list (default list or as specified by -field)
	-m						# select the key word that was found and assign
							#	a marker to the selection
	-nf						# no filtering; include field tags
	-q						# quiet output when keyword not found
	-s						# use the selection in the active window as keyword
	-search					# text search datafile for occurrences of keyword
	-t						# write out template of the requested function/procedure
	-field tag[,tag]…		# specify the data field(s) to display
	-format format_string	# specify string(s) to be output in front of data
							# specified in -field option.  '%s' flags in string 
							# 	correspond ordinally to tags in -field option
	-sfl					# produce ordered list of data files 
							# 	(requires -dfl listFile)
	-x						# create or update the cross reference index file
	-y						# do not present dialog before (re)building index file

-
GetErrorText	# display error messages based on message number
GetErrorText [-f filename] [-s filename] [-n] [-p] errnbr[,insert,…] …
GetErrorText -i idnbr,…
				# display error messages based on message number
	-f filename 			# explicit error msg file
	-i idnbr				# report meaning of System Error Handler ID number
	-n						# suppress error numbers in displayed messages
	-p						# write SysErrs's version info to diagnostics
	-s filename 			# explicit system error msg file (default SysErrs.Err)

-
GetFileName 	# display a Standard File dialog box
GetFileName [-q] [-s]
			[-c | [(-t type)… | -p | -d | -wd] [-m message] [-b buttontitle] [pathname]]
	-b buttontitle			# specify the default button's title
	-c						# write current standard file path to standard output
	-d						# select a directory
	-wd						# select a directory on a non-locked volume
	-m message				# specify a prompt
	-p						# select a new filename (SFPutFile) 
	-q						# suppress quoting of filenames
	-s						# return 0 status even if cancel is clicked
	-t type 				# specify file type for SFGetFile dialog

-
GetListItem 	# display items for selection in a dialog box
GetListItem [option…] [[item…] | < file]
	-c[ancel]				# return a status of 0 even when cancel is clicked
	-d[efault] item 		# item is entered in list and comes up selected
	-m[essage] message		# display message in dialog above the list
	-q[uote]				# don't quote items in the output
	-r[ows] rows			# make the list with this many rows
	-s[ingle]				# only allow a single selection
	-sort					# display list items in alphabetic order
	-w[idth] width			# make the list this many pixels wide

-	
Help			# write summary information
Help [-f helpfile] [command…]  > helpInformation
	-f helpfile 			# alternate helpfile (default MPW.Help)

-
If				# conditional command execution
If expression
	command…
[Else If expression
	command… ] …
[Else
	command… ]
End

-	
Lib 			# combine object files into a library file
Lib [option…] objectFile…  ≥ progress
	-d						# suppress duplicate definition warnings
	-df deleteFile			# delete modules listed in file deleteFile
	-dm name[,name]…		# delete external modules and entry points
	-dn name[,name]…		# delete external names, making them local
	-f						# allow FORTRAN-style common data
	-mf 					# use MultiFinder temporary memory if necessary
	-o name 				# write object file name (default Lib.Out.o)
	-p						# write progress information to diagnostics
	-rn	OldNameA=NewNameA	# change module name(s) OldNameA to NewNameA,
	  [,OldNameB=NewNameB]…	#  	OldNameB to NewNameB, etc.
	-sg newSeg=old[,old]…	# merge old segments into new segment
	-sn oldSeg=newSeg		# change segment name oldSeg to newSeg
	-sym [On | Full]		# keep symbolic information (default)
		 [Off]				# discard symbolic information, can be followed by:
			[,NoLabels] 	#	discard label information
			[,NoLines]		#	discard source line information
			[,NoTypes]		#	discard type information
			[,NoVars]		#	discard variable information
	-ver N					# set OMF file version number to N
	-w						# suppress warnings

-
Line			# find line in the target window
Line n

-
Link			# link an application, tool, or resource
Link [option…] objectFile…	> map ≥ progress
	-ac alignment			# align code modules to 'n' byte boundaries
	-ad alignment			# align data modules to 'n' byte boundaries
	-br on					# generate branch islands where needed
	-br off					# do not generate branch islands (default)
	-c creator				# set resourceFile creator (default ????)
	-d						# suppress duplicate definition warnings
	-da 					# desk accessory - add NULL to segment names
	-f						# allow FORTRAN-style common data
	-l						# write a location map to output
	-la 					# -l, include anonymous symbols in location map
	-lf 					# -l, include file and location of definitions
	-m mainEntry			# use mainEntry as main entry point
	-ma name=alias			# create an alias for module name
	-map					# generate "friendly" link map
	-mf 					# use MultiFinder temporary memory if necessary
	-model far				# process 32-bit load-time relocatable references
	-model near				# prohibit 32-bit load-time relocatable references
	-msg keyword[,…]		# message options
		[no]dup 			#	(suppress) warnings about duplicate symbols
		[no]multiple		#	(suppress) multiple undefined symbol reports
		[no]warn			#	(suppress) warning messages
	-o resourceFile 		# write resourceFile (default Link.Out)
	-opt [Off]				# disable Object Pascal optimizations (default)
		 [On ]				# enable optimizations
		 [NoBypass] 		# enable optimizations, but always dispatch
			[,Info] 		#	write optimization information to diagnostics
			[,Names]		#	include MacsBug symbols within SelectorProc modules
	-p						# write progress information to diagnostics
	-pg size				# set page size to "size"; max: 32K; min: 1024; default: 2048 
	-ra [seg]=attr[,attr…]	# set segment resource attributes:
		$xx (or) nnn		#	a hex or decimal attribute you figure out
		resSysHeap			#	or a comma-seperated list of resource
		resPurgeable		#	 attributes by name
		resLocked			#	
		resProtected		#	
		resPreload			#	
		resChanged			#	(essentially ignored)
	-rn 					# don't include resource names in resourceFile
	-rt type[=id] 			# set resource type and lowest id (default CODE=0)	
	-sg newSeg[=old[,old]…]	# merge old segments into new segment
	-sn oldSeg=newSeg		# change segment name oldSeg to newSeg
	-srt					# sort global data by "near" and "far" references (default)
	-srtsg all|segName 		# place items referenced through Jump Table low in code resource.
							#   all: sort all segments.  
							#   segName: sort named one.
	-ss size				# maximum segment size (default 32760)
	-sym [Off]				# disable symbolic output (default)
		 [On | Full]		# enable symbolic output, can be followed by:
			[,NoLabels] 	#	omit label information
			[,NoLines]		#	omit source line information
			[,NoTypes]		#	omit type information
			[,NoVars]		#	omit variable information
	-t type 				# set resourceFile type (default APPL)
	-uf unrefFile			# write list of unreferenced modules to unrefFile
	-w						# suppress warnings
	-wrap		 			# when jump table space is exhausted, put excess jump table 
                       		# 	entries in global data space, if available
	-x crossRefFile 		# write cross reference to crossRefFile

-	
Loop			# repeat commands until Break
Loop
	command…
End

-	
Make			# build up-to-date version of a program
Make [option…] target…	> commands ≥ progress
	-d name[=value] 		# define variable name as value (overrides makefile)
	-e						# rebuild everything regardless of dates
	-f makefile 			# read dependencies from makefile (default MakeFile)
	-p						# write progress information to diagnostics
	-r						# write roots of dependency graph to output
	-s						# write structure of target dependencies to output
	-t						# touch dates of targets and prerequisites
	-u						# identify targets in makefile not reached in build
	-v						# write verbose explanations to diagnostics
	-w						# suppress warnings
	-y						# like -v, but omit announcing up-to-date targets

-
MakeErrorFile	# create error message textfile
MakeErrorFile [option…] [file…]  < file > listing ≥ progress
	-l						# write listing to standard output
	-o file/dir 			# output file or directory
	-p						# write progress information to diagnostics

-
Mark			# assign a marker to a selection
Mark [-y | -n] selection name [window]
	-y						# replace existing marker (avoids dialog)
	-n						# don't replace existing marker (avoids dialog)

-
Markers 		# list markers
Markers [-q] [window]
	-q						# don't quote the marker names

-
MatchIt 		# semi-intelligent language sensitive bracket matcher
MatchIt [-a[sm] | -p[ascal] | -c] [-h] [-l] [-n] [-v] [window]
	-a[sm]					# target language is Assembler
	-p[ascal]				# target language is Pascal
	-c						# target language is C
	-h						# highlight all characters enclosed by match
	-l						# highlight entire lines containing match
	-n						# generate error message if no match
	-v						# display MatchIt's version number

-
MergeBranch 	 # merge a branch revision onto the trunk
MergeBranch file…

-
ModifyReadOnly	# enables read-only Projector files to be edited
ModifyReadOnly file…

-
Mount			# mount volumes
Mount drive…

-
MountProject	# mount projects
MountProject ([-s] [-pp] [-q] [-r]) | [Project]
	-s						# print names only, not commands
	-pp 					# list mounted projects using project paths
	-q						# don't quote names with special characters
	-r						# list projects recursively

-
Move			# move files and directories
Move [-y | -n | -c] [-p] name… target  ≥ progress
	-y						# overwrite target files (avoids dialog)
	-n						# don't overwrite target files (avoids dialog)
	-c						# cancel if conflict occurs (avoids dialog)
	-p						# write progress information to diagnostics

-
MoveWindow		# move window to h,v location
MoveWindow [h v] [-i] [window]
	h						# horizontal position of top left corner
	v						# vertical position of top left corner
	-i						# ignore positioning errors

-
NameRevisions	# define a symbolic name
NameRevisions [-u User] [-project Project] [-public | -private | -b] [-r]
		[[-only] | name [[-expand] [-s] | [-replace] [-dynamic] [names… | -a]]]
	-u user 				# name of current user
	-private				# create a private name
	-project project		# name of project that contains the revisions
	-public 				# create a public name (the default)
	-b						# print both public and private names
	-expand 				# evaluate names to revision level before printing
	-only					# only print the names, not the associated revisions
	-replace				# completely overwrite the previous definition of name
	-dynamic				# evaluate names to revision level when using not defining
	-r						# recursively execute NameRevisions starting with current project
	-s						# print a single name per line
	-a						# all the files in the project

-
New 			# open a new window
New [name…]

-
Newer			# compare modification dates of files
Newer [-c] [-e] [-q] file… target > newer
	-c						# compare creation dates
	-e						# report names that have same (equal) mod date as target
	-q						# don't quote file names with special characters

-
NewFolder		# create a new folder
NewFolder name…

-
NewProject		# create a new project
NewProject -w | -close | ([-u user] [-cs comment | -cf file] project)
	-cf file				# the comment is contained in file.
	-close					# close the New Project window
	-cs comment 			# a short description of the project
	-w						# open the New Project window
	-u user 				# name of current user

-
Open			# open file(s) in window(s)
Open [-n | -r] [-t] [name…]
	-n						# open new file (default name Untitled)
	-r						# open file for read-only use
	-t						# open file as the target window

-
OrphanFiles 	# remove Projector information from a list of files
OrphanFiles file…

-
Parameters		# write parameters
Parameters [parameter…]  > parameters

-
Pascal			# Pascal compiler
Pascal [option…] [file…]  < file ≥ progress
	-b						# generate A5 references for procedure addresses
	-c						# syntax check only, don't create object file
	-clean					# erase all symbol table resources
	-d name=(TRUE|FALSE)	# set compile time variable name
	-e file 				# write errors to file
	-forward				# allow only explicit forward and external object declarations
	-h						# suppress error messages regarding unsafe handles
	-i directory,…			# search for includes in directory,…
	-k directory			# create symbol table resource files in directory
	-m						# allow greater than 32K globals by using 32 bit references
	-mbg ch8				# include v2.0 compatible MacsBug symbols
	-mbg full				# include full (untruncated) symbols for MacsBug
	-mbg off				# don't include symbols for MacsBug
	-mbg number 			# include MacsBug symbols truncated to length number
	-mc68020				# generate MC68020 code 
	-mc68881				# generate MC68881 code for floating point operations
	-model farCode| 		# generate load-time relocatable 32-bit references for
		farData|far			#	code, data, or both
	-model nearCode|		# generate 16-bit references for code, data, or both 
		nearData|near		#	(the default)
	-n						# generate separate global data modules for better allocation
	-noload 				# don't use or create any symbol table resources
	-o objname				# generate code in file or directory objname
	-only name…				# only generate code for named modules
	-opt off				# don't apply code optimizations
	-opt on | full			# choose level of code optimization (full is default);
							#	can modify with [,nopeep] [,nostatic]	
	-ov 					# generate code to test for overflow
	-p						# write progress information to diagnostics
	-r						# don't generate range checking code
	-rebuild				# rebuild all symbol table resources
	-sym off				# don't generate SADE records
	-sym on | full			# generate SADE records; can modify with [,nolines] [,notypes] [,novars]
	-t						# write compilation time to diagnostics
	-u						# initialize all data to $7267 for debugging use
	-y directory			# create temporary files in directory

-	
PasMat			# Pascal programs formatter
PasMat [option…] [input [output]]  < input > output ≥ progress
	-a						# set a-  disable CASE label bunching
	-b						# set b+  enable IF bunching
	-body					# set body+ to disable indenting procedure bodies
	-c						# set c+  suppress Return before BEGIN
	-d						# set d+  use {…} comment delimiters
	-e						# set e+  capitalize identifiers
	-entab					# replace multiple blanks with tabs
	-f						# set f-  disable formatting
	-g						# set g+  group assignment and call statements
	-h						# set h-  disable FOR, WHILE, WITH bunching
	-i directory,…			# search for includes in directory,…
	-in 					# set in+ process includes
	-k						# set k+  indent statements between BEGIN and END
	-l						# set l+  literally copy reserved words, identifiers
	-list file				# write listings to file
	-n						# set n+  group formal parameters
	-o width				# set output line width (default 80)
	-p						# write progress information to diagnostics
	-pattern -old-new-		# modify include names, changing old to new
	-q						# set q+  no special ELSE IF formatting
	-r						# set r+  upper case reserved words
	-rec					# set rec+ to indent field lists under defined id
	-s file 				# substitute identifiers based on pairs in file
	-t tab					# set output tab setting (default 2)
	-u						# rename identifiers to match first occurence
	-v						# set v+  put THEN on separate line
	-w						# set w+  upper case identifiers
	-x						# set x+  suppress space around operators
	-y						# set y+  suppress space around :=
	-z						# set z+  suppress space after commas
	-:						# set :+  align colons in VAR declarations
	-@						# set @+  multiple CASE tags on separate lines
	-∂# 					# set #+  smart grouping of assignments and calls
	-_						# set _+  delete _ from identifiers

-	
PasRef			# Pascal cross-referencer
PasRef [option…] [file…]  < file > crossReference ≥ progress
	-a						# process includes and units each time encountered
	-c						# process includes and units only once
	-cond					# process $SETC and $IFC, $ELSEC, $ENDC conditionals
	-d						# process each file separately
	-d name=TRUE|FALSE		# set $SETC variable name to TRUE or FALSE
	-i directory,…			# search for includes in directory,…
	-l						# write identifiers in lower case
	-mc68020				# source contains {$IFC OPTION(MC68020)} directives
	-mc68881				# source contains {$IFC OPTION(MC68881)} directives
	-n						# don't process USES or includes
	-ni | -noi[ncludes] 	# don't process include files
	-nl | -nol[istings] 	# don't list the input
	-nolex					# don't write lexical information
	-nt | -not[otal]		# don't write total line count
	-nu | -nou[ses] 		# don't process USES declarations   
	-o						# source written using Object Pascal
	-p						# write progress information to diagnostics
	-s						# don't write include and USES filenames
	-t						# cross reference by total line number
	-u						# write identifiers in upper case
	-w width				# set output line width (default 110)
	-x width				# set maximum identifier width

-
Paste			# replace selection with Clipboard contents
Paste [-c count] selection [window]
	-c count				# repeat the Paste count times

-
PerformReport	# generate a performance report
PerformReport [option…]  > reportFile ≥ progress
	-a						# list all procedures, in segment order
							# (default: produce only partial list, sorted by %)
	-l linkDataFile 		# read link map file (concatenated with ROM.list)
	-m measurementsFile 	# read performance measurements file
							# (default: "Perform.Out")
	-n NN					# show the top NN procedures (default: 50)
	-p						# write progress information to diagnostics

-
Position		# display current line position
Position [-l | -c] [window…]
	-l						# only list the line number
	-c						# only list the character offsets

-
Print			# print text files
Print [option…] file…  < file ≥ progress
	-b						# print a border around the text
	-b2 					# alternate form of border
	-bm n[.n]				# bottom margin in inches (default 0)
	-c[opies] n 			# print n copies
	-ff string				# treat "string" at beginning of line as a formfeed
	-f[ont] name			# print using specified font
	-from n 				# begin printing with page n
	-h						# print headers (time, file, page)
	-hf[ont] name			# print headers using specified font
	-hs[ize] n				# print headers using specified font size
	-l[ines] n				# print n lines per page
	-lm n[.n]				# left margin in inches (default .2778)
	-ls n[.n]				# line spacing (2 means double-space)
	-md 					# use modification date of file for time in header
	-n						# print line numbers to left of text
	-nw [-]n				# width of line numbers, - indicates zero padding
	-p						# write progress information to diagnostics
	-page n 				# number pages beginning with n
	-ps filename			# include PostScript file as background for each page
	-q quality				# print quality (HIGH, STANDARD, DRAFT)
	-r						# print pages in reverse order
	-rm n[.n]				# right margin in inches (default 0)
	-s[ize] n				# print using specified font size
	-t[abs] n				# consider tabs to be n spaces
	-title title			# include title in page headers
	-tm n[.n]				# top margin in inches (default 0)
	-to n					# stop printing after page n

-
PrintProff		# analyze a .proff file and print the results
PrintProff TargetProgramName [-h | -f] [-c] [> outputFile]
	-h						# hierarchical sort (default)
	-f						# flat sort
	-c						# for each procedure, list callees

-
ProcNames		# display Pascal procedure and function names
ProcNames [option…] [file…]  < file ≥ progress
	-b						# display line info for procedure body
	-c						# process includes and units only once
	-cond					# process $SETC and $IFC, $ELSEC, $ENDC conditionals
	-d						# reset total line count to 1 on each new file
	-d name=TRUE|FALSE		# set $SETC variable name to TRUE or FALSE
	-e						# suppress page eject between each procedure listing
	-f						# PasMat format compatibility mode
	-i pathname,…			# search for includes or USES in directory,…
	-l n					# process only to max nesting level n
	-m 						# generate MPW Mark commands for procedure and function declarations
	-mc68020				# source contains {$IFC OPTION(MC68020)} directives
	-mc68881				# source contains {$IFC OPTION(MC68881)} directives
	-n						# suppress line number and level information
	-o						# source file is an Object Pascal program
	-p						# write progress information to diagnostics
	-u						# process USES declarations

-
Project 		# set or write the current project
Project [-q | projectName]	> project
	-q						# don't quote projects with special characters

-
ProjectInfo 	# display information about a Project
ProjectInfo [-project project] [-comments] [-latest] [-f] [-r] [-s] [-only | -m]
			[-af author | -a author] [-df dates | -d dates] [-cf pattern | -c pattern]
			[-t pattern] [-n name] [-newer | -update] [file…]
	-a author				# only list revisions created by author
	-af author				# only list files created by author
	-c pattern				# only list revisions whose comment contains pattern
	-cf pattern 			# only list files whose comment contains pattern
	-comments				# list comments along with the rest of the information
	-d dates				# only list revisions whose create date is within dates
	-df dates				# only list files whose mod date is within dates
	-f						# list file information
	-log					# print project log
	-m						# only list files/revisions that are checked out
	-newer					# info on files that would be checked out using this option
	-only					# only list project information
	-project project		# name of project to get information on
	-r						# recursively list subprojects
	-latest 				# only list info on the latest revision on the main trunk
	-s						# short listing, names and revision names only
	-t pattern				# only list revisions whose task contains pattern
	-n name 				# only list revisions that have name
	-update 				# info on files that would be checked out using this option
	
	Note: pattern is either a literal string or /regular expression/.
	
	Note: "dates" may take the following forms:
		date				# on date
		<date				# before but not including date
		≤date				# before and including date
		>date				# after and not including date
		≥date				# after and including date
		date-date			# between and including dates
		
	Note:  A date is mm/dd/yy [[hh:mm[:ss]] [AM|PM]]
	
	Note: "name" may take the following forms:
		name				# in name
		<name				# before name
		≤name				# before and including name
		>name				# after name
		≥name				# after and including name

-	
Quit			# quit MPW
Quit [-y | -n | -c]
	-y						# save all modified windows (avoids dialog)
	-n						# do not save any modified windows (avoids dialog)
	-c						# cancel if a window needs to be saved (avoids dialog)

-
Quote			# echo parameters, quoting if needed
Quote [-n] [parameter…]  > parameters
	-n						# don't write return following the parameters

-	
Rename			# rename files and directories
Rename [-y | -n | -c] oldName newName
	-y						# overwrite existing file (avoids dialog)
	-n						# don't overwrite existing file (avoids dialog)
	-c						# cancel if conflict occurs (avoids dialog)

-	
Replace 		# replace the selection
Replace [-c count] selection replacement [window]
	-c count				# repeat the replace count times

-	
Request 		# request text from a dialog box
Request [-q] [-d default] [message…] < file
	-q						# don't set status if user selects cancel
	-d default				# set default response

-
ResEqual		# compares the resources in two files
ResEqual [-p] File1 File2
	-p						# write progress information to diagnostics

-
Revert			# revert window to previous saved state
Revert [-y] [window…]
	-y						# revert to old version (without dialog)

-
Rez 			# resource compiler
Rez [option…] [file…]  < file ≥ progress
	-a[ppend]				# merge resource into output resource file
	-align word | longword	# align resource to word or longword boundries
	-c[reator] creator		# set output file creator
	-d[efine] name[=value]	# equivalent to: #define macro [value]
	-i[nclude] pathname 	# path to search when looking for  #include files
	-m[odification] 		# don't change the output file's modification date
	-o file 				# write output to file (default Rez.Out)
	-ov 					# ok to overwrite protected resources when appending
	-p						# write progress information to diagnostics
	-rd 					# suppress warnings for redeclared types
	-ro 					# set the mapReadOnly flag in output
	-s[earch] pathname		# path to search when looking for INCLUDE resources
	-t[ype] type			# set output file type
	-u[ndef] name			# equivalent to: #undef name

-
RezDet			# detect inconsistencies in resources
RezDet [option…] file…	> dump
	-b[ig]					# read resources one at a time, not all at once
	-d[ump] 				# write -show information, plus headers, lists, etc.
	-l[ist] 				# write list of resources with minimum information
	-q[uiet]				# don't write any output, just set {Status}
	-r[awdump]				# write -dump information plus contents
	-s[how] 				# write information about each resource
	
	Note: Use at most one of -quiet, -list, -show, -dump, and -rawdump.

-
RotateWindows   # send active (frontmost) window to back
RotateWindows [-r]
	-r						# reverse rotation; bring bottom window to front

-
Save			# save specified windows
Save [-a | window…]
	-a						# save the contents of all windows

-
SaveOnClose		# set save behavior when closing windows
SaveOnClose [-a | -d | -n] [window…]
	-a						# always save upon close ("Close -y")
	-d						# default behavior for Close
	-n						# never save upon close ("Close -n")


-
Search          # search files for pattern
Search [-b] [-s | -i] [-nf] [-ns] [-r] [-sf] [-q] [-f file] pattern [file…] < file > found
	-b						# break "File/Line" from matched pattern
	-i						# case insensitive search (overriding {CaseSensitive})
	-s						# case sensitive search (overriding {CaseSensitive})
	-nf						# write error message if pattern not found
	-ns						# return 0 when pattern not found
	-q						# suppress file name and line number in output
	-r						# write non-matching line to standard output
	-sf						# stop at first match
	-f file					# lines not written to output are put in this file

-
Set 			# define or write Shell variables
Set [name [value]]	> variableList

-
SetDirectory	# set the default directory
SetDirectory directory

-
SetFile 		# set file/folder attributes
SetFile [option…] file/folder…
	-a attributes			# attributes (lowercase = 0, uppercase = 1)*
	-c creator				# file creator
	-d date 				# creation date (mm/dd/yy [hh:mm[:ss] [AM | PM]])*
	-l h,v					# ICON location (horizontal,vertical)*
	-m date 				# modification date (mm/dd/yy [hh:mm[:ss] [AM | PM]])*
	-t type 				# file type

	Note: Period (.) represents the current date and time.
	Note: The following attributes may be used with the -a option:
		L	Locked
		V	Invisible*
		B	Bundle
		S	System
		I	Inited*
		D	Desktop*
		M	Shared (can run multiple times)
		A	Always switch launch (if possible)
	*Note: Options/attributes marked with an asterisk (*) are allowed with folders
		

-
SetPrivilege	# set access privileges for directories on file servers
SetPrivilege [option…] directory…  > information
	-d privileges			# set privileges for seeing directories
	-f privileges			# set privileges for seeing files
	-g group				# make the directories belong to group
	-i						# return information on directories
	-m privileges			# set privileges for making changes
	-o owner				# make owner the owner of directories
	-r						# operate (set or list) recursively

	Note: The following privilege characters may be used with
	the -d, -f, or -m options (Upper case enables the privilege,
	lower case disables it):
		 O	 Owner
		 G	 Group
		 E	 Everyone

-
SetVersion		# maintain version and revision number
SetVersion [option…] file  > output ≥ progress
	-b						# increment the bug fix component by 1
	-country name			# country code name
	-csource file			# update the #define Version string in C source
	-d						# display (updated) version numbers to standard output
	-fmt nƒ.mƒ				# format version numbers according to specification
	-i resid				# use specified resource id instead of 0
	-p						# write SetVersion's version info to diagnostic file
	-prefix prefix			# prefix version with specified prefix
	-[p]source file 		# update the Version string constant in Pascal source
	-r						# increment the revision component by 1
	-rezsource file 		# update the resource definition in Rez source
	-sb bugfix				# set the bug fix component to the specified value
	-sr revision			# set the revision component to the specified value
	-stage stage			# set release stage for a 'vers' resource
	-suffix suffix			# suffix the version with specified suffix
	-sv version 			# set the version component to the specified value
	-sx nonrel				# set the non-release component to the specified value
	-sync 1 | 2 			# synchronize 'vers',1 with 'vers',2 or vice versa
	-t type 				# use specified resource type
	-v						# increment the version component by 1
	-verid identifier		# use C/Pascal source version id instead of "Version"
	-version fmtstring		# alternate way of specifying version component actions
	-verstring longstring	# set the long version string of a Finder 'vers' resource
	-x						# increment the non-release component by 1

-
Shift			# renumber command file positional parameters
Shift [number]

-
ShowSelection 	# place the selection within an editor window
ShowSelection [-t | -b | -c | -n lines | -l line] [window]
	-t						# place first line of selection at top of window
	-b						# place first line of selection at bottom of window
	-c						# center the first line within the window
	-n lines				# place first line of selection lines from the top
	-l line					# place line at the top of window

-
Shutdown		# power down or restart the machine
Shutdown [-y | -n | -c] [-r]
	-y						# save all modified windows (avoids dialog)
	-n						# do not save any modified windows (avoids dialog)
	-c						# cancel if a window needs to be saved (avoids dialog)
	-r						# restart the machine

-
SizeWindow		# set a window's size
SizeWindow	[h v] [window]
	h						# window width (horizontal)
	v						# window height (vertical)

-
Sort			# sort or merge lines of text
Sort [option…] [files…]
	-b						# skip leading blanks of each field
	-check					# check if input is sorted (exit code 5 if not).
	-d						# sort fields as decimal numbers
	-f field[,field]		# specify fields to sort on (see below)
	-fs string				# specify field separator characters
	-l						# convert to lowercase before comparison
	-merge					# merge pre-sorted input files
	-o file 				# specify output file, allows sorting-in-place
	-p						# print version and progress information
	-quote					# handle fields with quotes
	-stdin					# place-holder for standard input (acts like a file)
	-r						# reverse order of comparison
	-t						# sort fields as text (default)
	-u						# convert to uppercase before comparison
	-unique 				# write only unique output lines
	-x						# sort fields as hexadecimal numbers (leading '$'
							#	or '0x' is ignored)

	The comma-separated field specifications (following -f) take the forms:
	
			[F][.C][-K][bdlqrtux]
		or	[F][.C][+N][bdlqrtux]

	'F' is a field number (0=whole line [default], 1=first word, 2=second word…).
	'C' is the starting column number (from 1), default=1.
	'K' is the ending column number >= C, default=infinite.
	'N' is the maximum number of characters in the field, default=infinite.
	Only one of '-K' or '+N' can be specified.
	
	The local modifier characters 'bdlqrtux' have the same meaning on a
	per-field basis as -b, -d, -l, -q, -r, -t, -u and -x (which take effect
	globally).

-
StackWindows	# arrange windows diagonally
StackWindows [-h num] [-v num] [-r top,left,bottom,right] [-i | windows…]
	-h num					# horizontal offset between windows
	-v num					# vertical offset between windows
	-r t,l,b,r				# rectangle in which to stack windows
	-i						# include the worksheet
	windows…				# list of windows to tile

-
StreamEdit		# scriptable text editor
StreamEdit [option…] file…
	-d						# delete lines (don't copy them)
	-e statements			# add 'statements' to the script
	-o file 				# direct output to file in a "safe" manner
	-p						# print progress information
	-s file 				# specify a file containing a script to execute
	-set variable[=string]	# set the value of a variable

	A script consists of zero or more of:
	
		<address> <command>…

	Addresses take the forms (highest to lowest precedence):
	
		( address ) 			# override precedence
		! address				# match line not matching the address
		address1 && address2	# match line matching address1 AND address2
		address1 || address2	# match line matching address1 OR address2
		address1 , address2 	# match address1…address2
		/regular expression/	# a line that matches the expression
		•						# matches BEFORE the first line
		N						# matches the Nth line
		$						# matches the last line
		∞						# matches AFTER the last line

	A regular expression starting with 'ç' is case-sensitive.  Any '•' must
	follow the 'ç'.

	Commands are:
	
		Append <text>			# append text to append buffer
		Exit [status]			# exit with zero or specified status
		Change <text>			# set contents of edit buffer
		Delete					# clear contents of edit buffer
		Insert <text>			# append text to insert buffer
		Next					# proceed with next line
		Print <text>			# Print the text
			 [-To file ]		#	 directed to the specified file
			 [-AppendTo file]	#	 appended to the specified file
		Replace /pat/ <text>	# do replacement
				[-c count]		# specify repeat count (N or ∞)
		Set variable <text> 	# set variable's value
			[-a]				#	 append to variable's current value
			[-i]				#	 insert at front of variable's current value
		Option AutoDelete		# append "1,$ Delete" to script
	
	Where <text> consists of zero or more of:
	
		"a string"				# the specified text
		'a string'				# the specified text
		.						# the current line (the edit buffer)
		variableName			# the contents of the named string variable
		®N						# an "®" variable set by a regular expression
		-from <filename>		# the next line from the file, where filename
								#	 is a string or a variable name
		-n						# suppress newline at end

	If <text> is empty, it defaults to "." (the current line).

-
Target			# make a window the target window
Target name

-
TileWindows 	# arrange windows in a tiled fashion
TileWindows [-h | -v] [-r top,left,bottom,right] [-i | windows…]
	-h						# tile windows horizontally
	-v						# tile windows vertically
	-r t,l,b,r				# rectangle in which to tile windows
	-i						# include the worksheet
	windows…				# list of windows to tile

-
TransferCkid	# move Projector information from one file to another
TransferCkid sourceFile destinationFile 

-
Translate		# translate characters
Translate [-p] [-s] src [dst] < file > output ≥ progress
	-p						# write progress information to diagnostics
	-s						# set font, font size, and tab setting of output

-
Unalias 		# remove aliases
Unalias [name…]

-
Undo			# undo the last edit
Undo [window]

-
Unexport		# remove variable definitions from the export list
Unexport [-r | -s | name…]	> unexports
	-r						# generate Export commands for all unexported variables
	-s						# print the names only

-
Unmark			# remove a marker from a window
Unmark name… window

-
Unmount 		# unmount volumes
Unmount volume…

-
UnmountProject	# unmount projects
UnmountProject -a | Project…
	-a						# unmount all mounted projects

-
Unset			# remove Shell variable definitions
Unset [name…]

-
UserVariables	# uses Commando to set all the user variables
UserVariables

-
Version			# print the version of the MPW Shell

-
VersionList		# print version info from files 
VersionList [option…] [file…]  > versionsReport
    -all					# print version info for all files in directory
    -c creator				# report on files that have the named file creator. 
							#   Default is 'MPS '
    -d						# include modification date in report
    -h						# suppress the report header and footer
    -l						# don't truncate very long file names
    -newer date				# report on files whose modification date is 
							#   newer than date
    -older date				# report on files whose modification date is 
							#   older than date
    -p						# write progress information to diagnostic output
    -r						# recursively search subdirectories
    -raw					# suppress all formatting.  Print tab-delimited columns
    -t type					# report on files that have the named file type. 
							#   Default is 'MPST'
    -u path					# start search at <path>. Default is {MPW}Tools:
    -v						# include 'vers' 2 resource info in report
	
-
Volumes 		# list mounted volumes
Volumes [-l] [-q] [volume…] > volumeList
	-l						# long format (name, drive, size, free, files, dirs)
	-q						# don't quote volume names with special characters

-
WhereIs 		# find the location of a file
WhereIs [-c] [-d] [-v] [-s directory]… pattern
	-c						# completely match filepattern
	-d						# include directories
	-v						# verbose output - put summary line at end
	-s directory			# starting directory/volume for search

-
Which			# determine which file the shell will execute
Which [-a] [-p] [name]	> file ≥ progress
	-a						# report all commands named "name"
	-p						# writes progress information to diagnostics

-
Windows			# list windows
Windows [-q] [-o]
	-q						# don't quote window names with special characters
	-o						# list "Open" command lines for execution

-
ZoomWindow		# enlarge or reduce a window's size
ZoomWindow [-b | -s] [window]
	-b						# zoom to full screen (big)
	-s						# zoom back to regular size (small)
