# user-setup(3)

[Home] [Commands] [Variables] [Macro-Dev] [Glossary]

## NAME

user-setup - Configure MicroEmacs for a specific user

## SYNOPSIS

user-setup

## DESCRIPTION

user-setup provides a dialog interface to enable the user to configure the editor. user-setup may be invoked from the main Help menu or directly from the command line using execute-named-command(2). user-setup configures the user's setup registry file, "<logname>`.erf`" which is used by MicroEmacs to initialize the environment to a user's preference.

Note, if your screen is too small to display the whole dialog, it may be moved using any key bound to the scroll commands such as scroll-up, e.g. `A-up`, `C-z`, `A-down`, `C-v`, `A-left` etc. For systems without mouse support, the `tab` key may be used to move between fields.

On all pages the following buttons are available at the bottom of the dialog and have the following effect:

`Save`

Saves the changes made to the users registry file, i.e. "<Log-Name>`.erf`" but does not re-initialize MicroEmacs. Some changes, such as color scheme changes, only take effect when the Current button is used or when MicroEmacs is restarted.

`Current`

Makes the current user and the changes made Current to this MicroEmacs session, dismissing the user-setup dialog and reinitializing MicroEmacs. This also saves the registry file out!

`Cancel`

Quits user-setup, if changes where not Saved or made Current they will be lost.

The following pages, which appear in the dialog, are defined as follows:-

## Start-up

`User Name`

Documents the user name currently being configured, this entry cannot be changed in user-setup, see $user-name(5) for help on changing the MicroEmacs user name.

`User Path`

Documents the location of the current user's MicroEmacs setup files, this entry cannot be changed in user-setup, see $user-path(5) for help on changing the user path.

`Setup File`

Sets the personal user setup macro file name which is executed at start-up. A user macro file should contain all personal settings such as preferred key bindings etc. See Setting Up A User Profile for more information. The Edit check box can be used to enable/disable the automatic loading of the setup file ready for editing when the Current button is used.

`Company File`

Sets the company setup macro file name which is executed at start-up. A company macro file should contain all company wide standard settings such as `%company-name`, No `.emf` extension is supplied. See Setting Up a Company Profile for more information.

`Emulation`

Sets an emulation mode which changes the behaviour on MicroEmacs to emulate another editor/program; this is done by executing a macro file at start-up. An emulation macro file should contain the macro code required to simulate the environment of the other editor. MicroEmacs 2009 is released with four emulation modes, GNU Emacs (see macro file `meemacs.emf`), CUA (Windows style key bindings and interface, see `mecua.emf`), MicroEmacs v3.8 (`meme3_8.emf`) and NEdit v5 which is at best a demonstration of what can be achieved via the emulation support (defined in `menedit.emf`). See Compatibility for more information on emulation.

`Rebind Home Keys`

When enabled the following key bindings are created to ease frustration, particularly for MS users:

`home`

Bound to beginning-of-line instead of beginning-of-buffer.

`end`

Bound to end-of-line instead of end-of-buffer.

`C-home`

Bound to beginning-of-buffer.

`C-end`

Bound to end-of-buffer.

`MS Shift Region`

Enables/disables cursor key manipulation with the shift key similar to the conventional Microsoft region selection. When enabled, pressing the shift key in conjunction with the cursor movement keys selects a region which is hilighted. Once the region is selected then the `<DELETE>` or `<BACKSPACE>` key erases the selected region. This also enables a similar behaviour with the Mouse Drag region driver, see below.

## Locale Setup

`Keyboard`

Configures MicroEmacs to the user's keyboard. Accent character generation keys present on foreign keyboards cannot be automatically supported on Windows platforms. MicroEmacs must be informed of the keyboard being used to correctly interpret the keys. If a required keyboard is not supported please see FAQ38 on how to setup the keyboard, also see Locale Support.

`Language`

Sets the user language, this sets the word (or letter) characters and if available sets up spell(2) with appropriate spelling rules and dictionaries. For more information on adding support for a language see Locale Support.

