Commit fdc90613 authored by Miles Bader's avatar Miles Bader
Browse files

Merge from emacs--rel--22

Patches applied:

 * emacs--rel--22  (patch 131-137)

   - Update from CVS
   - Merge from gnus--rel--5.10

 * gnus--rel--5.10  (patch 261-262)

   - Update from CVS

Revision: emacs@sv.gnu.org/emacs--devo--0--patch-908
parents ebe4c710 b6ff295c
......@@ -2,6 +2,10 @@
* fortran-xtra.texi (Fortran): F90 mode handles F2003.
2007-10-24 Richard Stallman <rms@gnu.org>
* misc.texi (Interactive Shell): Cleanup last change.
2007-10-22 Juri Linkov <juri@jurta.org>
* mini.texi (Minibuffer History): Add text about a list of minibuffer
......
......@@ -488,8 +488,8 @@ also change the coding system for a running subshell by typing
Coding}.
@cindex @env{INSIDE_EMACS} environment variable
Emacs sets the environment variable @env{INSIDE_EMACS} (to a
comma-separated list including the Emacs version) in the subshell.
Emacs sets the environment variable @env{INSIDE_EMACS} in the
subshell to a comma-separated list including the Emacs version.
Programs can check this variable to determine whether they are running
inside an Emacs subshell.
......
......@@ -8,6 +8,22 @@
* customize.texi (Variable Definitions): Add :risky and :safe keywords.
2007-10-24 Richard Stallman <rms@gnu.org>
* elisp.texi (Top): Delete Frame-Local Variables from subnode menu.
* variables.texi (Frame-Local Variables): Node deleted.
(Variables): Delete Frame-Local Variables from menu.
(Local Variables, Buffer-Local Variables, Intro to Buffer-Local)
(Default Value): Don't mention frame-local vars.
* os.texi (Idle Timers): current-idle-time returns nil if not idle.
* loading.texi (Unloading): Document FEATURE-unload-function
instead of FEATURE-unload-hook.
* frames.texi (Multiple Displays): Don't mention frame-local vars.
2007-10-22 Juri Linkov <juri@jurta.org>
* minibuf.texi (Text from Minibuffer, Minibuffer Completion)
......
......@@ -421,7 +421,6 @@ Variables
* Setting Variables:: Storing new values in variables.
* Variable Scoping:: How Lisp chooses among local and global values.
* Buffer-Local Variables:: Variable values in effect only in one buffer.
* Frame-Local Variables:: Variable values in effect only in one frame.
* Future Local Variables:: New kinds of local values we might add some day.
* File Local Variables:: Handling local variable lists in files.
* Variable Aliases:: Variables that are aliases for other variables.
......
......@@ -141,7 +141,7 @@ is the one for the terminal that the currently selected frame belongs
to. These variables include @code{default-minibuffer-frame},
@code{defining-kbd-macro}, @code{last-kbd-macro}, and
@code{system-key-alist}. They are always terminal-local, and can never
be buffer-local (@pxref{Buffer-Local Variables}) or frame-local.
be buffer-local (@pxref{Buffer-Local Variables}).
A single X server can handle more than one screen. A display name
@samp{@var{host}:@var{server}.@var{screen}} has three parts; the last
......
......@@ -1326,6 +1326,9 @@ See @ref{Autoload}.
@item call-interactively
See @ref{Interactive Call}.
@item called-interactively-p
See @ref{Distinguish Interactive}.
@item commandp
See @ref{Interactive Call}.
......@@ -1351,7 +1354,7 @@ See @ref{Function Indirection}.
See @ref{Using Interactive}.
@item interactive-p
See @ref{Interactive Call}.
See @ref{Distinguish Interactive}.
@item mapatoms
See @ref{Creating Symbols}.
......
......@@ -862,24 +862,27 @@ library with @code{defun}, @code{defalias}, @code{defsubst},
It then restores any autoloads formerly associated with those symbols.
(Loading saves these in the @code{autoload} property of the symbol.)
@vindex unload-feature-special-hooks
Before restoring the previous definitions, @code{unload-feature} runs
@code{remove-hook} to remove functions in the library from certain
hooks. These hooks include variables whose names end in @samp{hook}
or @samp{-hooks}, plus those listed in
@code{unload-feature-special-hooks}. This is to prevent Emacs from
ceasing to function because important hooks refer to functions that
are no longer defined.
@code{unload-feature-special-hooks}, as well as
@code{auto-mode-alist}. This is to prevent Emacs from ceasing to
function because important hooks refer to functions that are no longer
defined.
@vindex @var{feature}-unload-hook
Standard unloading activities also undoes ELP profiling of functions
in that library, unprovides any features provided by the library, and
cancels timers held in variables defined by the library.
@vindex @var{feature}-unload-function
If these measures are not sufficient to prevent malfunction, a library
can define an explicit unload hook. If @code{@var{feature}-unload-hook}
is defined, it is run as a normal hook before restoring the previous
definitions, @emph{instead of} the usual hook-removing actions. The
unload hook ought to undo all the global state changes made by the
library that might cease to work once the library is unloaded.
@code{unload-feature} can cause problems with libraries that fail to do
this, so it should be used with caution.
can define an explicit unloader named @code{@var{feature}-unload-function}.
If that symbol is defined as a function, @code{unload-feature} calls
it with no arguments before doing anything else. It can do whatever
is appropriate to unload the library. If it returns @code{nil},
@code{unload-feature} proceeds to take the normal unload actions.
Otherwise it considers the job to be done.
Ordinarily, @code{unload-feature} refuses to unload a library on which
other loaded libraries depend. (A library @var{a} depends on library
......
......@@ -1561,10 +1561,10 @@ set up to repeat will subsequently run another time, one by one.
@c Emacs 19 feature
@defun current-idle-time
This function returns the length of time Emacs has been idle, as a
list of three integers: @code{(@var{high} @var{low} @var{microsec})}.
The integers @var{high} and @var{low} combine to give the number of
seconds of idleness, which is
If Emacs is idle, this function returns the length of time Emacs has
been idle, as a list of three integers: @code{(@var{high} @var{low}
@var{microsec})}. The integers @var{high} and @var{low} combine to
give the number of seconds of idleness, which is
@ifnottex
@var{high} * 2**16 + @var{low}.
@end ifnottex
......@@ -1576,6 +1576,9 @@ The third element, @var{microsec}, gives the microseconds since the
start of the current second (or 0 for systems that return time with
the resolution of only one second).
When Emacs is not idle, @code{current-idle-time} returns @code{nil}.
This is a convenient way to test whether Emacs is idle.
The main use of this function is when an idle timer function wants to
``take a break'' for a while. It can set up another idle timer to
call the same function again, after a few seconds more idleness.
......
......@@ -39,7 +39,6 @@ variable.
* Setting Variables:: Storing new values in variables.
* Variable Scoping:: How Lisp chooses among local and global values.
* Buffer-Local Variables:: Variable values in effect only in one buffer.
* Frame-Local Variables:: Variable values in effect only in one frame.
* Future Local Variables:: New kinds of local values we might add some day.
* File Local Variables:: Handling local variable lists in files.
* Variable Aliases:: Variables that are aliases for other variables.
......@@ -255,11 +254,10 @@ Macro calls (@pxref{Macros}).
@end itemize
Variables can also have buffer-local bindings (@pxref{Buffer-Local
Variables}) and frame-local bindings (@pxref{Frame-Local Variables}); a
few variables have terminal-local bindings (@pxref{Multiple Displays}).
These kinds of bindings work somewhat like ordinary local bindings, but
they are localized depending on ``where'' you are in Emacs, rather than
localized in time.
Variables}); a few variables have terminal-local bindings
(@pxref{Multiple Displays}). These kinds of bindings work somewhat
like ordinary local bindings, but they are localized depending on
``where'' you are in Emacs, rather than localized in time.
@defvar max-specpdl-size
@anchor{Definition of max-specpdl-size}
......@@ -1085,16 +1083,12 @@ use short names like @code{x}.
@cindex buffer-local variables
Global and local variable bindings are found in most programming
languages in one form or another. Emacs, however, also supports additional,
unusual kinds of variable binding: @dfn{buffer-local} bindings, which
apply only in one buffer, and @dfn{frame-local} bindings, which apply only in
one frame. Having different values for a variable in different buffers
and/or frames is an important customization method.
This section describes buffer-local bindings; for frame-local
bindings, see the following section, @ref{Frame-Local Variables}. (A few
variables have bindings that are local to each terminal; see
@ref{Multiple Displays}.)
languages in one form or another. Emacs, however, also supports
additional, unusual kinds of variable binding, such as
@dfn{buffer-local} bindings, which apply only in one buffer. Having
different values for a variable in different buffers is an important
customization method. (A few variables have bindings that are local
to each terminal; see @ref{Multiple Displays}.)
@menu
* Intro to Buffer-Local:: Introduction and concepts.
......@@ -1121,8 +1115,7 @@ this is the global binding.
other buffers. The default binding is shared by all the buffers that
don't have their own bindings for the variable. (This includes all
newly-created buffers.) If you set the variable in a buffer that does
not have a buffer-local binding for it, this sets the default binding
(assuming there are no frame-local bindings to complicate the matter),
not have a buffer-local binding for it, this sets the default binding,
so the new value is visible in all the buffers that see the default
binding.
......@@ -1153,11 +1146,11 @@ the default binding untouched. This means that the default value cannot
be changed with @code{setq} in any buffer; the only way to change it is
with @code{setq-default}.
@strong{Warning:} When a variable has buffer-local or frame-local
@strong{Warning:} When a variable has buffer-local
bindings in one or more buffers, @code{let} rebinds the binding that's
currently in effect. For instance, if the current buffer has a
buffer-local value, @code{let} temporarily rebinds that. If no
buffer-local or frame-local bindings are in effect, @code{let} rebinds
buffer-local bindings are in effect, @code{let} rebinds
the default value. If inside the @code{let} you then change to a
different current buffer in which a different binding is in effect,
you won't see the @code{let} binding any more. And if you exit the
......@@ -1421,7 +1414,7 @@ this variable.
@c Emacs 19 feature
The special forms @code{defvar} and @code{defconst} also set the
default value (if they set the variable at all), rather than any
buffer-local or frame-local value.
buffer-local value.
@defun default-value symbol
This function returns @var{symbol}'s default value. This is the value
......@@ -1520,112 +1513,6 @@ an ordinary evaluated argument.
@end example
@end defun
@node Frame-Local Variables
@section Frame-Local Variables
@cindex frame-local variables
Just as variables can have buffer-local bindings, they can also have
frame-local bindings. These bindings belong to one frame, and are in
effect when that frame is selected. Frame-local bindings are actually
frame parameters: you create a frame-local binding in a specific frame
by calling @code{modify-frame-parameters} and specifying the variable
name as the parameter name.
To enable frame-local bindings for a certain variable, call the function
@code{make-variable-frame-local}.
@deffn Command make-variable-frame-local variable
Enable the use of frame-local bindings for @var{variable}. This does
not in itself create any frame-local bindings for the variable; however,
if some frame already has a value for @var{variable} as a frame
parameter, that value automatically becomes a frame-local binding.
If @var{variable} does not have a default value, then calling this
command will give it a default value of @code{nil}. If @var{variable}
already has a default value, that value remains unchanged.
If the variable is terminal-local, this function signals an error,
because such variables cannot have frame-local bindings as well.
@xref{Multiple Displays}. A few variables that are implemented
specially in Emacs can be buffer-local, but can never be frame-local.
This command returns @var{variable}.
@end deffn
Buffer-local bindings take precedence over frame-local bindings. Thus,
consider a variable @code{foo}: if the current buffer has a buffer-local
binding for @code{foo}, that binding is active; otherwise, if the
selected frame has a frame-local binding for @code{foo}, that binding is
active; otherwise, the default binding of @code{foo} is active.
Here is an example. First we prepare a few bindings for @code{foo}:
@example
(setq f1 (selected-frame))
(make-variable-frame-local 'foo)
;; @r{Make a buffer-local binding for @code{foo} in @samp{b1}.}
(set-buffer (get-buffer-create "b1"))
(make-local-variable 'foo)
(setq foo '(b 1))
;; @r{Make a frame-local binding for @code{foo} in a new frame.}
;; @r{Store that frame in @code{f2}.}
(setq f2 (make-frame))
(modify-frame-parameters f2 '((foo . (f 2))))
@end example
Now we examine @code{foo} in various contexts. Whenever the
buffer @samp{b1} is current, its buffer-local binding is in effect,
regardless of the selected frame:
@example
(select-frame f1)
(set-buffer (get-buffer-create "b1"))
foo
@result{} (b 1)
(select-frame f2)
(set-buffer (get-buffer-create "b1"))
foo
@result{} (b 1)
@end example
@noindent
Otherwise, the frame gets a chance to provide the binding; when frame
@code{f2} is selected, its frame-local binding is in effect:
@example
(select-frame f2)
(set-buffer (get-buffer "*scratch*"))
foo
@result{} (f 2)
@end example
@noindent
When neither the current buffer nor the selected frame provides
a binding, the default binding is used:
@example
(select-frame f1)
(set-buffer (get-buffer "*scratch*"))
foo
@result{} nil
@end example
@noindent
When the active binding of a variable is a frame-local binding, setting
the variable changes that binding. You can observe the result with
@code{frame-parameters}:
@example
(select-frame f2)
(set-buffer (get-buffer "*scratch*"))
(setq foo 'nobody)
(assq 'foo (frame-parameters f2))
@result{} (foo . nobody)
@end example
@node Future Local Variables
@section Possible Future Local Variables
......
......@@ -3,6 +3,10 @@
* ses-example.ses: Get rid of silly life-universe-everything local
variable. `symbolic-formulas' is now `ses--symbolic-formulas'.
2007-10-24 Juanma Barranquero <lekktu@gmail.com>
* NEWS: Mention desktop locking.
2007-10-10 Eric S. Raymond <esr@snark.thyrsus.com>
* NEWS: Explain the VC fileset changes a bit better.
......
......@@ -59,7 +59,7 @@ Windows XP introduced themed scrollbars, but applications have to take
special steps to use them. Emacs now has the appropriate resources linked
in to make it use the scrollbars from the system theme.
** focus-follows-mouse defaults to nil on MS Windows
** focus-follows-mouse defaults to nil on MS Windows.
Previously this variable was incorrectly documented as having no effect
on MS Windows, and the default was inappropriate for the majority of
Windows installations. Users of software which modifies the behaviour of
......@@ -70,6 +70,13 @@ this variable.
was needed. In text command mode, if you have problems before execution has
started, use M-x gud-gdb.
** desktop.el now detects conflicting uses of the desktop file.
When loading the desktop, desktop.el can now detect that the file is already
in use. The default behavior is to ask the user what to do, but you can
customize it with the new option `desktop-load-locked-desktop'. When saving,
desktop.el warns about attempts to overwrite a desktop file if it determines
that the desktop being saved is not an update of the one on disk.
* New Modes and Packages in Emacs 22.2
** bibtex-style-mode helps you write BibTeX's *.bst files.
......@@ -97,6 +104,8 @@ This can be used to add menu entries for backend specific functions.
* Lisp Changes in Emacs 22.2.
** Frame-local variables are deprecated and are slated for removal.
Use frame parameters instead.
** The function invisible-p returns non-nil if the character
after a specified position is invisible.
......
......@@ -2200,12 +2200,9 @@ month names with consistent widths for some locales on some versions
of Windows. This is caused by a deficiency in the underlying system
library function.
The functions set-time-zone-rule, and display-time-world (which uses it)
do not work on Windows. Fixing this is difficult, since Windows uses
localtime for the system clock, and any attempt to change the timezone
would have to be accompanied by a clock change for the results to remain
consistent. The way in which these functions are used is not intended to
cause such system-wide disruption.
The function set-time-zone-rule gives incorrect results for many
non-US timezones. This is due to over-simplistic handling of
daylight savings switchovers by the Windows libraries.
Files larger than 4GB cause overflow in the size (represented as a
32-bit integer) reported by `file-attributes'. This affects Dired as
......
......@@ -2,6 +2,11 @@
* quail/latin-ltx.el ("\\qed"): Add this rule.
2007-10-24 Juanma Barranquero <lekktu@gmail.com>
* quail/indian.el (quail-indian-update-preceding-char):
Don't mark the variable as frame-local; it wasn't used as such.
2007-07-25 Glenn Morris <rgm@gnu.org>
* Relicense all FSF files to GPLv3 or later.
......@@ -19,7 +24,7 @@
2007-01-30 Kenichi Handa <handa@m17n.org>
* CXTERM-DIC/CCDOSPY.tit, CXTERM-DIC/PY-b5.tit, CXTERM-DIC/SW.tit,
CXTERM-DIC/TONEPY.tit: Add copyright and license notices.
* CXTERM-DIC/TONEPY.tit: Add copyright and license notices.
* MISC-DIC/pinyin.map, MISC-DIC/ziranma.cin: Add copyright and
license notices.
......@@ -31,8 +36,8 @@
* CXTERM-DIC/README: New file.
* CXTERM-DIC/4Corner.tit, CXTERM-DIC/CCDOSPY.tit,
CXTERM-DIC/PY-b5.tit, CXTERM-DIC/QJ-b5.tit, CXTERM-DIC/QJ.tit,
CXTERM-DIC/SW.tit, CXTERM-DIC/TONEPY.tit: Updated from
* CXTERM-DIC/PY-b5.tit, CXTERM-DIC/QJ-b5.tit, CXTERM-DIC/QJ.tit,
* CXTERM-DIC/SW.tit, CXTERM-DIC/TONEPY.tit: Updated from
X11R6/contrib/programs/cxterm.
* ja-dic/ja-dic.el: Regenerated.
......
......@@ -47,13 +47,12 @@
nil)))
(defvar quail-indian-update-preceding-char nil)
(make-variable-frame-local 'quail-indian-update-preceding-char)
;; Input value ::
;; CONTROL-FLAG is integer `n'
;; quail-current-key :: keyboard input.
;; Only first `n' can be translated.
;; quail-current-str :: corresonding string.
;; quail-current-str :: corresonding string.
;; jobs :: (1) put last (len-n) char to unrread-command-event.
;; (2) put translated string to quail-current-str.
;;
......@@ -62,8 +61,8 @@
;; quail-current-str :: corresponding string.
;; jobs :: (1) put modified translated string to quail-current-str.
;;
;; When non-nil value is returned from quail-translation-update-function,
;; the quail-current-str is split to characters and put into event queue,
;; When non-nil value is returned from quail-translation-update-function,
;; the quail-current-str is split to characters and put into event queue,
;; with `compose-last-char' event with composition info at the end.
(defun quail-indian-update-translation (control-flag)
......@@ -79,7 +78,7 @@
;; Check the preceding character of the quail region. If the
;; preceding character can be composed with quail-current-str, then
;; grab that preceding character into the quail-current-str and
;; remove that char from the region.
;; remove that char from the region.
(let* (prec-char-position composition-regexp
prec-char-str candidate-str match-pos match-end)
(when (and quail-current-str
......@@ -103,9 +102,9 @@
(setq quail-indian-update-preceding-char prec-char-str)
(delete-region prec-char-position
(overlay-start quail-overlay))))
(setq quail-current-str
(setq quail-current-str
(indian-compose-string
(concat quail-indian-update-preceding-char
(concat quail-indian-update-preceding-char
quail-current-str)))
(if (numberp control-flag)
(setq unread-command-events
......
......@@ -8,6 +8,11 @@
(set_local_socket, set_socket, main): Use egetenv, not getenv.
(w32_get_resource, w32_getenv) [WINDOWSNT]: New functions.
2007-10-25 Jason Rumney <jasonr@gnu.org>
* emacsclient.c (sock_err_message): New function.
(set_tcp_socket): Use it.
2007-10-09 Juanma Barranquero <lekktu@gmail.com>
* emacsclient.c (print_help_and_exit): Fix space to improve
......
......@@ -666,6 +666,29 @@ int sblen = 0; /* Fill pointer for the send buffer. */
/* Socket used to communicate with the Emacs server process. */
HSOCKET emacs_socket = 0;
/* On Windows, the socket library was historically separate from the standard
C library, so errors are handled differently. */
void
sock_err_message (function_name)
char *function_name;
{
#ifdef WINDOWSNT
char* msg = NULL;
FormatMessage (FORMAT_MESSAGE_FROM_SYSTEM
| FORMAT_MESSAGE_ALLOCATE_BUFFER
| FORMAT_MESSAGE_ARGUMENT_ARRAY,
NULL, WSAGetLastError (), 0, (LPTSTR)&msg, 0, NULL);
message (TRUE, "%s: %s: %s\n", progname, function_name, msg);
LocalFree (msg);
#else
message (TRUE, "%s: %s: %s\n", progname, function_name, strerror (errno));
#endif
}
/* Let's send the data to Emacs when either
- the data ends in "\n", or
- the buffer is full (but this shouldn't happen)
......@@ -957,7 +980,7 @@ set_tcp_socket ()
*/
if ((s = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0)
{
message (TRUE, "%s: socket: %s\n", progname, strerror (errno));
sock_err_message ("socket");
return INVALID_SOCKET;
}
......@@ -966,7 +989,7 @@ set_tcp_socket ()
*/
if (connect (s, (struct sockaddr *) &server, sizeof server) < 0)
{
message (TRUE, "%s: connect: %s\n", progname, strerror (errno));
sock_err_message ("connect");
return INVALID_SOCKET;
}
......
......@@ -160,6 +160,23 @@
* startup.el (window-system): Remove. Don't make it frame-local.
2007-10-24 Richard Stallman <rms@gnu.org>
* savehist.el (savehist-save): Omit unreadable elements.
* loadhist.el (unload-function-defs-list): Renamed from
unload-function-features-list.
(unload-feature-special-hooks, unload-feature): Doc fixes.
* indent.el (indent-to-left-margin): If point's in the indentation,
move to the end of the indentation.
* cus-edit.el (customize-changed-options): Make arg optional.
2007-10-24 Juanma Barranquero <lekktu@gmail.com>
* bs.el (bs-select, bs-select-other-window): Fix typos in docstrings.
2007-10-24 Dan Nicolaescu <dann@ics.uci.edu>
* textmodes/org-publish.el (org-publish-attachment): Re-install
......@@ -206,6 +223,19 @@
* simple.el (reindent-then-newline-and-indent): Use a `move after
insert' kind of marker in the save-excursion.
2007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
* textmodes/css-mode.el: Require CL.
(comment-continue): Declare.
* subr.el (make-variable-frame-localizable): Remove.
(make-variable-frame-local): Mark obsolete.
2007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
* textmodes/tex-mode.el (tex-uptodate-p): Don't signal an error if one
of the subdirs is unreadable.
2007-10-23 Michael Albinus <michael.albinus@gmx.de>
* net/tramp.el (tramp-set-file-uid-gid): Protect `call-process'
......@@ -270,6 +300,20 @@
* printing.el: Move variable definitions before use.
(pr-menu-char-width, pr-menu-char-height): Pacify byte compiler.
2007-10-22 Stefan Monnier <monnier@iro.umontreal.ca>
* emulation/tpu-edt.el (tpu-edt-old-global-values): New var.
(tpu-edt-off): Use it.
(tpu-edt-on): Set it. Make sure the tpu-global-map is not already on
the global-map before adding it to global-map.
* menu-bar.el (global-buffers-menu-map): New var.
(global-map, menu-bar-update-buffers): Use it.
* msb.el (msb-menu-bar-update-buffers): Use it.
(msb-sort-by-directory, msb--choose-menu, msb--mode-menu-cond)
(msb--most-recently-used-menu, msb--create-buffer-menu-2):
Use with-current-buffer.
2007-10-22 Juri Linkov <juri@jurta.org>
* isearch-multi.el: New file.
......@@ -458,6 +502,10 @@
minibuffer default value list instead of pushing them temporarily
to the history list.
2007-10-21 Dan Nicolaescu <dann@ics.uci.edu>
* hexl.el (hexl-menu): New major mode menu.
2007-10-21 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/byte-opt.el (byte-optimize-featurep): Fix paren typo.
......@@ -2727,7 +2775,7 @@
2007-09-16 Drew Adams <drew.adams@oracle.com>
* cus-edit (custom-face-edit-activate): Doc fix.
* cus-edit.el (custom-face-edit-activate): Doc fix.
2007-09-16 Glenn Morris <rgm@gnu.org>
......
This diff is collapsed.
......@@ -736,7 +736,7 @@ Leave Buffer Selection Menu."
(defun bs-select ()
"Select current line's buffer and other marked buffers.
If there are no marked buffers the window configuration before starting
Buffer Selectin Menu will be restored.
Buffer Selection Menu will be restored.
If there are marked buffers each marked buffer and the current line's buffer
will be selected in a window.
Leave Buffer Selection Menu."
......@@ -760,7 +760,7 @@ Leave Buffer Selection Menu."
(defun bs-select-other-window ()