changeset 83312:5b54039912f4

Merged from miles@gnu.org--gnu-2005 (patch 435-437) Patches applied: * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-435 Implement tty vertical-divider face * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-436 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-437 Update from CVS git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-352
author Karoly Lorentey <lorentey@elte.hu>
date Tue, 21 Jun 2005 15:45:30 +0000
parents c016d82bf02b (current diff) 443baf51aba7 (diff)
children bdcbdec78dd3
files ChangeLog admin/FOR-RELEASE etc/TODO lisp/ChangeLog lisp/faces.el lisp/simple.el lisp/subr.el lispref/ChangeLog man/ChangeLog src/dispextern.h src/dispnew.c src/xfaces.c
diffstat 26 files changed, 230 insertions(+), 109 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Tue Jun 21 15:42:45 2005 +0000
+++ b/ChangeLog	Tue Jun 21 15:45:30 2005 +0000
@@ -1,3 +1,8 @@
+2005-06-19  J,bi(Br,bt(Bme Marant  <jerome@marant.org>
+
+	* Makefile.in (epaths-force): Protect both lisppath and
+	buildlisppath from whitespace.
+
 2005-06-08  Steven Tamm  <steventamm@mac.com>
 
 	* configure.in: Support Darwin/MacOSX on Intel
--- a/Makefile.in	Tue Jun 21 15:42:45 2005 +0000
+++ b/Makefile.in	Tue Jun 21 15:45:30 2005 +0000
@@ -260,8 +260,8 @@
 	  x_default_search_path=`echo ${x_default_search_path}`; \
 	  gamedir=`echo ${gamedir}`; \
 	  sed < ${srcdir}/src/epaths.in > epaths.h.$$$$		\
-	  -e 's;\(#.*PATH_LOADSEARCH\).*$$;\1 "'$${lisppath}'";'	\
-	  -e 's;\(#.*PATH_DUMPLOADSEARCH\).*$$;\1 "'$${buildlisppath}'";' \
+	  -e 's;\(#.*PATH_LOADSEARCH\).*$$;\1 "'"$${lisppath}"'";'	\
+	  -e 's;\(#.*PATH_DUMPLOADSEARCH\).*$$;\1 "'"$${buildlisppath}"'";' \
 	  -e 's;\(#.*PATH_EXEC\).*$$;\1 "${archlibdir}";'		\
 	  -e 's;\(#.*PATH_INFO\).*$$;\1 "${infodir}";'			\
 	  -e 's;\(#.*PATH_DATA\).*$$;\1 "${etcdir}";'			\
--- a/admin/FOR-RELEASE	Tue Jun 21 15:42:45 2005 +0000
+++ b/admin/FOR-RELEASE	Tue Jun 21 15:45:30 2005 +0000
@@ -11,6 +11,10 @@
 
 ** Get rid of overfull and underfull boxes in manuals.
 
+** Check for widow and orphan lines in manuals;
+make sure all the pages really look ok in the manual as formatted.
+
+
 * NEW FEATURES
 
 ** Make VC-over-Tramp work where possible, or at least fail
@@ -22,8 +26,6 @@
 
 ** Update Speedbar.
 
-** Enhance scroll-bar to handle tall line (similar to line-move).
-
 
 * FATAL ERRORS
 
@@ -65,11 +67,6 @@
 time to make anfe-ftp more intelligent.
 
 
-* GTK RELATED BUGS
-
-** Make GTK scrollbars behave like others w.r.t. overscrolling.
-
-
 * REDISPLAY RELATED BUGS
 
 ** Avoid unbreakable loops in redisplay.
--- a/etc/TODO	Tue Jun 21 15:42:45 2005 +0000
+++ b/etc/TODO	Tue Jun 21 15:45:30 2005 +0000
@@ -11,8 +11,8 @@
 
 ** Fix the kill/yank treatment of invisible text.  At the moment,
   invisible text is placed in the kill-ring, so that the contents of
-  the ring may not correspond to the text as displayed to the user. It
-  ought to be possible to omit text which is invisible (due to a
+  the ring may not correspond to the text as displayed to the user.
+  It ought to be possible to omit text which is invisible (due to a
   text-property, overlay, or selective display) from the kill-ring.
 
 ** Change the way define-minor-mode handles autoloading.
@@ -368,6 +368,11 @@
    For use by sml-mode, python-mode, tex-mode, scheme-mode, lisp-mode,
    haskell-mode, tuareg-mode, ...
 
+* Other known bugs:
+
+** a two-char comment-starter whose two chars are symbol constituents will
+not be noticed if it appears within a word.
+
 ** Fix unexelf.c to handle the .data.rel and .data.rel.local
    sections made by GCC 3.4 on IRIX.
 
--- a/lisp/ChangeLog	Tue Jun 21 15:42:45 2005 +0000
+++ b/lisp/ChangeLog	Tue Jun 21 15:45:30 2005 +0000
@@ -1,3 +1,19 @@
+2005-06-20  Kim F. Storm  <storm@cua.dk>
+
+	* subr.el (add-to-ordered-list): Test membership with eq.  Simplify.
+
+2005-06-20  Miles Bader  <miles@gnu.org>
+
+	* faces.el (vertical-divider): New face.
+
+2005-06-20  Juanma Barranquero  <lekktu@gmail.com>
+
+	* simple.el (kill-whole-line): Doc fix.
+	(next-error-buffer-p, next-error-find-buffer)
+	(clone-indirect-buffer): Fix typos in docstrings.
+	(comment-line-break-function): Doc fix: don't say variable
+	is automatically buffer-local (it isn't).
+
 2005-06-19  Michael Albinus  <michael.albinus@gmx.de>
 
 	* net/tramp-ftp.el (top):
@@ -10,7 +26,7 @@
 
 2005-06-19  Nick Roberts  <nickrob@snap.net.nz>
 
-	* tooltip.el: (tooltip-use-echo-area): Don't make it obsolete.
+	* tooltip.el (tooltip-use-echo-area): Don't make it obsolete.
 
 2005-06-18  Juri Linkov  <juri@jurta.org>
 
--- a/lisp/faces.el	Tue Jun 21 15:42:45 2005 +0000
+++ b/lisp/faces.el	Tue Jun 21 15:45:30 2005 +0000
@@ -1900,6 +1900,13 @@
   :group 'modeline
   :group 'basic-faces)
 
+(defface vertical-divider
+  '((default :inherit mode-line-inactive))
+  "Face used for vertical window dividers on ttys."
+  :version "22.1"
+  :group 'modeline
+  :group 'basic-faces)
+
 ;; Make `modeline' an alias for `mode-line', for compatibility.
 (put 'modeline 'face-alias 'mode-line)
 (put 'modeline-inactive 'face-alias 'mode-line-inactive)
--- a/lisp/simple.el	Tue Jun 21 15:42:45 2005 +0000
+++ b/lisp/simple.el	Tue Jun 21 15:45:30 2005 +0000
@@ -148,7 +148,7 @@
 in question is treated as usable.
 
 The function EXTRA-TEST-EXCLUSIVE, if non-nil is called in each buffer
-that would normally be considered usable.  if it returns nil,
+that would normally be considered usable.  If it returns nil,
 that buffer is rejected."
   (and (buffer-name buffer)		;First make sure it's live.
        (not (and avoid-current (eq buffer (current-buffer))))
@@ -169,7 +169,7 @@
 If AVOID-CURRENT is non-nil, treat the current buffer
 as an absolute last resort only.
 
-The function EXTRA-TEST-INCLUSIVE, if non-nil, is called in each buffers
+The function EXTRA-TEST-INCLUSIVE, if non-nil, is called in each buffer
 that normally would not qualify.  If it returns t, the buffer
 in question is treated as usable.
 
@@ -2768,7 +2768,7 @@
   "Kill current line.
 With prefix arg, kill that many lines starting from the current line.
 If arg is negative, kill backward.  Also kill the preceding newline.
-\(This is meant to make C-x z work well with negative arguments.\)
+\(This is meant to make \\[repeat] work well with negative arguments.\)
 If arg is zero, kill current line but exclude the trailing newline."
   (interactive "p")
   (if (and (> arg 0) (eobp) (save-excursion (forward-visible-line 0) (eobp)))
@@ -3929,9 +3929,7 @@
 
 This function is only called during auto-filling of a comment section.
 The function should take a single optional argument, which is a flag
-indicating whether it should use soft newlines.
-
-Setting this variable automatically makes it local to the current buffer.")
+indicating whether it should use soft newlines.")
 
 ;; This function is used as the auto-fill-function of a buffer
 ;; when Auto-Fill mode is enabled.
@@ -5120,7 +5118,7 @@
 (defun clone-indirect-buffer (newname display-flag &optional norecord)
   "Create an indirect buffer that is a twin copy of the current buffer.
 
-Give the indirect buffer name NEWNAME.  Interactively, read NEW-NAME
+Give the indirect buffer name NEWNAME.  Interactively, read NEWNAME
 from the minibuffer when invoked with a prefix arg.  If NEWNAME is nil
 or if not called with a prefix arg, NEWNAME defaults to the current
 buffer's name.  The name is modified by adding a `<N>' suffix to it
--- a/lisp/subr.el	Tue Jun 21 15:42:45 2005 +0000
+++ b/lisp/subr.el	Tue Jun 21 15:45:30 2005 +0000
@@ -960,12 +960,11 @@
 
 (defun add-to-ordered-list (list-var element &optional order)
   "Add to the value of LIST-VAR the element ELEMENT if it isn't there yet.
-The test for presence of ELEMENT is done with `equal'.
+The test for presence of ELEMENT is done with `eq'.
 
 The resulting list is reordered so that the elements are in the
-order given by each element's numeric list order.
-Elements without a numeric list order are placed at the end of
-the list.
+order given by each element's numeric list order.  Elements
+without a numeric list order are placed at the end of the list.
 
 If the third optional argument ORDER is non-nil, set the
 element's list order to the given value.
@@ -979,16 +978,16 @@
       (put list-var 'list-order
            (setq ordering (make-hash-table :weakness 'key :test 'eq))))
     (when order
-      (puthash element order ordering))
-    (add-to-list list-var element)
+      (puthash element (and (numberp order) order) ordering))
+    (unless (memq element (symbol-value list-var))
+      (set list-var (cons element (symbol-value list-var))))
     (set list-var (sort (symbol-value list-var)
 			(lambda (a b)
 			  (let ((oa (gethash a ordering))
 				(ob (gethash b ordering)))
-			    (cond
-			     ((not oa) nil)
-			     ((not ob) t)
-			     (t (< oa ob)))))))))
+			    (if (and oa ob)
+				(< oa ob)
+			      oa)))))))
 
 
 ;;; Load history
--- a/lispref/ChangeLog	Tue Jun 21 15:42:45 2005 +0000
+++ b/lispref/ChangeLog	Tue Jun 21 15:45:30 2005 +0000
@@ -1,3 +1,16 @@
+2005-06-20  Kim F. Storm  <storm@cua.dk>
+
+	* variables.texi (Setting Variables): Any type of element can be
+	given order in add-to-ordered-list.  Compare elements with eq.
+
+	* lists.texi (Rearrangement): Sort predicate may just return non-nil.
+
+2005-06-20  Karl Berry  <karl@gnu.org>
+
+	* syntax.texi (Syntax Flags): Make last column very slightly wider
+	to avoid "generic comment" breaking on two lines and causing an
+	underfull box.
+
 2005-06-19  Luc Teirlinck  <teirllm@auburn.edu>
 
 	* lists.texi (Rings): Various minor clarifications and corrections.
--- a/lispref/lists.texi	Tue Jun 21 15:42:45 2005 +0000
+++ b/lispref/lists.texi	Tue Jun 21 15:45:30 2005 +0000
@@ -1105,7 +1105,7 @@
 
 The argument @var{predicate} must be a function that accepts two
 arguments.  It is called with two elements of @var{list}.  To get an
-increasing order sort, the @var{predicate} should return @code{t} if the
+increasing order sort, the @var{predicate} should return non-@code{nil} if the
 first element is ``less than'' the second, or @code{nil} if not.
 
 The comparison function @var{predicate} must give reliable results for
--- a/lispref/syntax.texi	Tue Jun 21 15:42:45 2005 +0000
+++ b/lispref/syntax.texi	Tue Jun 21 15:45:30 2005 +0000
@@ -883,7 +883,7 @@
   This table gives the value of @var{syntax-code} which corresponds
 to each syntactic type.
 
-@multitable @columnfractions .05 .3 .3 .3
+@multitable @columnfractions .05 .3 .3 .31
 @item
 @tab
 @i{Integer} @i{Class}
--- a/lispref/variables.texi	Tue Jun 21 15:42:45 2005 +0000
+++ b/lispref/variables.texi	Tue Jun 21 15:45:30 2005 +0000
@@ -903,6 +903,55 @@
     (setq @var{var} (cons @var{value} @var{var})))
 @end example
 