NOTES

Earlier versions MicroEmacs had "`(Ext)`" languages which use extended language dictionaries, vastly increasing the word list. New versions automatically test for and use these dictionaries if available.

In earlier versions a personal dictionary name could be set in the next field, this option was removed on Oct 2001. Instead a personal dictionary for each language is automatically created for you, any words or auto-corrected words will be added to the current languages personal dictionary. The name of dictionary is "`lsdp`<lang-id>`.edf`" where "<lang-id>" is the 4 letter MicroEmacs language name (e.g. "`enus`" for American), simply rename any existing personal dictionary to this new name.

`Auto Save Dictionaries`

Enables auto-saving of any changed dictionaries on exit. If this is disabled the user is prompted to save for each changed dictionary.

`Enable Auto-Spell`

Enables Auto Spell Checking in file types which support this feature (usually text based files such as txt(9) or nroff(9) files etc). Auto spell detects word breaks as you type and checks the spelling of every completed word hilighting any erroneous words in the error color scheme (usually red). When auto-spell is enable, right clicking on an erroneous word will add an extra Auto Spell sub-menu to the opened context menu, the sub-menu lists suggested corrections and other useful options; this menu can also be opened by executing the auto-spell-menu(3) command (usually bound to "`C-f7`"). The feature can be manually enabled and disabled by invoking the auto-spell(3) command.

## General

`Full Name`

This should be set to the user's name and is used in a variety of places, e.g. by etfinsrt(3) to set the "Created By" field in a template.

`Organizer File`

Sets the organizer file base name, defaults to the Log Name. When notes and addresses are stored using organizer(3) the file "<Organizer>`.eof`" is used.

`Global Modes`

Sets the initial state of the global quiet(5) global variable.

`Search Modes`

Sets the initial state of the global search modes exact(2m) and magic(2m). This indirectly executes global-mode(2) to set the required modes.

`Buffer Modes`

Sets the initial state of the global modes auto(2m), backup(2m), tab(2m) and undo(2m), any buffers created will inherit the state of these modes. However, as changing these modes directly effects only the global modes, any existing buffers (including ones re-created using the `-c` command-line option, see me(1)) will not be effect by the setting of these modes. For them to take effect, the buffers should be reloaded. These modes can be changed on a per file type basis using the command buffer-setup(3), also some file hooks override these global settings, such as the makefile(9) hook which overrides the tab mode. This indirectly executes global-mode(2) to set the required modes.

`Auto-Save Time`

Sets the length of time in seconds between buffer auto-saves, a setting of `0` or an empty string disables auto-saving. The default setting is 300 seconds or 5 minutes. This indirectly sets the auto-time(5) variable and the autosv(2m) global mode.

`Keep Undo`

If this is enabled the undo history is kept after a save allowing the undo(2) command to back-up changes beyond the last save. When clear the undo history is discarded after the buffer is saved. This indirectly sets bit 0x8000 of the $system(5) variable.

`Hide Backups`

Enables hiding MicroEmacs generated backup files. On Windows and Dos platforms the Hidden file attribute is used to hide the file, whereas on UNIX the backup file name is prepended with a '`.`'. This indirectly sets bit 0x100000 of the $system(5) variable.

`Main Menu - Enable`

Enables the top main menu bar.

`F-Type Buffer Sel`

When enabled the main File menu's Buffer selection sub-menu changes from being a simple complete list of buffers to being a list of File Types (as defined by the File Types section below). Selecting one of these file types opens a further sub-menu listing all buffers of this type; this option is useful when the current session of MicroEmacs has a large number of buffers.

`Alt Action - Esc Prfx`

If enabled the Alt key acts as a prefix 1 modifier key when no direct binding exists. By default '`A-n`' is not bound, with this bit set the key is inferred to '`esc n`' which is bound to forward-paragraph. Note that global, local and menu hot-key bindings override these. This indirectly sets bit 0x4000 of the $system(5) variable.

`Alt Action - Main Menu Hot-keys`

