| [Top] | [Contents] | [Index] | [ ? ] |
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.
Distribution How to get the latest Emacs distribution. GNU GENERAL PUBLIC LICENSE The GNU General Public License gives you permission to redistribute GNU Emacs on certain terms; and also explains that there is no warranty. Introduction An introduction to Emacs concepts. Glossary The glossary. Version 19 Antenews Changes coming in Emacs version 19, to be released. The GNU Manifesto What's GNU? Gnu's Not Unix!
Indexes, nodes containing large menus
Key (Character) Index An item for each standard Emacs key sequence. Command and Function 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
1. The Organization of the Screen How to interpret what you see on the screen. 1.4 The Emacs Character Set Emacs's character sets for file contents and for keyboard. 1.5 Keys Key sequences: what you type to request one editing action. 1.6 Keys and Commands Commands: named functions run by key sequences to do editing. 2. Entering and Exiting Emacs Starting Emacs from the shell. 2.2 Command Line Switches and Arguments Hairy startup options. 2.1 Exiting Emacs Stopping or killing Emacs. 3. Basic Editing Commands The most basic editing commands. 4. Undoing Changes Undoing recently made changes in the text. 5. The Minibuffer Entering arguments that are prompted for. 6. Running Commands by Name Invoking commands by their names. 7. Help Commands for asking Emacs about its commands.
Important Text-Changing Commands
8. The Mark and the Region The mark: how to delimit a "region" of text. 8.5 Deletion and Killing Killing text. 8.6 Yanking Recovering killed text. Moving text. 8.7 Accumulating Text Other ways of copying text. 8.8 Rectangles Operating on the text inside a rectangle on the screen. 9. Registers Saving a text string or a location in the buffer. 10. Controlling the Display Controlling what text is displayed. 11. Searching and Replacement Finding or replacing occurrences of a string. 12. Commands for Fixing Typos Commands especially useful for fixing typos.
Larger Units of Text
13. File Handling All about handling files. 14. Using Multiple Buffers Multiple buffers; editing several files at once. 15. Multiple Windows Viewing two pieces of text at once.
Advanced Features
"within the command". This is called a
16. Major Modes Text mode vs. Lisp mode vs. C mode ... 17. Indentation Editing the white space at the beginnings of lines. 18. Commands for Human Languages Commands and modes for editing English. 19. Editing Programs Commands and modes for editing programs. 20. Compiling and Testing Programs Compiling, running and debugging programs. 21. Abbrevs How to define text abbreviations to reduce the number of characters you must type. 22. Editing Pictures Editing pictures made up of characters using the quarter-plane screen model. 23. Sending Mail Sending mail in Emacs. 24. Reading Mail with Rmail Reading mail in Emacs. 24.12 Recursive Editing Levels A command can allow you to do editing
`recursive editing level'.
24.13 Narrowing Restricting display and editing to a portion of the buffer. 24.14 Sorting Text Sorting lines, paragraphs or pages within Emacs. 24.15 Running Shell Commands from Emacs Executing shell commands from Emacs. 24.16 Hardcopy Output Printing buffers or regions. 24.17 Dissociated Press Dissociating text for fun. 24.18 Other Amusements Various games and hacks. 24.19 Emulation Emulating some other editors with Emacs. 25. Customization Modifying the behavior of Emacs.
Recovery from Problems.
25.7 Quitting and Aborting Quitting and aborting. 25.8 Dealing with Emacs Trouble What to do if Emacs is hung or malfunctioning. 25.9 Reporting Bugs 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:
Subnodes of Screen
1.1 Point The place in the text where editing commands operate. 1.2 The Echo Area Short messages appear at the bottom of the screen. 1.3 The Mode Line Interpreting the mode line.
Subnodes of Basic
3.6 Blank Lines Commands to make or delete blank lines. 3.7 Continuation Lines Lines too wide for the screen. 3.8 Cursor Position Information What page, line, row, or column is point on? 3.9 Numeric Arguments Giving numeric arguments to commands.
Subnodes of Minibuffer
5.1 Minibuffers for File Names Entering file names with the minibuffer. 5.2 Editing in the Minibuffer How to edit in the minibuffer. 5.3 Completion An abbreviation facility for minibuffer input. 5.4 Repeating Minibuffer Commands Re-executing previous commands that used the minibuffer.
Subnodes of Mark
8.1 Setting the Mark Commands to set the mark. 8.2 Operating on the Region Summary of ways to operate on contents of the region. 8.3 Commands to Mark Textual Objects Commands to put region around textual units. 8.4 The Mark Ring Previous mark positions saved so you can go back there.
Subnodes of Yanking
8.6.1 The Kill Ring Where killed text is stored. Basic yanking. 8.6.2 Appending Kills Several kills in a row all yank together. 8.6.3 Yanking Earlier Kills Yanking something killed some time ago.
Subnodes of Registers
9.1 Saving Positions in Registers Saving positions in registers. 9.2 Saving Text in Registers Saving text in registers. 9.3 Saving Rectangles in Registers Saving rectangles in registers.
Subnodes of Display
10.1 Scrolling Moving text up and down in a window. 10.2 Horizontal Scrolling Moving text left and right in a window. 10.3 Selective Display Hiding lines with lots of indentation. 10.4 Variables Controlling Display Information on variables for customizing display.
Subnodes of Search
11.1 Incremental Search Search happens as you type the string. 11.2 Nonincremental Search Specify entire string and then search. 11.3 Word Search Search for sequence of words. 11.4 Regular Expression Search Search for match for a regexp. 11.5 Syntax of Regular Expressions Syntax of regular expressions. 11.6 Searching and Case To ignore case while searching, or not. 11.7 Replacement Commands Search, and replace some or all matches. 11.7.1 Unconditional Replacement Everything about replacement except for querying. 11.7.4 Query Replace How to use querying. 11.8 Other Search-and-Loop Commands Operating on all matches for some regexp.
Subnodes of Fixit
12.1 Killing Your Mistakes Commands to kill a batch of recently entered text. 12.2 Transposing Text Exchanging two characters, words, lines, lists... 12.3 Case Conversion Correcting case of last word entered. 12.4 Checking and Correcting Spelling Apply spelling checker to a word, or a whole file.
Subnodes of Files
13.1 File Names How to type and edit file name arguments. 13.2 Visiting Files Visiting a file prepares Emacs to edit the file. 13.3 Saving Files Saving makes your changes permanent. 13.3.1 Backup Files How Emacs saves the old version of your file. 13.3.2 Protection against Simultaneous Editing How Emacs protects against simultaneous editing of one file by two users. 13.4 Reverting a Buffer Reverting cancels all the changes not saved. 13.5 Auto-Saving: Protection Against Disasters Auto Save periodically protects against loss of data. 13.6 Listing a File Directory Listing the contents of a file directory. 13.7 Dired, the Directory Editor "Editing" a directory to delete, rename, etc. the files in it. 13.8 Miscellaneous File Operations Other things you can do on files.
Subnodes of Buffers
14.1 Creating and Selecting Buffers Creating a new buffer or reselecting an old one. 14.2 Listing Existing Buffers Getting a list of buffers that exist. 14.3 Miscellaneous Buffer Operations Renaming; changing read-only status. 14.4 Killing Buffers Killing buffers you no longer need. 14.5 Operating on Several Buffers How to go through the list of all buffers and operate variously on several of them.
Subnodes of Windows
15.1 Concepts of Emacs Windows Introduction to Emacs windows. 15.2 Splitting Windows New windows are made by splitting existing windows. 15.3 Using Other Windows Moving to another window or doing something to it. 15.4 Displaying in Another Window Finding a file or buffer in another window. 15.5 Deleting and Rearranging Windows Deleting windows and changing their sizes.
Subnodes of Indentation
17.1 Indentation Commands and Techniques Various commands and techniques for indentation. 17.2 Tab Stops You can set arbitrary "tab stops" and then indent to the next tab stop when you want to. 17.3 Tabs vs. Spaces You can request indentation using just spaces.
Subnodes of Text
18.1 Text Mode The major mode for editing text files. 18.1.1 Nroff Mode The major mode for editing input to the formatter nroff. 18.1.2 TeX Mode The major mode for editing input to the formatter TeX. 18.1.3 Texinfo Mode The major mode for editing input to the formatter Texinfo. 18.1.4 Outline Mode The major mode for editing outlines. 18.2 Words Moving over and killing words. 18.3 Sentences Moving over and killing sentences. 18.4 Paragraphs Moving over paragraphs. 18.5 Pages Moving over pages. 18.6 Filling Text Filling or justifying text 18.7 Case Conversion Commands Changing the case of text
Subnodes of Programs
19.1 Major Modes for Programming Languages Major modes for editing programs. 19.2 Lists and Sexps Expressions with balanced parentheses. There are editing commands to operate on them. 19.3 Defuns Each program is made up of separate functions. There are editing commands to operate on them. 19.4 Indentation for Programs Adjusting indentation to show the nesting. 19.5 Automatic Display Of Matching Parentheses Insertion of a close-delimiter flashes matching open. 19.6 Manipulating Comments Inserting, killing and aligning comments. 19.8 Editing Without Unbalanced Parentheses Inserting two matching parentheses at once, etc. 19.9 Completion for Lisp Symbols Completion on symbol names in Lisp code. 19.10 Documentation Commands Getting documentation of functions you plan to call. 19.11 Change Logs Maintaining a change history for your program. 19.12 Tag Tables Go direct to any function in your program in one command. Tags remembers which file it is in. 19.13 Fortran Mode Fortran mode and its special features.
Subnodes of Compiling/Testing
(C, Pascal, etc.)
20.1 Running `make', or Compilers Generally Compiling programs in languages other than Lisp
20.2 Major Modes for Lisp Various modes for editing Lisp programs, with different facilities for running the Lisp programs. 20.3 Libraries of Lisp Code for Emacs Creating Lisp programs to run in Emacs. 20.6 Lisp Interaction Buffers Executing Lisp in an Emacs buffer. 20.4 Evaluating Emacs-Lisp Expressions Executing a single Lisp expression in Emacs. 20.5 The Emacs-Lisp Debugger Debugging Lisp programs running in Emacs. 20.7 Running an External Lisp Communicating through Emacs with a separate Lisp.
Subnodes of Abbrevs
21.1 Defining Abbrevs Defining an abbrev, so it will expand when typed. 21.2 Controlling Abbrev Expansion Controlling expansion: prefixes, canceling expansion. 21.3 Examining and Editing Abbrevs Viewing or editing the entire list of defined abbrevs. 21.4 Saving Abbrevs Saving the entire list of abbrevs for another session. 21.5 Dynamic Abbrev Expansion Abbreviations for words already in the buffer.
Subnodes of Picture
22.1 Basic Editing in Picture Mode Basic concepts and simple commands of Picture mode. 22.2 Controlling Motion after Insert Controlling direction of cursor motion after "self-inserting" characters. 22.3 Picture Mode Tabs Various features for tab stops and indentation. 22.4 Picture Mode Rectangle Commands Clearing and superimposing rectangles.
Subnodes of Sending Mail
23.1 The Format of the Mail Buffer Format of the mail being composed. 23.2 Mail Header Fields Details of allowed mail header fields. 23.3 Mail Mode Special commands for editing mail being composed.
Subnodes of Rmail
24.1 Scrolling Within a Message Scrolling through a message. 24.2 Moving Among Messages Moving to another message. 24.3 Deleting Messages Deleting and expunging messages. 24.4 Rmail Files and Inboxes How mail gets into the Rmail file. 24.5 Multiple Mail Files Using multiple Rmail files. 24.6 Copying Messages Out to Files Copying message out to files. 24.7 Labels Classifying messages by labeling them. 24.8 Summaries Summaries show brief info on many messages. 24.9 Sending Replies Sending replies to messages you are viewing. 24.10 Editing Within a Message Editing message text and headers in Rmail. 24.11 Digest Messages Extracting the messages from a digest message.
Subnodes of Shell
24.15.1 Single Shell Commands Commands to run one shell command and return. 24.15.2 Interactive Inferior Shell Permanent shell taking input via Emacs. 24.15.3 Shell Mode Special Emacs commands used with permanent shell.
Subnodes of Customization
25.1 Minor Modes Each minor mode is one feature you can turn on independently of any others. 25.2 Variables Many Emacs commands examine Emacs variables to decide what to do; by setting variables, you can control their functioning. 25.2.1 Examining and Setting Variables Examining or setting one variable's value. 25.2.2 Editing Variable Values Examining or editing list of all variables' values. 25.2.3 Local Variables Per-buffer values of variables. 25.2.4 Local Variables in Files How files can specify variable values. 25.3 Keyboard Macros A keyboard macro records a sequence of keystrokes to be replayed with a single command. 25.4 Customizing Key Bindings The keymaps say what command each key runs. By changing them, you can "redefine keys". 25.4.1 Keymaps Definition of the keymap data structure. 25.4.2 Changing Key Bindings Interactively How to redefine one key's meaning conveniently. 25.4.3 Disabling Commands Disabling a command means confirmation is required before it can be executed. This is done to protect beginners from surprises. 25.5 The Syntax Table The syntax table controls how words and expressions are parsed. 25.6 The Init File, .emacs How to write common customizations in the `.emacs' file.
Subnodes of Lossage (and recovery)
25.8.1 Recursive Editing Levels `[...]' in mode line around the parentheses. 25.8.2 Garbage on the Screen Garbage on the screen. 25.8.3 Garbage in the Text Garbage in the text. 25.8.4 Spontaneous Entry to Incremental Search Spontaneous entry to incremental search. 25.8.5 Emergency Escape Emergency escape--- What to do if Emacs stops responding. 25.8.6 Help for Total Frustration When you are at your wits' end.