+@defun add-to-ordered-list symbol element &optional order
+This function sets the variable @var{symbol} by inserting
+@var{element} into the old value, which must be a list, at the
+position specified by @var{order}.  If @var{element} is already a
+member of the list, its position in the list is adjusted according
+to @var{order}.  Membership is tested using @code{eq}.
+The valued returned is the resulting list, whether updated or not.
+
+The @var{order} is a number, and the elements on list are sorted in
+increasing numerical order.  Elements without a numeric list order are
+placed at the end of @var{symbol}.
+
+The argument @var{symbol} is not implicitly quoted;
+@code{add-to-ordered-list} is an ordinary function, like @code{set}
+and unlike @code{setq}.  Quote the argument yourself if that is what
+you want.
+
+The ordering information is stored in an alist on @var{symbol}'s
+@code{list-order} property.
+@end defun
+
+Here's a scenario showing how to use @code{add-to-ordered-list}:
+
+@example
+(setq foo '())
+     @result{} nil
+
+(add-to-ordered-list 'foo 'a 1)     ;; @r{Add @code{a}.}
+     @result{} (a)
+
+(add-to-ordered-list 'foo 'c 3)     ;; @r{Add @code{c}.}
+     @result{} (a c)
+
+(add-to-ordered-list 'foo 'b 2)     ;; @r{Add @code{b}.}
+     @result{} (a b c)
+
+(add-to-ordered-list 'foo 'b 4)     ;; @r{Move @code{b}.}
+     @result{} (a c b)
+
+(add-to-ordered-list 'foo 'd)       ;; @r{Append @code{d}.}
+     @result{} (a c b d)
+
+(add-to-ordered-list 'foo 'b 2)     ;; @r{Move @code{b}.}
+     @result{} (a b c d)
+
+foo                       ;; @r{@code{foo} was changed.}
+     @result{} (a b c d)
+@end example
+
 @node Variable Scoping
 @section Scoping Rules for Variable Bindings
 
--- a/man/ChangeLog	Tue Jun 21 15:42:45 2005 +0000
+++ b/man/ChangeLog	Tue Jun 21 15:45:30 2005 +0000
@@ -1,3 +1,7 @@
+2005-06-20  Miles Bader  <miles@gnu.org>
+
+	* display.texi (Faces): Add `vertical-divider'.
+
 2005-06-17  Richard M. Stallman  <rms@gnu.org>
 
 	* text.texi (Adaptive Fill): Minor clarification.
--- a/man/building.texi	Tue Jun 21 15:42:45 2005 +0000
+++ b/man/building.texi	Tue Jun 21 15:45:30 2005 +0000
@@ -764,7 +764,7 @@
 @code{gud-gdb-command-name} to @code{"gdb --fullname"} or edit the
 startup command in the minibuffer to say that.  You need to do use
 text command mode to run multiple debugging sessions within one Emacs
-session.  If you have customised @code{gud-gdb-command-name} in that
+session.  If you have customized @code{gud-gdb-command-name} in that
 way, then you can use @kbd{M-x gdba} to invoke GDB in graphical mode.
 
 @menu
--- a/man/calendar.texi	Tue Jun 21 15:42:45 2005 +0000
+++ b/man/calendar.texi	Tue Jun 21 15:45:30 2005 +0000
@@ -1590,7 +1590,7 @@
 have stopped working on the project and, by default, Emacs queries this.
 You can, however, set the value of the variable
 @code{timeclock-ask-before-exiting} to @code{nil} (via @kbd{M-x
-customize}) to avoid this behaviour; then, only an explicit @kbd{M-x
+customize}) to avoid this behavior; then, only an explicit @kbd{M-x
 timeclock-out} or @kbd{M-x timeclock-change} will tell Emacs that the
 current interval is over.
 
--- a/man/display.texi	Tue Jun 21 15:42:45 2005 +0000
+++ b/man/display.texi	Tue Jun 21 15:45:30 2005 +0000
@@ -1,5 +1,5 @@
 @c This is part of the Emacs manual.
-@c Copyright (C) 1985, 86, 87, 93, 94, 95, 1997, 2000, 2001, 2002
+@c Copyright (C) 1985, 86, 87, 93, 94, 95, 1997, 2000, 2001, 2002, 2005
 @c   Free Software Foundation, Inc.
 @c See file emacs.texi for copying conditions.
 @node Display, Search, Registers, Top
@@ -113,6 +113,10 @@
 @item header-line
 Similar to @code{mode-line} for a window's header line.  Most modes
 don't use the header line, but the Info mode does.
+@item vertical-divider
+This face is used for the vertical divider between windows on
+character terminals.  By default this face inherits from the
+@code{mode-line-inactive} face.
 @item minibuffer-prompt
 This face is used for the prompt strings displayed in the minibuffer.
 @item highlight
--- a/man/emacs-mime.texi	Tue Jun 21 15:42:45 2005 +0000
+++ b/man/emacs-mime.texi	Tue Jun 21 15:45:30 2005 +0000
@@ -56,7 +56,7 @@
 This manual documents the libraries used to compose and display
 @acronym{MIME} messages.
 
-This manual is directed at users who want to modify the behaviour of
+This manual is directed at users who want to modify the behavior of
 the @acronym{MIME} encoding/decoding process or want a more detailed
 picture of how the Emacs @acronym{MIME} library works, and people who want
 to write functions and commands that manipulate @acronym{MIME} elements.
@@ -795,7 +795,7 @@
 Mapping from @acronym{MIME} charset to encoding to use.  This variable is
 usually used except, e.g., when other requirements force a specific
 encoding (digitally signed messages require 7bit encodings).  The
-default is 
+default is
 
 @lisp
 ((iso-2022-jp . 7bit)
--- a/man/flymake.texi	Tue Jun 21 15:42:45 2005 +0000
+++ b/man/flymake.texi	Tue Jun 21 15:45:30 2005 +0000
@@ -292,7 +292,7 @@
 @section Customizable variables
 @cindex Customizable variables
 
-This section summarises variables used for Flymake
+This section summarizes variables used for Flymake
 configuration.
 
 @table @code
@@ -378,7 +378,7 @@
 selected. If no match is found, @code{flymake-mode} is switched off.
 
 @item init-function
-@code{init-function} is required to initialise the syntax check,
+@code{init-function} is required to initialize the syntax check,
 usually by creating a temporary copy of the buffer contents. The
 function must return @code{(list cmd-name arg-list)}. If
 @code{init-function} returns null, syntax check is aborted, by
@@ -639,7 +639,7 @@
 and the way it can be obtained can vary greatly for different projects.
 Therefore, a customizable variable
 @code{flymake-get-project-include-dirs-function} is used to provide the
-way to implement the desired behaviour.
+way to implement the desired behavior.
 
 The default implementation, @code{flymake-get-project-include-dirs-imp},
 uses a @code{make} call. This requires a correct base directory, that is, a
@@ -658,7 +658,7 @@
 Flymake can be configured to use different tools for performing syntax
 checks. For example, it can use direct compiler call to syntax check a perl
 script or a call to @code{make} for a more complicated case of a
-@code{C/C++} source.  The general idea is that simple files, like perl
+@code{C/C++} source. The general idea is that simple files, like perl
 scripts and html pages, can be checked by directly invoking a
 corresponding tool. Files that are usually more complex and generally
 used as part of larger projects, might require non-trivial options to
--- a/man/gnus.texi	Tue Jun 21 15:42:45 2005 +0000
+++ b/man/gnus.texi	Tue Jun 21 15:45:30 2005 +0000
@@ -832,21 +832,21 @@
 
 Filtering Spam Using The Spam ELisp Package
 
-* Spam ELisp Package Sequence of Events::  
-* Spam ELisp Package Filtering of Incoming Mail::  
-* Spam ELisp Package Global Variables::  
-* Spam ELisp Package Configuration Examples::  
-* Blacklists and Whitelists::   
-* BBDB Whitelists::             
-* Gmane Spam Reporting::        
-* Anti-spam Hashcash Payments::  
-* Blackholes::                  
-* Regular Expressions Header Matching::  
-* Bogofilter::                  
-* ifile spam filtering::        
-* spam-stat spam filtering::    
-* SpamOracle::                  
-* Extending the Spam ELisp package::  
+* Spam ELisp Package Sequence of Events::
+* Spam ELisp Package Filtering of Incoming Mail::
+* Spam ELisp Package Global Variables::
+* Spam ELisp Package Configuration Examples::
+* Blacklists and Whitelists::
+* BBDB Whitelists::
+* Gmane Spam Reporting::
+* Anti-spam Hashcash Payments::
+* Blackholes::
+* Regular Expressions Header Matching::
+* Bogofilter::
+* ifile spam filtering::
+* spam-stat spam filtering::
+* SpamOracle::
+* Extending the Spam ELisp package::
 
 Filtering Spam Using Statistics with spam-stat
 
@@ -1393,7 +1393,7 @@
 Most common Unix news readers use a shared startup file called
 @file{.newsrc}.  This file contains all the information about what
 groups are subscribed, and which articles in these groups have been
-read. 
+read.
 
 Things got a bit more complicated with @sc{gnus}.  In addition to
 keeping the @file{.newsrc} file updated, it also used a file called
@@ -3008,7 +3008,7 @@
 hear a beep when you enter a group, you could put something like
 @code{(dummy-variable (ding))} in the parameters of that group.
 @code{dummy-variable} will be set to the (meaningless) result of the
-@code{(ding)} form.  
+@code{(ding)} form.
 
 Alternatively, since the VARIABLE becomes local to the group, this
 pattern can be used to temporarily change a hook.  For example, if the
@@ -3984,7 +3984,7 @@
      8: comp.binaries.fractals
     13: comp.sources.unix
    452: alt.sex.emacs
-@end group   
+@end group
 @end example
 
 The @samp{Emacs} topic has the topic parameter @code{(score-file
@@ -13293,7 +13293,7 @@
 By default the splitting codes @acronym{MIME} decodes headers so you
 can match on non-@acronym{ASCII} strings.  The
 @code{nnmail-mail-splitting-charset} variable specifies the default
-charset for decoding.  The behaviour can be turned off completely by
+charset for decoding.  The behavior can be turned off completely by
 binding @code{nnmail-mail-splitting-decodes} to @code{nil}, which is
 useful if you want to match articles based on the raw header data.
 
@@ -14011,7 +14011,7 @@
 
 @table @code
 
-@item group 
+@item group
 If the split is a string, that will be taken as a group name.  Normal
 regexp match expansion will be done.  See below for examples.
 
@@ -16297,7 +16297,7 @@
 A file containing credentials used to log in on servers.  The format is
 (almost) the same as the @code{ftp} @file{~/.netrc} file.  See the
 variable @code{nntp-authinfo-file} for exact syntax; also see
-@ref{NNTP}.  An example of an .authinfo line for an IMAP server, is: 
+@ref{NNTP}.  An example of an .authinfo line for an IMAP server, is:
 
 @example
 machine students.uio.no login larsi password geheimnis port imap
@@ -16635,7 +16635,7 @@
 
 @acronym{IMAP} is a complex protocol, more so than @acronym{NNTP} or
 @acronym{POP3}.  Implementation bugs are not unlikely, and we do our
-best to fix them right away.  If you encounter odd behaviour, chances
+best to fix them right away.  If you encounter odd behavior, chances
 are that either the server or Gnus is buggy.
 
 If you are familiar with network protocols in general, you will
@@ -16650,7 +16650,7 @@
 @vindex imap-log
 Because the protocol dump, when enabled, generates lots of data, it is
 disabled by default.  You can enable it by setting @code{imap-log} as
-follows: 
+follows:
 
 @lisp
 (setq imap-log t)
@@ -18726,7 +18726,7 @@
 @table @dfn
 @item If I read an article while plugged, do they get entered into the Agent?
 
-@strong{No}.  If you want this behaviour, add
+@strong{No}.  If you want this behavior, add
 @code{gnus-agent-fetch-selected-article} to
 @code{gnus-select-article-hook}.
 
@@ -21012,7 +21012,7 @@
 
 Gnus usually moves point to a pre-defined place on each line in most
 buffers.  By default, point move to the first colon character on the
-line.  You can customize this behaviour in three different ways.
+line.  You can customize this behavior in three different ways.
 
 You can move the colon character to somewhere else on the line.
 
@@ -22361,7 +22361,7 @@
 @samp{vmadmin.com}.  If you get 200 messages about @samp{VIAGRA}, you
 discard all messages with @samp{VIAGRA} in the message.  If you get
 lots of spam from Bulgaria, for example, you try to filter all mail
-from Bulgarian IPs.  
+from Bulgarian IPs.
 
 This, unfortunately, is a great way to discard legitimate e-mail.  The
 risks of blocking a whole country (Bulgaria, Norway, Nigeria, China,
@@ -22704,22 +22704,22 @@
 group.
 
 @menu
-* Spam ELisp Package Sequence of Events::  
-* Spam ELisp Package Filtering of Incoming Mail::  
-* Spam ELisp Package Global Variables::  
-* Spam ELisp Package Configuration Examples::  
-* Blacklists and Whitelists::   
-* BBDB Whitelists::             
-* Gmane Spam Reporting::        
-* Anti-spam Hashcash Payments::  
-* Blackholes::                  
-* Regular Expressions Header Matching::  
-* Bogofilter::                  
-* ifile spam filtering::        
-* spam-stat spam filtering::    
-* SpamOracle::                  
-* Extending the Spam ELisp package::  
-@end menu 
+* Spam ELisp Package Sequence of Events::
+* Spam ELisp Package Filtering of Incoming Mail::
+* Spam ELisp Package Global Variables::
+* Spam ELisp Package Configuration Examples::
+* Blacklists and Whitelists::
+* BBDB Whitelists::
+* Gmane Spam Reporting::
+* Anti-spam Hashcash Payments::
+* Blackholes::
+* Regular Expressions Header Matching::
+* Bogofilter::
+* ifile spam filtering::
+* spam-stat spam filtering::
+* SpamOracle::
+* Extending the Spam ELisp package::
+@end menu
 
 @node Spam ELisp Package Sequence of Events
 @subsubsection Spam ELisp Package Sequence of Events
@@ -23174,7 +23174,7 @@
  ;; @r{any ham goes to my @samp{nnimap+mail.lifelogs.com:mail} folder, but}
  ;; @r{also to my @samp{nnimap+mail.lifelogs.com:trainham} folder for training}
 
- (ham-process-destination "nnimap+mail.lifelogs.com:mail" 
+ (ham-process-destination "nnimap+mail.lifelogs.com:mail"
                           "nnimap+mail.lifelogs.com:trainham")
  ;; @r{in this group, only @samp{!} marks are ham}
  (ham-marks
@@ -23215,7 +23215,7 @@
     (spam-contents gnus-group-spam-classification-ham))
 @end lisp
 
-@itemize 
+@itemize
 
 @item @b{The Spam folder:}
 
@@ -23308,7 +23308,7 @@
 added to a group's @code{spam-process} parameter, the senders of
 spam-marked articles will be added to the blacklist.
 
-@emph{WARNING} 
+@emph{WARNING}
 
 Instead of the obsolete
 @code{gnus-group-spam-exit-processor-blacklist}, it is recommended
@@ -23327,7 +23327,7 @@
 whitelist.  Note that this ham processor has no effect in @emph{spam}
 or @emph{unclassified} groups.
 
-@emph{WARNING} 
+@emph{WARNING}
 
 Instead of the obsolete
 @code{gnus-group-ham-exit-processor-whitelist}, it is recommended
@@ -23393,7 +23393,7 @@
 BBDB.  Note that this ham processor has no effect in @emph{spam}
 or @emph{unclassified} groups.
 
-@emph{WARNING} 
+@emph{WARNING}
 
 Instead of the obsolete
 @code{gnus-group-ham-exit-processor-BBDB}, it is recommended
@@ -23420,7 +23420,7 @@
 
 Gmane can be found at @uref{http://gmane.org}.
 
-@emph{WARNING} 
+@emph{WARNING}
 
 Instead of the obsolete
 @code{gnus-group-spam-exit-processor-report-gmane}, it is recommended
@@ -23589,7 +23589,7 @@
 added to a group's @code{spam-process} parameter, spam-marked articles
 will be added to the Bogofilter spam database.
 
-@emph{WARNING} 
+@emph{WARNING}
 
 Instead of the obsolete
 @code{gnus-group-spam-exit-processor-bogofilter}, it is recommended
@@ -23606,7 +23606,7 @@
 of non-spam messages.  Note that this ham processor has no effect in
 @emph{spam} or @emph{unclassified} groups.
 
-@emph{WARNING} 
+@emph{WARNING}
 
 Instead of the obsolete
 @code{gnus-group-ham-exit-processor-bogofilter}, it is recommended
@@ -23693,7 +23693,7 @@
 added to a group's @code{spam-process} parameter, the spam-marked
 articles will be added to the spam-stat database of spam messages.
 
-@emph{WARNING} 
+@emph{WARNING}
 
 Instead of the obsolete
 @code{gnus-group-spam-exit-processor-stat}, it is recommended
@@ -23710,7 +23710,7 @@
 of non-spam messages.  Note that this ham processor has no effect in
 @emph{spam} or @emph{unclassified} groups.
 
-@emph{WARNING} 
+@emph{WARNING}
 
 Instead of the obsolete
 @code{gnus-group-ham-exit-processor-stat}, it is recommended
@@ -23802,7 +23802,7 @@
 to a group's @code{spam-process} parameter, spam-marked articles will be
 sent to SpamOracle as spam samples.
 
-@emph{WARNING} 
+@emph{WARNING}
 
 Instead of the obsolete
 @code{gnus-group-spam-exit-processor-spamoracle}, it is recommended
@@ -23819,7 +23819,7 @@
 messages.  Note that this ham processor has no effect in @emph{spam} or
 @emph{unclassified} groups.
 
-@emph{WARNING} 
+@emph{WARNING}
 
 Instead of the obsolete
 @code{gnus-group-ham-exit-processor-spamoracle}, it is recommended
@@ -23914,7 +23914,7 @@
 provide them if Blackbox supports spam or ham processing.
 
 Also, ham and spam processors are being phased out as single
-variables.  Instead the form @code{'(spam spam-use-blackbox)} or 
+variables.  Instead the form @code{'(spam spam-use-blackbox)} or
 @code{'(ham spam-use-blackbox)} is favored.  For now, spam/ham
 processor variables are still around but they won't be for long.
 
@@ -26140,7 +26140,7 @@
 @kbd{J r} in the server buffer.  Gnus will not download articles into
 the Agent cache, unless you instruct it to do so, though, by using
 @kbd{J u} or @kbd{J s} from the Group buffer.  You revert to the old
-behaviour of having the Agent disabled with @code{(setq gnus-agent
+behavior of having the Agent disabled with @code{(setq gnus-agent
 nil)}.  Note that putting @code{(gnus-agentize)} in @file{~/.gnus.el}
 is not needed any more.
 
@@ -26280,7 +26280,7 @@
 system.  While the variable is called @code{canlock-password}, it is not
 security sensitive data.  Publishing your canlock string on the web
 will not allow anyone to be able to anything she could not already do.
-The behaviour can be changed by customizing @code{message-insert-canlock}.
+The behavior can be changed by customizing @code{message-insert-canlock}.
 
 @item
 Gnus supports server-side mail filtering using Sieve.
@@ -26380,7 +26380,7 @@
 @item
 The default for @code{message-forward-show-mml} changed to symbol @code{best}.
 
-The behaviour for the @code{best} value is to show @acronym{MML} (i.e.,
+The behavior for the @code{best} value is to show @acronym{MML} (i.e.,
 convert to @acronym{MIME}) when appropriate.  @acronym{MML} will not be
 used when forwarding signed or encrypted messages, as the conversion
 invalidate the digital signature.
@@ -26905,7 +26905,7 @@
 edebug.  Debugging Lisp code is documented in the Elisp manual
 (@pxref{Debugging, , Debugging Lisp Programs, elisp, The GNU Emacs
 Lisp Reference Manual}).  To get you started with edebug, consider if
-you discover some weird behaviour when pressing @kbd{c}, the first
+you discover some weird behavior when pressing @kbd{c}, the first
 step is to do @kbd{C-h k c} and click on the hyperlink (Emacs only) in
 the documentation buffer that leads you to the function definition,
 then press @kbd{M-x edebug-defun RET} with point inside that function,
--- a/man/message.texi	Tue Jun 21 15:42:45 2005 +0000
+++ b/man/message.texi	Tue Jun 21 15:45:30 2005 +0000
@@ -739,7 +739,7 @@
 @vindex message-beginning-of-line
 If at beginning of header value, go to beginning of line, else go to
 beginning of header value.  (The header value comes after the header
-name and the colon.)  This behaviour can be disabled by toggling
+name and the colon.)  This behavior can be disabled by toggling
 the variable @code{message-beginning-of-line}.
 
 @end table
--- a/man/smtpmail.texi	Tue Jun 21 15:42:45 2005 +0000
+++ b/man/smtpmail.texi	Tue Jun 21 15:45:30 2005 +0000
@@ -298,7 +298,7 @@
 If you connect to the internet via a dialup connection, or for some
 other reason don't have permanent internet connection, sending mail
 will fail when you are not connected.  The SMTP library implements
-queued delivery, and the following variable control its behaviour.
+queued delivery, and the following variable control its behavior.
 
 @table @code
 @item smtpmail-queue-mail
@@ -345,7 +345,7 @@
   The variable @code{smtpmail-sendto-domain} makes the SMTP library
 add @samp{@@} and the specified value to recipients specified in the
 message when they are sent using the @code{RCPT TO} command.  Some
-configurations of sendmail requires this behaviour.  Don't bother to
+configurations of sendmail requires this behavior.  Don't bother to
 set this unless you have get an error like:
 
 @example
--- a/src/ChangeLog	Tue Jun 21 15:42:45 2005 +0000
+++ b/src/ChangeLog	Tue Jun 21 15:45:30 2005 +0000
@@ -1,3 +1,18 @@
+2005-06-20  Kim F. Storm  <storm@cua.dk>
+
+	* fns.c (Fsort): Doc fix.
+
+2005-06-20  Miles Bader  <miles@gnu.org>
+
+	* xfaces.c (Qvertical_divider): New variable.
+	(realize_basic_faces): Realize its face.
+	(syms_of_xfaces): Initialize it.
+
+	* dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
+
+	* dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
+	window-separator on ttys using `vertical-divider' face by default.
+
 2005-06-17  Richard M. Stallman  <rms@gnu.org>
 
 	* xdisp.c (get_next_display_element): Reverse
@@ -6,7 +21,7 @@
 	* term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
 	(Ftty_no_underline): New function.
 	(syms_of_term): defsubr it.
-	
+
 	* keyboard.c (read_char): Call restore_getcjmp after jump occurs.
 
 	* dispnew.c (spec_glyph_lookup_face): New function.
--- a/src/dispextern.h	Tue Jun 21 15:42:45 2005 +0000
+++ b/src/dispextern.h	Tue Jun 21 15:45:30 2005 +0000
@@ -1588,6 +1588,7 @@
   CURSOR_FACE_ID,
   MOUSE_FACE_ID,
   MENU_FACE_ID,
+  VERTICAL_DIVIDER_FACE_ID,
   BASIC_FACE_ID_SENTINEL
 };
 