If enabled the main menu Alt hot-key bindings are enabled. These are dynamic bindings automatically generated from the main menu. Typically the first item in the main menu is "`File`" with a hot key of 'F', with this enabled '`A-f`' will open this menu item. Note that global and local key bindings override these. This indirectly sets bit 0x2000 of the $system(5) variable.

`Abbrev Setup`

Configures which abbreviation expansion methods are enabled by default when the expand-abbrev-handle(3) is executed. Accent enables expand-iso-accents(3), Lookback enables expand-look-back(3) and Dict'n enables expand-word(3).

`Tab To Indent`

Sets the tab(2) behavior in a buffer which has an indentation method. This indirectly sets bits `0x1000` and `0x200000` of the $system(5) variable.

`Show Modes`

Selects which modes are to be displayed on the mode-line whenever a "`%e`" token is used in the $mode-line(5) variable. This indirectly sets the $show-modes(5) variable.

## Platform - UNIX Setup

Only present on UNIX platforms using the X interface, see below for the Console setup.

`Font`

Sets the X font name to be used. This indirectly executes change-font(2) with the given font name. e.g.

`"-*-fixed-medium-r-normal--15-*-*-*-c-90-*"`

`Display Char Set`

Selects the display character set being used by the system to render the MicroEmacs window, dependent on the Font being used. The setting of this option effects the configuration of MicroEmacs's internal character maps (using command set-char-mask(2)) enabling the character sets of foreign languages to be correctly supported. It also changes the definition of variables $box-chars(5) and $window-chars(5) to their best values for the given font.

`Extend Char Set`

When enabled MicroEmacs replaces the display of characters `0x00` to `0x1f` with forms which are useful for variables $box-chars(5) and $window-chars(5) greatly improving the look of osd(2) dialogs, the scroll bars etc.

`Use Fonts`

When enabled the bold, italic, light and underline characteristics of the font will be used depending on their availability and the Color Scheme being used. This indirectly sets bit `0x10` of the $system(5) variable.

`Draw White Spaces`

Enables the drawing of visible white spaces, i.e. space, tab and new-line characters. This indirectly sets bit `0x80000` of the $system(5) variable.

`Enable Toolbar`

Enables the Toolbar - configurable, managed windows giving easy access to many features and tools. When enabled the toolbar is opened and displayed at start-up, when disabled the toolbar is not displayed but it can be opened (or closed) by simply executing the toolbar(3) command.

`Client Server`

The client/server enables the file based external macro command driver to be enabled - see Client-Server. This by default is disabled, when enabled it is used by command-line options -m and -o.

`DOS File Names`

DOS has a restricted 8.3 file naming system (i.e. "`BBBBBBBB.XXX`"), if this option is enabled the MicroEmacs 2009 will adhere to this system for auto-save and backup file names whenever possible. See $auto-time(5) for more information on the naming convention used. This indirectly sets bit 0x400 of the $system(5) variable.

`# Backups`

This option only has an effect when DOS File Names is disabled. Setting this to a number greater than zero enables multiple backup files to be created, the number determined by this value. If set to zero (or less) then only a single backup file is created. This indirectly sets the $kept-versions(5) variable.

`Ignore Files`

Sets a list extensions of files to be ignored in file completion, e.g. MicroEmacs backup files (`~`). This indirectly sets the $file-ignore(5) variable.

`Cursor Blink Rate`

Sets the cursor blink period in millisecond. The first entry box sets the cursor visible time, a setting of zero disables blinking. The second box sets the hidden time. A visible time of 600 and hidden time of 200 gives a reasonable blink cycle. This indirectly sets the $cursor-blink(5) variable.

`Fence Display`

Sets the preferred method of displaying a matching fence, a fence is one of the following brackets:

    {...}   (...)   [...]

Jumping to the opening fence only occurs when the closing brace is typed, whereas the drawing of matching fences occurs whenever the cursor is on an open fence or one character past the close fence. When this option is set to "`Never Display`" the buffer-setup(3) setting is ignored.

