summaryrefslogtreecommitdiff
path: root/doc/emacs
diff options
context:
space:
mode:
Diffstat (limited to 'doc/emacs')
-rw-r--r--doc/emacs/ChangeLog64
-rw-r--r--doc/emacs/Makefile.in1
-rw-r--r--doc/emacs/buffers.texi10
-rw-r--r--doc/emacs/cal-xtra.texi8
-rw-r--r--doc/emacs/calendar.texi2
-rw-r--r--doc/emacs/custom.texi2
-rw-r--r--doc/emacs/dired.texi16
-rw-r--r--doc/emacs/display.texi91
-rw-r--r--doc/emacs/emacs.texi138
-rw-r--r--doc/emacs/files.texi181
-rw-r--r--doc/emacs/frames.texi8
-rw-r--r--doc/emacs/help.texi16
-rw-r--r--doc/emacs/makefile.w32-in1
-rw-r--r--doc/emacs/mini.texi6
-rw-r--r--doc/emacs/misc.texi588
-rw-r--r--doc/emacs/modes.texi13
-rw-r--r--doc/emacs/package.texi230
-rw-r--r--doc/emacs/picture-xtra.texi10
-rw-r--r--doc/emacs/rmail.texi2
-rw-r--r--doc/emacs/text.texi91
-rw-r--r--doc/emacs/trouble.texi2
21 files changed, 860 insertions, 620 deletions
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog
index 794771e24d3..2407d7dd18f 100644
--- a/doc/emacs/ChangeLog
+++ b/doc/emacs/ChangeLog
@@ -1,3 +1,67 @@
+2011-08-29 Chong Yidong <cyd@stupidchicken.com>
+
+ * modes.texi (Choosing Modes): auto-mode-case-fold is now t.
+
+2011-08-28 Chong Yidong <cyd@stupidchicken.com>
+
+ * files.texi (File Archives):
+ * cal-xtra.texi (Diary Display):
+ * help.texi (Help Mode): Add xref to View Mode.
+
+2011-08-28 Chong Yidong <cyd@stupidchicken.com>
+
+ * display.texi (View Mode): New node. Move view-file here from
+ Misc File Ops. Move view-buffer here from Misc Buffer.
+
+ * buffers.texi (Misc Buffer): Move view-buffer to View Mode.
+
+ * files.texi (Misc File Ops): Document new
+ delete-by-moving-to-trash behavior. Remove view-file.
+
+ * dired.texi (Dired Deletion): Shorten description of Trash.
+
+ * misc.texi (emacsclient Options): Document server-port.
+
+2011-08-27 Eli Zaretskii <eliz@gnu.org>
+
+ * frames.texi (Frame Commands): Advise setting focus-follows-mouse
+ even on MS-Windows. Fix a typo.
+
+2011-08-26 Chong Yidong <cyd@stupidchicken.com>
+
+ * package.texi: New file, documenting the package manager.
+
+ * emacs.texi: Include it.
+
+ * help.texi (Help Summary): Add describe-package.
+
+2011-08-25 Chong Yidong <cyd@stupidchicken.com>
+
+ * misc.texi (Printing): Convert subnodes into subsections.
+
+ * text.texi (Two-Column): Move into Text chapter.
+
+ * picture-xtra.texi (Picture Mode): Group with Editing Binary
+ Files section. Convert from chapter into section.
+
+ * display.texi (Narrowing): Move into display chapter.
+
+ * sending.texi (Sending Mail):
+ * rmail.texi (Rmail):
+ * misc.texi (Gnus, Document View):
+ * dired.texi (Dired):
+ * emacs.texi: Group the mail, rmail, and gnus chapters together.
+
+2011-08-07 Juri Linkov <juri@jurta.org>
+
+ * dired.texi (Operating on Files): Rewrite according to the fact
+ that `dired-do-chmod' doesn't use the `chmod' program anymore.
+
+2011-07-30 Michael Albinus <michael.albinus@gmx.de>
+
+ * mini.texi (Minibuffer File): Insert a reference to Tramp for
+ remote file name completion. (Bug#9197)
+
2011-07-28 Eli Zaretskii <eliz@gnu.org>
* mule.texi (Bidirectional Editing): Document the fact that
diff --git a/doc/emacs/Makefile.in b/doc/emacs/Makefile.in
index 9465c726eba..66cd7f1d92e 100644
--- a/doc/emacs/Makefile.in
+++ b/doc/emacs/Makefile.in
@@ -96,6 +96,7 @@ EMACSSOURCES= \
${srcdir}/dired.texi \
${srcdir}/calendar.texi \
${srcdir}/misc.texi \
+ ${srcdir}/package.texi \
${srcdir}/custom.texi \
${srcdir}/trouble.texi \
${srcdir}/cmdargs.texi \
diff --git a/doc/emacs/buffers.texi b/doc/emacs/buffers.texi
index d4cc4f7bb6a..c4880af2b5d 100644
--- a/doc/emacs/buffers.texi
+++ b/doc/emacs/buffers.texi
@@ -285,16 +285,6 @@ buffers with particular names. (With some of these features, such as
switch to some other buffer before using the command, in order for it
to make a different buffer.)
-@findex view-buffer
- @kbd{M-x view-buffer} is much like @kbd{M-x view-file} (@pxref{Misc
-File Ops}) except that it examines an already existing Emacs buffer.
-View mode provides commands for scrolling through the buffer
-conveniently but not for changing it. When you exit View mode with
-@kbd{q}, that switches back to the buffer (and the position) which was
-previously displayed in the window. Alternatively, if you exit View
-mode with @kbd{e}, the buffer and the value of point that resulted from
-your perusal remain in effect.
-
The commands @kbd{M-x append-to-buffer} and @kbd{M-x insert-buffer}
can be used to copy text from one buffer to another. @xref{Accumulating
Text}.
diff --git a/doc/emacs/cal-xtra.texi b/doc/emacs/cal-xtra.texi
index 52898efc268..6d20c92a6d9 100644
--- a/doc/emacs/cal-xtra.texi
+++ b/doc/emacs/cal-xtra.texi
@@ -538,13 +538,7 @@ are no diary entries, even if that day is a holiday. If you want such
days to be shown in the fancy diary buffer, set the variable
@code{diary-list-include-blanks} to @code{t}.@refill
-@c View mode does not seem to be described in the manual.
-@c buffers.texi has a brief mention.
- The fancy diary buffer enables View mode, a minor mode that provides
-commands for scrolling and searching the text. For example, @key{SPC}
-and @key{DEL} scroll forward and backward, and @key{s} starts an
-incremental search. See the documentation of the function
-@code{view-mode} for more information.
+ The fancy diary buffer enables View mode (@pxref{View Mode}).
The alternative display method @code{diary-simple-display} shows the
actual diary buffer, and uses invisible text to hide entries that don't
diff --git a/doc/emacs/calendar.texi b/doc/emacs/calendar.texi
index 9de223854c1..71a2dba7d08 100644
--- a/doc/emacs/calendar.texi
+++ b/doc/emacs/calendar.texi
@@ -2,7 +2,7 @@
@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2011
@c Free Software Foundation, Inc.
@c See file emacs.texi for copying conditions.
-@node Calendar/Diary, Document View, Dired, Top
+@node Calendar/Diary
@chapter The Calendar and the Diary
@cindex calendar
@findex calendar
diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi
index 6a6d465438d..a22d6c1f5dd 100644
--- a/doc/emacs/custom.texi
+++ b/doc/emacs/custom.texi
@@ -2,7 +2,7 @@
@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2011
@c Free Software Foundation, Inc.
@c See file emacs.texi for copying conditions.
-@node Customization, Quitting, Amusements, Top
+@node Customization
@chapter Customization
@cindex customization
diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi
index 501c4152e6a..eb2bcc109e8 100644
--- a/doc/emacs/dired.texi
+++ b/doc/emacs/dired.texi
@@ -2,7 +2,7 @@
@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2011
@c Free Software Foundation, Inc.
@c See file emacs.texi for copying conditions.
-@node Dired, Calendar/Diary, Rmail, Top
+@node Dired
@chapter Dired, the Directory Editor
@c This node is referenced in the tutorial. When renaming or deleting
@c it, the tutorial needs to be adjusted.
@@ -201,12 +201,10 @@ delete nonempty directories including all their contents. That can
be somewhat risky.
@vindex delete-by-moving-to-trash
- On some systems, there is a facility called the ``Trash'' or
-``Recycle Bin'', but Emacs does @emph{not} use it by default. Thus,
-when you delete a file in Dired, it is gone forever. However, you can
-tell Emacs to use the Trash for file deletion, by changing the
-variable @code{delete-by-moving-to-trash} to @code{t}. @xref{Misc
-File Ops}, for more information about the Trash.
+ If you change the variable @code{delete-by-moving-to-trash} to
+@code{t}, the above deletion commands will move the affected files or
+directories into the operating system's Trash, instead of deleting
+them outright. @xref{Misc File Ops}.
@node Flagging Many Files
@section Flagging Many Files at Once
@@ -645,8 +643,8 @@ link.
@cindex changing file permissions (in Dired)
@item M @var{modespec} @key{RET}
Change the mode (also called ``permission bits'') of the specified files
-(@code{dired-do-chmod}). This uses the @code{chmod} program, so
-@var{modespec} can be any argument that @code{chmod} can handle.
+(@code{dired-do-chmod}). @var{modespec} can be in octal or symbolic
+notation like arguments handled by the @code{chmod} program.
@findex dired-do-chgrp
@kindex G @r{(Dired)}
diff --git a/doc/emacs/display.texi b/doc/emacs/display.texi
index bfbfb355c9c..09e365d9d5f 100644
--- a/doc/emacs/display.texi
+++ b/doc/emacs/display.texi
@@ -15,6 +15,9 @@ want to see, and how to display it.
* Scrolling:: Commands to move text up and down in a window.
* Auto Scrolling:: Redisplay scrolls text automatically when needed.
* Horizontal Scrolling:: Moving text left and right in a window.
+* Narrowing:: Restricting display and editing to a portion
+ of the buffer.
+* View Mode:: Viewing read-only buffers.
* Follow Mode:: Follow mode lets two windows scroll as one.
* Faces:: How to change the display style using faces.
* Standard Faces:: Emacs' predefined faces.
@@ -300,6 +303,94 @@ a lower bound for automatic horizontal scrolling. Automatic scrolling
will continue to scroll the window, but never farther to the right
than the amount you previously set by @code{scroll-left}.
+@node Narrowing
+@section Narrowing
+@cindex widening
+@cindex restriction
+@cindex narrowing
+@cindex accessible portion
+
+ @dfn{Narrowing} means focusing in on some portion of the buffer,
+making the rest temporarily inaccessible. The portion which you can
+still get to is called the @dfn{accessible portion}. Canceling the
+narrowing, which makes the entire buffer once again accessible, is
+called @dfn{widening}. The bounds of narrowing in effect in a buffer
+are called the buffer's @dfn{restriction}.
+
+ Narrowing can make it easier to concentrate on a single subroutine or
+paragraph by eliminating clutter. It can also be used to limit the
+range of operation of a replace command or repeating keyboard macro.
+
+@table @kbd
+@item C-x n n
+Narrow down to between point and mark (@code{narrow-to-region}).
+@item C-x n w
+Widen to make the entire buffer accessible again (@code{widen}).
+@item C-x n p
+Narrow down to the current page (@code{narrow-to-page}).
+@item C-x n d
+Narrow down to the current defun (@code{narrow-to-defun}).
+@end table
+
+ When you have narrowed down to a part of the buffer, that part appears
+to be all there is. You can't see the rest, you can't move into it
+(motion commands won't go outside the accessible part), you can't change
+it in any way. However, it is not gone, and if you save the file all
+the inaccessible text will be saved. The word @samp{Narrow} appears in
+the mode line whenever narrowing is in effect.
+
+@kindex C-x n n
+@findex narrow-to-region
+ The primary narrowing command is @kbd{C-x n n} (@code{narrow-to-region}).
+It sets the current buffer's restrictions so that the text in the current
+region remains accessible, but all text before the region or after the
+region is inaccessible. Point and mark do not change.
+
+@kindex C-x n p
+@findex narrow-to-page
+@kindex C-x n d
+@findex narrow-to-defun
+ Alternatively, use @kbd{C-x n p} (@code{narrow-to-page}) to narrow
+down to the current page. @xref{Pages}, for the definition of a page.
+@kbd{C-x n d} (@code{narrow-to-defun}) narrows down to the defun
+containing point (@pxref{Defuns}).
+
+@kindex C-x n w
+@findex widen
+ The way to cancel narrowing is to widen with @kbd{C-x n w}
+(@code{widen}). This makes all text in the buffer accessible again.
+
+ You can get information on what part of the buffer you are narrowed down
+to using the @kbd{C-x =} command. @xref{Position Info}.
+
+ Because narrowing can easily confuse users who do not understand it,
+@code{narrow-to-region} is normally a disabled command. Attempting to use
+this command asks for confirmation and gives you the option of enabling it;
+if you enable the command, confirmation will no longer be required for
+it. @xref{Disabling}.
+
+@node View Mode
+@section View Mode
+@cindex View mode
+@cindex mode, View
+
+ View mode is a minor mode that lets you scan a buffer by sequential
+screenfuls. It provides commands for scrolling through the buffer
+conveniently but not for changing it. Apart from the usual Emacs
+cursor motion commands, you can type @key{SPC} to scroll forward one
+windowful, @key{DEL} to scroll backward, and @kbd{s} to start an
+incremental search.
+
+ Typing @kbd{q} disables View mode, and switches back to the buffer
+and position before View mode was enabled. Alternatively, typing
+@kbd{e} disables View mode, keeping the current buffer and position.
+
+@findex view-buffer
+@findex view-file
+ @kbd{M-x view-buffer} prompts for an existing Emacs buffer, switches
+to it, and enables View mode. @kbd{M-x view-file} prompts for a file
+and visits it with View mode enabled.
+
@node Follow Mode
@section Follow Mode
@cindex Follow mode
diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi
index e8fb42db0bb..2ba4af712af 100644
--- a/doc/emacs/emacs.texi
+++ b/doc/emacs/emacs.texi
@@ -187,39 +187,32 @@ Major Structures of Emacs
Advanced Features
* Modes:: Major and minor modes alter Emacs' basic behavior.
* Indentation:: Editing the white space at the beginnings of lines.
-* Text:: Commands and modes for editing English.
+* Text:: Commands and modes for editing human languages.
* Programs:: Commands and modes for editing programs.
* Building:: Compiling, running and debugging programs.
* Maintaining:: Features for maintaining large programs.
* Abbrevs:: Defining text abbreviations to reduce
the number of characters you must type.
-@c AFAICS, the tex stuff generates its own index and does not use this one.
-@ifnottex
-* Picture Mode:: Editing pictures made up of characters using
- the quarter-plane screen model.
-@end ifnottex
+* Dired:: Directory and file manager.
+* Calendar/Diary:: Calendar and diary facilities.
* Sending Mail:: Sending mail in Emacs.
* Rmail:: Reading mail in Emacs.
-* Dired:: You can "edit" a directory to manage files in it.
-* Calendar/Diary:: The calendar and diary facilities.
-* Document View:: Viewing PDF, PS and DVI files.
* Gnus:: A flexible mail and news reader.
+* Document View:: Viewing PDF, PS and DVI files.
* Shell:: Executing shell commands from Emacs.
* Emacs Server:: Using Emacs as an editing server.
* Printing:: Printing hardcopies of buffers or regions.
* Sorting:: Sorting lines, paragraphs or pages within Emacs.
-* Narrowing:: Restricting display and editing to a portion
- of the buffer.
-* Two-Column:: Splitting apart columns to edit them
- in side-by-side windows.
-* Editing Binary Files::Using Hexl mode to edit binary files.
+@ifnottex
+* Picture Mode:: Editing pictures made up of text characters.
+@end ifnottex
+* Editing Binary Files:: Editing binary files with Hexl mode.
* Saving Emacs Sessions:: Saving Emacs state from one session to the next.
-* Recursive Edit:: A command can allow you to do editing
- "within the command". This is called a
- "recursive editing level".
+* Recursive Edit:: Performing edits while "within another command".
* Emulation:: Emulating some other editors with Emacs.
* Hyperlinking:: Following links in buffers.
* Amusements:: Various games and hacks.
+* Packages:: Installing additional features.
* Customization:: Modifying the behavior of Emacs.
Recovery from Problems
@@ -350,6 +343,9 @@ Controlling the Display
* Scrolling:: Commands to move text up and down in a window.
* Auto Scrolling:: Redisplay scrolls text automatically when needed.
* Horizontal Scrolling:: Moving text left and right in a window.
+* Narrowing:: Restricting display and editing to a portion
+ of the buffer.
+* View Mode:: Viewing read-only buffers.
* Follow Mode:: Follow mode lets two windows scroll as one.
* Faces:: How to change the display style using faces.
* Standard Faces:: Emacs' predefined faces.
@@ -577,6 +573,7 @@ Commands for Human Languages
* Nroff Mode:: Editing input to the formatter nroff.
* Formatted Text:: Editing formatted text directly in WYSIWYG fashion.
* Text Based Tables:: Editing text-based tables in WYSIWYG fashion.
+* Two-Column:: Splitting text columns into separate windows.
Filling Text
@@ -885,52 +882,6 @@ Editing Pictures
* Rectangles in Picture:: Clearing and superimposing rectangles.
@end ifnottex
-Sending Mail
-
-* Mail Format:: Format of the mail being composed.
-* Mail Headers:: Details of some standard mail header fields.
-* Mail Aliases:: Abbreviating and grouping mail addresses.
-* Mail Commands:: Special commands for editing mail being composed.
-* Mail Signature:: Adding a signature to every message.
-* Mail Amusements:: Distracting the NSA; adding fortune messages.
-* Mail Methods:: Using alternative mail-composition methods.
-
-Mail Commands
-
-* Mail Sending:: Commands to send the message.
-* Header Editing:: Commands to move to header fields and edit them.
-* Citing Mail:: Quoting a message you are replying to.
-* Mail Misc:: Attachments, spell checking, etc.
-
-Reading Mail with Rmail
-
-* Rmail Basics:: Basic concepts of Rmail, and simple use.
-* Rmail Scrolling:: Scrolling through a message.
-* Rmail Motion:: Moving to another message.
-* Rmail Deletion:: Deleting and expunging messages.
-* Rmail Inbox:: How mail gets into the Rmail file.
-* Rmail Files:: Using multiple Rmail files.
-* Rmail Output:: Copying message out to files.
-* Rmail Labels:: Classifying messages by labeling them.
-* Rmail Attributes:: Certain standard labels, called attributes.
-* Rmail Reply:: Sending replies to messages you are viewing.
-* Rmail Summary:: Summaries show brief info on many messages.
-* Rmail Sorting:: Sorting messages in Rmail.
-* Rmail Display:: How Rmail displays a message; customization.
-* Rmail Coding:: How Rmail handles decoding character sets.
-* Rmail Editing:: Editing message text and headers in Rmail.
-* Rmail Digest:: Extracting the messages from a digest message.
-* Rmail Rot13:: Reading messages encoded in the rot13 code.
-* Movemail:: More details of fetching new mail.
-* Remote Mailboxes:: Retrieving mail from remote mailboxes.
-* Other Mailbox Formats:: Retrieving mail from local mailboxes in
- various formats.
-
-Summaries
-
-* Rmail Make Summary:: Making various sorts of summaries.
-* Rmail Summary Edit:: Manipulating messages from the summary.
-
Dired, the Directory Editor
* Dired Enter:: How to invoke Dired.
@@ -1014,6 +965,52 @@ Document Viewing
* Slicing:: Specifying which part of pages should be displayed.
* Conversion:: Influencing and triggering conversion.
+Sending Mail
+
+* Mail Format:: Format of the mail being composed.
+* Mail Headers:: Details of some standard mail header fields.
+* Mail Aliases:: Abbreviating and grouping mail addresses.
+* Mail Commands:: Special commands for editing mail being composed.
+* Mail Signature:: Adding a signature to every message.
+* Mail Amusements:: Distracting the NSA; adding fortune messages.
+* Mail Methods:: Using alternative mail-composition methods.
+
+Mail Commands
+
+* Mail Sending:: Commands to send the message.
+* Header Editing:: Commands to move to header fields and edit them.
+* Citing Mail:: Quoting a message you are replying to.
+* Mail Misc:: Attachments, spell checking, etc.
+
+Reading Mail with Rmail
+
+* Rmail Basics:: Basic concepts of Rmail, and simple use.
+* Rmail Scrolling:: Scrolling through a message.
+* Rmail Motion:: Moving to another message.
+* Rmail Deletion:: Deleting and expunging messages.
+* Rmail Inbox:: How mail gets into the Rmail file.
+* Rmail Files:: Using multiple Rmail files.
+* Rmail Output:: Copying message out to files.
+* Rmail Labels:: Classifying messages by labeling them.
+* Rmail Attributes:: Certain standard labels, called attributes.
+* Rmail Reply:: Sending replies to messages you are viewing.
+* Rmail Summary:: Summaries show brief info on many messages.
+* Rmail Sorting:: Sorting messages in Rmail.
+* Rmail Display:: How Rmail displays a message; customization.
+* Rmail Coding:: How Rmail handles decoding character sets.
+* Rmail Editing:: Editing message text and headers in Rmail.
+* Rmail Digest:: Extracting the messages from a digest message.
+* Rmail Rot13:: Reading messages encoded in the rot13 code.
+* Movemail:: More details of fetching new mail.
+* Remote Mailboxes:: Retrieving mail from remote mailboxes.
+* Other Mailbox Formats:: Retrieving mail from local mailboxes in
+ various formats.
+
+Rmail Summaries
+
+* Rmail Make Summary:: Making various sorts of summaries.
+* Rmail Summary Edit:: Manipulating messages from the summary.
+
Gnus
* Buffers of Gnus:: The group, summary, and article buffers.
@@ -1058,6 +1055,12 @@ Hyperlinking and Navigation Features
* Goto Address mode:: Activating URLs.
* FFAP:: Finding files etc. at point.
+Emacs Lisp Packages
+
+* Package Menu:: Buffer for viewing and managing packages.
+* Package Installation:: Options for package installation.
+* Package Files:: Where packages are installed.
+
Customization
* Easy Customization:: Convenient way to browse and change settings.
@@ -1494,16 +1497,15 @@ Lisp programming.
@c Includes vc1-xtra, emerge-xtra.
@include maintaining.texi
@include abbrevs.texi
-@ifnottex
-@include picture-xtra.texi
-@end ifnottex
-@include sending.texi
-@include rmail.texi
@c Includes dired-xtra.
@include dired.texi
@c Includes cal-xtra.
@include calendar.texi
+@include sending.texi
+@include rmail.texi
+@c Includes picture-xtra.texi
@include misc.texi
+@include package.texi
@include custom.texi
@include trouble.texi
diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi
index 793a11e62ed..2672c30363b 100644
--- a/doc/emacs/files.texi
+++ b/doc/emacs/files.texi
@@ -1272,11 +1272,11 @@ this, it runs the program specified by
The command @kbd{M-x delete-directory} prompts for a directory name
using the minibuffer, and deletes the directory if it is empty. If
the directory is not empty, you will be asked whether you want to
-delete it recursively. On systems that have a ``Trash'' or ``Recycle
-Bin'' feature, you can make this command move the specified directory
-to the Trash or Recycle Bin, instead of deleting it outright, by
-changing the variable @code{delete-by-moving-to-trash} to @code{t}.
-@xref{Misc File Ops}, for more information about using the Trash.
+delete it recursively. On systems that have a ``Trash'' (or ``Recycle
+Bin'') feature, you can make this command move the specified directory
+to the Trash instead of deleting it outright, by changing the variable
+@code{delete-by-moving-to-trash} to @code{t}. @xref{Misc File Ops},
+for more information about using the Trash.
@node Comparing Files
@section Comparing Files
@@ -1503,23 +1503,78 @@ patch syntax (@pxref{Useless Whitespace}).
Emacs has commands for performing many other operations on files.
All operate on one file; they do not accept wildcard file names.
-@findex view-file
-@cindex viewing
-@cindex View mode
-@cindex mode, View
- @kbd{M-x view-file} allows you to scan or read a file by sequential
-screenfuls. It reads a file name argument using the minibuffer. After
-reading the file into an Emacs buffer, @code{view-file} displays the
-beginning. You can then type @key{SPC} to scroll forward one windowful,
-or @key{DEL} to scroll backward. Various other commands are provided
-for moving around in the file, but none for changing it; type @kbd{?}
-while viewing for a list of them. They are mostly the same as normal
-Emacs cursor motion commands. To exit from viewing, type @kbd{q}.
-The commands for viewing are defined by a special minor mode called View
-mode.
-
- A related command, @kbd{M-x view-buffer}, views a buffer already present
-in Emacs. @xref{Misc Buffer}.
+@findex delete-file
+@cindex deletion (of files)
+ @kbd{M-x delete-file} prompts for a file and deletes it. If you are
+deleting many files in one directory, it may be more convenient to use
+Dired rather than @code{delete-file}. @xref{Dired Deletion}.
+
+@cindex trash
+@cindex recycle bin
+ @kbd{M-x move-file-to-trash} moves a file into the system
+@dfn{Trash} (or @dfn{Recycle Bin}). This is a facility available on
+most operating systems; files that are moved into the Trash can be
+brought back later if you change your mind.
+
+@vindex delete-by-moving-to-trash
+ By default, Emacs deletion commands do @emph{not} use the Trash. To
+use the Trash (when it is available) for common deletion commands,
+change the variable @code{delete-by-moving-to-trash} to @code{t}.
+This affects the commands @kbd{M-x delete-file} and @kbd{M-x
+delete-directory} (@pxref{Directories}), as well as the deletion
+commands in Dired (@pxref{Dired Deletion}). Supplying a prefix
+argument to @kbd{M-x delete-file} or @kbd{M-x delete-directory} makes
+them delete outright, instead of using the Trash, regardless of
+@code{delete-by-moving-to-trash}.
+
+@findex copy-file
+@cindex copying files
+ @kbd{M-x copy-file} reads the file @var{old} and writes a new file
+named @var{new} with the same contents.
+
+@findex copy-directory
+ @kbd{M-x copy-directory} copies directories, similar to the
+@command{cp -r} shell command. It prompts for a directory @var{old}
+and a destination @var{new}. If @var{new} is an existing directory,
+it creates a copy of the @var{old} directory and puts it in @var{new}.
+If @var{new} is not an existing directory, it copies all the contents
+of @var{old} into a new directory named @var{new}.
+
+@findex rename-file
+ @kbd{M-x rename-file} reads two file names @var{old} and @var{new}
+using the minibuffer, then renames file @var{old} as @var{new}. If
+the file name @var{new} already exists, you must confirm with
+@kbd{yes} or renaming is not done; this is because renaming causes the
+old meaning of the name @var{new} to be lost. If @var{old} and
+@var{new} are on different file systems, the file @var{old} is copied
+and deleted. If the argument @var{new} is just a directory name, the
+real new name is in that directory, with the same non-directory
+component as @var{old}. For example, @kbd{M-x rename-file RET ~/foo
+RET /tmp RET} renames @file{~/foo} to @file{/tmp/foo}. The same rule
+applies to all the remaining commands in this section. All of them
+ask for confirmation when the new file name already exists, too.
+
+@findex add-name-to-file
+@cindex hard links (creation)
+ @kbd{M-x add-name-to-file} adds an additional name to an existing
+file without removing its old name. The new name is created as a
+``hard link'' to the existing file. The new name must belong on the
+same file system that the file is on. On MS-Windows, this command
+works only if the file resides in an NTFS file system. On MS-DOS, it
+works by copying the file.
+
+@findex make-symbolic-link
+@cindex symbolic links (creation)
+ @kbd{M-x make-symbolic-link} reads two file names @var{target} and
+@var{linkname}, then creates a symbolic link named @var{linkname},
+which points at @var{target}. The effect is that future attempts to
+open file @var{linkname} will refer to whatever file is named
+@var{target} at the time the opening is done, or will get an error if
+the name @var{target} is nonexistent at that time. This command does
+not expand the argument @var{target}, so that it allows you to specify
+a relative name as the target of the link. Not all systems support
+symbolic links; on systems that don't support them, this command is
+not defined.
@kindex C-x i
@findex insert-file
@@ -1544,74 +1599,6 @@ specified file. @xref{Accumulating Text}. The variable
@code{write-region-inhibit-fsync} applies to these commands, as well
as saving files; see @ref{Customize Save}.
-@findex delete-file
-@cindex deletion (of files)
-@vindex delete-by-moving-to-trash
- @kbd{M-x delete-file} deletes the specified file, like the @code{rm}
-command in the shell. If you are deleting many files in one
-directory, it may be more convenient to use Dired rather than
-@code{delete-file}. @xref{Dired}.
-
-@cindex trash
-@cindex recycle bin
- On some systems, there is a facility called the ``Trash'' (or
-``Recycle Bin''); ``deleting'' a file normally means moving it into
-the Trash, and you can bring the file back from the Trash if you later
-change your mind. By default, Emacs does @emph{not} use the Trash for
-file deletion---when Emacs deletes a file, it is gone forever. You
-can tell Emacs to use the Trash by changing the variable
-@code{delete-by-moving-to-trash} to @code{t}. This applies to file
-deletion via @kbd{M-x delete-file}, as well as @kbd{M-x
-delete-directory} (@pxref{Directories}) and file deletion in Dired
-(@pxref{Dired Deletion}). In addition, you can explicitly move a file
-into the Trash with the command @kbd{M-x move-file-to-trash}.
-
-@findex rename-file
- @kbd{M-x rename-file} reads two file names @var{old} and @var{new} using
-the minibuffer, then renames file @var{old} as @var{new}. If the file name
-@var{new} already exists, you must confirm with @kbd{yes} or renaming is not
-done; this is because renaming causes the old meaning of the name @var{new}
-to be lost. If @var{old} and @var{new} are on different file systems, the
-file @var{old} is copied and deleted.
-
- If the argument @var{new} is just a directory name, the real new
-name is in that directory, with the same non-directory component as
-@var{old}. For example, @kbd{M-x rename-file RET ~/foo RET /tmp RET}
-renames @file{~/foo} to @file{/tmp/foo}. The same rule applies to all
-the remaining commands in this section. All of them ask for
-confirmation when the new file name already exists, too.
-
-@findex add-name-to-file
-@cindex hard links (creation)
- The similar command @kbd{M-x add-name-to-file} is used to add an
-additional name to an existing file without removing its old name.
-The new name is created as a ``hard link'' to the existing file.
-The new name must belong on the same file system that the file is on.
-On MS-Windows, this command works only if the file resides in an NTFS
-file system. On MS-DOS, it works by copying the file.
-
-@findex copy-file
-@findex copy-directory
-@cindex copying files
- @kbd{M-x copy-file} reads the file @var{old} and writes a new file
-named @var{new} with the same contents. @kbd{M-x copy-directory} does
-the same for directories, by recursive copying all files and
-subdirectories.
-
-@findex make-symbolic-link
-@cindex symbolic links (creation)
- @kbd{M-x make-symbolic-link} reads two file names @var{target} and
-@var{linkname}, then creates a symbolic link named @var{linkname},
-which points at @var{target}. The effect is that future attempts to
-open file @var{linkname} will refer to whatever file is named
-@var{target} at the time the opening is done, or will get an error if
-the name @var{target} is nonexistent at that time. This command does
-not expand the argument @var{target}, so that it allows you to specify
-a relative name as the target of the link.
-
- Not all systems support symbolic links; on systems that don't
-support them, this command is not defined.
-
@findex set-file-modes
@cindex file modes
@cindex file permissions
@@ -1670,13 +1657,13 @@ Tar mode is used also for compressed archives---files with extensions
The keys @kbd{e}, @kbd{f} and @key{RET} all extract a component file
into its own buffer. You can edit it there, and if you save the
buffer, the edited version will replace the version in the Tar buffer.
-@kbd{v} extracts a file into a buffer in View mode. @kbd{o} extracts
-the file and displays it in another window, so you could edit the file
-and operate on the archive simultaneously. @kbd{d} marks a file for
-deletion when you later use @kbd{x}, and @kbd{u} unmarks a file, as in
-Dired. @kbd{C} copies a file from the archive to disk and @kbd{R}
-renames a file within the archive. @kbd{g} reverts the buffer from
-the archive on disk.
+@kbd{v} extracts a file into a buffer in View mode (@pxref{View
+Mode}). @kbd{o} extracts the file and displays it in another window,
+so you could edit the file and operate on the archive simultaneously.
+@kbd{d} marks a file for deletion when you later use @kbd{x}, and
+@kbd{u} unmarks a file, as in Dired. @kbd{C} copies a file from the
+archive to disk and @kbd{R} renames a file within the archive.
+@kbd{g} reverts the buffer from the archive on disk.
The keys @kbd{M}, @kbd{G}, and @kbd{O} change the file's permission
bits, group, and owner, respectively.
diff --git a/doc/emacs/frames.texi b/doc/emacs/frames.texi
index b9b56670988..328deaec357 100644
--- a/doc/emacs/frames.texi
+++ b/doc/emacs/frames.texi
@@ -467,12 +467,14 @@ for Emacs to detect this automatically, so you should set the variable
@code{focus-follows-mouse}. The default is @code{nil}, meaning you
have to click on the window to select it (the default for most modern
window managers). You should change it to @code{t} if your window
-manager selects and window and gives it focus anytime you move the
-mouse onto the window.
+manager selects a window and gives it focus anytime you move the mouse
+onto the window.
The window manager that is part of MS-Windows always gives focus to
a frame that raises, so this variable has no effect in the native
-MS-Windows build of Emacs.
+MS-Windows build of Emacs. However, you may still wish to set this
+variable to @code{t} to have Emacs automatically move the mouse
+pointer to the raised frame.
@node Fonts
@section Fonts
diff --git a/doc/emacs/help.texi b/doc/emacs/help.texi
index 9a75bfb1887..9ff995138f5 100644
--- a/doc/emacs/help.texi
+++ b/doc/emacs/help.texi
@@ -126,16 +126,20 @@ The complete Emacs manual is available on-line in Info.
Display the name and documentation of the command that @var{key} runs
(@code{describe-key}).
@item C-h l
-Display a description of your last 300 keystrokes
+Display a description of your last 300 keystrokes
(@code{view-lossage}).
@item C-h m
Display documentation of the current major mode (@code{describe-mode}).
@item C-h n
Display news of recent Emacs changes (@code{view-emacs-news}).
@item C-h p
-Find packages by topic keyword (@code{finder-by-keyword}). For an
-alternative interface to the same information, try the @code{info-finder}
-command.
+Find packages by topic keyword (@code{finder-by-keyword}). This lists
+packages using a package menu buffer (@pxref{Package Menu}); for an
+alternative interface to the same information, try the
+@code{info-finder} command.
+@item C-h P @var{package} @key{RET}
+Display documentation about the package named @var{package}
+(@code{describe-package}; @pxref{Packages}).
@item C-h r
Display the Emacs manual in Info (@code{info-emacs-manual}).
@item C-h s
@@ -401,8 +405,8 @@ the variable @code{apropos-documentation-sort-by-scores} is
@node Help Mode
@section Help Mode Commands
- Help buffers provide the same commands as View mode (@pxref{Misc File
-Ops}), plus a few special commands of their own.
+ Help buffers provide the same commands as View mode (@pxref{View
+Mode}), plus a few special commands of their own.
@table @kbd
@item @key{SPC}
diff --git a/doc/emacs/makefile.w32-in b/doc/emacs/makefile.w32-in
index 4064f4ef6a3..e128a50ebd3 100644
--- a/doc/emacs/makefile.w32-in
+++ b/doc/emacs/makefile.w32-in
@@ -88,6 +88,7 @@ EMACSSOURCES= \
$(srcdir)/dired.texi \
$(srcdir)/calendar.texi \
$(srcdir)/misc.texi \
+ $(srcdir)/package.texi \
$(srcdir)/custom.texi \
$(srcdir)/trouble.texi \
$(srcdir)/cmdargs.texi \
diff --git a/doc/emacs/mini.texi b/doc/emacs/mini.texi
index ce0d396fd0d..da1e88ab331 100644
--- a/doc/emacs/mini.texi
+++ b/doc/emacs/mini.texi
@@ -125,6 +125,10 @@ file names, change the variable @code{insert-default-directory} to
Nonetheless, relative file name arguments are still interpreted based
on the same default directory.
+ For rules how to read remote file names in the minibuffer, see
+@ref{Filename completion, file name completion,, tramp}, in the Tramp
+manual.
+
@node Minibuffer Edit
@section Editing in the Minibuffer
@@ -491,7 +495,7 @@ argument (@code{previous-history-element}).
Move to the next item in the minibuffer history
(@code{next-history-element}).
@item M-r @var{regexp} @key{RET}
-Move to an earlier item in the minibuffer history that
+Move to an earlier item in the minibuffer history that
matches @var{regexp} (@code{previous-matching-history-element}).
@item M-s @var{regexp} @key{RET}
Move to a later item in the minibuffer history that matches
diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi
index 426610e65b9..598f495784f 100644
--- a/doc/emacs/misc.texi
+++ b/doc/emacs/misc.texi
@@ -10,9 +10,9 @@ else: viewing ``document files'', reading netnews, running shell
commands and shell subprocesses, using a single shared Emacs for
utilities that expect to run an editor as a subprocess, printing
hardcopy, sorting text, narrowing display to part of the buffer,
-editing double-column files and binary files, saving an Emacs session
-for later resumption, following hyperlinks, browsing images, emulating
-other editors, and various diversions and amusements.
+editing binary files, saving an Emacs session for later resumption,
+following hyperlinks, browsing images, emulating other editors, and
+various diversions and amusements.
@end iftex
@@ -20,187 +20,7 @@ other editors, and various diversions and amusements.
@raisesections
@end ifnottex
-@node Document View, Gnus, Calendar/Diary, Top
-@section Document Viewing
-@cindex DVI file
-@cindex PDF file
-@cindex PS file
-@cindex Postscript file
-@cindex OpenDocument file
-@cindex Microsoft Office file
-@cindex DocView mode
-@cindex mode, DocView
-@cindex document viewer (DocView)
-@findex doc-view-mode
-
-DocView mode (@code{doc-view-mode}) is a viewer for DVI, Postscript
-(PS), PDF, OpenDocument, and Microsoft Office documents. It provides
-features such as slicing, zooming, and searching inside documents. It
-works by converting the document to a set of images using the
-@command{gs} (GhostScript) command and other external tools
-@footnote{@code{gs} is a hard requirement. For DVI files,
-@code{dvipdf} or @code{dvipdfm} is needed. For OpenDocument and
-Microsoft Office documents, the @code{unoconv} tool is needed.}, and
-displaying those images.
-
-@findex doc-view-toggle-display
-@findex doc-view-toggle-display
-@cindex doc-view-minor-mode
- When you visit a document file with the exception of Postscript
-files, Emacs automatically switches to DocView mode if possible
-@footnote{The needed external tools for this document type have to be
-available, emacs needs to run in a graphical frame, and PNG image
-support has to be compiled into emacs. If any of these requirements
-is not fulfilled, DocView falls back to an appropriate mode.}. When
-you visit a Postscript file, Emacs switches to PS mode, a major mode
-for editing Postscript files as text; however, it also enables DocView
-minor mode, so you can type @kbd{C-c C-c} to view the document with
-DocView. (PDF and DVI files, unlike Postscript files, are not usually
-human-editable.) In either case, repeating @kbd{C-c C-c}
-(@code{doc-view-toggle-display}) toggles between DocView and the file
-text.
-
- You can explicitly toggle DocView mode with the command @code{M-x
-doc-view-mode}, and DocView minor mode with the command @code{M-x
-doc-view-minor-mode}.
-
- When DocView mode starts, it displays a welcome screen and begins
-formatting the file, page by page. It displays the first page once
-that has been formatted.
-
-@findex doc-view-enlarge
-@findex doc-view-shrink
-@vindex doc-view-resolution
- When in DocView mode, you can enlarge or shrink the document with
-@kbd{+} (@code{doc-view-enlarge}) and @kbd{-}
-(@code{doc-view-shrink}). To specify the default size for DocView,
-set or customize the variable @code{doc-view-resolution}.
-
- To kill the DocView buffer, type @kbd{k}
-(@code{doc-view-kill-proc-and-buffer}). To bury it, type @kbd{q}
-(@code{quit-window}).
-
-@menu
-* Navigation:: Navigation inside DocView buffers.
-* Searching:: Searching inside documents.
-* Slicing:: Specifying which part of pages should be displayed.
-* Conversion:: Influencing and triggering conversion.
-@end menu
-
-@node Navigation
-@subsection Navigation
-
-When in DocView mode, you can scroll the current page using the usual
-Emacs movement keys: @kbd{C-p}, @kbd{C-n}, @kbd{C-b}, @kbd{C-f}, and
-the arrow keys.
-
-@vindex doc-view-continuous
- By default, the line-motion keys @kbd{C-p} and @kbd{C-n} stop
-scrolling at the beginning and end of the current page, respectively.
-However, if you change the variable @code{doc-view-continuous} to a
-non-@code{nil} value, then @kbd{C-p} displays the previous page if you
-are already at the beginning of the current page, and @kbd{C-n}
-displays the next page if you are at the end of the current page.
-
-@findex doc-view-next-page
-@findex doc-view-previous-page
- You can also display the next page by typing @kbd{n}, @key{next} or
-@kbd{C-x ]} (@code{doc-view-next-page}). To display the previous
-page, type @kbd{p}, @key{prior} or @kbd{C-x [}
-(@code{doc-view-previous-page}).
-
-@findex doc-view-scroll-up-or-next-page
-@findex doc-view-scroll-down-or-previous-page
- The @key{SPC} (@code{doc-view-scroll-up-or-next-page}) key is a
-convenient way to advance through the document. It scrolls within the
-current page or advances to the next. @key{DEL} moves backwards in a
-similar way (@code{doc-view-scroll-down-or-previous-page}).
-
-@findex doc-view-first-page
-@findex doc-view-last-page
-@findex doc-view-goto-page
- To go to the first page, type @kbd{M-<}
-(@code{doc-view-first-page}); to go to the last one, type @kbd{M->}
-(@code{doc-view-last-page}). To jump to a page by its number, type
-@kbd{M-g M-g} or @kbd{M-g g} (@code{doc-view-goto-page}).
-
-@node Searching
-@subsection Searching
-
-While in DocView mode, you can search the file's text for a regular
-expression (@pxref{Regexps}). The interface for searching is inspired
-by @code{isearch} (@pxref{Incremental Search}).
-
-@findex doc-view-search
-@findex doc-view-search-backward
-@findex doc-view-show-tooltip
- To begin a search, type @kbd{C-s} (@code{doc-view-search}) or
-@kbd{C-r} (@code{doc-view-search-backward}). This reads a regular
-expression using a minibuffer, then echoes the number of matches found
-within the document. You can move forward and back among the matches
-by typing @kbd{C-s} and @kbd{C-r}. DocView mode has no way to show
-the match inside the page image; instead, it displays a tooltip (at
-the mouse position) listing all matching lines in the current page.
-To force display of this tooltip, type @kbd{C-t}
-(@code{doc-view-show-tooltip}).
-
- To start a new search, use the search command with a prefix
-argument; i.e., @kbd{C-u C-s} for a forward search or @kbd{C-u C-r}
-for a backward search.
-
-@node Slicing
-@subsection Slicing
-
-Documents often have wide margins for printing. They are annoying
-when reading the document on the screen, because they use up screen
-space and can cause inconvenient scrolling.
-
-@findex doc-view-set-slice
-@findex doc-view-set-slice-using-mouse
- With DocView you can hide these margins by selecting a @dfn{slice}
-of pages to display. A slice is a rectangle within the page area;
-once you specify a slice in DocView, it applies to whichever page you
-look at.
-
- To specify the slice numerically, type @kbd{s s}
-(@code{doc-view-set-slice}); then enter the top left pixel position
-and the slice's width and height.
-@c ??? how does this work?
-
- A more convenient graphical way to specify the slice is with @kbd{s
-m} (@code{doc-view-set-slice-using-mouse}), where you use the mouse to
-select the slice.
-@c ??? How does this work?
-
-@findex doc-view-reset-slice
- To cancel the selected slice, type @kbd{s r}
-(@code{doc-view-reset-slice}). Then DocView shows the entire page
-including its entire margins.
-
-@node Conversion
-@subsection Conversion
-
-@vindex doc-view-cache-directory
-@findex doc-view-clear-cache
-For efficiency, DocView caches the images produced by @command{gs}.
-The name of this directory is given by the variable
-@code{doc-view-cache-directory}. You can clear the cache directory by
-typing @code{M-x doc-view-clear-cache}.
-
-@findex doc-view-kill-proc
-@findex doc-view-kill-proc-and-buffer
- To force a reconversion of the currently viewed document, type
-@kbd{r} or @kbd{g} (@code{revert-buffer}). To kill the converter
-process associated with the current buffer, type @kbd{K}
-(@code{doc-view-kill-proc}). The command @kbd{k}
-(@code{doc-view-kill-proc-and-buffer}) kills the converter process and
-the DocView buffer.
-
- The zoom commands @kbd{+} (@code{doc-view-enlarge}) and @kbd{-}
-(@code{doc-view-shrink}) need to reconvert the document at the new
-size. The current page is converted first.
-
-@node Gnus, Shell, Document View, Top
+@node Gnus
@section Gnus
@cindex Gnus
@cindex reading netnews
@@ -411,82 +231,187 @@ for @var{regexp}.
@end table
-@ignore
-@node Where to Look
-@subsection Where to Look Further
+@node Document View
+@section Document Viewing
+@cindex DVI file
+@cindex PDF file
+@cindex PS file
+@cindex Postscript file
+@cindex OpenDocument file
+@cindex Microsoft Office file
+@cindex DocView mode
+@cindex mode, DocView
+@cindex document viewer (DocView)
+@findex doc-view-mode
-@c Too many references to the name of the manual if done with xref in TeX!
-Gnus is powerful and customizable. Here are references to a few
-@ifnottex
-additional topics:
+DocView mode (@code{doc-view-mode}) is a viewer for DVI, Postscript
+(PS), PDF, OpenDocument, and Microsoft Office documents. It provides
+features such as slicing, zooming, and searching inside documents. It
+works by converting the document to a set of images using the
+@command{gs} (GhostScript) command and other external tools
+@footnote{@code{gs} is a hard requirement. For DVI files,
+@code{dvipdf} or @code{dvipdfm} is needed. For OpenDocument and
+Microsoft Office documents, the @code{unoconv} tool is needed.}, and
+displaying those images.
-@end ifnottex
-@iftex
-additional topics in @cite{The Gnus Manual}:
+@findex doc-view-toggle-display
+@findex doc-view-toggle-display
+@cindex doc-view-minor-mode
+ When you visit a document file with the exception of Postscript
+files, Emacs automatically switches to DocView mode if possible
+@footnote{The needed external tools for this document type have to be
+available, emacs needs to run in a graphical frame, and PNG image
+support has to be compiled into emacs. If any of these requirements
+is not fulfilled, DocView falls back to an appropriate mode.}. When
+you visit a Postscript file, Emacs switches to PS mode, a major mode
+for editing Postscript files as text; however, it also enables DocView
+minor mode, so you can type @kbd{C-c C-c} to view the document with
+DocView. (PDF and DVI files, unlike Postscript files, are not usually
+human-editable.) In either case, repeating @kbd{C-c C-c}
+(@code{doc-view-toggle-display}) toggles between DocView and the file
+text.
-@itemize @bullet
-@item
-Follow discussions on specific topics.@*
-See section ``Threading.''
+ You can explicitly toggle DocView mode with the command @code{M-x
+doc-view-mode}, and DocView minor mode with the command @code{M-x
+doc-view-minor-mode}.
-@item
-Read digests. See section ``Document Groups.''
+ When DocView mode starts, it displays a welcome screen and begins
+formatting the file, page by page. It displays the first page once
+that has been formatted.
-@item
-Refer to and jump to the parent of the current article.@*
-See section ``Finding the Parent.''
+@findex doc-view-enlarge
+@findex doc-view-shrink
+@vindex doc-view-resolution
+ When in DocView mode, you can enlarge or shrink the document with
+@kbd{+} (@code{doc-view-enlarge}) and @kbd{-}
+(@code{doc-view-shrink}). To specify the default size for DocView,
+set or customize the variable @code{doc-view-resolution}.
-@item
-Refer to articles by using Message-IDs included in the messages.@*
-See section ``Article Keymap.''
+ To kill the DocView buffer, type @kbd{k}
+(@code{doc-view-kill-proc-and-buffer}). To bury it, type @kbd{q}
+(@code{quit-window}).
-@item
-Save articles. See section ``Saving Articles.''
+@menu
+* Navigation:: Navigation inside DocView buffers.
+* Searching:: Searching inside documents.
+* Slicing:: Specifying which part of pages should be displayed.
+* Conversion:: Influencing and triggering conversion.
+@end menu
-@item
-Have Gnus score articles according to various criteria, like author
-name, subject, or string in the body of the articles.@*
-See section ``Scoring.''
+@node Navigation
+@subsection Navigation
-@item
-Send an article to a newsgroup.@*
-See section ``Composing Messages.''
-@end itemize
-@end iftex
-@ifnottex
-@itemize @bullet
-@item
-Follow discussions on specific topics.@*
-@xref{Threading, , Reading Based on Conversation Threads,
-gnus, The Gnus Manual}.
+When in DocView mode, you can scroll the current page using the usual
+Emacs movement keys: @kbd{C-p}, @kbd{C-n}, @kbd{C-b}, @kbd{C-f}, and
+the arrow keys.
-@item
-Read digests. @xref{Document Groups, , , gnus, The Gnus Manual}.
+@vindex doc-view-continuous
+ By default, the line-motion keys @kbd{C-p} and @kbd{C-n} stop
+scrolling at the beginning and end of the current page, respectively.
+However, if you change the variable @code{doc-view-continuous} to a
+non-@code{nil} value, then @kbd{C-p} displays the previous page if you
+are already at the beginning of the current page, and @kbd{C-n}
+displays the next page if you are at the end of the current page.
-@item
-Refer to and jump to the parent of the current article.@*
-@xref{Finding the Parent, , , gnus, The Gnus Manual}.
+@findex doc-view-next-page
+@findex doc-view-previous-page
+ You can also display the next page by typing @kbd{n}, @key{next} or
+@kbd{C-x ]} (@code{doc-view-next-page}). To display the previous
+page, type @kbd{p}, @key{prior} or @kbd{C-x [}
+(@code{doc-view-previous-page}).
-@item
-Refer to articles by using Message-IDs included in the messages.@*
-@xref{Article Keymap, , , gnus, The Gnus Manual}.
+@findex doc-view-scroll-up-or-next-page
+@findex doc-view-scroll-down-or-previous-page
+ The @key{SPC} (@code{doc-view-scroll-up-or-next-page}) key is a
+convenient way to advance through the document. It scrolls within the
+current page or advances to the next. @key{DEL} moves backwards in a
+similar way (@code{doc-view-scroll-down-or-previous-page}).
-@item
-Save articles. @xref{Saving Articles, , , gnus, The Gnus Manual}.
+@findex doc-view-first-page
+@findex doc-view-last-page
+@findex doc-view-goto-page
+ To go to the first page, type @kbd{M-<}
+(@code{doc-view-first-page}); to go to the last one, type @kbd{M->}
+(@code{doc-view-last-page}). To jump to a page by its number, type
+@kbd{M-g M-g} or @kbd{M-g g} (@code{doc-view-goto-page}).
-@item
-Have Gnus score articles according to various criteria, like author
-name, subject, or string in the body of the articles.@*
-@xref{Scoring, , , gnus, The Gnus Manual}.
+@node Searching
+@subsection Searching
-@item
-Send an article to a newsgroup.@*
-@xref{Composing Messages, , , gnus, The Gnus Manual}.
-@end itemize
-@end ifnottex
-@end ignore
+While in DocView mode, you can search the file's text for a regular
+expression (@pxref{Regexps}). The interface for searching is inspired
+by @code{isearch} (@pxref{Incremental Search}).
+
+@findex doc-view-search
+@findex doc-view-search-backward
+@findex doc-view-show-tooltip
+ To begin a search, type @kbd{C-s} (@code{doc-view-search}) or
+@kbd{C-r} (@code{doc-view-search-backward}). This reads a regular
+expression using a minibuffer, then echoes the number of matches found
+within the document. You can move forward and back among the matches
+by typing @kbd{C-s} and @kbd{C-r}. DocView mode has no way to show
+the match inside the page image; instead, it displays a tooltip (at
+the mouse position) listing all matching lines in the current page.
+To force display of this tooltip, type @kbd{C-t}
+(@code{doc-view-show-tooltip}).
+
+ To start a new search, use the search command with a prefix
+argument; i.e., @kbd{C-u C-s} for a forward search or @kbd{C-u C-r}
+for a backward search.
+
+@node Slicing
+@subsection Slicing
+
+Documents often have wide margins for printing. They are annoying
+when reading the document on the screen, because they use up screen
+space and can cause inconvenient scrolling.
+
+@findex doc-view-set-slice
+@findex doc-view-set-slice-using-mouse
+ With DocView you can hide these margins by selecting a @dfn{slice}
+of pages to display. A slice is a rectangle within the page area;
+once you specify a slice in DocView, it applies to whichever page you
+look at.
+
+ To specify the slice numerically, type @kbd{s s}
+(@code{doc-view-set-slice}); then enter the top left pixel position
+and the slice's width and height.
+@c ??? how does this work?
+
+ A more convenient graphical way to specify the slice is with @kbd{s
+m} (@code{doc-view-set-slice-using-mouse}), where you use the mouse to
+select the slice.
+@c ??? How does this work?
+
+@findex doc-view-reset-slice
+ To cancel the selected slice, type @kbd{s r}
+(@code{doc-view-reset-slice}). Then DocView shows the entire page
+including its entire margins.
+
+@node Conversion
+@subsection Conversion
+
+@vindex doc-view-cache-directory
+@findex doc-view-clear-cache
+For efficiency, DocView caches the images produced by @command{gs}.
+The name of this directory is given by the variable
+@code{doc-view-cache-directory}. You can clear the cache directory by
+typing @code{M-x doc-view-clear-cache}.
-@node Shell, Emacs Server, Gnus, Top
+@findex doc-view-kill-proc
+@findex doc-view-kill-proc-and-buffer
+ To force a reconversion of the currently viewed document, type
+@kbd{r} or @kbd{g} (@code{revert-buffer}). To kill the converter
+process associated with the current buffer, type @kbd{K}
+(@code{doc-view-kill-proc}). The command @kbd{k}
+(@code{doc-view-kill-proc-and-buffer}) kills the converter process and
+the DocView buffer.
+
+ The zoom commands @kbd{+} (@code{doc-view-enlarge}) and @kbd{-}
+(@code{doc-view-shrink}) need to reconvert the document at the new
+size. The current page is converted first.
+
+@node Shell
@section Running Shell Commands from Emacs
@cindex subshell
@cindex shell commands
@@ -1671,6 +1596,11 @@ runs, and (ii) provide @command{emacsclient} with the server file.
(One convenient way to do the latter is to put the server file on a
networked file system such as NFS.)
+@vindex server-port
+ When the Emacs server is using TCP, the variable @code{server-port}
+determines the port number to listen on; the default value,
+@code{nil}, means to choose a random port when the server starts.
+
@item -n
@itemx --no-wait
Let @command{emacsclient} exit immediately, instead of waiting until
@@ -1788,7 +1718,7 @@ not compatible with @code{lpr}.
@end menu
@node PostScript, PostScript Variables,, Printing
-@section PostScript Hardcopy
+@subsection PostScript Hardcopy
These commands convert buffer contents to PostScript,
either printing it or leaving it in another Emacs buffer.
@@ -1878,7 +1808,7 @@ supports ISO 8859-1 characters.
@end ifnottex
@node PostScript Variables, Printing Package, PostScript, Printing
-@section Variables for PostScript Hardcopy
+@subsection Variables for PostScript Hardcopy
@vindex ps-lpr-command
@vindex ps-lpr-switches
@@ -1973,7 +1903,7 @@ includes a single directory @file{/usr/local/share/emacs/fonts/bdf}.
described in the Lisp files @file{ps-print.el} and @file{ps-mule.el}.
@node Printing Package,, PostScript Variables, Printing
-@section Printing Package
+@subsection Printing Package
@cindex Printing package
The basic Emacs facilities for printing hardcopy can be extended
@@ -1999,7 +1929,7 @@ to print, you start the print job using the @samp{Print} button (click
further information on the various options, use the @samp{Interface
Help} button.
-@node Sorting, Narrowing, Printing, Top
+@node Sorting
@section Sorting Text
@cindex sorting
@@ -2134,163 +2064,13 @@ rectangle moves along with the text inside the rectangle.
Many of the sort commands ignore case differences when comparing, if
@code{sort-fold-case} is non-@code{nil}.
-@node Narrowing, Two-Column, Sorting, Top
-@section Narrowing
-@cindex widening
-@cindex restriction
-@cindex narrowing
-@cindex accessible portion
-
- @dfn{Narrowing} means focusing in on some portion of the buffer,
-making the rest temporarily inaccessible. The portion which you can
-still get to is called the @dfn{accessible portion}. Canceling the
-narrowing, which makes the entire buffer once again accessible, is
-called @dfn{widening}. The bounds of narrowing in effect in a buffer
-are called the buffer's @dfn{restriction}.
-
- Narrowing can make it easier to concentrate on a single subroutine or
-paragraph by eliminating clutter. It can also be used to limit the
-range of operation of a replace command or repeating keyboard macro.
-
-@table @kbd
-@item C-x n n
-Narrow down to between point and mark (@code{narrow-to-region}).
-@item C-x n w
-Widen to make the entire buffer accessible again (@code{widen}).
-@item C-x n p
-Narrow down to the current page (@code{narrow-to-page}).
-@item C-x n d
-Narrow down to the current defun (@code{narrow-to-defun}).
-@end table
-
- When you have narrowed down to a part of the buffer, that part appears
-to be all there is. You can't see the rest, you can't move into it
-(motion commands won't go outside the accessible part), you can't change
-it in any way. However, it is not gone, and if you save the file all
-the inaccessible text will be saved. The word @samp{Narrow} appears in
-the mode line whenever narrowing is in effect.
-
-@kindex C-x n n
-@findex narrow-to-region
- The primary narrowing command is @kbd{C-x n n} (@code{narrow-to-region}).
-It sets the current buffer's restrictions so that the text in the current
-region remains accessible, but all text before the region or after the
-region is inaccessible. Point and mark do not change.
-
-@kindex C-x n p
-@findex narrow-to-page
-@kindex C-x n d
-@findex narrow-to-defun
- Alternatively, use @kbd{C-x n p} (@code{narrow-to-page}) to narrow
-down to the current page. @xref{Pages}, for the definition of a page.
-@kbd{C-x n d} (@code{narrow-to-defun}) narrows down to the defun
-containing point (@pxref{Defuns}).
-
-@kindex C-x n w
-@findex widen
- The way to cancel narrowing is to widen with @kbd{C-x n w}
-(@code{widen}). This makes all text in the buffer accessible again.
-
- You can get information on what part of the buffer you are narrowed down
-to using the @kbd{C-x =} command. @xref{Position Info}.
-
- Because narrowing can easily confuse users who do not understand it,
-@code{narrow-to-region} is normally a disabled command. Attempting to use
-this command asks for confirmation and gives you the option of enabling it;
-if you enable the command, confirmation will no longer be required for
-it. @xref{Disabling}.
-
-@node Two-Column, Editing Binary Files, Narrowing, Top
-@section Two-Column Editing
-@cindex two-column editing
-@cindex splitting columns
-@cindex columns, splitting
-
- Two-column mode lets you conveniently edit two side-by-side columns of
-text. It uses two side-by-side windows, each showing its own
-buffer.
-
- There are three ways to enter two-column mode:
+@c Picture Mode documentation
+@ifnottex
+@include picture-xtra.texi
+@end ifnottex
-@table @asis
-@item @kbd{@key{F2} 2} or @kbd{C-x 6 2}
-@kindex F2 2
-@kindex C-x 6 2
-@findex 2C-two-columns
-Enter two-column mode with the current buffer on the left, and on the
-right, a buffer whose name is based on the current buffer's name
-(@code{2C-two-columns}). If the right-hand buffer doesn't already
-exist, it starts out empty; the current buffer's contents are not
-changed.
-
-This command is appropriate when the current buffer is empty or contains
-just one column and you want to add another column.
-
-@item @kbd{@key{F2} s} or @kbd{C-x 6 s}
-@kindex F2 s
-@kindex C-x 6 s
-@findex 2C-split
-Split the current buffer, which contains two-column text, into two
-buffers, and display them side by side (@code{2C-split}). The current
-buffer becomes the left-hand buffer, but the text in the right-hand
-column is moved into the right-hand buffer. The current column
-specifies the split point. Splitting starts with the current line and
-continues to the end of the buffer.
-
-This command is appropriate when you have a buffer that already contains
-two-column text, and you wish to separate the columns temporarily.
-
-@item @kbd{@key{F2} b @var{buffer} @key{RET}}
-@itemx @kbd{C-x 6 b @var{buffer} @key{RET}}
-@kindex F2 b
-@kindex C-x 6 b
-@findex 2C-associate-buffer
-Enter two-column mode using the current buffer as the left-hand buffer,
-and using buffer @var{buffer} as the right-hand buffer
-(@code{2C-associate-buffer}).
-@end table
- @kbd{@key{F2} s} or @kbd{C-x 6 s} looks for a column separator, which
-is a string that appears on each line between the two columns. You can
-specify the width of the separator with a numeric argument to
-@kbd{@key{F2} s}; that many characters, before point, constitute the
-separator string. By default, the width is 1, so the column separator
-is the character before point.
-
- When a line has the separator at the proper place, @kbd{@key{F2} s}
-puts the text after the separator into the right-hand buffer, and
-deletes the separator. Lines that don't have the column separator at
-the proper place remain unsplit; they stay in the left-hand buffer, and
-the right-hand buffer gets an empty line to correspond. (This is the
-way to write a line that ``spans both columns while in two-column
-mode'': write it in the left-hand buffer, and put an empty line in the
-right-hand buffer.)
-
-@kindex F2 RET
-@kindex C-x 6 RET
-@findex 2C-newline
- The command @kbd{C-x 6 @key{RET}} or @kbd{@key{F2} @key{RET}}
-(@code{2C-newline}) inserts a newline in each of the two buffers at
-corresponding positions. This is the easiest way to add a new line to
-the two-column text while editing it in split buffers.
-
-@kindex F2 1
-@kindex C-x 6 1
-@findex 2C-merge
- When you have edited both buffers as you wish, merge them with
-@kbd{@key{F2} 1} or @kbd{C-x 6 1} (@code{2C-merge}). This copies the
-text from the right-hand buffer as a second column in the other buffer.
-To go back to two-column editing, use @kbd{@key{F2} s}.
-
-@kindex F2 d
-@kindex C-x 6 d
-@findex 2C-dissociate
- Use @kbd{@key{F2} d} or @kbd{C-x 6 d} to dissociate the two buffers,
-leaving each as it stands (@code{2C-dissociate}). If the other buffer,
-the one not current when you type @kbd{@key{F2} d}, is empty,
-@kbd{@key{F2} d} kills it.
-
-@node Editing Binary Files, Saving Emacs Sessions, Two-Column, Top
+@node Editing Binary Files
@section Editing Binary Files
@cindex Hexl mode
@@ -2738,7 +2518,7 @@ Display a menu of files and URLs mentioned in current buffer, then
find the one you select (@code{ffap-menu}).
@end table
-@node Amusements, Customization, Hyperlinking, Top
+@node Amusements, Packages, Hyperlinking, Top
@section Other Amusements
@cindex boredom
diff --git a/doc/emacs/modes.texi b/doc/emacs/modes.texi
index 314d5d4347e..d82423a73b4 100644
--- a/doc/emacs/modes.texi
+++ b/doc/emacs/modes.texi
@@ -353,12 +353,13 @@ the element has the form @code{(@var{regexp} @var{mode-function}
@var{regexp} and searches the list again for another match.
@vindex auto-mode-case-fold
- On systems with case-insensitive file names, such as Microsoft
-Windows, Emacs performs a single case-insensitive search through
-@code{auto-mode-alist}. On other systems, Emacs normally performs a
-single case-sensitive search through the alist. However, if you
-change the variable @code{auto-mode-case-fold} to @code{t}, Emacs
-performs a second case-insensitive search if the first search fails.
+ On GNU/Linux and other systems with case-sensitive file names, Emacs
+performs a case-sensitive search through @code{auto-mode-alist}; if
+this search fails, it performs a second case-insensitive search
+through the alist. To suppress the second search, change the variable
+@code{auto-mode-case-fold} to @code{nil}. On systems with
+case-insensitive file names, such as Microsoft Windows, Emacs performs
+a single case-insensitive search through @code{auto-mode-alist}.
@vindex magic-fallback-mode-alist
Finally, if Emacs @emph{still} hasn't found a major mode to use, it
diff --git a/doc/emacs/package.texi b/doc/emacs/package.texi
new file mode 100644
index 00000000000..739a8ce6c65
--- /dev/null
+++ b/doc/emacs/package.texi
@@ -0,0 +1,230 @@
+@c This is part of the Emacs manual.
+@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2011
+@c Free Software Foundation, Inc.
+@c See file emacs.texi for copying conditions.
+@node Packages
+@chapter Emacs Lisp Packages
+@cindex Package
+@cindex Emacs Lisp package archive
+@cindex Package archive
+@cindex Emacs Lisp package
+
+Emacs includes a facility that lets you easily download and install
+@dfn{packages} that implement additional features. Each package is a
+separate Emacs Lisp program, sometimes including other components such
+as an Info manual.
+
+ @kbd{M-x list-packages} brings up a buffer named @samp{*Packages*}
+with a list of all packages. You can install or uninstall packages
+via this buffer. @xref{Package Menu}.
+
+@findex describe-package
+ The command @kbd{C-h P} (@code{describe-package}) prompts for the
+name of a package, and displays a help buffer describing that
+attributes of the package and the features that it implements.
+
+ By default, Emacs downloads packages from a @dfn{package archive}
+maintained by the Emacs developers and hosted by the GNU project.
+Optionally, you can also download packages from archives maintained by
+third parties. @xref{Package Installation}.
+
+ For information about turning an Emacs Lisp program into an
+installable package, @xref{Packaging,,,elisp, The Emacs Lisp Reference
+Manual}. For information about finding third-party packages and other
+Emacs Lisp extensions, @xref{Packages that do not come with
+Emacs,,,efaq, GNU Emacs FAQ}.
+
+@menu
+* Package Menu:: Buffer for viewing and managing packages.
+* Package Installation:: Options for package installation.
+* Package Files:: Where packages are installed.
+@end menu
+
+@node Package Menu
+@section The Package Menu Buffer
+@cindex package menu
+@cindex built-in package
+@findex list-packages
+
+The command @kbd{M-x list-packages} brings up the @dfn{package menu}.
+This is a buffer listing all the packages that Emacs knows about, one
+on each line, with the following information:
+
+@itemize @bullet
+@item
+The package name (e.g. @samp{auctex}).
+
+@item
+The package's version number (e.g. @samp{11.86}).
+
+@item
+The package's status---normally one of @samp{available} (can be
+downloaded from the package archive), @samp{installed}, or
+@samp{built-in} (included in Emacs by default).
+
+In some instances, the status can be @samp{held}, @samp{disabled}, or
+@samp{obsolete}. @xref{Package Installation}.
+
+@item
+A short description of the package.
+@end itemize
+
+@noindent
+The @code{list-packages} command accesses the network, to retrieve the
+list of available packages from the package archive server. If the
+network is unavailable, it falls back on the most recently retrieved
+list.
+
+The following commands are available in the package menu:
+
+@table @kbd
+@item h
+Print a short message summarizing how to use the package menu
+(@code{package-menu-quick-help}).
+
+@item ?
+@itemx @key{RET}
+Display a help buffer for the package on the current line
+(@code{package-menu-describe-package}), similar to the help window
+displayed by the @kbd{C-h P} command (@pxref{Packages}).
+
+@item i
+Mark the package on the current line for installation
+(@code{package-menu-mark-install}). If the package status is
+@samp{available}, this adds an @samp{I} character to the start of the
+line; typing @kbd{x} (see below) will download and install the
+package.
+
+@item d
+Mark the package on the current line for deletion
+(@code{package-menu-mark-delete}). If the package status is
+@samp{installed}, this adds a @samp{D} character to the start of the
+line; typing @kbd{x} (see below) will delete the package.
+@xref{Package Files}, for information about what package deletion
+entails.
+
+@item u
+Remove any installation or deletion mark previously added to the
+current line by an @kbd{i} or @kbd{d} command.
+
+@item x
+Download and install all packages marked with @kbd{i}, and their
+dependencies; also, delete all packages marked with @kbd{d}
+(@code{package-menu-execute}). This also removes the marks.
+
+@item r
+Refresh the package list (@code{package-menu-refresh}). This also
+retrieves the list of available packages from the package archive
+again.
+@end table
+
+@noindent
+For example, you can install a package by typing @kbd{i} on the line
+listing that package, followed by @kbd{x}.
+
+@node Package Installation
+@section Package Installation
+
+@findex package-install
+ Packages are most conveniently installed using the package menu
+(@pxref{Package Menu}), but you can also use the command @kbd{M-x
+package-install}. This prompts for the name of a package with the
+@samp{available} status, then downloads and installs it.
+
+@cindex package requirements
+ A package may @dfn{require} certain other packages to be installed,
+because it relies on functionality provided by them. When Emacs
+installs such a package, it also automatically downloads and installs
+any required package that is not already installed. (If a required
+package is somehow unavailable, Emacs signals an error and stops
+installation.) A package's requirements list is shown in its help
+buffer.
+
+@vindex package-archives
+ By default, packages are downloaded from a single package archive
+maintained by the Emacs developers. This is controlled by the
+variable @code{package-archives}, whose value is a list of package
+archives known to Emacs. Each list element must have the form
+@code{(@var{id} . @var{location})}, where @var{id} is the name of a
+package archive and @var{location} is the @acronym{HTTP} address or
+directory name of the package archive. You can alter this list if you
+wish to use third party package archives---but do so at your own risk,
+and use only third parties that you think you can trust!
+
+ Once a package is downloaded and installed, it takes effect in the
+current Emacs session. What ``taking effect'' means depends on the
+package; most packages just make some new commands available, while
+others have more wide-ranging effects on the Emacs session. For such
+information, consult the package's help buffer.
+
+ By default, Emacs also automatically loads all installed packages
+(causing them to ``take effect'') in subsequent Emacs sessions. This
+happens at startup, after processing the init file (@pxref{Init
+File}). As an exception, Emacs does not load packages at startup if
+invoked with the @samp{-q} or @samp{--no-init-file} options
+(@pxref{Initial Options}).
+
+@vindex package-enable-at-startup
+@findex package-initialize
+ To disable automatic package loading, change the variable
+@code{package-enable-at-startup} to @code{nil}. If you do this, you
+can use the command @kbd{M-x package-initialize} to load your
+packages.
+
+@vindex package-load-list
+ For finer control over package loading, you can use the variable
+@code{package-load-list}. Its value should be a list. A list element
+of the form @code{(@var{name} @var{version})} tells Emacs to load
+version @var{version} of the package named @var{name}. Here,
+@var{version} should be a version string (corresponding to a specific
+version of the package), or @code{t} (which means to load any
+installed version), or @code{nil} (which means no version; this
+``disables'' the package, preventing it from being loaded). A list
+element can also be the symbol @code{all}, which means to load the
+latest installed version of any package not named by the other list
+elements. The default value is just @code{'(all)}.
+
+ For example, if you set @code{package-load-list} to @code{'((muse
+"3.20") all)}, then Emacs only loads version 3.20 of the @samp{muse}
+package, plus any installed version of packages other than
+@samp{muse}. Any other version of @samp{muse} that happens to be
+installed will be ignored. The @samp{muse} package will be listed in
+the package menu with the @samp{held} status.
+
+@node Package Files
+@section Package Files and Directory Layout
+@cindex package directory
+
+@cindex package file
+@findex package-install-file
+ Each package is downloaded from the package archive in the form of a
+single @dfn{package file}---either an Emacs Lisp source file, or a tar
+file containing multiple Emacs Lisp source and other files. Package
+files are automatically retrieved, processed, and disposed of by the
+Emacs commands that install packages. Normally, you will not need to
+deal directly with them, unless you are making a package
+(@pxref{Packaging,,,elisp, The Emacs Lisp Reference Manual}). Should
+you ever need to install a package directly from a package file, use
+the command @kbd{M-x package-install-file}.
+
+@vindex package-user-dir
+ Once installed, the contents of a package are placed in a
+subdirectory of @file{~/.emacs.d/elpa/} (you can change the name of
+that directory by changing the variable @code{package-user-dir}). The
+package subdirectory is named @file{@var{name}-@var{version}}, where
+@var{name} is the package name and @var{version} is its version
+string.
+
+@cindex system-wide packages
+@vindex package-directory-list
+ In addition to @code{package-user-dir}, Emacs looks for installed
+packages in the directories listed in @code{package-directory-list}.
+These directories are meant for system administrators to make Emacs
+packages available system-wide; Emacs itself never installs packages
+there. The package subdirectories for @code{package-directory-list}
+are laid out in the same way as in @code{package-user-dir}.
+
+ Deleting a package (@pxref{Package Menu}) involves deleting the
+corresponding package subdirectory. This only works for packages
+installed in @code{package-user-dir}; if told to act on a package in a
+system-wide package directory, the deletion command signals an error.
diff --git a/doc/emacs/picture-xtra.texi b/doc/emacs/picture-xtra.texi
index 0dcfc7a9627..43a2dbc4704 100644
--- a/doc/emacs/picture-xtra.texi
+++ b/doc/emacs/picture-xtra.texi
@@ -5,7 +5,7 @@
@c This file is included either in emacs-xtra.texi (when producing the
@c printed version) or in the main Emacs manual (for the on-line version).
@node Picture Mode
-@chapter Editing Pictures
+@section Editing Pictures
@cindex pictures
@cindex making pictures out of text characters
@findex picture-mode
@@ -59,7 +59,7 @@ Additional extensions to Picture mode can be found in
@end menu
@node Basic Picture
-@section Basic Editing in Picture Mode
+@subsection Basic Editing in Picture Mode
@findex picture-forward-column
@findex picture-backward-column
@@ -124,7 +124,7 @@ modes), or one of the picture rectangle commands (@pxref{Rectangles in
Picture}).
@node Insert in Picture
-@section Controlling Motion after Insert
+@subsection Controlling Motion after Insert
@findex picture-movement-up
@findex picture-movement-down
@@ -188,7 +188,7 @@ same direction as motion after ``insertion'' currently does, while @kbd{C-c
C-b} (@code{picture-motion-reverse}) moves in the opposite direction.
@node Tabs in Picture
-@section Picture Mode Tabs
+@subsection Picture Mode Tabs
@kindex M-TAB @r{(Picture mode)}
@findex picture-tab-search
@@ -228,7 +228,7 @@ up the picture. You can do this by setting the variable
@code{indent-tabs-mode} to @code{nil}.
@node Rectangles in Picture
-@section Picture Mode Rectangle Commands
+@subsection Picture Mode Rectangle Commands
@cindex rectangles and Picture mode
@cindex Picture mode and rectangles
diff --git a/doc/emacs/rmail.texi b/doc/emacs/rmail.texi
index ad22ae921e0..0a9594d3798 100644
--- a/doc/emacs/rmail.texi
+++ b/doc/emacs/rmail.texi
@@ -2,7 +2,7 @@
@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2011
@c Free Software Foundation, Inc.
@c See file emacs.texi for copying conditions.
-@node Rmail, Dired, Sending Mail, Top
+@node Rmail
@chapter Reading Mail with Rmail
@cindex Rmail
@cindex reading mail
diff --git a/doc/emacs/text.texi b/doc/emacs/text.texi
index e3f5c05d8da..0b0e4867ae5 100644
--- a/doc/emacs/text.texi
+++ b/doc/emacs/text.texi
@@ -70,6 +70,7 @@ for editing such pictures.
* Nroff Mode:: Editing input to the formatter nroff.
* Formatted Text:: Editing formatted text directly in WYSIWYG fashion.
* Text Based Tables:: Editing text-based tables in WYSIWYG fashion.
+* Two-Column:: Splitting text columns into separate windows.
@end menu
@node Words
@@ -2837,3 +2838,93 @@ then inserts the generated table in the proper syntax into the
destination buffer. The default destination buffer is
@code{table.@var{lang}}, where @var{lang} is the language you
specified.
+
+@node Two-Column
+@section Two-Column Editing
+@cindex two-column editing
+@cindex splitting columns
+@cindex columns, splitting
+
+ Two-column mode lets you conveniently edit two side-by-side columns of
+text. It uses two side-by-side windows, each showing its own
+buffer.
+
+ There are three ways to enter two-column mode:
+
+@table @asis
+@item @kbd{@key{F2} 2} or @kbd{C-x 6 2}
+@kindex F2 2
+@kindex C-x 6 2
+@findex 2C-two-columns
+Enter two-column mode with the current buffer on the left, and on the
+right, a buffer whose name is based on the current buffer's name
+(@code{2C-two-columns}). If the right-hand buffer doesn't already
+exist, it starts out empty; the current buffer's contents are not
+changed.
+
+This command is appropriate when the current buffer is empty or contains
+just one column and you want to add another column.
+
+@item @kbd{@key{F2} s} or @kbd{C-x 6 s}
+@kindex F2 s
+@kindex C-x 6 s
+@findex 2C-split
+Split the current buffer, which contains two-column text, into two
+buffers, and display them side by side (@code{2C-split}). The current
+buffer becomes the left-hand buffer, but the text in the right-hand
+column is moved into the right-hand buffer. The current column
+specifies the split point. Splitting starts with the current line and
+continues to the end of the buffer.
+
+This command is appropriate when you have a buffer that already contains
+two-column text, and you wish to separate the columns temporarily.
+
+@item @kbd{@key{F2} b @var{buffer} @key{RET}}
+@itemx @kbd{C-x 6 b @var{buffer} @key{RET}}
+@kindex F2 b
+@kindex C-x 6 b
+@findex 2C-associate-buffer
+Enter two-column mode using the current buffer as the left-hand buffer,
+and using buffer @var{buffer} as the right-hand buffer
+(@code{2C-associate-buffer}).
+@end table
+
+ @kbd{@key{F2} s} or @kbd{C-x 6 s} looks for a column separator, which
+is a string that appears on each line between the two columns. You can
+specify the width of the separator with a numeric argument to
+@kbd{@key{F2} s}; that many characters, before point, constitute the
+separator string. By default, the width is 1, so the column separator
+is the character before point.
+
+ When a line has the separator at the proper place, @kbd{@key{F2} s}
+puts the text after the separator into the right-hand buffer, and
+deletes the separator. Lines that don't have the column separator at
+the proper place remain unsplit; they stay in the left-hand buffer, and
+the right-hand buffer gets an empty line to correspond. (This is the
+way to write a line that ``spans both columns while in two-column
+mode'': write it in the left-hand buffer, and put an empty line in the
+right-hand buffer.)
+
+@kindex F2 RET
+@kindex C-x 6 RET
+@findex 2C-newline
+ The command @kbd{C-x 6 @key{RET}} or @kbd{@key{F2} @key{RET}}
+(@code{2C-newline}) inserts a newline in each of the two buffers at
+corresponding positions. This is the easiest way to add a new line to
+the two-column text while editing it in split buffers.
+
+@kindex F2 1
+@kindex C-x 6 1
+@findex 2C-merge
+ When you have edited both buffers as you wish, merge them with
+@kbd{@key{F2} 1} or @kbd{C-x 6 1} (@code{2C-merge}). This copies the
+text from the right-hand buffer as a second column in the other buffer.
+To go back to two-column editing, use @kbd{@key{F2} s}.
+
+@kindex F2 d
+@kindex C-x 6 d
+@findex 2C-dissociate
+ Use @kbd{@key{F2} d} or @kbd{C-x 6 d} to dissociate the two buffers,
+leaving each as it stands (@code{2C-dissociate}). If the other buffer,
+the one not current when you type @kbd{@key{F2} d}, is empty,
+@kbd{@key{F2} d} kills it.
diff --git a/doc/emacs/trouble.texi b/doc/emacs/trouble.texi
index 4be892639fc..fd06dde5174 100644
--- a/doc/emacs/trouble.texi
+++ b/doc/emacs/trouble.texi
@@ -15,7 +15,7 @@ also considered.
@raisesections
@end ifnottex
-@node Quitting, Lossage, Customization, Top
+@node Quitting
@section Quitting and Aborting
@cindex quitting