--- a/src/dispnew.c	Tue Jun 21 15:42:45 2005 +0000
+++ b/src/dispnew.c	Tue Jun 21 15:45:30 2005 +0000
@@ -2708,10 +2708,15 @@
       if (!WINDOW_RIGHTMOST_P (w))
 	{
 	  struct Lisp_Char_Table *dp = window_display_table (w);
-	  right_border_glyph = (dp && INTEGERP (DISP_BORDER_GLYPH (dp))
-				? XINT (DISP_BORDER_GLYPH (dp))
-				: '|');
-	  right_border_glyph = spec_glyph_lookup_face (w, right_border_glyph);
+
+	  right_border_glyph
+	    = ((dp && INTEGERP (DISP_BORDER_GLYPH (dp)))
+	       ? spec_glyph_lookup_face (w, XINT (DISP_BORDER_GLYPH (dp)))
+	       : '|');
+
+	  if (FAST_GLYPH_FACE (right_border_glyph) <= 0)
+	    right_border_glyph
+	      = FAST_MAKE_GLYPH (right_border_glyph, VERTICAL_DIVIDER_FACE_ID);
 	}
     }
   else
--- a/src/fns.c	Tue Jun 21 15:42:45 2005 +0000
+++ b/src/fns.c	Tue Jun 21 15:45:30 2005 +0000
@@ -1892,7 +1892,7 @@
 DEFUN ("sort", Fsort, Ssort, 2, 2, 0,
        doc: /* Sort LIST, stably, comparing elements using PREDICATE.
 Returns the sorted list.  LIST is modified by side effects.
-PREDICATE is called with two elements of LIST, and should return t
+PREDICATE is called with two elements of LIST, and should return non-nil
 if the first element is "less" than the second.  */)
      (list, predicate)
      Lisp_Object list, predicate;