`Scroll Bars`

Selects the scroll bar support required. When Splitter is enabled, the first character of the scroll bar and mode-line is a split character used for splitting the window into two using the mouse. This indirectly sets the $scroll-bar(5) variable.

`Horizontal Scroll`

Selects the horizontal scrolling method used with the scroll-left(2) and scroll-right(2) commands. This indirectly sets the $scroll(5) variable.

`Vertical Scroll`

Selects the vertical scrolling method used with the forward-line(2) and backward-line(2) commands. This indirectly sets the $scroll(5) variable.

`Color Scheme`

Sets the color scheme setup macro file name which is executed at start-up. MicroEmacs by default comes with 4 color schemes. Color schemes can be created and altered using the scheme-editor(3) dialog.

## Platform - UNIX Console Setup

Only present on UNIX platforms when using the termcap interface, all the Console platform settings are kept independent of the X interface settings.

`Display Char Set`

See Platform UNIX Setup above.

`Termcap Color`

This option determines whether Termcap based colors should be used. These are typically the standard eight colors and may not be supported on all terminals. If this option is disabled Termcap fonts (such as bold) are used instead to create a primitive hi-lighting. This indirectly sets bit 0x004 of the $system(5) variable.

`Use Fonts`

See Platform UNIX Setup above.

`Draw White Spaces`

See Platform UNIX Setup above.

`Enable Toolbar`

See Platform UNIX Setup above.

`Client Server`

See Platform UNIX Setup above.

`DOS File Names`

See Platform UNIX Setup above.

`# Backups`

See Platform UNIX Setup above.

`Ignore Files`

See Platform UNIX Setup above.

`Cursor Blink Rate`

See Platform UNIX Setup above.

`Fence Display`

See Platform UNIX Setup above.

`Scroll Bars`

See Platform UNIX Setup above.

`Horizontal Scroll`

See Platform UNIX Setup above.

`Vertical Scroll`

See Platform UNIX Setup above.

`Color Scheme`

See Platform UNIX Setup above.

## Platform - Win32 Setup

Only present on Microsoft Windows based machines.

`Font Name`

Sets the windows font name and size. This indirectly executes change-font(2) with the given font name. MicroEmacs may only use a Fixed Mono Font, either an OEM font as used by the MS-DOS command line, or the more conventional ANSI fonts. The fonts are selected using the Change Font button which invokes a dialog to allow the available fonts to be selected. True-Type mono fonts such as `Courier New` or `Lucida Console` are typically used.

`Weight & Size`

Allows the size and weight of the font to be selected, specified as weight, width and height. The weight is typically 4, this corresponds to a regular weighting, 7 is bold. width is the width of the font in pixels, this may be 0 when the height is specified as negative. height is the height of the font, typically a negative value (where the width is 0), which produces a proportionally sized font, values of in the range -11 .. -14 generally produce reasonably sized fonts. The hight and width may be specified as positive values and allow explicit font dimensions to be specified, generally used to achieve a precise font size requirement.

`Fonts`

See `Use Fonts` in Platform UNIX Setup above.

`Display Char Set`

See Platform UNIX Setup above.

`Extend Char Set`

See Platform UNIX Setup above.

`Choose Font`

Opens a windows dialog allowing the user to select a font, the selection is used to configure the above font fields.

`Draw White Spaces`

See Platform UNIX Setup above.

`Capture Alt Space`

Used to enable/disable the capture and interpretation of the '`A-space`' key sequence. If this key sequence is not captured by MicroEmacs it is passed back to Windows which opens the top left window menu, allow keyboard access to Window commands like Maximize.

`Enable Toolbar`

See Platform UNIX Setup above.

`Client Server`

See Platform UNIX Setup above. Note that on windows based systems the client/server is also used by memsdev(1) to drive the editor from the Microsoft Developer environment.

`DOS File Names`

See Platform UNIX Setup above. Note that some early version of Windows '95 have problems with `~` extensions. Service release 2 fixed these problems - if you experience problems then return to 8.3 filename mode - note that MicroEmacs will still store longer file names, only the backup naming convention changes.

