Lugaru's Epsilon
Programmer's
Editor

Context:
Epsilon User's Manual and Reference
   . . .
   Getting Started
      Windows Installation
      Unix Installation
      Mac OS X Installation
      . . .
      File Inventory
   General Concepts
      . . .
      Window Concepts
      Epsilon's Screen Layout
      Modes in Epsilon
      Binding Commands
      Numeric Arguments
      . . .
   Commands by Topic
      Getting Help
      Moving Around
      Changing Text
      . . .
      Miscellaneous
   . . .

Previous   Up    Next
Epsilon's Screen Layout  General Concepts   Binding Commands


Epsilon User's Manual and Reference > General Concepts >

Modes in Epsilon

When you edit a C program, your editor should behave somewhat differently than when you write a letter, or edit a Lisp program, or edit some other kind of file.

For example, you might want the third function key to search forward for a comment in the current buffer. Naturally, what the editor should search for depends on the programming language in use. In fact, you might have PHP in the top window and C++ in the bottom window.

To get the same key (in our example, the third function key) to do the right thing in either window, Epsilon allows each buffer to have its own interpretation of the keyboard.

We call such an interpretation a mode. Epsilon comes with several useful modes built in, and you can add your own using the Epsilon Extension Language (otherwise known as EEL, pronounced like the aquatic animal).

Epsilon uses the mode facility to provide the dired command, which stands for "directory edit". The dired command displays a directory listing in a buffer, and puts that buffer in dired mode. Whenever the current window displays that buffer, several special keys do things specific to dired mode. For example, the "e" key displays the file listed on the current line of the directory listing, and the "n" key moves down to the next line of the listing. See Directory Editing for a full description of dired mode.

Epsilon also provides C mode, which knows about several C indenting styles (see C Mode) and is used for all C-like languages. Fundamental mode is a general-purpose editing mode used for scratch buffers and plain text files. And there are many other modes, some associated with specific commands (like hex mode, diff mode, or grep mode) and many more supporting individual programming languages or other file types. See the section in Language Modes.

Almost every mode has an associated command, named after the mode, that puts the current buffer in that mode. The c-mode and fundamental-mode commands put the current buffer into those modes, for instance.

Press F1 m to display help on the current buffer's major mode.

The mode name that appears in a mode line suggests the keyboard interpretation active for the buffer displayed by that window. When you start Epsilon with no particular file to edit, Epsilon uses Fundamental mode, so the word "Fundamental" appears in the mode line. Other words may appear after the mode name to signal changes, often changes particular to that buffer. We call these minor modes.

For example, the auto-fill-mode command sets up a minor mode that automatically types a <Return> for you when you type near the end of a line. (See Formatting Text.) It displays "Fill" in the mode line, after the name of the major mode. A read-only buffer display "RO" to indicate that you won't be able to modify it. There is always exactly one major mode in effect for a buffer, but any number of minor modes may be active. Epsilon lists all active minor modes after the major mode's name.

Here are some common minor modes:

Fill
indicates auto-filling is in effect for the current buffer. See Formatting Text.

RO
indicates the buffer is read-only. See Read-Only Files.

Pager
is similar to RO, indicating the buffer is read-only and that <Space> and <Backspace> page forward and back, but this behavior isn't conditioned on the readonly-pages variable as read-only mode's is.

Def
indicates Epsilon is defining a keyboard macro. See Keyboard Macros.

Susp
indicates defining or running a keyboard macro has been suspended. See Keyboard Macros.

Narrow
indicates only a section of the buffer is being displayed, and the rest has been hidden. See Miscellaneous.

Sp
indicates Epsilon will highlight misspelled words in the current buffer. See Spell Checking.

Along with any minor modes, Epsilon will sometimes also display the name of a type of file translation (one of DOS, Binary, Unix, or Mac). See Line Translation. It may also display the name of an encoding, such as UTF-8, OEM, or windows-1258. See Unicode Features.



Previous   Up    Next
Epsilon's Screen Layout  General Concepts   Binding Commands


Lugaru Copyright (C) 1984, 2012 Lugaru Software Ltd. All Rights Reserved.