[Top] | [Contents] | [Index] | [ ? ] |
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; it corresponds to GNU Emacs version 22.1.
For information on extending Emacs, see Emacs Lisp: (elisp)Top section `Top' in The Emacs Lisp Reference Manual.
Distribution | How to get the latest Emacs distribution. | |
A. GNU GENERAL PUBLIC LICENSE | The GNU General Public License gives you permission to redistribute GNU Emacs on certain terms; it also explains that there is no warranty. | |
B. GNU Free Documentation License | The license for this documentation. | |
Introduction | An introduction to Emacs concepts. | |
Glossary | The glossary. | |
E. Emacs 21 Antinews | Information about Emacs version 21. | |
F. Emacs and Mac OS | Using Emacs in the Mac. | |
G. Emacs and Microsoft Windows/MS-DOS | Using Emacs on Microsoft Windows and MS-DOS. | |
The GNU Manifesto | What's GNU? Gnu's Not Unix! | |
Acknowledgments | Major contributors to GNU Emacs. | |
Indexes (each index contains a large menu) | ||
---|---|---|
Key (Character) Index | An item for each standard Emacs key sequence. | |
Command-Line Options Index | An item for every command-line option. | |
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. | |
2. Kinds of User Input | Kinds of input events (characters, buttons, function keys). | |
3. Keys | Key sequences: what you type to request one editing action. | |
4. Keys and Commands | Named functions run by key sequences to do editing. | |
5. Character Set for Text | Character set for text (the contents of buffers and strings). | |
6. Entering and Exiting Emacs | Starting Emacs from the shell. | |
7. Exiting Emacs | Stopping or killing Emacs. | |
C. Command Line Arguments for Emacs Invocation | Hairy startup options. | |
Fundamental Editing Commands | ||
8. Basic Editing Commands | The most basic editing commands. | |
9. The Minibuffer | Entering arguments that are prompted for. | |
10. Running Commands by Name | Invoking commands by their names. | |
11. Help | Commands for asking Emacs about its commands. | |
Important Text-Changing Commands | ||
12. The Mark and the Region | The mark: how to delimit a “region” of text. | |
13. Killing and Moving Text | Killing (cutting) text. | |
14. Yanking | Recovering killed text. Moving text. (Pasting.) | |
15. Accumulating Text | Other ways of copying text. | |
16. Rectangles | Operating on the text inside a rectangle on the screen. | |
18. Registers | Saving a text string or a location in the buffer. | |
19. Controlling the Display | Controlling what text is displayed. | |
20. Searching and Replacement | Finding or replacing occurrences of a string. | |
21. Commands for Fixing Typos | Commands especially useful for fixing typos. | |
22. Keyboard Macros | A keyboard macro records a sequence of keystrokes to be replayed with a single command. | |
Major Structures of Emacs | ||
23. File Handling | All about handling files. | |
24. Using Multiple Buffers | Multiple buffers; editing several files at once. | |
25. Multiple Windows | Viewing two pieces of text at once. | |
26. Frames and Graphical Displays | Running the same Emacs session in multiple X windows. | |
27. International Character Set Support | Using non-ASCII character sets (the MULE features). | |
Advanced Features | ||
28. Major Modes | Text mode vs. Lisp mode vs. C mode ... | |
29. Indentation | Editing the white space at the beginnings of lines. | |
30. Commands for Human Languages | Commands and modes for editing English. | |
31. Editing Programs | Commands and modes for editing programs. | |
32. Compiling and Testing Programs | Compiling, running and debugging programs. | |
33. Maintaining Large Programs | Features for maintaining large programs. | |
34. Abbrevs | How to define text abbreviations to reduce the number of characters you must type. | |
35. Editing Pictures | Editing pictures made up of characters using the quarter-plane screen model. | |
36. Sending Mail | Sending mail in Emacs. | |
37. Reading Mail with Rmail | Reading mail in Emacs. | |
38. Dired, the Directory Editor | You can “edit” a directory to manage files in it. | |
39. The Calendar and the Diary | The calendar and diary facilities. | |
40. Gnus | How to read netnews with Emacs. | |
41. Running Shell Commands from Emacs | Executing shell commands from Emacs. | |
42. Using Emacs as a Server | Using Emacs as an editing server for mail , etc.
| |
43. Printing Hard Copies | Printing hardcopies of buffers or regions. | |
47. Sorting Text | Sorting lines, paragraphs or pages within Emacs. | |
48. Narrowing | Restricting display and editing to a portion of the buffer. | |
49. Two-Column Editing | Splitting apart columns to edit them in side-by-side windows. | |
50. Editing Binary Files | Using Hexl mode to edit binary files. | |
51. Saving Emacs Sessions | Saving Emacs state from one session to the next. | |
52. Recursive Editing Levels | A command can allow you to do editing "within the command". This is called a "recursive editing level". | |
53. Emulation | Emulating some other editors with Emacs. | |
54. Hyperlinking and Navigation Features | Following links in buffers. | |
55. Dissociated Press | Dissociating text for fun. | |
56. Other Amusements | Various games and hacks. | |
57. Customization | Modifying the behavior of Emacs. | |
D. X Options and Resources | X resources for customizing Emacs. | |
Recovery from Problems | ||
58. Quitting and Aborting | Quitting and aborting. | |
59. Dealing with Emacs Trouble | What to do if Emacs is hung or malfunctioning. | |
60. Reporting Bugs | How and when to report a bug. | |
61. Contributing to Emacs Development | How to contribute improvements to Emacs. | |
62. How To Get Help with GNU Emacs | How to get help for your own Emacs needs. | |
--- The Detailed Node Listing --- --------------------------------- 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 Organization of the 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. | |
1.4 The Menu Bar | How to use the menu bar. | |
Basic Editing Commands | ||
8.1 Inserting Text | Inserting text by simply typing it. | |
8.2 Changing the Location of Point | How to move the cursor to the place where you want to change something. | |
8.3 Erasing Text | Deleting and killing text. | |
8.4 Undoing Changes | Undoing recent changes in the text. | |
8.5 Files | Visiting, creating, and saving files. | |
8.6 Help | Asking what a character does. | |
8.7 Blank Lines | Commands to make or delete blank lines. | |
8.8 Continuation Lines | Lines too wide for the screen. | |
8.9 Cursor Position Information | What page, line, row, or column is point on? | |
8.10 Numeric Arguments | Numeric arguments for repeating a command. | |
8.11 Repeating a Command | A short-cut for repeating the previous command. | |
The Minibuffer | ||
9.1 Minibuffers for File Names | Entering file names with the minibuffer. | |
9.2 Editing in the Minibuffer | How to edit in the minibuffer. | |
9.3 Completion | An abbreviation facility for minibuffer input. | |
9.4 Minibuffer History | Reusing recent minibuffer arguments. | |
9.5 Repeating Minibuffer Commands | Re-executing commands that used the minibuffer. | |
Completion | ||
9.3.1 Completion Example | Examples of using completion. | |
9.3.2 Completion Commands | A list of completion commands. | |
9.3.3 Strict Completion | Different types of completion. | |
9.3.4 Completion Options | Options for completion. | |
Help | ||
11.1 Help Summary | Brief list of all Help commands. | |
11.2 Documentation for a Key | Asking what a key does in Emacs. | |
11.3 Help by Command or Variable Name | Asking about a command, variable or function name. | |
11.4 Apropos | Asking what pertains to a given topic. | |
11.5 Help Mode Commands | Special features of Help mode and Help buffers. | |
11.6 Keyword Search for Lisp Libraries | Finding Lisp libraries by keywords (topics). | |
11.7 Help for International Language Support | Help relating to international language support. | |
11.8 Other Help Commands | Other help commands. | |
11.9 Help Files | Commands to display pre-written help files. | |
11.10 Help on Active Text and Tooltips | Help on active text and tooltips (`balloon help') | |
The Mark and the Region | ||
12.1 Setting the Mark | Commands to set the mark. | |
12.2 Transient Mark Mode | How to make Emacs highlight the region– when there is one. | |
12.3 Using Transient Mark Mode Momentarily | Enabling Transient Mark mode momentarily. | |
12.4 Operating on the Region | Summary of ways to operate on contents of the region. | |
12.5 Commands to Mark Textual Objects | Commands to put region around textual units. | |
12.6 The Mark Ring | Previous mark positions saved so you can go back there. | |
12.7 The Global Mark Ring | Previous mark positions in various buffers. | |
Killing and Moving Text | ||
13.1 Deletion | Commands for deleting small amounts of text and blank areas. | |
13.2 Killing by Lines | How to kill entire lines of text at one time. | |
13.3 Other Kill Commands | Commands to kill large regions of text and syntactic units such as words and sentences. | |
17. CUA Bindings | Using C-x, C-c, C-v for copy and paste, with enhanced rectangle support. | |
Yanking | ||
14.1 The Kill Ring | Where killed text is stored. Basic yanking. | |
14.2 Appending Kills | Several kills in a row all yank together. | |
14.3 Yanking Earlier Kills | Yanking something killed some time ago. | |
Registers | ||
18.1 Saving Positions in Registers | Saving positions in registers. | |
18.2 Saving Text in Registers | Saving text in registers. | |
18.3 Saving Rectangles in Registers | Saving rectangles in registers. | |
18.4 Saving Window Configurations in Registers | Saving window configurations in registers. | |
18.5 Keeping Numbers in Registers | Numbers in registers. | |
18.6 Keeping File Names in Registers | File names in registers. | |
18.7 Bookmarks | Bookmarks are like registers, but persistent. | |
Controlling the Display | ||
19.1 Scrolling | Moving text up and down in a window. | |
19.2 Automatic Scrolling | Redisplay scrolls text automatically when needed. | |
19.3 Horizontal Scrolling | Moving text left and right in a window. | |
19.4 Follow Mode | Follow mode lets two windows scroll as one. | |
19.5 Using Multiple Typefaces | How to change the display style using faces. | |
19.6 Standard Faces | Emacs' predefined faces. | |
19.7 Font Lock mode | Minor mode for syntactic highlighting using faces. | |
19.8 Interactive Highlighting | Tell Emacs what text to highlight. | |
19.9 Window Fringes | Enabling or disabling window fringes. | |
19.10 Displaying Boundaries | Displaying top and bottom of the buffer. | |
19.11 Useless Whitespace | Showing possibly-spurious trailing whitespace. | |
19.12 Selective Display | Hiding lines with lots of indentation. | |
19.13 Optional Mode Line Features | Optional mode line display features. | |
19.14 How Text Is Displayed | How text characters are normally displayed. | |
19.15 Displaying the Cursor | Features for displaying the cursor. | |
19.16 Truncation of Lines | Truncating lines to fit the screen width instead of continuing them to multiple screen lines. | |
19.17 Customization of Display | Information on variables for customizing display. | |
Searching and Replacement | ||
20.1 Incremental Search | Search happens as you type the string. | |
20.2 Nonincremental Search | Specify entire string and then search. | |
20.3 Word Search | Search for sequence of words. | |
20.4 Regular Expression Search | Search for match for a regexp. | |
20.5 Syntax of Regular Expressions | Syntax of regular expressions. | |
20.6 Backslash in Regular Expressions | Regular expression constructs starting with `\'. | |
20.7 Regular Expression Example | A complex regular expression explained. | |
20.8 Searching and Case | To ignore case while searching, or not. | |
20.9 Replacement Commands | Search, and replace some or all matches. | |
20.10 Other Search-and-Loop Commands | Operating on all matches for some regexp. | |
Incremental Search | ||
20.1.1 Basics of Incremental Search | Basic incremental search commands. | |
20.1.2 Repeating Incremental Search | Searching for the same string again. | |
20.1.3 Errors in Incremental Search | When your string is not found. | |
20.1.4 Special Input for Incremental Search | Special input in incremental search. | |
20.1.5 Isearch for Non-ASCII Characters | How to search for non-ASCII characters. | |
20.1.6 Isearch Yanking | Commands that grab text into the search string or else edit the search string. | |
20.1.7 Lazy Search Highlighting | Isearch highlights the other possible matches. | |
20.1.8 Scrolling During Incremental Search | Scrolling during an incremental search. | |
20.1.9 Slow Terminal Incremental Search | Incremental search features for slow terminals. | |
Replacement Commands | ||
20.9.1 Unconditional Replacement | Replacing all matches for a string. | |
20.9.2 Regexp Replacement | Replacing all matches for a regexp. | |
20.9.3 Replace Commands and Case | How replacements preserve case of letters. | |
20.9.4 Query Replace | How to use querying. | |
Commands for Fixing Typos | ||
21.1 Undo | Full details of Emacs undo commands. | |
21.2 Killing Your Mistakes | Commands to kill a batch of recently entered text. | |
21.3 Transposing Text | Exchanging two characters, words, lines, lists... | |
21.4 Case Conversion | Correcting case of last word entered. | |
21.5 Checking and Correcting Spelling | Apply spelling checker to a word or a whole buffer. | |
Keyboard Macros | ||
22.1 Basic Use | Defining and running keyboard macros. | |
22.2 The Keyboard Macro Ring | Where previous keyboard macros are saved. | |
22.3 The Keyboard Macro Counter | Inserting incrementing numbers in macros. | |
22.4 Executing Macros with Variations | Making keyboard macros do different things each time. | |
22.5 Naming and Saving Keyboard Macros | Giving keyboard macros names; saving them in files. | |
22.6 Editing a Keyboard Macro | Editing keyboard macros. | |
22.7 Stepwise Editing a Keyboard Macro | Interactively executing and editing a keyboard macro. | |
File Handling | ||
23.1 File Names | How to type and edit file-name arguments. | |
23.2 Visiting Files | Visiting a file prepares Emacs to edit the file. | |
23.3 Saving Files | Saving makes your changes permanent. | |
23.4 Reverting a Buffer | Reverting cancels all the changes not saved. | |
23.5 Auto Reverting non-file Buffers | Auto Reverting non-file buffers. | |
23.6 Auto-Saving: Protection Against Disasters | Auto Save periodically protects against loss of data. | |
23.7 File Name Aliases | Handling multiple names for one file. | |
23.8 Version Control | Version control systems (RCS, CVS and SCCS). | |
23.9 File Directories | Creating, deleting, and listing file directories. | |
23.10 Comparing Files | Finding where two files differ. | |
23.11 Diff Mode | Editing diff output. | |
23.12 Miscellaneous File Operations | Other things you can do on files. | |
23.13 Accessing Compressed Files | Accessing compressed files. | |
23.14 File Archives | Operating on tar, zip, jar etc. archive files. | |
23.15 Remote Files | Accessing files on other sites. | |
23.16 Quoted File Names | Quoting special characters in file names. | |
23.17 File Name Cache | Completion against a list of files you often use. | |
23.18 Convenience Features for Finding Files | ||
23.19 Filesets | Handling sets of files. | |
Saving Files | ||
23.3.1 Commands for Saving Files | Commands for saving files. | |
23.3.2 Backup Files | How Emacs saves the old version of your file. | |
23.3.3 Customizing Saving of Files | Customizing the saving of files. | |
23.3.4 Protection against Simultaneous Editing | How Emacs protects against simultaneous editing of one file by two users. | |
23.3.5 Shadowing Files | Copying files to "shadows" automatically. | |
23.3.6 Updating Time Stamps Automatically | Emacs can update time stamps on saved files. | |
Backup Files | ||
23.3.2.1 Numbered Backups | Whether to make one backup file or many. | |
23.3.2.2 Single or Numbered Backups | How backup files are named. | |
23.3.2.3 Automatic Deletion of Backups | Emacs deletes excess numbered backups. | |
23.3.2.4 Copying vs. Renaming | Backups can be made by copying or renaming. | |
Auto-Saving: Protection Against Disasters | ||
23.6.1 Auto-Save Files | The file where auto-saved changes are actually made until you save the file. | |
23.6.2 Controlling Auto-Saving | Controlling when and how often to auto-save. | |
23.6.3 Recovering Data from Auto-Saves | Recovering text from auto-save files. | |
Version Control | ||
23.8.1 Introduction to Version Control | How version control works in general. | |
23.8.2 Version Control and the Mode Line | How the mode line shows version control status. | |
23.8.3 Basic Editing under Version Control | How to edit a file under version control. | |
23.8.4 Examining And Comparing Old Versions | Examining and comparing old versions. | |
23.8.5 The Secondary Commands of VC | The commands used a little less frequently. | |
23.8.6 Multiple Branches of a File | Multiple lines of development. | |
23.8.7 Remote Repositories | Efficient access to remote CVS servers. | |
23.8.8 Snapshots | Sets of file versions treated as a unit. | |
23.8.9 Miscellaneous Commands and Features of VC | Various other commands and features of VC. | |
23.8.10 Customizing VC | Variables that change VC's behavior. | |
Using Multiple Buffers | ||
24.1 Creating and Selecting Buffers | Creating a new buffer or reselecting an old one. | |
24.2 Listing Existing Buffers | Getting a list of buffers that exist. | |
24.3 Miscellaneous Buffer Operations | Renaming; changing read-onliness; copying text. | |
24.4 Killing Buffers | Killing buffers you no longer need. | |
24.5 Operating on Several Buffers | How to go through the list of all buffers and operate variously on several of them. | |
24.6 Indirect Buffers | An indirect buffer shares the text of another buffer. | |
24.7 Convenience Features and Customization of Buffer Handling | Convenience and customization features for buffer handling. | |
Multiple Windows | ||
25.1 Concepts of Emacs Windows | Introduction to Emacs windows. | |
25.2 Splitting Windows | New windows are made by splitting existing windows. | |
25.3 Using Other Windows | Moving to another window or doing something to it. | |
25.4 Displaying in Another Window | Finding a file or buffer in another window. | |
25.5 Forcing Display in the Same Window | Forcing certain buffers to appear in the selected window rather than in another window. | |
25.6 Deleting and Rearranging Windows | Deleting windows and changing their sizes. | |
25.7 Window Handling Convenience Features and Customization | Convenience functions for window handling. | |
Frames and Graphical Displays | ||
26.1 Killing and Yanking on Graphical Displays | Mouse commands for cut and paste. | |
26.2 Following References with the Mouse | Using the mouse to select an item from a list. | |
26.3 Mouse Clicks for Menus | Mouse clicks that bring up menus. | |
26.4 Mode Line Mouse Commands | Mouse clicks on the mode line. | |
26.5 Creating Frames | Creating additional Emacs frames with various contents. | |
26.6 Frame Commands | Iconifying, deleting, and switching frames. | |
26.7 Speedbar Frames | How to make and use a speedbar frame. | |
26.8 Multiple Displays | How one Emacs job can talk to several displays. | |
26.9 Special Buffer Frames | You can make certain buffers have their own frames. | |
26.10 Setting Frame Parameters | Changing the colors and other modes of frames. | |
26.11 Scroll Bars | How to enable and disable scroll bars; how to use them. | |
26.12 Scrolling With “Wheeled” Mice | Using mouse wheels for scrolling. | |
26.13 Drag and Drop | Using drag and drop to open files and insert text. | |
26.14 Menu Bars | Enabling and disabling the menu bar. | |
26.15 Tool Bars | Enabling and disabling the tool bar. | |
26.16 Using Dialog Boxes | Controlling use of dialog boxes. | |
26.17 Tooltips | Showing "tooltips", AKA "balloon help" for active text. | |
26.18 Mouse Avoidance | Moving the mouse pointer out of the way. | |
26.19 Non-Window Terminals | Multiple frames on terminals that show only one. | |
26.20 Using a Mouse in Terminal Emulators | Using the mouse in text-only terminals. | |
International Character Set Support | ||
27.1 Introduction to International Character Sets | Basic concepts of multibyte characters. | |
27.2 Enabling Multibyte Characters | Controlling whether to use multibyte characters. | |
27.3 Language Environments | Setting things up for the language you use. | |
27.4 Input Methods | Entering text characters not on your keyboard. | |
27.5 Selecting an Input Method | Specifying your choice of input methods. | |
27.6 Unibyte and Multibyte Non-ASCII characters | How single-byte characters convert to multibyte. | |
27.7 Coding Systems | Character set conversion when you read and write files, and so on. | |
27.8 Recognizing Coding Systems | How Emacs figures out which conversion to use. | |
27.9 Specifying a File's Coding System | Specifying a file's coding system explicitly. | |
27.10 Choosing Coding Systems for Output | Choosing coding systems for output. | |
27.11 Specifying a Coding System for File Text | Choosing conversion to use for file text. | |
27.12 Coding Systems for Interprocess Communication | Coding systems for interprocess communication. | |
27.13 Coding Systems for File Names | Coding systems for file names. | |
27.14 Coding Systems for Terminal I/O | Specifying coding systems for converting terminal input and output. | |
27.15 Fontsets | Fontsets are collections of fonts that cover the whole spectrum of characters. | |
27.16 Defining fontsets | Defining a new fontset. | |
27.17 Undisplayable Characters | When characters don't display. | |
27.18 Unibyte Editing Mode | You can pick one European character set to use without multibyte characters. | |
27.19 Charsets | How Emacs groups its internal character codes. | |
Major Modes | ||
28.1 How Major Modes are Chosen | How major modes are specified or chosen. | |
Indentation | ||
29.1 Indentation Commands and Techniques | Various commands and techniques for indentation. | |
29.2 Tab Stops | You can set arbitrary "tab stops" and then indent to the next tab stop when you want to. | |
29.3 Tabs vs. Spaces | You can request indentation using just spaces. | |
Commands for Human Languages | ||
30.1 Words | Moving over and killing words. | |
30.2 Sentences | Moving over and killing sentences. | |
30.3 Paragraphs | Moving over paragraphs. | |
30.4 Pages | Moving over pages. | |
30.5 Filling Text | Filling or justifying text. | |
30.6 Case Conversion Commands | Changing the case of text. | |
30.7 Text Mode | The major modes for editing text files. | |
30.8 Outline Mode | Editing outlines. | |
30.9 TeX Mode | Editing input to the formatter TeX. | |
30.10 SGML, XML, and HTML Modes | Editing HTML, SGML, and XML files. | |
30.11 Nroff Mode | Editing input to the formatter nroff. | |
30.12 Editing Formatted Text | Editing formatted text directly in WYSIWYG fashion. | |
30.13 Editing Text-based Tables | Editing text-based tables in WYSIWYG fashion. | |
Filling Text | ||
30.5.1 Auto Fill Mode | Auto Fill mode breaks long lines automatically. | |
30.5.5 Refill Mode | Keeping paragraphs filled. | |
30.5.2 Explicit Fill Commands | Commands to refill paragraphs and center lines. | |
30.5.3 The Fill Prefix | Filling paragraphs that are indented or in a comment, etc. | |
30.5.4 Adaptive Filling | How Emacs can determine the fill prefix automatically. | |
30.5.6 Long Lines Mode | Editing text with very long lines. | |
Outline Mode | ||
30.8.1 Format of Outlines | What the text of an outline looks like. | |
30.8.2 Outline Motion Commands | Special commands for moving through outlines. | |
30.8.3 Outline Visibility Commands | Commands to control what is visible. | |
30.8.4 Viewing One Outline in Multiple Views | Outlines and multiple views. | |
30.8.5 Folding Editing | Folding means zooming in on outlines. | |
TeX Mode | ||
30.9.1 TeX Editing Commands | Special commands for editing in TeX mode. | |
30.9.2 LaTeX Editing Commands | Additional commands for LaTeX input files. | |
30.9.3 TeX Printing Commands | Commands for printing part of a file with TeX. | |
30.9.4 TeX Mode Miscellany | Customization of TeX mode, and related features. | |
Editing Formatted Text | ||
30.12.1 Requesting to Edit Formatted Text | Entering and exiting Enriched mode. | |
30.12.2 Hard and Soft Newlines | There are two different kinds of newlines. | |
30.12.3 Editing Format Information | How to edit text properties. | |
30.12.4 Faces in Formatted Text | Bold, italic, underline, etc. | |
30.12.5 Colors in Formatted Text | Changing the color of text. | |
30.12.6 Indentation in Formatted Text | Changing the left and right margins. | |
30.12.7 Justification in Formatted Text | Centering, setting text flush with the left or right margin, etc. | |
30.12.8 Setting Other Text Properties | The "special" text properties submenu. | |
30.12.9 Forcing Enriched Mode | How to force use of Enriched mode. | |
Editing Text-based Tables | ||
30.13.1 What is a Text-based Table? | What is a text based table. | |
30.13.2 How to Create a Table? | How to create a table. | |
30.13.3 Table Recognition | How to activate and deactivate tables. | |
30.13.4 Commands for Table Cells | Cell-oriented commands in a table. | |
30.13.5 Cell Justification | Justifying cell contents. | |
30.13.6 Commands for Table Rows | Manipulating rows of table cell. | |
30.13.7 Commands for Table Columns | Manipulating columns of table cell. | |
30.13.8 Fix Width of Cells | Fixing cell width. | |
30.13.9 Conversion Between Plain Text and Tables | Converting between plain text and tables. | |
30.13.10 Analyzing Table Dimensions | Analyzing table dimension. | |
30.13.11 Table Miscellany | Table miscellany. | |
Editing Programs | ||
31.1 Major Modes for Programming Languages | Major modes for editing programs. | |
31.2 Top-Level Definitions, or Defuns | Commands to operate on major top-level parts of a program. | |
31.3 Indentation for Programs | Adjusting indentation to show the nesting. | |
31.4 Commands for Editing with Parentheses | Commands that operate on parentheses. | |
31.5 Manipulating Comments | Inserting, killing, and aligning comments. | |
31.6 Documentation Lookup | Getting documentation of functions you plan to call. | |
31.7 Hideshow minor mode | Displaying blocks selectively. | |
31.8 Completion for Symbol Names | Completion on symbol names of your program or language. | |
31.9 Glasses minor mode | Making identifiersLikeThis more readable. | |
31.10 Other Features Useful for Editing Programs | Other Emacs features useful for editing programs. | |
31.11 C and Related Modes | Special commands of C, C++, Objective-C, Java, and Pike modes. | |
31.12 Asm Mode | Asm mode and its special features. | |
31.13 Fortran Mode | Fortran mode and its special features. | |
Top-Level Definitions, or Defuns | ||
31.2.1 Left Margin Convention | An open-paren or similar opening delimiter starts a defun if it is at the left margin. | |
31.2.2 Moving by Defuns | Commands to move over or mark a major definition. | |
31.2.3 Imenu | Making buffer indexes as menus. | |
31.2.4 Which Function Mode | Which Function mode shows which function you are in. | |
Indentation for Programs | ||
31.3.1 Basic Program Indentation Commands | Indenting a single line. | |
31.3.2 Indenting Several Lines | Commands to reindent many lines at once. | |
31.3.3 Customizing Lisp Indentation | Specifying how each Lisp function should be indented. | |
31.3.4 Commands for C Indentation | Extra features for indenting C and related modes. | |
31.3.5 Customizing C Indentation | Controlling indentation style for C and related modes. | |
Commands for Editing with Parentheses | ||
31.4.1 Expressions with Balanced Parentheses | Expressions with balanced parentheses. | |
31.4.2 Moving in the Parenthesis Structure | Commands for moving up, down and across in the structure of parentheses. | |
31.4.3 Automatic Display Of Matching Parentheses | Insertion of a close-delimiter flashes matching open. | |
Manipulating Comments | ||
31.5.1 Comment Commands | Inserting, killing, and aligning comments. | |
31.5.2 Multiple Lines of Comments | Commands for adding and editing multi-line comments. | |
31.5.3 Options Controlling Comments | Customizing the comment features. | |
Documentation Lookup | ||
31.6.1 Info Documentation Lookup | Looking up library functions and commands in Info files. | |
31.6.2 Man Page Lookup | Looking up man pages of library functions and commands. | |
31.6.3 Emacs Lisp Documentation Lookup | Looking up Emacs Lisp functions, etc. | |
C and Related Modes | ||
31.11.1 C Mode Motion Commands | Commands to move by C statements, etc. | |
31.11.2 Electric C Characters | Colon and other chars can automatically reindent. | |
31.11.3 Hungry Delete Feature in C | A more powerful DEL command. | |
31.11.4 Other Commands for C Mode | Filling comments, viewing expansion of macros, and other neat features. | |
Compiling and Testing Programs | ||
32.1 Running Compilations under Emacs | Compiling programs in languages other than Lisp (C, Pascal, etc.). | |
32.2 Compilation Mode | The mode for visiting compiler errors. | |
32.3 Subshells for Compilation | Customizing your shell properly for use in the compilation buffer. | |
32.4 Searching with Grep under Emacs | Searching with grep. | |
32.5 Finding Syntax Errors On The Fly | Finding syntax errors on the fly. | |
32.6 Running Debuggers Under Emacs | Running symbolic debuggers for non-Lisp programs. | |
32.7 Executing Lisp Expressions | Various modes for editing Lisp programs, with different facilities for running the Lisp programs. | |
32.8 Libraries of Lisp Code for Emacs | Creating Lisp programs to run in Emacs. | |
32.9 Evaluating Emacs Lisp Expressions | Executing a single Lisp expression in Emacs. | |
32.10 Lisp Interaction Buffers | Executing Lisp in an Emacs buffer. | |
32.11 Running an External Lisp | Communicating through Emacs with a separate Lisp. | |
Running Debuggers Under Emacs | ||
32.6.1 Starting GUD | How to start a debugger subprocess. | |
32.6.2 Debugger Operation | Connection between the debugger and source buffers. | |
32.6.3 Commands of GUD | Key bindings for common commands. | |
32.6.4 GUD Customization | Defining your own commands for GUD. | |
32.6.5 GDB Graphical Interface | An enhanced mode that uses GDB features to implement a graphical debugging environment through Emacs. | |
Maintaining Large Programs | ||
33.1 Change Logs | Maintaining a change history for your program. | |
33.2 Format of ChangeLog | What the change log file looks like. | |
33.3 Tags Tables | Go direct to any function in your program in one command. Tags remembers which file it is in. | |
33.4 Merging Files with Emerge | A convenient way of merging two versions of a program. | |
Tags Tables | ||
33.3.1 Source File Tag Syntax | Tag syntax for various types of code and text files. | |
33.3.2 Creating Tags Tables | Creating a tags table with etags .
| |
33.3.3 Etags Regexps | Create arbitrary tags using regular expressions. | |
33.3.4 Selecting a Tags Table | How to visit a tags table. | |
33.3.5 Finding a Tag | Commands to find the definition of a specific tag. | |
33.3.6 Searching and Replacing with Tags Tables | Using a tags table for searching and replacing. | |
33.3.7 Tags Table Inquiries | Listing and finding tags defined in a file. | |
Abbrevs | ||
34.1 Abbrev Concepts | Fundamentals of defined abbrevs. | |
34.2 Defining Abbrevs | Defining an abbrev, so it will expand when typed. | |
34.3 Controlling Abbrev Expansion | Controlling expansion: prefixes, canceling expansion. | |
34.4 Examining and Editing Abbrevs | Viewing or editing the entire list of defined abbrevs. | |
34.5 Saving Abbrevs | Saving the entire list of abbrevs for another session. | |
34.6 Dynamic Abbrev Expansion | Abbreviations for words already in the buffer. | |
34.7 Customizing Dynamic Abbreviation | What is a word, for dynamic abbrevs. Case handling. | |
Editing Pictures | ||
35.1 Basic Editing in Picture Mode | Basic concepts and simple commands of Picture Mode. | |
35.2 Controlling Motion after Insert | Controlling direction of cursor motion after "self-inserting" characters. | |
35.3 Picture Mode Tabs | Various features for tab stops and indentation. | |
35.4 Picture Mode Rectangle Commands | Clearing and superimposing rectangles. | |
Sending Mail | ||
36.1 The Format of the Mail Buffer | Format of the mail being composed. | |
36.2 Mail Header Fields | Details of permitted mail header fields. | |
36.3 Mail Aliases | Abbreviating and grouping mail addresses. | |
36.4 Mail Mode | Special commands for editing mail being composed. | |
36.5 Mail Amusements | Distract the NSA's attention; add a fortune to a msg. | |
36.6 Mail-Composition Methods | Using alternative mail-composition methods. | |
Reading Mail with Rmail | ||
37.1 Basic Concepts of Rmail | Basic concepts of Rmail, and simple use. | |
37.2 Scrolling Within a Message | Scrolling through a message. | |
37.3 Moving Among Messages | Moving to another message. | |
37.4 Deleting Messages | Deleting and expunging messages. | |
37.5 Rmail Files and Inboxes | How mail gets into the Rmail file. | |
37.6 Multiple Rmail Files | Using multiple Rmail files. | |
37.7 Copying Messages Out to Files | Copying message out to files. | |
37.8 Labels | Classifying messages by labeling them. | |
37.9 Rmail Attributes | Certain standard labels, called attributes. | |
37.10 Sending Replies | Sending replies to messages you are viewing. | |
37.11 Summaries | Summaries show brief info on many messages. | |
37.12 Sorting the Rmail File | Sorting messages in Rmail. | |
37.13 Display of Messages | How Rmail displays a message; customization. | |
37.14 Rmail and Coding Systems | How Rmail handles decoding character sets. | |
37.15 Editing Within a Message | Editing message text and headers in Rmail. | |
37.16 Digest Messages | Extracting the messages from a digest message. | |
37.17 Converting an Rmail File to Inbox Format | Converting an Rmail file to mailbox format. | |
37.18 Reading Rot13 Messages | Reading messages encoded in the rot13 code. | |
37.19 movemail program | More details of fetching new mail. | |
37.20 Retrieving Mail from Remote Mailboxes | ||
37.21 Retrieving Mail from Local Mailboxes in Various Formats | ||
Dired, the Directory Editor | ||
38.1 Entering Dired | How to invoke Dired. | |
38.2 Navigation in the Dired Buffer | How to move in the Dired buffer. | |
38.3 Deleting Files with Dired | Deleting files with Dired. | |
38.4 Flagging Many Files at Once | Flagging files based on their names. | |
38.5 Visiting Files in Dired | Other file operations through Dired. | |
38.6 Dired Marks vs. Flags | Flagging for deletion vs marking. | |
38.7 Operating on Files | How to copy, rename, print, compress, etc. either one file or several files. | |
38.8 Shell Commands in Dired | Running a shell command on the marked files. | |
38.9 Transforming File Names in Dired | Using patterns to rename multiple files. | |
38.10 File Comparison with Dired | Running `diff' by way of Dired. | |
38.11 Subdirectories in Dired | Adding subdirectories to the Dired buffer. | |
38.12 Subdirectory Switches in Dired | Subdirectory switches in Dired. | |
38.13 Moving Over Subdirectories | Moving across subdirectories, and up and down. | |
38.14 Hiding Subdirectories | Making subdirectories visible or invisible. | |
38.15 Updating the Dired Buffer | Discarding lines for files of no interest. | |
38.16 Dired and find | Using `find' to choose the files for Dired. | |
38.17 Editing the Dired Buffer | Operating on files by editing the Dired buffer. | |
38.18 Viewing Image Thumbnails in Dired | Viewing image thumbnails in Dired | |
38.19 Other Dired Features | Various other features. | |
The Calendar and the Diary | ||
39.1 Movement in the Calendar | Moving through the calendar; selecting a date. | |
39.2 Scrolling in the Calendar | Bringing earlier or later months onto the screen. | |
39.3 Counting Days | How many days are there between two dates? | |
39.4 Miscellaneous Calendar Commands | Exiting or recomputing the calendar. | |
39.5 Writing Calendar Files | Writing calendars to files of various formats. | |
39.6 Holidays | Displaying dates of holidays. | |
39.7 Times of Sunrise and Sunset | Displaying local times of sunrise and sunset. | |
39.8 Phases of the Moon | Displaying phases of the moon. | |
39.9 Conversion To and From Other Calendars | Converting dates to other calendar systems. | |
39.10 The Diary | Displaying events from your diary. | |
39.11 Appointments | Reminders when it's time to do something. | |
39.12 Importing and Exporting Diary Entries | Converting diary events to/from other formats. | |
39.13 Daylight Saving Time | How to specify when daylight saving time is active. | |
39.14 Summing Time Intervals | Keeping track of time intervals. | |
39.15 Customizing the Calendar and Diary | Advanced Calendar/Diary customization. | |
Movement in the Calendar | ||
39.1.1 Motion by Standard Lengths of Time | Moving by days, weeks, months, and years. | |
39.1.2 Beginning or End of Week, Month or Year | Moving to start/end of weeks, months, and years. | |
39.1.3 Specified Dates | Moving to the current date or another specific date. | |
Conversion To and From Other Calendars | ||
39.9.1 Supported Calendar Systems | The calendars Emacs understands (aside from Gregorian). | |
39.9.2 Converting To Other Calendars | Converting the selected date to various calendars. | |
39.9.3 Converting From Other Calendars | Moving to a date specified in another calendar. | |
39.9.4 Converting from the Mayan Calendar | Moving to a date specified in a Mayan calendar. | |
The Diary | ||
39.10.1 Displaying the Diary | Viewing diary entries and associated calendar dates. | |
39.10.2 The Diary File | Entering events in your diary. | |
39.10.3 Date Formats | Various ways you can specify dates. | |
39.10.4 Commands to Add to the Diary | Commands to create diary entries. | |
39.10.5 Special Diary Entries | Anniversaries, blocks of dates, cyclic entries, etc. | |
Gnus | ||
40.1 Gnus Buffers | The group, summary, and article buffers. | |
40.2 When Gnus Starts Up | What you should know about starting Gnus. | |
40.3 Summary of Gnus Commands | A short description of the basic Gnus commands. | |
Running Shell Commands from Emacs | ||
41.1 Single Shell Commands | How to run one shell command and return. | |
41.2 Interactive Inferior Shell | Permanent shell taking input via Emacs. | |
41.3 Shell Mode | Special Emacs commands used with permanent shell. | |
41.4 Shell Prompts | Two ways to recognize shell prompts. | |
41.5 Shell Command History | Repeating previous commands in a shell buffer. | |
41.6 Directory Tracking | Keeping track when the subshell changes directory. | |
41.7 Shell Mode Options | Options for customizing Shell mode. | |
41.8 Emacs Terminal Emulator | An Emacs window as a terminal emulator. | |
41.9 Term Mode | Special Emacs commands used in Term mode. | |
41.10 Page-At-A-Time Output | Paging in the terminal emulator. | |
41.11 Remote Host Shell | Connecting to another computer. | |
Using Emacs as a Server | ||
42.1 Invoking emacsclient | Emacs client startup options. | |
Printing Hard Copies | ||
44. PostScript Hardcopy | Printing buffers or regions as PostScript. | |
45. Variables for PostScript Hardcopy | Customizing the PostScript printing commands. | |
46. Printing Package | An optional advanced printing interface. | |
Hyperlinking and Navigation Features | ||
54.1 Following URLs | ||
54.2 Activating URLs | ||
54.3 Finding Files and URLs at Point | Finding files etc. at point. | |
Customization | ||
57.1 Minor Modes | Each minor mode is one feature you can turn on independently of any others. | |
57.2 Easy Customization Interface | Convenient way to browse and change user options. | |
57.3 Variables | Many Emacs commands examine Emacs variables to decide what to do; by setting variables, you can control their functioning. | |
57.4 Customizing Key Bindings | The keymaps say what command each key runs. By changing them, you can "redefine keys". | |
57.5 The Syntax Table | The syntax table controls how words and expressions are parsed. | |
57.6 The Init File, ‘~/.emacs’ | How to write common customizations in the ‘.emacs’ file. | |
Variables | ||
57.3.1 Examining and Setting Variables | Examining or setting one variable's value. | |
57.3.2 Hooks | Hook variables let you specify programs for parts of Emacs to run on particular occasions. | |
57.3.3 Local Variables | Per-buffer values of variables. | |
57.3.4 Local Variables in Files | How files can specify variable values. | |
Customizing Key Bindings | ||
57.4.1 Keymaps | Generalities. The global keymap. | |
57.4.2 Prefix Keymaps | Keymaps for prefix keys. | |
57.4.3 Local Keymaps | Major and minor modes have their own keymaps. | |
57.4.4 Minibuffer Keymaps | The minibuffer uses its own local keymaps. | |
57.4.5 Changing Key Bindings Interactively | How to redefine one key's meaning conveniently. | |
57.4.6 Rebinding Keys in Your Init File | Rebinding keys with your init file, ‘.emacs’. | |
57.4.7 Rebinding Function Keys | Rebinding terminal function keys. | |
57.4.8 Named ASCII Control Characters | Distinguishing <TAB> from C-i, and so on. | |
57.4.9 Rebinding Mouse Buttons | Rebinding mouse buttons in Emacs. | |
57.4.10 Disabling Commands | Disabling a command means confirmation is required before it can be executed. This is done to protect beginners from surprises. | |
The Init File, ‘~/.emacs’ | ||
57.6.1 Init File Syntax | Syntax of constants in Emacs Lisp. | |
57.6.2 Init File Examples | How to do some things with an init file. | |
57.6.3 Terminal-specific Initialization | Each terminal type can have an init file. | |
57.6.4 How Emacs Finds Your Init File | How Emacs finds the init file. | |
57.6.5 Non-ASCII Characters in Init Files | Using non-ASCII characters in an init file. | |
Dealing with Emacs Trouble | ||
59.1 If <DEL> Fails to Delete | What to do if <DEL> doesn't delete. | |
59.2 Recursive Editing Levels | `[...]' in mode line around the parentheses. | |
59.3 Garbage on the Screen | Garbage on the screen. | |
59.4 Garbage in the Text | Garbage in the text. | |
59.5 Running out of Memory | How to cope when you run out of memory. | |
59.6 Recovery After a Crash | Recovering editing in an Emacs session that crashed. | |
59.7 Emergency Escape | Emergency escape— What to do if Emacs stops responding. | |
59.8 Help for Total Frustration | When you are at your wits' end. | |
Reporting Bugs | ||
60.1 When Is There a Bug | Have you really found a bug? | |
60.2 Understanding Bug Reporting | How to report a bug effectively. | |
60.3 Checklist for Bug Reports | Steps to follow for a good bug report. | |
60.4 Sending Patches for GNU Emacs | How to send a patch for GNU Emacs. | |
Command Line Arguments for Emacs Invocation | ||
C.1 Action Arguments | Arguments to visit files, load libraries, and call functions. | |
C.2 Initial Options | Arguments that take effect while starting Emacs. | |
C.3 Command Argument Example | Examples of using command line arguments. | |
C.4 Resuming Emacs with Arguments | Specifying arguments when you resume a running Emacs. | |
C.5 Environment Variables | Environment variables that Emacs uses. | |
C.6 Specifying the Display Name | Changing the default display and using remote login. | |
C.7 Font Specification Options | Choosing a font for text, under X. | |
C.8 Window Color Options | Choosing display colors. | |
C.9 Options for Window Size and Position | Start-up window size, under X. | |
C.10 Internal and External Borders | Internal and external borders, under X. | |
C.11 Frame Titles | Specifying the initial frame's title. | |
C.12 Icons | Choosing what sort of icon to use, under X. | |
C.13 Other Display Options | Other display options. | |
Environment Variables | ||
C.5.1 General Variables | Environment variables that all versions of Emacs use. | |
C.5.2 Miscellaneous Variables | Certain system specific variables. | |
C.5.3 The MS-Windows System Registry | An alternative to the environment on MS-Windows. | |
X Options and Resources | ||
D.1 X Resources | Using X resources with Emacs (in general). | |
D.2 Table of X Resources for Emacs | Table of specific X resources that affect Emacs. | |
D.3 X Resources for Faces | X resources for customizing faces. | |
D.4 Lucid Menu X Resources | X resources for Lucid menus. | |
D.5 LessTif Menu X Resources | X resources for LessTif and Motif menus. | |
D.6 GTK resources | Resources for GTK widgets. | |
Emacs and Mac OS | ||
F.1 Keyboard and Mouse Input on Mac | Keyboard and mouse input on Mac. | |
F.2 International Character Set Support on Mac | International character sets on Mac. | |
F.3 Environment Variables and Command Line Arguments. | Setting environment variables for Emacs. | |
F.4 Volumes and Directories on Mac | Volumes and directories on Mac. | |
F.5 Specifying Fonts on Mac | Specifying fonts on Mac. | |
F.6 Mac-Specific Lisp Functions | Mac-specific Lisp functions. | |
Emacs and Microsoft Windows/MS-DOS | ||
G.1 Text Files and Binary Files | Text files use CRLF to terminate lines. | |
G.2 File Names on MS-Windows | File-name conventions on Windows. | |
G.3 Emulation of ls on MS-Windows | Emulation of ls for Dired.
| |
G.4 HOME Directory on MS-Windows | Where Emacs looks for your ‘.emacs’. | |
G.5 Keyboard Usage on MS-Windows | Windows-specific keyboard features. | |
G.6 Mouse Usage on MS-Windows | Windows-specific mouse features. | |
G.7 Subprocesses on Windows 9X/ME and Windows NT/2K/XP | Running subprocesses on Windows. | |
G.8 Printing and MS-Windows | How to specify the printer on MS-Windows. | |
G.9 Miscellaneous Windows-specific features | Miscellaneous Windows features. | |
G.10 Emacs and MS-DOS | Using Emacs on MS-DOS (otherwise known as MS-DOG). |
[Top] | [Contents] | [Index] | [ ? ] |