`# Backups`

See Platform UNIX Setup above.

`Ignore Files`

See Platform UNIX Setup above.

`Cursor Blink Rate`

See Platform UNIX Setup above.

`Fence Display`

See Platform UNIX Setup above.

`Scroll Bars`

See Platform UNIX Setup above.

`Horizontal Scroll`

See Platform UNIX Setup above.

`Vertical Scroll`

See Platform UNIX Setup above.

`Color Scheme`

See Platform UNIX Setup above.

## Platform - Win32 Console Setup

Only present on Windows NT and Win95+ platforms when using the console interface, all the Console platform settings are kept independent of the Window interface settings.

`Display Char Set`

See Platform UNIX Setup above.

`Draw White Spaces`

See Platform UNIX Setup above.

`Enable Toolbar`

See Platform UNIX Setup above.

`Client Server`

See Platform Win32 Setup above.

`DOS File Names`

See Platform Win32 Setup above.

`# Backups`

See Platform UNIX Setup above.

`Ignore Files`

See Platform UNIX Setup above.

`Cursor Blink Rate`

See Platform UNIX Setup above.

`Fence Display`

See Platform UNIX Setup above.

`Scroll Bars`

See Platform UNIX Setup above.

`Horizontal Scroll`

See Platform UNIX Setup above.

`Vertical Scroll`

See Platform UNIX Setup above.

`Color Scheme`

See Platform UNIX Setup above.

## Platform - DOS Setup

Only present on DOS machines.

`Graphic Mode #` and `Double Lines`

Sets the DOS graphics mode number and whether the number of text lines can be doubled. This indirectly executes change-font(2) with the given font name.

`Display Char Set`

See Platform UNIX Setup above.

`Double Lines`

In some graphic modes the number of text lines can be doubled via a dos terminal call, this option is worth trying if more visible text lines are required.

`Draw White Spaces`

See Platform UNIX Setup above.

`Enable Toolbar`

See Platform UNIX Setup above.

`Ignore Files`

See Platform UNIX Setup above.

`Cursor Blink Rate`

See Platform UNIX Setup above.

`Fence Display`

See Platform UNIX Setup above.

`Scroll Bars`

See Platform UNIX Setup above.

`Horizontal Scroll`

See Platform UNIX Setup above.

`Vertical Scroll`

See Platform UNIX Setup above.

`Color Scheme`

See Platform UNIX Setup above.

## Mouse

The mouse device creates keys in a similar way to regular keyboard keys and, like keyboard keysm they must be bound before they are used. MicroEmacs 2009 does not have the mouse functionality hard coded into the editor, it provides a macro interface to the mouse for ultimate flexibility and a set of default functionality which can be bound to the mouse in a variety of ways.

All the mouse controlling macros are stored in `mouse.emf` and `mouseosd.emf` although some buffers have local functionality over-rides, such as file-browser(3). The user can expand the range of mouse functionality but how this is achieved is beyond the scope of this documentation.

The user-setup dialog allows the user to configure the mouse to use the default functionality, as follows:-

`Enable Mouse`

Enables or disables the mouse, when disabled the mouse can not be used and will not generate any key events. This does not apply to UNIX Termcap systems as the mouse cut and paste operation is performed by the Xterm. This indirectly sets bit 0x010 of the $mouse(5) variable.

`Number Buttons`

Sets the number of buttons on the mouse, may be 1, 2 or 3. MicroEmacs usually obtains the correct number for the system, but sometimes this can be wrong. This entry can be used to correct this problem. For one button mice, the button is considered to be the `left` mouse button, two button mice have an `left` and `right` button. This indirectly sets the $mouse(5) variable.

`Swap Buttons`

If enabled then the `left` and `right` buttons are swapped, i.e. when the left button is pressed it executes the right button bindings. This indirectly sets bit 0x020 of the $mouse(5) variable.

`Simulate 3 Buttons`

