@c This is part of the Emacs manual.
-@c Copyright (C) 1985, 86, 87, 93, 94, 95, 97, 99, 2000, 2001, 2004
-@c Free Software Foundation, Inc.
+@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 1999, 2000,
+@c 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
@c See file emacs.texi for copying conditions.
@node Frames, International, Windows, Top
@chapter Frames and X Windows
the variable should be @code{nil}.
@node Speedbar
-@section Making and Using a Speedbar Frame
+@section Speedbar Frames
@cindex speedbar
- An Emacs frame can have a @dfn{speedbar}, which is a vertical window
-that serves as a scrollable menu of files you could visit and tags
-within those files. To create a speedbar, type @kbd{M-x speedbar}; this
-creates a speedbar window for the selected frame. From then on, you can
-click on a file name in the speedbar to visit that file in the
-corresponding Emacs frame, or click on a tag name to jump to that tag in
-the Emacs frame.
-
- Initially the speedbar lists the immediate contents of the current
-directory, one file per line. Each line also has a box, @samp{[+]} or
-@samp{<+>}, that you can click on with @kbd{Mouse-2} to ``open up'' the
-contents of that item. If the line names a directory, opening it adds
-the contents of that directory to the speedbar display, underneath the
-directory's own line. If the line lists an ordinary file, opening it up
-adds a list of the tags in that file to the speedbar display. When a
-file is opened up, the @samp{[+]} changes to @samp{[-]}; you can click
-on that box to ``close up'' that file (hide its contents).
+@cindex attached frame (of speedbar)
+ The @dfn{speedbar} is a special frame for conveniently navigating in
+or operating on another frame. The speedbar, when it exists, is
+always associated with a specific frame, called its @dfn{attached
+frame}; all speedbar operations act on that frame.
+
+ Type @kbd{M-x speedbar} to create the speedbar and associate it with
+the current frame. To dismiss the speedbar, select it and type
+@kbd{q} or @kbd{M-x speedbar}. (You can also delete the speedbar
+frame like any other Emacs frame.) You can then attach the speedbar
+to a different frame by typing @kbd{M-x speedbar} in that frame.
+@c ??? If the speedbar is active, and I type M-x speedbar in another
+@c frame, does that attach the speedbar to that other frame?
+@c If not, it should! -- rms
+
+@c ??? When you visit a file in this way, does it appear
+in the selected window? In a new window in the same frame? -- rms
+ The speedbar can operate in various modes. Its default mode is
+@dfn{File Display} mode, which shows the files in the current
+directory of the selected window of the attached frame, one file per
+line. Clicking on a file name visits that file in the attached frame,
+and clicking on a directory name shows that directory in the speedbar
+(@pxref{Mouse References}). Each line also has a box, @samp{[+]} or
+@samp{<+>}, that you can click on to @dfn{expand} the contents of that
+item. Expanding a directory adds the contents of that directory to
+the speedbar display, underneath the directory's own line. Expanding
+an ordinary file adds a list of the tags in that file to the speedbar
+display; you can click on a tag name to jump to that tag in the
+attached frame. When a file or directory is expanded, the @samp{[+]}
+changes to @samp{[-]}; you can click on that box to @dfn{contract} the
+item, hiding its contents.
+
+ You navigate through the speedbar using the keyboard, too. Typing
+@kbd{RET} while point is on a line in the speedbar is equivalent to
+clicking the item on the current line, and @kbd{SPC} expands or
+contracts the item. @kbd{U} displays the parent directory of the
+current directory. To copy, delete, or rename the file on the current
+line, type @kbd{C}, @kbd{D}, and @kbd{R} respectively. To create a
+new directory, type @kbd{M}.
+
+ Another general-purpose speedbar mode is @dfn{Buffer Display} mode;
+in this mode, the speedbar displays a list of Emacs buffers. To
+switch to this mode, type @kbd{b} in the speedbar. To return to File
+Display mode, type @kbd{f}. You can also change the display mode by
+clicking @kbd{mouse-3} anywhere in the speedbar window (or
+@kbd{mouse-1} on the mode-line) and selecting @samp{Displays} in the
+pop-up menu.
Some major modes, including Rmail mode, Info, and GUD, have
specialized ways of putting useful items into the speedbar for you to
files, and lets you move the current message to another Rmail file by
clicking on its @samp{<M>} box.
- A speedbar belongs to one Emacs frame, and always operates on that
-frame. If you use multiple frames, you can make a speedbar for some or
-all of the frames; type @kbd{M-x speedbar} in any given frame to make a
-speedbar for it.
+ For more details on using and programming the speedbar, @xref{Top,
+Speedbar,,speedbar, Speedbar Manual}.
@node Multiple Displays
@section Multiple Displays
(according to the conventions of the application it came from) into the
directory displayed in that buffer.
-@vindex x-dnd-open-file-other-window
+@vindex dnd-open-file-other-window
Dropping a file normally visits it in the window you drop it on. If
you prefer to visit the file in a new window in such cases, customize
-the variable @code{x-dnd-open-file-other-window}.
+the variable @code{dnd-open-file-other-window}.
@ignore
@c ??? To Lisp manual
detailed knowledge of what types other applications use for drag and
drop.
-@vindex x-dnd-protocol-alist
+@vindex dnd-protocol-alist
When an URL is dropped on Emacs it may be a file, but it may also be
another URL type (ftp, http, etc.). Emacs first checks
-@code{x-dnd-protocol-alist} to determine what to do with the URL. If
+@code{dnd-protocol-alist} to determine what to do with the URL. If
there is no match there and if @code{browse-url-browser-function} is
an alist, Emacs looks for a match there. If no match is found the
text for the URL is inserted. If you want to alter Emacs behavior,