+The Browse-URL package provides facilities for following URLs specifying
+links on the World Wide Web. Usually this works by invoking a web
+browser, but you can, for instance, arrange to invoke @code{compose-mail}
+from @samp{mailto:} URLs.
+
+ The general way to use this feature is to type @kbd{M-x browse-url},
+which displays a specified URL. If point is located near a plausible
+URL, that URL is used as the default. Other commands are available
+which you might like to bind to keys, such as
+@code{browse-url-at-point} and @code{browse-url-at-mouse}.
+
+@vindex browse-url-browser-function
+ You can customize Browse-URL's behavior via various options in the
+@code{browse-url} Customize group, particularly
+@code{browse-url-browser-function}. You can invoke actions dependent
+on the type of URL by defining @code{browse-url-browser-function} as
+an association list. The package's commentary available via @kbd{C-h
+p} under the @samp{hypermedia} keyword provides more information.
+Packages with facilities for following URLs should always go through
+Browse-URL, so that the customization options for Browse-URL will
+affect all browsing in Emacs.
+
+@node Goto-address
+@subsection Activating URLs
+@findex goto-address
+@cindex Goto-address
+@cindex URLs, activating
+
+@table @kbd
+@item M-x goto-address
+Activate URLs and e-mail addresses in the current buffer.
+@end table
+
+ You can make URLs in the current buffer active with @kbd{M-x
+goto-address}. This finds all the URLs in the buffer, and establishes
+bindings for @kbd{Mouse-2} and @kbd{C-c @key{RET}} on them. After
+activation, if you click on a URL with @kbd{Mouse-2}, or move to a URL
+and type @kbd{C-c @key{RET}}, that will display the web page that the URL
+specifies. For a @samp{mailto} URL, it sends mail instead, using your
+selected mail-composition method (@pxref{Mail Methods}).
+
+ It can be useful to add @code{goto-address} to mode hooks and the
+hooks used to display an incoming message.
+@code{rmail-show-message-hook} is the appropriate hook for Rmail, and
+@code{mh-show-mode-hook} for MH-E. This is not needed for Gnus,
+which has a similar feature of its own.
+
+
+@node FFAP
+@subsection Finding Files and URLs at Point
+@findex find-file-at-point
+@findex ffap
+@findex dired-at-point
+@findex ffap-next
+@findex ffap-menu
+@cindex finding file at point
+
+ FFAP mode replaces certain key bindings for finding files, including
+@kbd{C-x C-f}, with commands that provide more sensitive defaults.
+These commands behave like the ordinary ones when given a prefix
+argument. Otherwise, they get the default file name or URL from the
+text around point. If what is found in the buffer has the form of a
+URL rather than a file name, the commands use @code{browse-url} to
+view it.
+
+ This feature is useful for following references in mail or news
+buffers, @file{README} files, @file{MANIFEST} files, and so on. The
+@samp{ffap} package's commentary available via @kbd{C-h p} under the
+@samp{files} keyword and the @code{ffap} Custom group provide details.
+
+@cindex FFAP minor mode
+@findex ffap-mode
+ You can turn on FFAP minor mode by calling @code{ffap-bindings} to
+make the following key bindings and to install hooks for using
+@code{ffap} in Rmail, Gnus and VM article buffers.
+
+@table @kbd
+@item C-x C-f @var{filename} @key{RET}
+@kindex C-x C-f @r{(FFAP)}
+Find @var{filename}, guessing a default from text around point
+(@code{find-file-at-point}).
+@item C-x C-r
+@kindex C-x C-r @r{(FFAP)}
+@code{ffap-read-only}, analogous to @code{find-file-read-only}.
+@item C-x C-v
+@kindex C-x C-v @r{(FFAP)}
+@code{ffap-alternate-file}, analogous to @code{find-alternate-file}.
+@item C-x d @var{directory} @key{RET}
+@kindex C-x d @r{(FFAP)}
+Start Dired on @var{directory}, defaulting to the directory name at
+point (@code{dired-at-point}).
+@item C-x C-d
+@code{ffap-list-directory}, analogous to @code{list-directory}.
+@item C-x 4 f
+@kindex C-x 4 f @r{(FFAP)}
+@code{ffap-other-window}, analogous to @code{find-file-other-window}.
+@item C-x 4 r
+@code{ffap-read-only-other-window}, analogous to
+@code{find-file-read-only-other-window}.
+@item C-x 4 d
+@code{ffap-dired-other-window}, analogous to @code{dired-other-window}.
+@item C-x 5 f
+@kindex C-x 5 f @r{(FFAP)}
+@code{ffap-other-frame}, analogous to @code{find-file-other-frame}.
+@item C-x 5 r
+@code{ffap-read-only-other-frame}, analogous to
+@code{find-file-read-only-other-frame}.
+@item C-x 5 d
+@code{ffap-dired-other-frame}, analogous to @code{dired-other-frame}.
+@item M-x ffap-next
+Search buffer for next file name or URL, then find that file or URL.
+@item S-Mouse-3
+@kindex S-Mouse-3 @r{(FFAP)}
+@code{ffap-at-mouse} finds the file guessed from text around the position
+of a mouse click.
+@item C-S-Mouse-3
+@kindex C-S-Mouse-3 @r{(FFAP)}
+Display a menu of files and URLs mentioned in current buffer, then
+find the one you select (@code{ffap-menu}).
+@end table
+
+@node Thumbnails, Dissociated Press, Hyperlinking, Top
+@section Viewing Images as Thumbnails
+@cindex tumme mode
+@cindex thumbnails
+
+ Tumme is a facility for browsing image files. It provides viewing
+the images either as thumbnails or in full size, either inside Emacs
+or through an external viewer.
+
+ To enter Tumme, type @kbd{M-x tumme}. It prompts for a directory;
+specify one that has images files. This creates thumbnails for all
+the images in that directory, and displays them all in the ``thumbnail
+buffer.'' This takes a long time if the directory contains many image
+files, and it asks for confirmation if the number of image files
+exceeds @code{tumme-show-all-from-dir-max-files}.
+
+@kindex C-t d @r{(Tumme)}
+@findex tumme-display-thumbs
+ You can also enter Tumme through Dired. Mark the image files you
+want to look at, using @kbd{m} as usual, then type @kbd{C-t d}
+(@code{tumme-display-thumbs}). This too creates and switches to
+a buffer containing thumbnails, corresponding to the marked files.
+
+ With point in the thumbnail buffer, type @kbd{RET}
+(@code{tumme-display-thumbnail-original-image}) to display a sized
+version of it in another window. This sizes the image to fit the
+window. Use the arrow keys to move around in the buffer. For easy
+browsing, type @kbd{SPC} (@code{tumme-display-next-thumbnail-original})
+to advance and display the next image. Typing @kbd{DEL}
+(@code{tumme-display-previous-thumbnail-original}) backs up to the
+previous thumbnail and displays that instead.
+
+@vindex tumme-external-viewer
+ To view and the image in its original size, either provide a prefix
+argument (@kbd{C-u}) before pressing @kbd{RET}, or type @kbd{C-@key{RET}}
+(@code{tumme-thumbnail-display-external}) to display the image in an
+external viewer. You must first configure
+@code{tumme-external-viewer}.
+
+ You can delete images through Tumme also. Type @kbd{d}
+(@code{tumme-flag-thumb-original-file}) to flag the image file for
+deletion in the Dired buffer. You can also delete the thumbnail image
+from the thumbnail buffer with @kbd{C-d} (@code{tumme-delete-char}).
+
+ More advanced features include @dfn{image tags}, which are metadata
+used to categorize image files. The tags are stored in a plain text
+file configured by @code{tumme-db-file}.
+
+ To tag image files, mark them in the dired buffer (you can also mark
+files in Dired from the thumbnail buffer by typing @kbd{m}) and type
+@kbd{C-t t} (@code{tumme-tag-files}). You will be prompted for a tag.
+To mark files having a certain tag, type @kbd{C-t f}
+(@code{tumme-mark-tagged-files}). After marking image files with a
+certain tag, you can use @kbd{C-t d} to view them.
+
+ You can also tag a file directly from the thumbnail buffer by typing
+@kbd{t t} and you can remove a tag by typing @kbd{t r}. There is also
+a special ``tag'' called ``comment'' for each file (it is not a tag in
+the exact same sense as the other tags, it is handled slightly
+different). That is used to enter a comment or description about the
+image. You comment a file from the thumbnail buffer by typing
+@kbd{c}. You will be prompted for a comment. Type @kbd{C-t c} to add
+a comment from Dired (@code{tumme-dired-comment-files}).
+
+ Tumme also provides simple image manipulation. In the thumbnail
+buffer, type @kbd{L} to rotate the original image 90 degrees anti
+clockwise, and @kbd{R} to rotate it 90 degrees clockwise. This
+rotation is lossless, and uses an external utility called JpegTRAN.
+
+@node Dissociated Press, Amusements, Thumbnails, Top