If enabled then pressing the `left` and `right` buttons together with generate a middle button press event, this feature is for people with a 2 button mouse who want more. The two buttons must be pressed or release within 10 millisecond of each other.

The following four fields determine which mouse button binding the user wishes to view and change:-

`Button`

The mouse button, `Left`, `Right` or `Middle` for the normal buttons and `Whell Up` or `Whell Down` for the pilot wheel events.

`Modifier - Shift`

The action of the mouse can be different for every modifier key setting, if this is enabled then the binding being modified is for the Button being pressed with the Shift key held down.

`Modifier - Control`

If enabled then modifying the action when the Button is pressed with the Control key held down.

`Modifier - Alt`

If enabled then modifying the action when the Button is pressed with the Alt key held down.

The following two fields determine the functionality of the button defined by the previous four fields:-

`Bound To`

The function to be performed. The functions available depend on the type of button being bound, the following is a list of functions available for normal buttons:-

`<not bound>`

The Button is not bound.

`Drag region`

set-mark(2) is called at the pick location, until the button is dropped, the area of text between this point and the current mouse position is hi-lighted. When the mouse button is dropped, if the drop position is the same as the pick then the double click is tested for, if a double click is entered then the Select Word function is executed, otherwise the cursor is simply moved to the drop position. If the pick and drop position are different then the enclosed text is copied to the kill buffer using copy-region(2). Note this behaviour is altered by the setting of MS Shift Region on the Start-Up page.

`Copy Rectangle`

One corner of a rectangle is defined on the pick and the diagonally opposite corner is defined when the button is dropped, the text enclosed within the rectangle is copied to the kill buffer using copy-rectangle(3).

`Kill Rectangle`

The same as `Copy Rectangle` except the text is killed using kill-rectangle(2).

`Select Word`

Also executed from a double click bound to Drag Region, Select Word copies the word under the mouse into the kill buffer using copy-region(2), unless a double click is entered in which case the whole line is copied.

`Default Pan`

While the mouse button is pressed the current buffer pans with any mouse movement.

`MS Pan`

MicroSoft style Pan; while the mouse button is pressed the current buffer pans vertically according to the mouse position relative to the point where the button was pressed.

`Find Buffer`

Opens a buffer selection dialog, the buffer selected is displayed in the window.

`Find Tag`

Executes find-tag(2) with the word currently under the mouse.

`Find ME Help`

Executes help-item(2) with the word currently under the mouse.

`Undo`

Simply executes undo(2) without moving the cursor to the position of the mouse. Subsequent calls to this binding will undo multiple edits.

`No Move Yank`

Simply executes yank(2) without moving the cursor to the position of the mouse.

`Replace Yank`

Simplar to "`No move yank`" except when the is a current region (typically defined by "`Drag region`" above), in which case the region is first deleted.

`Move to Yank`

Moves the cursor to the current position of the mouse and executes yank(2).

`Reyank`

Executes reyank(2) without moving the cursor. Note, to enable this functionality some sanity checks have had to be removed, as a result it should not be misused as seeming bizarre things can occur.

`Rectangle Yank`

Moves the cursor to the current position of the mouse and executes yank-rectangle(2).

`Collapse Current`

Toggles the collapse status of the current block, only applicable in buffers supporting collapse-current(3), such as c and emf files.

`Collapse All`

Toggles the collapse status of the whole buffer, opening or closing all found blocks. Only applicable in buffers supporting collapse-all(3), such as c and emf files.

`Main Menu`

Simply opens the main menu from any where on the screen.

`Context Menu`

Opens a context sensitive menu dependent on the position of the mouse, i.e. opens the main menu if over it, opens a different menu when executed on the mode-line etc.

The following is a list of functions available for pilot wheel events:-

`Not bound`

The Button is not bound.

`Scroll Up 1 Line` ....

Scrolls the current buffer by the specified amount.

`Handle Scroll Bars`

