Next: License Up: (dir)
The Emacs Editor ****************
Emacs is the extensible, customizable, self-documenting real-time
display editor. This Info file describes how to edit with Emacs and
some of how to customize it, but not how to extend it. It corresponds
to Lucid GNU Emacs version 19.10.
- The GNU General Public License gives you permission
to redistribute GNU Emacs on certain terms; and also
explains that there is no warranty.
- How to get Emacs.
- An introduction to Emacs concepts.
- The glossary.
- What's GNU? Gnu's Not Unix!
Indices, nodes containing large menus
- Key Index
- An item for each standard Emacs key sequence.
- Command Index
- An item for each command name.
- Variable Index
- An item for each documented variable.
- Concept Index
- An item for each concept.
Important General Concepts
- How to interpret what you see on the screen.
- Keyboard gestures Emacs recognizes.
- Pull-down Menus
The Lucid Emacs Pull-down Menus available under X.
- Entering Emacs
Starting Emacs from the shell.
- Stopping or killing Emacs.
- Command Switches
Hairy startup options.
Fundamental Editing Commands
- The most basic editing commands.
- Undoing recently made changes in the text.
- Entering arguments that are prompted for.
- Invoking commands by their names.
- Commands for asking Emacs about its commands.
Important Text-Changing Commands
- The mark: how to delimit a "region" of text.
- Mouse Selection
Selecting text with the mouse.
- Additional Mouse Operations
Other operations available from the mouse.
- Killing text.
- Recovering killed text. Moving text.
- Using X Selections
Using primary selection, cut buffers, and highlighted regions.
- Accumulating Text
Other ways of copying text.
- Operating on the text inside a rectangle on the screen.
- Saving a text string or a location in the buffer.
- Controlling what text is displayed.
- Finding or replacing occurrences of a string.
- Commands especially useful for fixing typos.
Larger Units of Text
- All about handling files.
- Multiple buffers; editing several files at once.
- Viewing two pieces of text at once.
- Major Modes
- Text mode vs. Lisp mode vs. C mode ...
- Editing the white space at the beginnings of lines.
- Commands and modes for editing English.
- Commands and modes for editing programs.
- Compiling, running and debugging programs.
- How to define text abbreviations to reduce
the number of characters you must type.
- Editing pictures made up of characters
using the quarter-plane screen model.
- Sending Mail
- Sending mail in Emacs.
- Reading mail in Emacs.
The calendar and diary facilities.
- Sorting lines, paragraphs or pages within Emacs.
- Executing shell commands from Emacs.
- Restricting display and editing to a portion
of the buffer.
- Printing buffers or regions.
- Recursive Edit
A command can allow you to do editing
"within the command". This is called a
`recursive editing level'.
- Dissociated Press
- Dissociating text for fun.
- A different kind of dissociation.
- Various games and hacks.
- Emulating some other editors with Emacs.
- Modifying the behavior of Emacs.
Recovery from Problems.
- Quitting and aborting.
- What to do if Emacs is hung or malfunctioning.
- How and when to report a bug.
Here are some other nodes which are really inferiors of the ones
already listed, mentioned here so you can get to them in one step:
-- The Detailed Node Listing --
The Organization of the Screen
- The place in the text where editing commands operate.
- Echo Area
- Short messages appear at the bottom of the screen.
- Mode Line
- Interpreting the mode line.
- Emacs under X
- Some information on using Emacs under the X
- Intro to Keystrokes
- Keystrokes as building blocks of key sequences.
- Representing Keystrokes
- Using lists of modifiers and keysyms to
- Key Sequences
- Combine key strokes into key sequences you can
bind to commands.
- String Key Sequences
- Available for upward compatibility.
- Meta Key
- Using ESC to represent Meta
- Super and Hyper Keys
- Adding modifier keys on certain keyboards.
- Character Representation
- How characters appear in Emacs buffers.
- How commands are bound to key sequences.
- File Menu
- Items on the File menu.
- Edit Menu
- Items on the Edit menu.
- Buffers Menu
- Information about the Buffers menu
- Help Menu
- Items on the Help menu.
- Menu Customization
- Adding and removing menu items and related
Basic Editing Commands
- Blank Lines
- Commands to make or delete blank lines.
- Continuation Lines
- Lines too wide for the screen.
- Position Info
- What page, line, row, or column is point on?
- Numeric arguments for repeating a command.
- Minibuffer FileEntering file names with the minibuffer.
- Minibuffer EditHow to edit in the minibuffer.
- An abbreviation facility for minibuffer input.
- Re-executing commands that used the minibuffer.
The Mark and the Region
- Setting Mark
- Commands to set the mark.
- Using Region
- Summary of ways to operate on contents of the region.
- Marking Objects
- Commands to put region around textual units.
- Mark Ring
- Previous mark positions saved so you can go back there.
- Kill Ring
- Where killed text is stored. Basic yanking.
- Appending Kills
- Several kills in a row all yank together.
- Earlier Kills
- Yanking something killed some time ago.
Using X Selections
- X Clipboard Selection
- Pasting to the X clipboard.
- X Selection Commands
- Other operations on the selection.
- X Cut Buffers
- X cut buffers are available for compatibility.
- Active Regions
- Using zmacs-style highlighting of the
- Saving positions in registers.
- Saving text in registers.
- Saving rectangles in registers.
Controlling the Display
- Moving text up and down in a window.
- Horizontal Scrolling
- Moving text left and right in a window.
- Selective Display
- Hiding lines with lots of indentation.
- Display Vars
- Information on variables for customizing display.
Searching and Replacement
- Incremental Search
- Search happens as you type the string.
- Non-Incremental Search
- Specify entire string and then search.
- Word Search
- Search for sequence of words.
- Regexp Search
- Search for match for a regexp.
- Syntax of regular expressions.
- Search Case
- To ignore case while searching, or not.
- Search, and replace some or all matches.
- Other Repeating Search
- Operating on all matches for some regexp.
- Unconditional Replace
- Replacing all matches for a string.
- Regexp Replace
- Replacing all matches for a regexp.
- Replacement and Case
- How replacements preserve case of letters.
- Query Replace
- How to use querying.
Commands for Fixing Typos
- Kill Errors
- Commands to kill a batch of recently entered text.
- Exchanging two characters, words, lines, lists...
- Fixing Case
- Correcting case of last word entered.
- Apply spelling checker to a word, or a whole file.
- File Names
- How to type and edit file name arguments.
- Visiting a file prepares Emacs to edit the file.
- Saving makes your changes permanent.
- Reverting cancels all the changes not saved.
- Auto Save
- Auto Save periodically protects against loss of data.
- Listing the contents of a file directory.
- "Editing" a directory to delete, rename, etc.
the files in it.
- Misc File Ops
- Other things you can do on files.
- How Emacs saves the old version of your file.
- How Emacs protects against simultaneous editing
of one file by two users.
- Backup NamesHow backup files are named;
Choosing single or numbered backup files.
- Backup DeletionEmacs deletes excess numbered backups.
- Backup CopyingBackups can be made by copying or renaming.
Auto-Saving: Protection Against Disasters
- Auto Save Files
- Auto Save Control
- Recovering text from auto-save files.
Dired, the Directory Editor
- Dired EnterHow to invoke Dired.
- Dired EditEditing the Dired buffer.
- Dired DeletionDeleting files with Dired.
- Dired ImmedOther file operations through Dired.
Using Multiple Buffers
- Select Buffer
- Creating a new buffer or reselecting an old one.
- List Buffers
- Getting a list of buffers that exist.
- Misc Buffer
- Renaming; changing read-onliness; copying text.
- Kill Buffer
- Killing buffers you no longer need.
- Several Buffers
- How to go through the list of all buffers
and operate variously on several of them.
- Basic Window
- Introduction to Emacs windows.
- Split Window
- New windows are made by splitting existing windows.
- Other Window
- Moving to another window or doing something to it.
- Pop Up Window
- Finding a file or buffer in another window.
- Change Window
- Deleting windows and changing their sizes.
- Choosing Modes
- How major modes are specified or chosen.
- Indentation Commands
- Various commands and techniques for indentation.
- Tab Stops
- You can set arbitrary "tab stops" and then
indent to the next tab stop when you want to.
- Just Spaces
- You can request indentation using just spaces.
Commands for Human Languages
- Text Mode
- The major modes for editing text files.
- Nroff Mode
- The major mode for editing input to the formatter nroff.
- TeX Mode
- The major modes for editing input to the formatter TeX.
- Outline Mode
- The major mode for editing outlines.
- Moving over and killing words.
- Moving over and killing sentences.
- Moving over paragraphs.
- Moving over pages.
- Filling or justifying text
- Changing the case of text
- TeX EditingSpecial commands for editing in TeX mode.
- TeX PrintCommands for printing part of a file with TeX.
- Outline FormatWhat the text of an outline looks like.
- Outline MotionSpecial commands for moving through outlines.
- Outline VisibilityCommands to control what is visible.
- Auto Fill
- Auto Fill mode breaks long lines automatically.
- Fill Commands
- Commands to refill paragraphs and center lines.
- Fill Prefix
- Filling when every line is indented or in a comment, etc.
- Program Modes
- Major modes for editing programs.
- Expressions with balanced parentheses.
There are editing commands to operate on them.
- Each program is made up of separate functions.
There are editing commands to operate on them.
- Adjusting indentation to show the nesting.
- Insertion of a close-delimiter flashes matching open.
- Inserting, illing and aligning comments.
- Balanced Editing
- Inserting two matching parentheses at once, etc.
- Lisp Completion
- Completion on symbol names in Lisp code.
- Getting documentation of functions you plan to call.
- Change Log
- Maintaining a change history for your program.
- Go direct to any function in your program in one
command. Tags remembers which file it is in.
- Fortran mode and its special features.
Indentation for Programs
- Basic Indent
- Multi-line Indent
- Commands to reindent many lines at once.
- Lisp Indent
- Specifying how each Lisp function should be indented.
- C Indent
- Choosing an indentation style for C code.
- Tag Syntax
- Create Tag Table
- Select Tag Table
- Find Tag
- Tags Search
- Tags Stepping
- List Tags
- Fortran MotionMoving point by statements or subprograms.
- Fortran IndentIndentation commands for Fortran.
- Fortran CommentsInserting and aligning comments.
- Fortran ColumnsMeasuring columns for valid Fortran.
- Fortran AbbrevBuilt-in abbrevs for Fortran keywords.
- ForIndent CommandsCommands for indenting Fortran.
- ForIndent NumHow line numbers auto-indent.
- ForIndent ConvConventions you must obey to avoid trouble.
- ForIndent VarsVariables controlling Fortran indent style.
Compiling and Testing Programs
- Compiling programs in languages other than Lisp
(C, Pascal, etc.)
- Lisp ModesVarious modes for editing Lisp programs, with
different facilities for running the Lisp programs.
- Lisp LibrariesCreating Lisp programs to run in Emacs.
- Lisp EvalExecuting a single Lisp expression in Emacs.
- Lisp DebugDebugging Lisp programs running in Emacs.
- Lisp InteractionExecuting Lisp in an Emacs buffer.
- External Lisp
- Communicating through Emacs with a separate Lisp.
- Loading libraries of Lisp code into Emacs for use.
- Compiling Libraries
- Compiling a library makes it load and run faster.
- Converting Mocklisp to Lisp so GNU Emacs can run it.
- Defining Abbrevs
- Defining an abbrev, so it will expand when typed.
- Expanding Abbrevs
- Controlling expansion: prefixes, canceling expansion.
- Editing Abbrevs
- Viewing or editing the entire list of defined abbrevs.
- Saving Abbrevs
- Saving the entire list of abbrevs for another session.
- Dynamic Abbrevs
- Abbreviations for words already in the buffer.
- Basic Picture
- Basic concepts and simple commands of Picture Mode.
- Insert in Picture
- Controlling direction of cursor motion
after "self-inserting" characters.
- Tabs in Picture
- Various features for tab stops and indentation.
- Rectangles in Picture
- Clearing and superimposing rectangles.
- Mail FormatFormat of the mail being composed.
- Mail HeadersDetails of allowed mail header fields.
- Mail ModeSpecial commands for editing mail being composed.
Reading Mail with Rmail
- Rmail ScrollingScrolling through a message.
- Rmail MotionMoving to another message.
- Rmail DeletionDeleting and expunging messages.
- Rmail InboxHow mail gets into the Rmail file.
- Rmail FilesUsing multiple Rmail files.
- Rmail OutputCopying message out to files.
- Rmail LabelsClassifying messages by labeling them.
- Rmail SummarySummaries show brief info on many messages.
- Rmail ReplySending replies to messages you are viewing.
- Rmail EditingEditing message text and headers in Rmail.
- Rmail DigestExtracting the messages from a digest message.
- Rmail Make Summary
- Making various sorts of summaries.
- Rmail Summary Edit
- Manipulating messages from the summary.
The Calendar and the Diary
- Calendar Motion
- Moving through the calendar; selecting a date.
- Scroll Calendar
- Bringing earlier or later months onto the screen.
- Mark and Region
- Remembering dates, the mark ring.
- General Calendar
- Conveniences for moving about.
- Displaying dates of holidays.
- Displaying local times of sunrise and sunset.
- Lunar Phases
- Displaying phases of the moon.
- Other Calendars
- Converting dates to other calendar systems.
- Displaying events from your diary.
- Calendar Customization
- Altering the behavior of the features above.
Movement in the Calendar
- Calendar Unit Motion
- Moving by days, weeks, months, and years.
- Move to Beginning or End
- Moving to start/end of weeks, months, and years.
- Specified Dates
- Moving to the current date or another specific date.
- Diary Commands
- Viewing diary entries and associated calendar dates.
- Format of Diary File
- Entering events in your diary.
- Special Diary Entries
- Anniversaries, blocks of dates, cyclic entries, etc.
Customizing the Calendar and Diary
- Calendar Customizing
- Defaults you can set.
- Holiday Customizing
- Defining your own holidays.
- Date Display Format
- Changing the format.
- Time Display Format
- Changing the format.
- Daylight Savings
- Changing the default.
- Diary Customizing
- Defaults you can set.
- Hebrew/Islamic Entries
- How to obtain them.
- Fancy Diary Display
- Enhancing the diary display, sorting entries.
- Included Diary Files
- Sharing a common diary file.
- Sexp Diary Entries
- Fancy things you can do.
- Appt Customizing
- Customizing appointment reminders.
Running Shell Commands from Emacs
- Single Shell
- How to run one shell command and return.
- Interactive Shell
- Permanent shell taking input via Emacs.
- Shell Mode
- Special Emacs commands used with permanent shell.
Emulating Other Editors
- evi Mode
- Brief discussion of evi, the vi emulation mode within Lucid Emacs
- Minor Modes
- Each minor mode is one feature you can turn on
independently of any others.
- Many Emacs commands examine Emacs variables
to decide what to do; by setting variables,
you can control their functioning.
- Keyboard Macros
- A keyboard macro records a sequence of keystrokes
to be replayed with a single command.
- Key Bindings
- The keymaps say what command each key runs.
By changing them, you can "redefine keys".
- The syntax table controls how words and expressions
- Init File
- How to write common customizations in the `.emacs'
- Audible Bell
- Changing how Emacs sounds the bell.
Changing the fonts and colors of a region of text.
- Examining or setting one variable's value.
- Edit Options
- Examining or editing list of all variables' values.
- Per-buffer values of variables.
- File Variables
- How files can specify variable values.
- Basic Kbd Macro
- Defining and running keyboard macros.
- Save Kbd Macro
- Giving keyboard macros names; saving them in files.
- Kbd Macro Query
- Keyboard macros that do different things each use.
Customizing Key Bindings
- Definition of the keymap data structure.
Names of Emacs's standard keymaps.
- How to redefine one key's meaning conveniently.
- Disabling a command means confirmation is required
before it can be executed. This is done to protect
beginners from surprises.
The Syntax Table
- Syntax EntryWhat the syntax table records for each character.
- Syntax ChangeHow to change the information.
The Init File, `~/.emacs'
- Init Syntax
- Syntax of constants in Emacs Lisp.
- Init Examples
- How to do some things with an init file.
- Terminal Init
- Each terminal type can have an init file.
Dealing with Emacs Trouble
- Stuck Recursive
- `[...]' in mode line around the parentheses.
- Screen Garbled
- Garbage on the screen.
- Text Garbled
- Garbage in the text.
- Unasked-for Search
- Spontaneous entry to incremental search.
- Emergency Escape
- Emergency escape--
What to do if Emacs stops responding.
- Total Frustration
- When you are at your wits' end.
automatically generated by info2www