NAME¶
lpe - Lightweight programmer's editor
SYNOPSIS¶
lpe [ --help | --version ]
lpe [--mode <mode>] [ -- ]
file
DESCRIPTION¶
Lpe is a small, fast, visual text editor designed to make editing code
easier. It provides simultaneously all the features that may be required in a
good code editor while preserving a light and intuitive feel that makes it
nice to use.
Options¶
- --help
- Prints a brief description of program usage and terminates.
This must be the first option to lpe, and all other options are
ignored.
- --version
- Prints a message indication the program version and
terminates. This must be the first option to lpe, and all other
options are ignored.
- --mode
- Sets the buffer mode to the one specified, instead of
scanning for a suitable mode from those available.
- --
- Treat future arguments as file names, not options. This
allows lpe to be used to edit files starting with the - character.
NOTES¶
What follows are the control key functions for lpe. Arrow keys, home, end,
backspace, delete and the like all do as they would be expected to do. Some
control keys are bound to the same function as some standard movement keys,
such as home or page down. This is because the more intuitive keys may not be
available on some systems.
Command Keys¶
- Ctrl-Q
- Move cursor to beginning of line (alternative to Home)
- Ctrl-W
- Move cursor to end of line (alternative to End)
- Ctrl-R
- Scroll one screen up (alternative to PgUp)
- Ctrl-T
- Scroll one screen down (alternative to PgDn)
- Ctrl-O
- Move to the next word
- Ctrl-P
- Move to the previous word
- Ctrl-K
- Kill the current line
- Ctrl-Y or Ctrl-U
- Insert the most recent block of killed lines
- Ctrl-S
- Search for a specified string in the file
- Ctrl-A
- Search again for the last search query
- Ctrl-F Ctrl-O
- Open a new file to replace the current buffer
- Ctrl-F Ctrl-S
- Save the buffer to disk
- Ctrl-F Ctrl-A
- Save to disk with an alternate file name
- Ctrl-F Ctrl-R
- Read a file and insert it at the current cursor
position
- Ctrl-F Ctrl-E
- Pretend that a buffer hasn't been modified
- Ctrl-B Ctrl-S
- Set the mode of the current buffer
- Ctrl-B Ctrl-T
- Toggle between hard and soft tabs for this buffer
- Ctrl-B Ctrl-A
- Toggle automatic indentation of this buffer
- Ctrl-G Ctrl-A
- Go to the first line of the buffer
- Ctrl-G Ctrl-S
- Go to the last line of the buffer
- Ctrl-G Ctrl-G
- Go to a specific line number of the buffer
- Ctrl-N Ctrl-R
- Enter a value for the command repeater
- Ctrl-N Ctrl-T
- Multiply the command repeater value by four
- Ctrl-N Ctrl-O
- Start or stop recording a macro
- Ctrl-N Ctrl-P
- Play back the last recorded macro
- Ctrl-V Ctrl-V
- Pass the entire buffer through a shell command
- Ctrl-V Ctrl-A
- Pass the entire buffer through an awk script
- Ctrl-V Ctrl-S
- Pass the entire buffer through a sed script
- Ctrl-V Ctrl-B
- Pass several lines of the buffer through a shell
command
- Ctrl-V Ctrl-D
- Pass several lines of the buffer through an awk script
- Ctrl-V Ctrl-F
- Pass several lines of the buffer through a sed script
- Ctrl-D
- Perform an internal debug command
- Ctrl-X
- Write the buffer to disk and exit
- <interrupt>
- Exit without writing to disk
- Ctrl-Z
- Suspend the editor and escape to a prompt
- Ctrl-L
- Erase and redraw the entire screen
<interrupt> refers to your terminal's interrupt key. This is
often Ctrl-C, but can vary between terminals. Ctrl-Z, on the other hand,
is fixed, regardless of the normal stop key for your terminal.
MODULES¶
Although
lpe is meant to be small, it has the capability of performing
more advanced actions through a feature known as buffer modes. Buffer modes
allow
lpe to act differently according to the programming language in
the current buffer. They are implemented through language modules, which are
loaded at run-time by lpe to handle buffers that they apply to.
All language modules should be placed in a module repository directory. These
directories are set by the
LPE_MODULE_PATH environment variable, which
should be a colon-separated list of directories (similar to PATH). If this
variable is not set, then lpe scans for modules in the following locations,
and in this order:
$HOME/.lpe /usr/local/lib/lpe /usr/lib/lpe /etc/lpe
Note that the /etc/lpe directory is old, obsolete, and non-standard. It should
not be used to hold modules. As modules are binary files and are specific to
the architecture that uses them, they should be properly placed in the lib
directories listed above.
These locations are scanned at run-time, and any regular files in them are
interpreted as potential language modules for use by lpe. Subdirectories will
not be scanned. A buffer will be assigned the first mode found that applies to
that file, so for example a mode in a user's home directory will override one
in the system-wide lib directory.
SEE ALSO¶
emacs(1),
pico(1)
AUTHOR¶
Chris Smith, cd_smith@ou.edu
BUGS¶
Lots of 'em -- see the BUGS file in the distribution for a partial list. I am
not planning on updating this man page often enough to keep up with the bug
list, so I won't even try to list bugs here.