When enabled, if the button is pressed with the mouse on the main menu, a scroll bar or mode-line the standard action is performed, such as opening the main menu or scrolling up or down the window etc. The bound To command is only called if the mouse is in a main window. If disabled, the Bound To command is always called.

`Defaults`

Rests the mouse configuration to the default settings.

## File Types

The file type list is used in two places, the main menu's `File => Quick Open` sub-menu list and the `File => Open => File Type` list. In each case the file type "`All Files`" is automatically added. The user can add, remove and change the list of file types by using this dialog. An entry can be selected for editing or deletion by simply selecting it with the left mouse button. A new entry may be added by simply filling in the 3 entry boxes and selecting Add. Items in the Dialog are as follows.

`No.`

The file type entry number. A new entry is always added to the end of the list, ignoring this value. The position of an existing entry can be changed by altering this field to the desired position and selecting the `Change` button to move it to its new position.

`Name`

The file type name, the string printed in the sub-menus.

`File Mask List`

A comma ('`,`') separated list of file masks which match the file type, e.g. for C and C++ source files use "`*.c,*.cc,*.cpp`".

`Add`

Adds a new entry to the list, only the Name and FileMask List fields are used, the No. field is ignored as the new entry is always added to the end of the list. The position can be altered by using the Change button.

`Change`

Alters an existing file type entry, all 3 fields must be set.

`Delete`

Deletes the current entry number, only the No. entry is used.

## Tools

The Tools dialog allows the user to configure up to 10 system commands, or tools, which can be executed via MicroEmacs Main Tools Menu. The dialog configures the user's registry for the command execute-tool(3) to be used. The execution of a tool can also be bound to a key, see execute-tool for more information.

The top half of the dialog consists of the 10 Tools (`0`-`9`) configuration buttons. Selecting one of these selects the current tool to be configured, the current tool is shown by the title in the middle of the dialog.

The lower half of the dialog configures the currently selected tool, as follows:-

`Tool Name`

Sets the displayed name of the tool. The tool name is used in the buttons in the top half of this dialog and in the MicroEmacs Main Tools Menu.

`Command Line`

Sets the system command-line to be launched whenever the tool is executed, the following special tokens may be used in the command-line which are substituted at execution:-

%ff

The current buffer's full file name, including the path.

%fp

The current buffer's file path.

%fn

The current buffer's file name without the path.

%fb

The current buffer's file base name, i.e. the file name without the path or the extension.

%fe

The current buffer's file extension with the '.' (e.g. ".emf"), set to the empty string if the file name does not have an extension.

Note that "%ff" is always the same as "%fp%fn" and "%fp%fb%fe". If any of these tokens are used, the tool will fail to execute if the current buffer does not have a file name.

`Run Concurrently`

If enabled, when the tool is executed the command is launched and run concurrently, allowing the user to continue working in MicroEmacs during the tools execution. This option is not available for all versions on MicroEmacs and forces the output to be captured. Enabling this option will force the use of command ipipe-shell-command(2) to launch the tool.

`Capture Output`

If enabled any output produced from the execution of the tool will be captured and inserted into a new buffer. When enabled the following two items, `Buffer` and `Hide`, may be specified. When disabled the command used to execute the tool is shell-command(2), otherwise the command used is either pipe-shell-command(2) or ipipe-shell-command(2) depending on the setting of `Run Concurrently`.

`Buffer`

Specifies the buffer name the captured output should be dumped to, this option is only visible when `Capture Output` is enabled. The following special tokens may be used in the buffer name which are substituted at execution:-

%fn

The current buffer's file name without the path, set to the buffer name if the current buffer does not have a file name.

%fb

The current buffer's file base name, i.e. the file name without the path or the extension. Set to the buffer name if the current buffer does not have a file name.

%fe

The current buffer's file extension with the '.' (e.g. ".emf"), set to the empty string if the current buffer does not have a file name or it does not have an extension.

Note that "%fn" is always the same as "%fb%fe". Default buffer name when this field is left empty is "*command*", or "*icommand*" if `Run Concurrently` is enabled.

`Hide`