--- a/src/xfaces.c	Tue Jun 21 15:42:45 2005 +0000
+++ b/src/xfaces.c	Tue Jun 21 15:45:30 2005 +0000
@@ -327,7 +327,7 @@
 
 Lisp_Object Qdefault, Qtool_bar, Qregion, Qfringe;
 Lisp_Object Qheader_line, Qscroll_bar, Qcursor, Qborder, Qmouse, Qmenu;
-Lisp_Object Qmode_line_inactive;
+Lisp_Object Qmode_line_inactive, Qvertical_divider;
 extern Lisp_Object Qmode_line;
 
 /* The symbol `face-alias'.  A symbols having that property is an
@@ -6899,6 +6899,7 @@
       realize_named_face (f, Qcursor, CURSOR_FACE_ID);
       realize_named_face (f, Qmouse, MOUSE_FACE_ID);
       realize_named_face (f, Qmenu, MENU_FACE_ID);
+      realize_named_face (f, Qvertical_divider, VERTICAL_DIVIDER_FACE_ID);
 
       /* Reflect changes in the `menu' face in menu bars.  */
       if (FRAME_FACE_CACHE (f)->menu_face_changed_p)
@@ -8034,6 +8035,8 @@
   staticpro (&Qmouse);
   Qmode_line_inactive = intern ("mode-line-inactive");
   staticpro (&Qmode_line_inactive);
+  Qvertical_divider = intern ("vertical-divider");
+  staticpro (&Qvertical_divider);
   Qtty_color_desc = intern ("tty-color-desc");
   staticpro (&Qtty_color_desc);
   Qtty_color_standard_values = intern ("tty-color-standard-values");