GNU Emacs Manual
Preface
Distribution
GNU GENERAL PUBLIC LICENSE
Preamble
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
How to Apply These Terms to Your New Programs
Introduction
The Organization of the Screen
Point
The Echo Area
The Mode Line
Characters, Keys and Commands
Keyboard Input
Keys
Keys and Commands
Character Set for Text
Entering and Exiting Emacs
Exiting Emacs
Basic Editing Commands
Inserting Text
Changing the Location of Point
Erasing Text
Files
Help
Blank Lines
Continuation Lines
Cursor Position Information
Numeric Arguments
Undoing Changes
The Minibuffer
Minibuffers for File Names
Editing in the Minibuffer
Completion
Completion Example
Completion Commands
Strict Completion
Completion Options
Minibuffer History
Repeating Minibuffer Commands
Running Commands by Name
Help
Documentation for a Key
Help by Command or Variable Name
Apropos
Keyword Search for Lisp Libraries
Other Help Commands
The Mark and the Region
Setting the Mark
Transient Mark Mode
Operating on the Region
Commands to Mark Textual Objects
The Mark Ring
The Global Mark Ring
Killing and Moving Text
Deletion and Killing
Deletion
Killing by Lines
Other Kill Commands
Yanking
The Kill Ring
Appending Kills
Yanking Earlier Kills
Accumulating Text
Rectangles
Registers
Saving Positions in Registers
Saving Text in Registers
Saving Rectangles in Registers
Saving Window Configurations in Registers
Keeping File Names in Registers
Bookmarks
Controlling the Display
Scrolling
Horizontal Scrolling
Selective Display
European Character Set Display
Optional Display Features
Variables Controlling Display
Searching and Replacement
Incremental Search
Slow Terminal Incremental Search
Nonincremental Search
Word Search
Regular Expression Search
Syntax of Regular Expressions
Searching and Case
Replacement Commands
Unconditional Replacement
Regexp Replacement
Replace Commands and Case
Query Replace
Other Search-and-Loop Commands
Commands for Fixing Typos
Killing Your Mistakes
Transposing Text
Case Conversion
Checking and Correcting Spelling
File Handling
File Names
Visiting Files
Saving Files
Backup Files
Single or Numbered Backups
Automatic Deletion of Backups
Copying vs. Renaming
Protection against Simultaneous Editing
Reverting a Buffer
Auto-Saving: Protection Against Disasters
Auto-Save Files
Controlling Auto-Saving
Recovering Data from Auto-Saves
File Name Aliases
Version Control
Concepts of Version Control
Editing with Version Control
Variables Affecting Check-in and Check-out
Log Entries
Change Logs and VC
Examining And Comparing Old Versions
VC Status Commands
Renaming VC Work Files and Master Files
Snapshots
Making and Using Snapshots
Snapshot Caveats
Inserting Version Control Headers
Listing a File Directory
Comparing Files
Miscellaneous File Operations
Using Multiple Buffers
Creating and Selecting Buffers
Listing Existing Buffers
Miscellaneous Buffer Operations
Killing Buffers
Operating on Several Buffers
Multiple Windows
Concepts of Emacs Windows
Splitting Windows
Using Other Windows
Displaying in Another Window
Deleting and Rearranging Windows
Frames and X Windows
Mouse Commands
Secondary Selection
Selecting with the Mouse
Mode Line Mouse Commands
Creating Frames
Special Buffer Frames
Setting Frame Parameters
Scroll Bars
Menu Bars
Using Multiple Typefaces
Modifying Faces
Miscellaneous X Window Features
Major Modes
How Major Modes are Chosen
Indentation
Indentation Commands and Techniques
Tab Stops
Tabs vs. Spaces
Commands for Human Languages
Words
Sentences
Paragraphs
Pages
Filling Text
Auto Fill Mode
Explicit Fill Commands
The Fill Prefix
Case Conversion Commands
Text Mode
Outline Mode
Format of Outlines
Outline Motion Commands
Outline Visibility Commands
TeX Mode
TeX Editing Commands
LaTeX Editing Commands
TeX Printing Commands
Unix TeX Distribution
Nroff Mode
Editing Programs
Major Modes for Programming Languages
Lists and Sexps
List And Sexp Commands
Defuns
Indentation for Programs
Basic Program Indentation Commands
Indenting Several Lines
Customizing Lisp Indentation
Customizing C Indentation
Automatic Display Of Matching Parentheses
Manipulating Comments
Multiple Lines of Comments
Options Controlling Comments
Editing Without Unbalanced Parentheses
Completion for Symbol Names
Documentation Commands
Change Logs
Tag Tables
Source File Tag Syntax
Creating Tag Tables
Selecting a Tag Table
Finding a Tag
Searching and Replacing with Tag Tables
Stepping Through a Tag Table
Tag Table Inquiries
Merging Files with Emerge
Overview of Emerge
Submodes of Emerge
State of a Difference
Merge Commands
Exiting Emerge
Combining the Two Versions
Fine Points of Emerge
C Mode
Fortran Mode
Motion Commands
Fortran Indentation
Fortran Indentation Commands
Continuation Lines
Line Numbers
Syntactic Conventions
Variables for Fortran Indentation
Comments
Fortran Auto Fill Mode
Columns
Fortran Keyword Abbrevs
Asm Mode
Compiling and Testing Programs
Running `make', or Compilers Generally
Running Debuggers Under Emacs
Starting GUD
Debugger Operation
Commands of GUD
GUD Customization
Executing Lisp Expressions
Libraries of Lisp Code for Emacs
Evaluating Emacs-Lisp Expressions
Lisp Interaction Buffers
Running an External Lisp
Abbrevs
Defining Abbrevs
Controlling Abbrev Expansion
Examining and Editing Abbrevs
Saving Abbrevs
Dynamic Abbrev Expansion
Editing Pictures
Basic Editing in Picture Mode
Controlling Motion after Insert
Picture Mode Tabs
Picture Mode Rectangle Commands
Sending Mail
The Format of the Mail Buffer
Mail Header Fields
Mail Aliases
Mail Mode
Distracting the NSA
Reading Mail with Rmail
Scrolling Within a Message
Moving Among Messages
Deleting Messages
Rmail Files and Inboxes
Multiple Mail Files
Copying Messages Out to Files
Labels
Sending Replies
Summaries
Making Summaries
Editing in Summaries
Display of Messages
Editing Within a Message
Digest Messages
Converting an Rmail File to Mailbox Format
Reading Rot13 Messages
Dired, the Directory Editor
Entering Dired
Commands in the Dired Buffer
Deleting Files with Dired
Visiting Files in Dired
Dired Marks vs. Flags
Operating on Files
Shell Commands in Dired
Transforming File Names in Dired
File Comparison with Dired
Subdirectories in Dired
Moving Over Subdirectories
Hiding Subdirectories
Updating the Dired Buffer
Dired and
find
The Calendar and the Diary
Movement in the Calendar
Motion by Integral Days, Weeks, Months, Years
Beginning or End of Week, Month or Year
Particular Dates
Scrolling in the Calendar
Counting Days
Miscellaneous Calendar Commands
Holidays
Times of Sunrise and Sunset
Phases of the Moon
Conversion To and From Other Calendars
Supported Calendar Systems
Converting To Other Calendars
Converting From Other Calendars
Converting from the Mayan Calendar
The Diary
Commands Displaying Diary Entries
The Diary File
Date Formats
Commands to Add to the Diary
Special Diary Entries
Appointments
Daylight Savings Time
Miscellaneous Commands
GNUS
GNUS's Three Buffers
When GNUS Starts Up
Summary of GNUS Commands
Sorting Text
Running Shell Commands from Emacs
Single Shell Commands
Interactive Inferior Shell
Shell Mode
Shell Command History
Shell History Ring
Shell History Copying
Shell History References
Shell Mode Options
Remote Host
Narrowing
Hardcopy Output
Two-Column Editing
Editing Binary Files
Using Emacs as a Server
Saving Emacs Sessions
Recursive Editing Levels
Dissociated Press
Other Amusements
Emulation
Customization
Minor Modes
Variables
Examining and Setting Variables
Editing Variable Values
Hooks
Local Variables
Local Variables in Files
Keyboard Macros
Basic Use
Naming and Saving Keyboard Macros
Executing Macros with Variations
Customizing Key Bindings
Keymaps
Prefix Keymaps
Local Keymaps
Minibuffer Keymaps
Changing Key Bindings Interactively
Rebinding Keys in Your Init File
Rebinding Function Keys
Named ASCII Control Characters
Rebinding Mouse Buttons
Disabling Commands
Keyboard Translations
The Syntax Table
The Init File,
`~/.emacs'
Init File Syntax
Init File Examples
Terminal-specific Initialization
How Emacs Finds Your Init File
Correcting Mistakes (Yours or Emacs's)
Quitting and Aborting
Dealing with Emacs Trouble
If
DEL
Fails to Delete
Recursive Editing Levels
Garbage on the Screen
Garbage in the Text
Spontaneous Entry to Incremental Search
Emergency Escape
Help for Total Frustration
Reporting Bugs
When Is There a Bug
Understanding Bug Reporting
Checklist for Bug Reports
Sending Patches for GNU Emacs
How To Get Help with GNU Emacs
Command Line Options and Arguments
Ordinary Arguments
Initial Options
Command Argument Example
Resuming Emacs with Arguments
Environment Variables
General Variables
MS-DOS Variables
Misc Variables
Specifying the Display Name
Font Specification Options
Window Color Options
Options for Window Geometry
Internal and External Borders
Icons
X Resources
Emacs 18 Antinews
The GNU Manifesto
What's GNU? Gnu's Not Unix!
Why I Must Write GNU
Why GNU Will Be Compatible with Unix
How GNU Will Be Available
Why Many Other Programmers Want to Help
How You Can Contribute
Why All Computer Users Will Benefit
Some Easily Rebutted Objections to GNU's Goals
Glossary
Key (Character) Index
Command and Function Index
Variable Index
Concept Index