When enabled the tool output capture buffer is hidden, this option is only visible when `Capture Output` is enabled.

Current Buffer - `Save` and `Prompt Before Saving`

If the current buffer has been edited, enabling `Save Current Buffer` will automatically save the current buffer before executing the tool. This is particularly useful when the tool operates on the current buffer's file (e.g. compiles the file). If `Prompt` is also enabled the user will be prompted before the file is saved.

All Buffers - `Save` and `Prompt Before Saving`

If `Save All Buffers` is enabled, all edited buffers will be automatically saved before executing the tool. This is particularly useful when the tool may operate on multiple files (e.g. compilation of a project). If `Prompt` is also enabled the user will be prompted before each file is saved.

## E-Mail

MicroEmacs 2009 provides a simple E-Mail manager, see vm(3) for more information and example entries. It must be stressed that vm has only been tested in one environment, caution should be used as system differences may cause problems, such as loss of data, which the author does not except any responsibility for.

The E-Mail Setup dialog configures a user to use part or all of the vm E-Mail manager, as follows:-

## Platform ALL Mail Setup

The following field is used for both sending and receiving mail:

`User Mail Dir`

Sets the user mail-box directory where all files are to be found and stored (except usually the Incoming Mail box). The value of this field is platform independent and must be setup for each one.

The following fields are used for sending mail:

`Send Mail Signature`

Sets the signature file name which is inserted at the bottom of every out-going email message, if empty the no signature is inserted. The value of this field is platform independent, is value use by all. The file must be located in the User Mail Dir and no path entered for it to work across platforms.

`Carbon-Copy File`

Sets the sent-mail carbon-copy file, creating the "`Fcc:`" line of the mail buffer. All out-going emails are appended to the end of this file if the "`Fcc:`" line is not altered. If this field is left empty then no "`Fcc:`" line is created. The value of this field is platform independent, the file must be located in the User Mail Dir.

`Insert Data (^C^I)`

Sets the first embedded data command line, bound to "`C-c C-I`". The value of this field is platform dependent.

`Insert Data (^C^Z)`

Sets the second embedded data command line, bound to "`C-c C-z`". The value of this field is platform dependent.

`Send Mail Command`

Sets the command-line used for sending email messages. The value of this field is platform dependent.

The following fields are used for receiving mail:

`Check for mail`

Sets the time interval between the automatic checking for incoming mail in seconds, when set to 0 the automatic checking is disabled. When enabled, the check is performed by mail-check(3) which also sends any queued mail and gets any new mail if the Get Mail Command is used. The value of this field is platform dependent.

`Get Mail Command`

The command used to get new mail from the server, if empty it is assumed the Incoming Mail Box is automatically updated by the system. If used the command must append new mail to the end of the Incoming Mail Box specified below. The value of this field is platform dependent.

`Incoming Mail Box`

Sets the incoming mail box file which new incoming mail is appended to, either automatically by the system or by the Get Mail Command. The value of this field is platform dependent.

`VM Main In Box`

Sets the main current mail box, or inbox. The value of this field is platform independent, the file must be located in the User Mail Dir.

`VM Gets Mail`

When enabled, executing the command vm will not only create the mail box windows, it will also get and process any new mail. When disabled only the vm '`g`' command can be used to get and process new mail.

`Mime Data Extract`

Sets the command-line used for extracting Mime encoded embedded data. The value of this field is platform dependent.

`Uuencode Extract`

Sets the command-line used for extracting Uuencoded embedded data. The value of this field is platform dependent.

`Auto-Archive Setup`

Sets up the auto-archive of messages in the current inbox to other mail boxes.

## NOTES

user-setup is a macro using osd(2), defined in `userstp.emf`.

## SEE ALSO

User Profiles, Company Profiles, Installation, buffer-setup(3), change-scheme(3), scheme-editor(3), $user-name(5), $user-path(5).

(c) Copyright JASSPA 2009
Last Modified: 2009/10/03
Generated On: 2009/10/12

</HMTL>