The TOOLS.INI File

The TOOLS.INI file is the initialization and customization file for MEP. MEP reads key assignments, switch settings, extensions, and macro definitions from this file on startup. Each section in the TOOLS.INI begins with a tag that specifies the base name of the executable file for the tool that will use the section. MEP recognizes only the sections tagged [MEP - name]. MEP looks for TOOLS.INI in the directory given by the INIT environment variable. If INIT is not defined, MEP looks in the current directory.

MEP also stores status information, such as cursor position, settings, and the list of files you have edited, in a file named MEP.TMP. Between sessions, MEP saves certain settings in MEP.TMP. Settings in this file override those in TOOLS.INI.

When you start MEP, it reads the TOOLS.INI file, loads editor extensions, and reads MEP.TMP. To suppress this sequence and start MEP with no default assignments and no retained status, specify the /D option.

Defining Sections

The statements in the TOOLS.INI file are divided into sections. Each section begins with a tag that indicates its use. The main section of TOOLS.INI that MEP uses has the [MEP] tag. You list most editor assignments and macro definitions in this section. When you save a key assignment, switch setting, or recorded macro, MEP puts the new definition in this section unless the definition belongs to a specific editor extension. Extensions use the following format for their tags:

[MEP - ExtensionName]

For example, help extension settings appear after the [MEP-MHELP] tag.

You can define named sections of TOOLS.INI that you load manually. Use named sections to make special key assignments, to load complex or rarely used macros, or to create alternate configurations. To load a named section of TOOLS.INI under the tag [MEP - name], execute the following command:

ALT+A name SHIFT+F8

This method of reading a tagged section can be used for any kind of tagged section, including the automatically loaded sections.

Specifying Comments

To specify a comment in the TOOLS.INI file, place a semicolon (;) at the beginning of a line or following a space. MEP ignores text from the semicolon to the end of the line.

For example, the first semicolon in the following statement is part of a command, and the second semicolon begins a comment.

Printcmd:lister -t4 %s -c;   ;Print using lister program

Semicolons inside a quoted string do not begin a comment.

Specifying Line Continuation

To continue a long macro definition on multiple lines in TOOLS.INI, use a backslash character (\). The backslash must be preceded by a space to be treated as a line-continuation character.

Precede the backslash by two spaces or a tab if you want the macro to contain a space at that location. The backslash must be the last character on the line except for spaces and tabs.

For example, the backslash in the following statement is not a line continuation.

Qreplace:CTRL+\

However, the backslash at the end of the first line in the following example is a line continuation.

Findtag:=arg arg "^\\[[^\\]]+\\]" psearch ->none  \
arg setwindow => :>none arg "no tag" message

In the second example, the backslash is preceded by two spaces. The first space is included to separate "->none" from "arg" in the macro definition. The second space identifies the backslash that follows it as the line-continuation character.

Switches

The following table gives an alphabetical listing of MEP switches, along with their types, defaults, and descriptions.

Switch Type Default Description
askexit Boolean No Prompts for confirmation on exit.
Askrtn Boolean Yes Prompts for ENTER when returning from the command window.
autosave Boolean Yes Saves the current file when you open another file.
backup Text bak Specify none for no backup. Specify undel if the old file is to be moved to the DELETED directory. Specify bak to indicate that the old version of the file should be changed to filename.bak.
case Boolean No Perform case-sensitive find and replace operations.
displaycursor Boolean No Show the current cursor position on the status line. When the switch is off, the position given is that of the upper-left corner.
editreadonly Boolean Yes Allows read-only files to be edited.
entab Numeric 1 A value of 0 means tabs are not used to represent white space; 1 means all multiple spaces outside quoted strings are converted; 2 means all multiple spaces are converted to tabs.
enterinsmode Boolean No Start MEP in insert mode rather than overstrike mode.
errcolor Numeric 04 Specifies the color used for error messages.
errprompt Boolean Yes Prompt for a keystroke at each error.
extmake Numeric Associates a command line with a particular file extension for use by the Compile function. The text is of the form extension commandline.
fgcolor Numeric 07 Specifies the color used for the editing window.
filetab Numeric 8 The number of spaces associated with each tab column. If entab > 0, this setting determines how spaces are converted to tabs.
height Numeric 23 Specifies the number of lines in the editing window.
helpboldcolor Numeric 0F Specifies the color of text designated as bold.
helpfiles Text Specifies online help (.HLP) file.
helpitalcolor Numeric 0A Specifies the color of text designated as italic.
helpundcolor Numeric 0C Specifies the color of text designated as underlined.
helpwarncolor Numeric 07 Specifies the color of text used for warning notes.
helpwindow Boolean Yes Specifies whether MEP splits the screen to display help.
hgcolor Numeric 02 Specifies the color of text highlighted by the search command.
hike Numeric 4 Specifies the new line position of the cursor when it is moved out of the current window by more than vscroll lines..
hscroll Numeric 10 Specifies the number of columns shifted left or right when the cursor is scrolled out of the editing window.
infcolor Numeric 06 Specifies the color used for informative text.
load Text Specifies the name of the executable file for an extension.
noise Numeric 50 Specifies the number of lines counted at a time when searching or loading a file.
printcmd Text Specifies the system command executed for the Print command.
readonly Text Specifies the system command executed when overwriting a read-only file.
realtabs Boolean Yes Preserves tab characters instead of converting them to spaces.
rmargin Numeric 72 Specifies the right column margin used in word-wrap mode.
savescreen Boolean Yes Saves and restores the console (used with Shell and Exit).
searchwrap Boolean No Causes find and replace commands to wrap past the end of the file and continue searching at the beginning.
selcolor Numeric 70 Specifies the color of text highlighted by an on-screen argument.
shortnames Boolean Yes Allows you to load a file by giving only the base name. MEP searches the file list.
softcr Boolean Yes Attempts to indent, based on the format of the surrounding text.
stacolor Numeric 03 Specifies the color used for the status-line information.
tabalign Boolean No When this switch is off, the cursor can be placed anywhere in a tab field. When on (and realtabs is on), the cursor must align with the column position of the tab.
tabdisp Numeric 32 Specifies the ASCII value of the character used to display tabs.
tabstops Numeric 4 Specifies the number of spaces between each logical tab stop for Tab and Backtab.
tmpsav Numeric 20 Specifies the maximum number of recently edited files listed in MEP.TMP.
traildisp Numeric 0 Specifies the ASCII value of the character used to display trailing spaces, if trailspace is on.
trailspace Boolean No Preserves trailing spaces in each modified line.
undelcount Numeric No limit Specifies the number of backup copies that are saved when backup is set to undel.
undocount Numeric 10 Specifies the number of edit functions you can undo.
viewonly Boolean No When set, no file can be edited.
vscroll Numeric 7 Specifies the number of lines shifted up or down when the cursor is scrolled past the lines in the editing window.
wdcolor Numeric 07 Specifies the color of the border line created when you split a window.
width Numeric 80 Specifies the width of the display mode.
wordwrap Boolean No Breaks lines of text when you edit them beyond the margin specified by rmargin.