changeset 111644:27b2c1dde9aa

msdos.c (dos_rawgetc): Use gen_help_event, instead of doing the same in-line.
author Eli Zaretskii <eliz@gnu.org>
date Sat, 20 Nov 2010 13:45:14 +0200
parents 224cc868d181 (diff) f6c701d79adf (current diff)
children 6c46fcde7f5f
files src/ChangeLog src/msdos.c
diffstat 154 files changed, 5505 insertions(+), 3829 deletions(-) [+]
line wrap: on
line diff
--- a/.dir-locals.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/.dir-locals.el	Sat Nov 20 13:45:14 2010 +0200
@@ -2,6 +2,8 @@
          (sentence-end-double-space . t)
          (fill-column . 70)))
  (c-mode . ((c-file-style . "GNU")))
+ ;; You must set bugtracker_debbugs_url in your bazaar.conf for this to work.
+ ;; See admin/notes/bugtracker.
  (log-edit-mode . ((log-edit-rewrite-fixes
                     " (bug#\\([0-9]+\\))" . "debbugs:\\1")))
  (change-log-mode . ((add-log-time-zone-rule . t)
--- a/ChangeLog	Sat Nov 20 13:24:28 2010 +0200
+++ b/ChangeLog	Sat Nov 20 13:45:14 2010 +0200
@@ -1,3 +1,7 @@
+2010-11-15  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* configure.in: Do not check for unconditionally included headers.
+
 2010-11-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 
 	* .dir-locals.el (log-edit-mode): Set log-edit-rewrite-fixes.
@@ -2890,7 +2894,7 @@
 
 	* make-dist (lispref): Do include lispref/index.texi.
 
-2004-01-06  Eric Hanchrow  <offby1@blarg.net>  (tiny change)
+2004-01-06  Eric Hanchrow  <offby1@blarg.net>
 
 	* make-dist (tempdir): Include cursors in nt/icons.
 
--- a/admin/notes/bugtracker	Sat Nov 20 13:24:28 2010 +0200
+++ b/admin/notes/bugtracker	Sat Nov 20 13:45:14 2010 +0200
@@ -474,16 +474,41 @@
 
 ** Bazaar stuff
 
-*** You can use `bzr commit --fixes emacs:123' to mark that a commit fixes
-Emacs bug 123.  You will first need to add a line to your bazaar.conf:
+*** You can use `bzr commit --fixes debbugs:123' to mark that a commit fixes
+Emacs bug 123.  You will first need to add a line to your ~/bazaar.conf
+or ~/locations.conf:
+
+bugtracker_debbugs_url = http://debbugs.gnu.org/{id}
+
+Here "{id}" is a literal string, a placeholder that will be replaced
+by the bug number you specify after `--fixes debbugs:' in the bzr
+command line (123 in the example above).
+
+In the bazaar.conf file, this setting should go into the [DEFAULTS]
+section.
 
-bugtracker_emacs_url = http://debbugs.gnu.org/{id}
+In the locations.conf file, it should go into the branch-specific
+configuration section for the branch where you want this to be in
+effect.  For example, if you want this to be in effect for the branch
+located at `/home/projects/emacs/trunk', you need to have this in your
+~/locations.conf file:
+
+[/home/projects/emacs/trunk]
+bugtracker_debbugs_url = http://debbugs.gnu.org/{id}
+
+If you want to use this in all Emacs branches whose common parent is
+`/home/projects/emacs', put the setting in the [/home/projects/emacs]
+section.  See "bzr help configuration" for more information about
+the *.conf files, their location and formats.  See "bzr help bugs" for
+more information about the bugtracker_debbugs_url setting.
+
+See also log-edit-rewrite-fixes in .dir-locals.el.
 
 Note that all this does is add some metadata to the commit, it doesn't
-actually mark the bug as closed in the tracker.  There seems to be no
-way to see this "metadata" with `bzr log', which is rather poor, but
-it will show up as a link in a recent loggerhead installation, or with
-some of the graphical frontends to bzr log.
+actually mark the bug as closed in the tracker.  You can see this
+information with `bzr log', and it will show up as a link in a recent
+loggerhead installation, or with some of the graphical frontends to
+`bzr log'.
 
 ** Gnus-specific voodoo
 
--- a/configure	Sat Nov 20 13:24:28 2010 +0200
+++ b/configure	Sat Nov 20 13:45:14 2010 +0200
@@ -6221,10 +6221,10 @@
 
 fi
 
-for ac_header in sys/select.h sys/timeb.h sys/time.h unistd.h utime.h \
-  linux/version.h sys/systeminfo.h termios.h limits.h string.h stdlib.h \
-  stdio_ext.h fcntl.h strings.h coff.h pty.h sys/mman.h \
-  sys/param.h sys/vlimit.h sys/resource.h locale.h sys/_mbstate_t.h \
+for ac_header in sys/select.h sys/time.h unistd.h utime.h \
+  linux/version.h sys/systeminfo.h limits.h \
+  stdio_ext.h fcntl.h coff.h pty.h sys/mman.h \
+  sys/vlimit.h sys/resource.h locale.h sys/_mbstate_t.h \
   sys/utsname.h pwd.h utmp.h dirent.h util.h
 do :
   as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
@@ -9364,6 +9364,17 @@
 
 $as_echo "#define HAVE_GCONF 1" >>confdefs.h
 
+            for ac_func in g_type_init
+do :
+  ac_fn_c_check_func "$LINENO" "g_type_init" "ac_cv_func_g_type_init"
+if test "x$ac_cv_func_g_type_init" = x""yes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_G_TYPE_INIT 1
+_ACEOF
+
+fi
+done
+
    fi
 fi
 
--- a/configure.in	Sat Nov 20 13:24:28 2010 +0200
+++ b/configure.in	Sat Nov 20 13:45:14 2010 +0200
@@ -1218,10 +1218,10 @@
 fi
 
 dnl checks for header files
-AC_CHECK_HEADERS(sys/select.h sys/timeb.h sys/time.h unistd.h utime.h \
-  linux/version.h sys/systeminfo.h termios.h limits.h string.h stdlib.h \
-  stdio_ext.h fcntl.h strings.h coff.h pty.h sys/mman.h \
-  sys/param.h sys/vlimit.h sys/resource.h locale.h sys/_mbstate_t.h \
+AC_CHECK_HEADERS(sys/select.h sys/time.h unistd.h utime.h \
+  linux/version.h sys/systeminfo.h limits.h \
+  stdio_ext.h fcntl.h coff.h pty.h sys/mman.h \
+  sys/vlimit.h sys/resource.h locale.h sys/_mbstate_t.h \
   sys/utsname.h pwd.h utmp.h dirent.h util.h)
 
 AC_MSG_CHECKING(if personality LINUX32 can be set)
@@ -1982,6 +1982,8 @@
    PKG_CHECK_MODULES(GCONF, gconf-2.0 >= 2.13, HAVE_GCONF=yes, HAVE_GCONF=no)
    if test "$HAVE_GCONF" = yes; then
       AC_DEFINE(HAVE_GCONF, 1, [Define to 1 if using GConf.])
+      dnl Newer GConf doesn't link with g_objects, so this is not defined.
+      AC_CHECK_FUNCS([g_type_init])
    fi
 fi
 
--- a/doc/emacs/ChangeLog	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/emacs/ChangeLog	Sat Nov 20 13:45:14 2010 +0200
@@ -1,3 +1,18 @@
+2010-11-13  Eli Zaretskii  <eliz@gnu.org>
+
+	* rmail.texi (Rmail Coding): Characters with no fonts are not
+	necessarily displayed as empty boxes.
+
+	* mule.texi (Language Environments, Fontsets): Characters with no
+	fonts are not necessarily displayed as empty boxes.
+
+	* display.texi (Text Display): Document display of glyphless
+	characters.
+
+2010-11-13  Glenn Morris  <rgm@gnu.org>
+
+	* basic.texi (Position Info): Add M-x count-words-region.
+
 2010-11-11  Glenn Morris  <rgm@gnu.org>
 
 	* msdog.texi (ls in Lisp): Update for ls-lisp changes.
--- a/doc/emacs/basic.texi	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/emacs/basic.texi	Sat Nov 20 13:45:14 2010 +0200
@@ -537,6 +537,8 @@
 Display the number of lines in the current region.  Normally bound to
 @kbd{M-=}, except in a few specialist modes.  @xref{Mark}, for
 information about the region.
+@item M-x count-words-region
+Display the number of words in the current region.
 @item C-x =
 Display the character code of character after point, character position of
 point, and column of point (@code{what-cursor-position}).
@@ -743,6 +745,3 @@
 z z z}.  The first @kbd{C-x z} repeats the command once, and each
 subsequent @kbd{z} repeats it once again.
 
-@ignore
-   arch-tag: cda8952a-c439-41c1-aecf-4bc0d6482956
-@end ignore
--- a/doc/emacs/display.texi	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/emacs/display.texi	Sat Nov 20 13:45:14 2010 +0200
@@ -1136,6 +1136,48 @@
 by means of a display table.  @xref{Display Tables,, Display Tables,
 elisp, The Emacs Lisp Reference Manual}.
 
+@cindex glyphless characters
+@cindex characters with no font glyphs
+  On graphics displays, some characters could have no glyphs in any of
+the fonts available to Emacs.  On text terminals, some characters
+could be impossible to encode with the terminal coding system
+(@pxref{Terminal Coding}).  Emacs can display such @dfn{glyphless}
+characters using one of the following methods:
+
+@table @code
+@item zero-width
+Don't display the character.
+
+@item thin-space
+Display a thin space, 1-pixel wide on graphics displays or 1-character
+wide on text terminals.
+
+@item empty-box
+Display an empty box.
+
+@item acronym
+Display the acronym of the character's name (such as @sc{zwnj} or
+@sc{rlm}) in a box.
+
+@item hex-code
+Display the Unicode codepoint of the character in hexadecimal
+notation, in a box.
+@end table
+
+@noindent
+@cindex @code{glyphless-char} face
+With the exception of @code{zero-width}, all other methods draw these
+characters in a special face @code{glyphless-char}, which you can
+customize.
+
+@vindex glyphless-char-display-control
+@vindex char-acronym-table
+To control what glyphless characters are displayed using which method,
+customize the variable @code{glyphless-char-display-control}; see its
+doc string for the details.  For even finer control, set the elements
+of 2 char-tables: @code{glyphless-char-display} and
+@code{char-acronym-table}.
+
 @node Cursor Display
 @section Displaying the Cursor
 
--- a/doc/emacs/mule.texi	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/emacs/mule.texi	Sat Nov 20 13:45:14 2010 +0200
@@ -351,10 +351,11 @@
 @cindex Intlfonts package, installation
   To display the script(s) used by your language environment on a
 graphical display, you need to have a suitable font.  If some of the
-characters appear as empty boxes, you should install the GNU Intlfonts
-package, which includes fonts for most supported scripts.@footnote{If
-you run Emacs on X, you need to inform the X server about the location
-of the newly installed fonts with the following commands:
+characters appear as empty boxes or hex codes, you should install the
+GNU Intlfonts package, which includes fonts for most supported
+scripts.@footnote{If you run Emacs on X, you need to inform the X
+server about the location of the newly installed fonts with the
+following commands:
 
 @example
  xset fp+ /usr/local/share/emacs/fonts
@@ -1314,10 +1315,11 @@
 explicitly requested, despite its name.
 
   A fontset does not necessarily specify a font for every character
-code.  If a fontset specifies no font for a certain character, or if it
-specifies a font that does not exist on your system, then it cannot
-display that character properly.  It will display that character as an
-empty box instead.
+code.  If a fontset specifies no font for a certain character, or if
+it specifies a font that does not exist on your system, then it cannot
+display that character properly.  It will display that character as a
+hex code or thin space or an empty box instead.  (@xref{Text Display, ,
+glyphless characters}, for details.)
 
 @node Defining Fontsets
 @section Defining fontsets
--- a/doc/emacs/rmail.texi	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/emacs/rmail.texi	Sat Nov 20 13:45:14 2010 +0200
@@ -1192,7 +1192,8 @@
 example, a misconfigured mailer could send a message with a
 @samp{charset=iso-8859-1} header when the message is actually encoded
 in @code{koi8-r}.  When you see the message text garbled, or some of
-its characters displayed as empty boxes, this may have happened.
+its characters displayed as hex codes or empty boxes, this may have
+happened.
 
 @findex rmail-redecode-body
   You can correct the problem by decoding the message again using the
--- a/doc/lispintro/ChangeLog	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/lispintro/ChangeLog	Sat Nov 20 13:45:14 2010 +0200
@@ -1,3 +1,8 @@
+2010-11-13  Glenn Morris  <rgm@gnu.org>
+
+	* emacs-lisp-intro.texi: Rename the `count-words-region' example,
+	since there is now a standard command of that name.
+
 2010-10-11  Glenn Morris  <rgm@gnu.org>
 
 	* Makefile.in (.dvi.ps): Remove unnecessary suffix rule.
--- a/doc/lispintro/emacs-lisp-intro.texi	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/lispintro/emacs-lisp-intro.texi	Sat Nov 20 13:45:14 2010 +0200
@@ -704,23 +704,25 @@
 * fwd-para while::              The forward motion @code{while} loop.
 
 Counting: Repetition and Regexps
+@set COUNT-WORDS count-words-example
+@c Length of variable name chosen so that things still line up when expanded.
 
 * Why Count Words::
-* count-words-region::          Use a regexp, but find a problem.
+* @value{COUNT-WORDS}::         Use a regexp, but find a problem.
 * recursive-count-words::       Start with case of no words in region.
 * Counting Exercise::
 
-The @code{count-words-region} Function
-
-* Design count-words-region::   The definition using a @code{while} loop.
-* Whitespace Bug::              The Whitespace Bug in @code{count-words-region}.
+The @code{@value{COUNT-WORDS}} Function
+
+* Design @value{COUNT-WORDS}::  The definition using a @code{while} loop.
+* Whitespace Bug::              The Whitespace Bug in @code{@value{COUNT-WORDS}}.
 
 Counting Words in a @code{defun}
 
 * Divide and Conquer::
 * Words and Symbols::           What to count?
 * Syntax::                      What constitutes a word or symbol?
-* count-words-in-defun::        Very like @code{count-words}.
+* count-words-in-defun::        Very like @code{@value{COUNT-WORDS}}.
 * Several defuns::              Counting several defuns in a file.
 * Find a File::                 Do you want to look at a file?
 * lengths-list-file::           A list of the lengths of many definitions.
@@ -13829,35 +13831,37 @@
 
 @menu
 * Why Count Words::
-* count-words-region::          Use a regexp, but find a problem.
+* @value{COUNT-WORDS}::          Use a regexp, but find a problem.
 * recursive-count-words::       Start with case of no words in region.
 * Counting Exercise::
 @end menu
 
-@node Why Count Words, count-words-region, Counting Words, Counting Words
+@node Why Count Words, @value{COUNT-WORDS}, Counting Words, Counting Words
 @ifnottex
 @unnumberedsec Counting words
 @end ifnottex
 
-The standard Emacs distribution contains a function for counting the
-number of lines within a region.  However, there is no corresponding
-function for counting words.
+The standard Emacs distribution contains functions for counting the
+number of lines and words within a region.
 
 Certain types of writing ask you to count words.  Thus, if you write
 an essay, you may be limited to 800 words; if you write a novel, you
-may discipline yourself to write 1000 words a day.  It seems odd to me
-that Emacs lacks a word count command.  Perhaps people use Emacs
-mostly for code or types of documentation that do not require word
-counts; or perhaps they restrict themselves to the operating system
-word count command, @code{wc}.  Alternatively, people may follow
-the publishers' convention and compute a word count by dividing the
-number of characters in a document by five.  In any event, here are
-commands to count words.
-
-@node count-words-region, recursive-count-words, Why Count Words, Counting Words
-@comment  node-name,  next,  previous,  up
-@section The @code{count-words-region} Function
-@findex count-words-region
+may discipline yourself to write 1000 words a day.  It seems odd, but
+for a long time, Emacs lacked a word count command.  Perhaps people used
+Emacs mostly for code or types of documentation that did not require
+word counts; or perhaps they restricted themselves to the operating
+system word count command, @code{wc}.  Alternatively, people may have
+followed the publishers' convention and computed a word count by
+dividing the number of characters in a document by five.
+
+There are many ways to implement a command to count words.  Here are
+some examples, which you may wish to compare with the standard Emacs
+command, @code{count-words-region}.
+
+@node @value{COUNT-WORDS}, recursive-count-words, Why Count Words, Counting Words
+@comment  node-name,  next,  previous,  up
+@section The @code{@value{COUNT-WORDS}} Function
+@findex @value{COUNT-WORDS}
 
 A word count command could count words in a line, paragraph, region,
 or buffer.  What should the command cover?  You could design the
@@ -13865,7 +13869,7 @@
 the Emacs tradition encourages flexibility---you may want to count
 words in just a section, rather than all of a buffer.  So it makes
 more sense to design the command to count the number of words in a
-region.  Once you have a @code{count-words-region} command, you can,
+region.  Once you have a command to count words in a region, you can,
 if you wish, count words in a whole buffer by marking it with
 @w{@kbd{C-x h}} (@code{mark-whole-buffer}).
 
@@ -13876,13 +13880,13 @@
 or to a @code{while} loop.
 
 @menu
-* Design count-words-region::   The definition using a @code{while} loop.
-* Whitespace Bug::              The Whitespace Bug in @code{count-words-region}.
-@end menu
-
-@node Design count-words-region, Whitespace Bug, count-words-region, count-words-region
-@ifnottex
-@unnumberedsubsec Designing @code{count-words-region}
+* Design @value{COUNT-WORDS}::  The definition using a @code{while} loop.
+* Whitespace Bug::              The Whitespace Bug in @code{@value{COUNT-WORDS}}.
+@end menu
+
+@node Design @value{COUNT-WORDS}, Whitespace Bug, @value{COUNT-WORDS}, @value{COUNT-WORDS}
+@ifnottex
+@unnumberedsubsec Designing @code{@value{COUNT-WORDS}}
 @end ifnottex
 
 First, we will implement the word count command with a @code{while}
@@ -13905,7 +13909,9 @@
 
 The name of the function should be self-explanatory and similar to the
 existing @code{count-lines-region} name.  This makes the name easier
-to remember.  @code{count-words-region} is a good choice.
+to remember.  @code{count-words-region} is the obvious choice.  Since
+that name is now used for the standard Emacs command to count words, we
+will name our implementation @code{@value{COUNT-WORDS}}.
 
 The function counts words within a region.  This means that the
 argument list must contain symbols that are bound to the two
@@ -13923,7 +13929,7 @@
 count words, second, to run the @code{while} loop, and third, to send
 a message to the user.
 
-When a user calls @code{count-words-region}, point may be at the
+When a user calls @code{@value{COUNT-WORDS}}, point may be at the
 beginning or the end of the region.  However, the counting process
 must start at the beginning of the region.  This means we will want
 to put point there if it is not already there.  Executing
@@ -14015,7 +14021,7 @@
 @smallexample
 @group
 ;;; @r{First version; has bugs!}
-(defun count-words-region (beginning end)
+(defun @value{COUNT-WORDS} (beginning end)
   "Print number of words in the region.
 Words are defined as at least one word-constituent
 character followed by at least one character that
@@ -14056,14 +14062,14 @@
 @noindent
 As written, the function works, but not in all circumstances.
 
-@node Whitespace Bug,  , Design count-words-region, count-words-region
-@comment  node-name,  next,  previous,  up
-@subsection The Whitespace Bug in @code{count-words-region}
-
-The @code{count-words-region} command described in the preceding
+@node Whitespace Bug,  , Design @value{COUNT-WORDS}, @value{COUNT-WORDS}
+@comment  node-name,  next,  previous,  up
+@subsection The Whitespace Bug in @code{@value{COUNT-WORDS}}
+
+The @code{@value{COUNT-WORDS}} command described in the preceding
 section has two bugs, or rather, one bug with two manifestations.
 First, if you mark a region containing only whitespace in the middle
-of some text, the @code{count-words-region} command tells you that the
+of some text, the @code{@value{COUNT-WORDS}} command tells you that the
 region contains one word!  Second, if you mark a region containing
 only whitespace at the end of the buffer or the accessible portion of
 a narrowed buffer, the command displays an error message that looks
@@ -14084,7 +14090,7 @@
 @smallexample
 @group
 ;; @r{First version; has bugs!}
-(defun count-words-region (beginning end)
+(defun @value{COUNT-WORDS} (beginning end)
   "Print number of words in the region.
 Words are defined as at least one word-constituent character followed
 by at least one character that is not a word-constituent.  The buffer's
@@ -14123,12 +14129,12 @@
 If you wish, you can also install this keybinding by evaluating it:
 
 @smallexample
-(global-set-key "\C-c=" 'count-words-region)
+(global-set-key "\C-c=" '@value{COUNT-WORDS})
 @end smallexample
 
 To conduct the first test, set mark and point to the beginning and end
 of the following line and then type @kbd{C-c =} (or @kbd{M-x
-count-words-region} if you have not bound @kbd{C-c =}):
+@value{COUNT-WORDS}} if you have not bound @kbd{C-c =}):
 
 @smallexample
     one   two  three
@@ -14139,7 +14145,7 @@
 
 Repeat the test, but place mark at the beginning of the line and place
 point just @emph{before} the word @samp{one}.  Again type the command
-@kbd{C-c =} (or @kbd{M-x count-words-region}).  Emacs should tell you
+@kbd{C-c =} (or @kbd{M-x @value{COUNT-WORDS}}).  Emacs should tell you
 that the region has no words, since it is composed only of the
 whitespace at the beginning of the line.  But instead Emacs tells you
 that the region has one word!
@@ -14148,7 +14154,7 @@
 @file{*scratch*} buffer and then type several spaces at the end of the
 line.  Place mark right after the word @samp{three} and point at the
 end of line.  (The end of the line will be the end of the buffer.)
-Type @kbd{C-c =} (or @kbd{M-x count-words-region}) as you did before.
+Type @kbd{C-c =} (or @kbd{M-x @value{COUNT-WORDS}}) as you did before.
 Again, Emacs should tell you that the region has no words, since it is
 composed only of the whitespace at the end of the line.  Instead,
 Emacs displays an error message saying @samp{Search failed}.
@@ -14157,7 +14163,7 @@
 
 Consider the first manifestation of the bug, in which the command
 tells you that the whitespace at the beginning of the line contains
-one word.  What happens is this: The @code{M-x count-words-region}
+one word.  What happens is this: The @code{M-x @value{COUNT-WORDS}}
 command moves point to the beginning of the region.  The @code{while}
 tests whether the value of point is smaller than the value of
 @code{end}, which it is.  Consequently, the regular expression search
@@ -14191,7 +14197,7 @@
 repeat count.  (In Emacs, you can see a function's documentation by
 typing @kbd{C-h f}, the name of the function, and then @key{RET}.)
 
-In the @code{count-words-region} definition, the value of the end of
+In the @code{@value{COUNT-WORDS}} definition, the value of the end of
 the region is held by the variable @code{end} which is passed as an
 argument to the function.  Thus, we can add @code{end} as an argument
 to the regular expression search expression:
@@ -14200,7 +14206,7 @@
 (re-search-forward "\\w+\\W*" end)
 @end smallexample
 
-However, if you make only this change to the @code{count-words-region}
+However, if you make only this change to the @code{@value{COUNT-WORDS}}
 definition and then test the new version of the definition on a
 stretch of whitespace, you will receive an error message saying
 @samp{Search failed}.
@@ -14231,7 +14237,7 @@
 than the value of end, since the @code{re-search-forward} expression
 did not move point. @dots{} and the cycle repeats @dots{}
 
-The @code{count-words-region} definition requires yet another
+The @code{@value{COUNT-WORDS}} definition requires yet another
 modification, to cause the true-or-false-test of the @code{while} loop
 to test false if the search fails.  Put another way, there are two
 conditions that must be satisfied in the true-or-false-test before the
@@ -14265,17 +14271,17 @@
 found, point is moved through the region.  When the search expression
 fails to find another word, or when point reaches the end of the
 region, the true-or-false-test tests false, the @code{while} loop
-exits, and the @code{count-words-region} function displays one or
+exits, and the @code{@value{COUNT-WORDS}} function displays one or
 other of its messages.
 
-After incorporating these final changes, the @code{count-words-region}
+After incorporating these final changes, the @code{@value{COUNT-WORDS}}
 works without bugs (or at least, without bugs that I have found!).
 Here is what it looks like:
 
 @smallexample
 @group
 ;;; @r{Final version:} @code{while}
-(defun count-words-region (beginning end)
+(defun @value{COUNT-WORDS} (beginning end)
   "Print number of words in the region."
   (interactive "r")
   (message "Counting words in region ... ")
@@ -14309,7 +14315,7 @@
 @end group
 @end smallexample
 
-@node recursive-count-words, Counting Exercise, count-words-region, Counting Words
+@node recursive-count-words, Counting Exercise, @value{COUNT-WORDS}, Counting Words
 @comment  node-name,  next,  previous,  up
 @section Count Words Recursively
 @cindex Count words recursively
@@ -14319,7 +14325,7 @@
 You can write the function for counting words recursively as well as
 with a @code{while} loop.  Let's see how this is done.
 
-First, we need to recognize that the @code{count-words-region}
+First, we need to recognize that the @code{@value{COUNT-WORDS}}
 function has three jobs: it sets up the appropriate conditions for
 counting to occur; it counts the words in the region; and it sends a
 message to the user telling how many words there are.
@@ -14333,7 +14339,7 @@
 message; the other will return the word count.
 
 Let us start with the function that causes the message to be displayed.
-We can continue to call this @code{count-words-region}.
+We can continue to call this @code{@value{COUNT-WORDS}}.
 
 This is the function that the user will call.  It will be interactive.
 Indeed, it will be similar to our previous versions of this
@@ -14347,7 +14353,7 @@
 @smallexample
 @group
 ;; @r{Recursive version; uses regular expression search}
-(defun count-words-region (beginning end)
+(defun @value{COUNT-WORDS} (beginning end)
   "@var{documentation}@dots{}"
   (@var{interactive-expression}@dots{})
 @end group
@@ -14388,7 +14394,7 @@
 
 @smallexample
 @group
-(defun count-words-region (beginning end)
+(defun @value{COUNT-WORDS} (beginning end)
   "Print number of words in the region."
   (interactive "r")
 @end group
@@ -14484,7 +14490,7 @@
 Note that the search expression is part of the do-again-test---the
 function returns @code{t} if its search succeeds and @code{nil} if it
 fails.  (@xref{Whitespace Bug, , The Whitespace Bug in
-@code{count-words-region}}, for an explanation of how
+@code{@value{COUNT-WORDS}}}, for an explanation of how
 @code{re-search-forward} works.)
 
 The do-again-test is the true-or-false test of an @code{if} clause.
@@ -14657,7 +14663,7 @@
 @smallexample
 @group
 ;;; @r{Recursive version}
-(defun count-words-region (beginning end)
+(defun @value{COUNT-WORDS} (beginning end)
   "Print number of words in the region.
 @end group
 
@@ -14702,11 +14708,11 @@
 
 Our next project is to count the number of words in a function
 definition.  Clearly, this can be done using some variant of
-@code{count-word-region}.  @xref{Counting Words, , Counting Words:
+@code{@value{COUNT-WORDS}}.  @xref{Counting Words, , Counting Words:
 Repetition and Regexps}.  If we are just going to count the words in
 one definition, it is easy enough to mark the definition with the
 @kbd{C-M-h} (@code{mark-defun}) command, and then call
-@code{count-word-region}.
+@code{@value{COUNT-WORDS}}.
 
 However, I am more ambitious: I want to count the words and symbols in
 every definition in the Emacs sources and then print a graph that
@@ -14719,7 +14725,7 @@
 * Divide and Conquer::
 * Words and Symbols::           What to count?
 * Syntax::                      What constitutes a word or symbol?
-* count-words-in-defun::        Very like @code{count-words}.
+* count-words-in-defun::        Very like @code{@value{COUNT-WORDS}}.
 * Several defuns::              Counting several defuns in a file.
 * Find a File::                 Do you want to look at a file?
 * lengths-list-file::           A list of the lengths of many definitions.
@@ -14793,11 +14799,11 @@
 @noindent
 However, if we mark the @code{multiply-by-seven} definition with
 @kbd{C-M-h} (@code{mark-defun}), and then call
-@code{count-words-region} on it, we will find that
-@code{count-words-region} claims the definition has eleven words, not
+@code{@value{COUNT-WORDS}} on it, we will find that
+@code{@value{COUNT-WORDS}} claims the definition has eleven words, not
 ten!  Something is wrong!
 
-The problem is twofold: @code{count-words-region} does not count the
+The problem is twofold: @code{@value{COUNT-WORDS}} does not count the
 @samp{*} as a word, and it counts the single symbol,
 @code{multiply-by-seven}, as containing three words.  The hyphens are
 treated as if they were interword spaces rather than intraword
@@ -14805,8 +14811,8 @@
 @samp{multiply by seven}.
 
 The cause of this confusion is the regular expression search within
-the @code{count-words-region} definition that moves point forward word
-by word.  In the canonical version of @code{count-words-region}, the
+the @code{@value{COUNT-WORDS}} definition that moves point forward word
+by word.  In the canonical version of @code{@value{COUNT-WORDS}}, the
 regexp is:
 
 @smallexample
@@ -14839,8 +14845,8 @@
 Usually, a hyphen is not specified as a `word constituent character'.
 Instead, it is specified as being in the `class of characters that are
 part of symbol names but not words.'  This means that the
-@code{count-words-region} function treats it in the same way it treats
-an interword white space, which is why @code{count-words-region}
+@code{@value{COUNT-WORDS}} function treats it in the same way it treats
+an interword white space, which is why @code{@value{COUNT-WORDS}}
 counts @samp{multiply-by-seven} as three words.
 
 There are two ways to cause Emacs to count @samp{multiply-by-seven} as
@@ -14853,7 +14859,7 @@
 constituent character; there are others, too.
 
 Alternatively, we can redefine the regular expression used in the
-@code{count-words} definition so as to include symbols.  This
+@code{@value{COUNT-WORDS}} definition so as to include symbols.  This
 procedure has the merit of clarity, but the task is a little tricky.
 
 @need 1200
@@ -14910,7 +14916,7 @@
 @cindex Counting words in a @code{defun}
 
 We have seen that there are several ways to write a
-@code{count-word-region} function.  To write a
+@code{count-words-region} function.  To write a
 @code{count-words-in-defun}, we need merely adapt one of these
 versions.
 
@@ -15044,7 +15050,7 @@
 How to test this?  The function is not interactive, but it is easy to
 put a wrapper around the function to make it interactive; we can use
 almost the same code as for the recursive version of
-@code{count-words-region}:
+@code{@value{COUNT-WORDS}}:
 
 @smallexample
 @group
@@ -18885,7 +18891,7 @@
 
 @itemize @bullet
 @item
-Install the @code{count-words-region} function and then cause it to
+Install the @code{@value{COUNT-WORDS}} function and then cause it to
 enter the built-in debugger when you call it.  Run the command on a
 region containing two words.  You will need to press @kbd{d} a
 remarkable number of times.  On your system, is a `hook' called after
@@ -18894,7 +18900,7 @@
 Manual}.)
 
 @item
-Copy @code{count-words-region} into the @file{*scratch*} buffer,
+Copy @code{@value{COUNT-WORDS}} into the @file{*scratch*} buffer,
 instrument the function for Edebug, and walk through its execution.
 The function does not need to have a bug, although you can introduce
 one if you wish.  If the function lacks a bug, the walk-through
@@ -18909,7 +18915,7 @@
 @item
 In the Edebug debugging buffer, use the @kbd{p}
 (@code{edebug-bounce-point}) command to see where in the region the
-@code{count-words-region} is working.
+@code{@value{COUNT-WORDS}} is working.
 
 @item
 Move point to some spot further down the function and then type the
@@ -22272,6 +22278,3 @@
 
 @bye
 
-@ignore
-   arch-tag: da1a2154-531f-43a8-8e33-fc7faad10acf
-@end ignore
--- a/doc/lispref/ChangeLog	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/lispref/ChangeLog	Sat Nov 20 13:45:14 2010 +0200
@@ -1,3 +1,19 @@
+2010-11-17  Eli Zaretskii  <eliz@gnu.org>
+
+	* customize.texi (Composite Types): Lower-case index entry.
+
+	* loading.texi (How Programs Do Loading): Document
+	load-file-name.  (Bug#7346)
+
+2010-11-17  Glenn Morris  <rgm@gnu.org>
+
+	* text.texi (Kill Functions, Low-Level Kill Ring): Small fixes.
+
+2010-11-13  Eli Zaretskii  <eliz@gnu.org>
+
+	* display.texi (Usual Display): Characters with no fonts are not
+	necessarily displayed as empty boxes.
+
 2010-10-31  Glenn Morris  <rgm@gnu.org>
 
 	* maps.texi (Standard Keymaps): Update File menu description.
--- a/doc/lispref/customize.texi	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/lispref/customize.texi	Sat Nov 20 13:45:14 2010 +0200
@@ -733,7 +733,7 @@
 
 @node Composite Types
 @subsection Composite Types
-@cindex Composite Types (customization)
+@cindex composite types (customization)
 
   When none of the simple types is appropriate, you can use composite
 types, which build new types from other types or from specified data.
--- a/doc/lispref/display.texi	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/lispref/display.texi	Sat Nov 20 13:45:14 2010 +0200
@@ -5579,9 +5579,9 @@
 table can specify a glyph to use instead of @samp{\}.)
 
 @item
-Multibyte character codes above 256 are displayed as themselves, or as a
-question mark or empty box if the terminal cannot display that
-character.
+Multibyte character codes above 256 are displayed as themselves, or as
+a question mark or a hex code or an empty box if the terminal cannot
+display that character.
 @end itemize
 
   The usual display conventions apply even when there is a display
--- a/doc/lispref/loading.texi	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/lispref/loading.texi	Sat Nov 20 13:45:14 2010 +0200
@@ -107,6 +107,10 @@
 @code{load-path}, then all three suffixes in the second directory, and
 so on.  @xref{Library Search}.
 
+Whatever the name under which the file is eventually found, and the
+directory where Emacs found it, Emacs sets the value of the variable
+@code{load-file-name} to that file's name.
+
 If you get a warning that @file{foo.elc} is older than @file{foo.el}, it
 means you should consider recompiling @file{foo.el}.  @xref{Byte
 Compilation}.
@@ -157,6 +161,12 @@
 file, and it is @code{nil} otherwise.
 @end defvar
 
+@defvar load-file-name
+When Emacs is in the process of loading a file, this variable's value
+is the name of that file, as Emacs found it during the search
+described earlier in this section.
+@end defvar
+
 @defvar load-read-function
 @anchor{Definition of load-read-function}
 @c do not allow page break at anchor; work around Texinfo deficiency.
--- a/doc/lispref/text.texi	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/lispref/text.texi	Sat Nov 20 13:45:14 2010 +0200
@@ -901,10 +901,10 @@
 The command does not set @code{this-command} to @code{kill-region}, so a
 subsequent kill command does not append to the same kill ring entry.
 
-Don't call @code{copy-region-as-kill} in Lisp programs unless you aim to
-support Emacs 18.  For newer Emacs versions, it is better to use
-@code{kill-new} or @code{kill-append} instead.  @xref{Low-Level Kill
-Ring}.
+@c FIXME Why is it better?  Why isn't copy-region-as-kill obsolete then?
+@c Why is it used in many places in Emacs?
+In Lisp programs, it is better to use @code{kill-new} or
+@code{kill-append} instead of this command.  @xref{Low-Level Kill Ring}.
 @end deffn
 
 @node Yanking
@@ -1042,8 +1042,8 @@
 @subsection Low-Level Kill Ring
 
   These functions and variables provide access to the kill ring at a
-lower level, but still convenient for use in Lisp programs, because they
-take care of interaction with window system selections
+lower level, but are still convenient for use in Lisp programs,
+because they take care of interaction with window system selections
 (@pxref{Window System Selections}).
 
 @defun current-kill n &optional do-not-move
@@ -4324,6 +4324,4 @@
 @code{inhibit-modification-hooks} to @code{nil}.
 @end defvar
 
-@ignore
-   arch-tag: 3721e738-a1cb-4085-bc1a-6cb8d8e1d32b
-@end ignore
+
--- a/doc/misc/ChangeLog	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/misc/ChangeLog	Sat Nov 20 13:45:14 2010 +0200
@@ -1,10 +1,28 @@
+2010-11-19  Jay Belanger  <jay.p.belanger@gmail.com>
+
+	* calc.texi (TeX and LaTeX Language Modes, Predefined Units):
+	Mention that the TeX specific units won't use the `tex' prefix
+	in TeX mode.
+
+2010-11-18  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+	* gnus.texi (Misc Article): Document gnus-inhibit-images.
+
+2010-11-17  Glenn Morris  <rgm@gnu.org>
+
+	* edt.texi: Remove information about Emacs 19.
+
+2010-11-17  Michael Albinus  <michael.albinus@gmx.de>
+
+	* trampver.texi: Update release number.
+
 2010-11-12  Katsumi Yamaoka  <yamaoka@jpl.org>
 
 	* gnus.texi (Article Washing): Fix typo.
 
 2010-11-11  Noorul Islam  <noorul@noorul.com>
 
-	* org.texi: Fix typo
+	* org.texi: Fix typo.
 
 2010-11-11  Carsten Dominik  <carsten.dominik@gmail.com>
 
@@ -13,8 +31,7 @@
 
 2010-11-11  Carsten Dominik  <carsten.dominik@gmail.com>
 
-	* org.texi (Images and tables): Add cross reference to
-	link section.
+	* org.texi (Images and tables): Add cross reference to link section.
 
 2010-11-11  Carsten Dominik  <carsten.dominik@gmail.com>
 
@@ -22,18 +39,16 @@
 
 2010-11-11  Eric Schulte  <schulte.eric@gmail.com>
 
-	* multi-line header arguments :PROPERTIES: :ID:
-	b77c8857-6c76-4ea9-8a61-ddc2648d96c4 :END:
+	* org.texi: multi-line header arguments :PROPERTIES: :ID:
+	b77c8857-6c76-4ea9-8a61-ddc2648d96c4 :END:.
 
 2010-11-11  Carsten Dominik  <carsten.dominik@gmail.com>
 
-	* org.texi (CSS support): Document :HTML_CONTAINER_CLASS:
-	property
+	* org.texi (CSS support): Document :HTML_CONTAINER_CLASS: property.
 
 2010-11-11  Carsten Dominik  <carsten.dominik@gmail.com>
 
-	* org.texi (Project alist): Mention that this is a
-	property list
+	* org.texi (Project alist): Mention that this is a property list.
 
 2010-11-11  Carsten Dominik  <carsten.dominik@gmail.com>
 
@@ -47,18 +62,13 @@
 
 2010-11-11  Eric Schulte  <schulte.eric@gmail.com>
 
-	* org.texi (noweb): updating :noweb documentation to
-	reflect the new "tangle" argument
-
-2010-11-11  Sebastian Rose, Hannover, Germany  <sebastian_rose@gmx.de>
-
-	* org-test-which-func: New function.  Find name of defun
-	around point.
+	* org.texi (noweb): Update :noweb documentation to
+	reflect the new "tangle" argument.
 
 2010-11-11  Eric Schulte  <schulte.eric@gmail.com>
 
-	* org.texi (Batch execution): improved tangling script in
-	documentation
+	* org.texi (Batch execution): Improve tangling script in
+	documentation.
 
 2010-11-11  Carsten Dominik  <carsten.dominik@gmail.com>
 
@@ -72,42 +82,37 @@
 
 2010-11-11  David Maus  <dmaus@ictsoc.de>
 
-	* org.texi (Template expansion): Add date related link
-	type escapes
+	* org.texi (Template expansion): Add date related link type escapes.
 
 2010-11-11  David Maus  <dmaus@ictsoc.de>
 
-	* org.texi (Template expansion): Add mew in table for
-	link type escapes.
+	* org.texi (Template expansion): Add mew in table for link type
+	escapes.
 
 2010-11-11  David Maus  <dmaus@ictsoc.de>
 
-	* org.texi (Template expansion): Fix typo in link type
-	escapes.
+	* org.texi (Template expansion): Fix typo in link type escapes.
+
+2010-11-11  Eric Schulte  <schulte.eric@gmail.com>
+
+	* org.texi (Structure of code blocks): Another documentation tweak.
 
 2010-11-11  Eric Schulte  <schulte.eric@gmail.com>
 
-	* org.texi (Structure of code blocks): another
-	documentation tweak
-
-2010-11-11  Eric Schulte  <schulte.eric@gmail.com>
-
-	* org.texi (Structure of code blocks): documentation
-	tweak
+	* org.texi (Structure of code blocks): Documentation tweak.
 
 2010-11-11  Eric Schulte  <schulte.eric@gmail.com>
 
-	* org.texi (Structure of code blocks): updating
-	documentation to mention inline code block syntax
+	* org.texi (Structure of code blocks):
+	Update documentation to mention inline code block syntax.
 
 2010-11-11  Eric Schulte  <schulte.eric@gmail.com>
 
-	* org.texi (comments): improved wording
+	* org.texi (comments): Improve wording.
 
 2010-11-11  Eric Schulte  <schulte.eric@gmail.com>
 
-	* org.texi (comments): documenting the new :comments
-	header arguments
+	* org.texi (comments): Document the new :comments header arguments.
 
 2010-11-11  Carsten Dominik  <carsten.dominik@gmail.com>
 
@@ -116,12 +121,12 @@
 
 2010-11-11  Jambunathan K  <kjambunathan@gmail.com>  (tiny change)
 
-	* org.texi (Easy Templates): New section. Documents quick
+	* org.texi (Easy Templates): New section.  Documents quick
 	insertion of empty structural elements.
 
 2010-11-11  Noorul Islam  <noorul@noorul.com>
 
-	* org.texi: Fix doc
+	* org.texi: Fix doc.
 
 2010-11-11  Jambunathan K  <kjambunathan@gmail.com>  (tiny change)
 
--- a/doc/misc/calc.texi	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/misc/calc.texi	Sat Nov 20 13:45:14 2010 +0200
@@ -14122,6 +14122,10 @@
 @texline @math{\sin(2 + x)}.
 @infoline @expr{sin(2 + x)}.
 
+The @TeX{} specific unit names (@pxref{Predefined Units}) will not use
+the @samp{tex} prefix;  the unit name for a @TeX{} point will be
+@samp{pt} instead of @samp{texpt}, for example.
+
 Function and variable names not treated specially by @TeX{} and La@TeX{}
 are simply written out as-is, which will cause them to come out in
 italic letters in the printed document.  If you invoke @kbd{d T} or
@@ -27990,6 +27994,14 @@
 @code{texcc} (a Cicero) and @code{texsp} (a scaled @TeX{} point, 
 all dimensions representable in @TeX{} are multiples of this value).
 
+When Calc is using the @TeX{} or La@TeX{} language mode (@pxref{TeX
+and LaTeX Language Modes}), the @TeX{} specific unit names will not
+use the @samp{tex} prefix; the unit name for a @TeX{} point will be
+@samp{pt} instead of @samp{texpt}, for example.  To avoid conflicts,
+the unit names for pint and parsec will simply be @samp{pint} and
+@samp{parsec} instead of @samp{pt} and @samp{pc}.
+
+
 The unit @code{e} stands for the elementary (electron) unit of charge;
 because algebra command could mistake this for the special constant
 @expr{e}, Calc provides the alternate unit name @code{ech} which is
--- a/doc/misc/edt.texi	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/misc/edt.texi	Sat Nov 20 13:45:14 2010 +0200
@@ -63,8 +63,8 @@
 @node Overview
 @chapter Overview of the EDT Package
 
-This manual describes version 4.0 of the EDT Emulation for Emacs 19 and
-above.  It comes with special functions which replicate nearly all of
+This manual describes version 4.0 of the EDT Emulation for Emacs.
+It comes with special functions which replicate nearly all of
 EDT's keypad mode behavior.  It sets up default keypad and function key
 bindings which closely match those found in EDT.  Support is provided so
 that users may reconfigure most keypad and function key bindings to
@@ -152,9 +152,8 @@
 EDT Emulation is active to change the settings for that session.
 
 @strong{Please note:} Another way to set the scroll margins is to use
-the Emacs customization feature (not available in Emacs 19) to set the
-following two variables directly: @code{edt-top-scroll-margin} and
-@code{edt-bottom-scroll-margin}.
+the Emacs customization feature to set the following two variables
+directly: @code{edt-top-scroll-margin} and @code{edt-bottom-scroll-margin}.
 
 Enter the Emacs @code{customize} command.  First select the
 @samp{Editing} group and then select the @samp{Emulations} group.
@@ -239,8 +238,7 @@
 just as they existed before the EDT emulation was first invoked.
 
 @item
-Support GNU Emacs 19 and higher.  (GNU Emacs 18 and below is no longer
-supported.)  XEmacs 19, and above, is also supported.
+Support GNU Emacs 19 and higher.  XEmacs 19, and above, is also supported.
 
 @item
 Supports highlighting of marked text within the EDT emulation on all
@@ -933,9 +931,8 @@
 EDT Emulation is active to change the settings for that session.
 
 @strong{Please note:} Another way to set the scroll margins is to use
-the Emacs customization feature (not available in Emacs 19) to set the
-following two variables directly: @code{edt-top-scroll-margin} and
-@code{edt-bottom-scroll-margin}.
+the Emacs customization feature to set the following two variables
+directly: @code{edt-top-scroll-margin} and @code{edt-bottom-scroll-margin}.
 
 Enter the Emacs @code{customize} command.  First select the
 @samp{Editing} group and then select the @samp{Emulations} group.
@@ -946,7 +943,3 @@
 @include doclicense.texi
 
 @bye
-
-@ignore
-   arch-tag: 1b7ebe01-754b-4834-a12b-f152ef7db9e0
-@end ignore
--- a/doc/misc/gnus.texi	Sat Nov 20 13:24:28 2010 +0200
+++ b/doc/misc/gnus.texi	Sat Nov 20 13:45:14 2010 +0200
@@ -12461,6 +12461,8 @@
 will be fetched as a result of reading mail, so that nobody can use
 web bugs (and the like) to track whether you've read email.
 
+Also @pxref{Misc Article} for @code{gnus-inhibit-images}.
+
 @item gnus-html-cache-directory
 @vindex gnus-html-cache-directory
 Gnus will download and cache images according to how
@@ -12941,6 +12943,15 @@
 @uref{http://www.gnu.org/software/libidn/, GNU Libidn}, and this
 variable is only enabled if you have installed it.
 
+@vindex gnus-inhibit-images
+@item gnus-inhibit-images
+If this is non-@code{nil}, inhibit displaying of images inline in the
+article body.  It is effective to images that are in articles as
+@acronym{MIME} parts, and images in @acronym{HTML} articles rendered
+when @code{mm-text-html-renderer} (@pxref{Display Customization,
+,Display Customization, emacs-mime, The Emacs MIME Manual}) is
+@code{shr} or @code{gnus-w3m}.
+
 @end table
 
 
--- a/etc/ChangeLog	Sat Nov 20 13:24:28 2010 +0200
+++ b/etc/ChangeLog	Sat Nov 20 13:45:14 2010 +0200
@@ -1,7 +1,10 @@
+2010-11-13  Eli Zaretskii  <eliz@gnu.org>
+
+	* NEWS: Document display of glyphless characters.
+
 2010-11-11  Eric Schulte  <schulte.eric@gmail.com>
 
-	* refcards/orgcard.tex: adding new Babel key sequences to the
-	org refcard
+	* refcards/orgcard.tex: Add new Babel key sequences.
 
 2010-10-26  Glenn Morris  <rgm@gnu.org>
 
@@ -3356,7 +3359,7 @@
 
 	* NEWS: Mention the thumbs.el package.
 
-2004-08-14  Eric Hanchrow  <offby1@blarg.net>  (tiny change)
+2004-08-14  Eric Hanchrow  <offby1@blarg.net>
 
 	* TUTORIAL.es: Replace actual whitespace with the magic string
 	that causes help-with-tutorial to automatically insert the correct
@@ -5109,12 +5112,11 @@
 
 ;; Local Variables:
 ;; coding: utf-8
-;; add-log-time-zone-rule: t
 ;; End:
 
-    Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001
-	2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
-	Free Software Foundation, Inc.
+  Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002,
+    2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+    Free Software Foundation, Inc.
 
   This file is part of GNU Emacs.
 
@@ -5130,5 +5132,3 @@
 
   You should have received a copy of the GNU General Public License
   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
-
-;;; arch-tag: 094f3a51-bd72-44d0-8fac-2ac242c6c5b1
--- a/etc/NEWS	Sat Nov 20 13:24:28 2010 +0200
+++ b/etc/NEWS	Sat Nov 20 13:45:14 2010 +0200
@@ -138,6 +138,18 @@
 Emacs.pane.menubar.faceName:  Courier-12
 Set faceName to none and use font to use the old X fonts.
 
++++
+** Enhanced support for characters that have no glyphs in available fonts
+If a character has no glyphs in any of the available fonts, Emacs by
+default will display it either as a hexadecimal code in a box or as a
+thin 1-pixel space.  In addition to these two methods, Emacs can
+display these characters as empty box, as an acronym, or not display
+them at all.  To change how these characters are displayed, customize
+the variable `glyphless-char-display-control'.
+
+On character terminals these methods are used for characters that
+cannot be encoded by the `terminal-coding-system'.
+
 ** On graphical displays, the mode-line no longer ends in dashes.
 
 ** Basic SELinux support has been added.
@@ -213,6 +225,9 @@
 
 * Editing Changes in Emacs 24.1
 
++++
+** There is a new command `count-words-region', which does what you expect.
+
 ** completion-at-point is now an alias for complete-symbol.
 
 ** Deletion changes
@@ -289,6 +304,9 @@
 
 * Changes in Specialized Modes and Packages in Emacs 24.1
 
+** shell-mode can track your cwd by reading it from your prompt.
+Just set shell-dir-cookie-re to an appropriate regexp.
+
 ** Modula-2 mode provides auto-indentation.
 
 ** latex-electric-env-pair-mode keeps \begin..\end matched on the fly.
@@ -525,12 +543,11 @@
 
 * New Modes and Packages in Emacs 24.1
 
-** New global minor modes electric-pair-mode and electric-indent-mode.
+** New global minor modes electric-pair-mode, electric-indent-mode,
+and electric-layout-mode.
 
 ** pcase.el provides the ML-style pattern matching macro `pcase'.
 
-** smie.el is a package providing a simple generic indentation engine.
-
 ** secrets.el is an implementation of the Secret Service API, an
 interface to password managers like GNOME Keyring or KDE Wallet.  The
 Secret Service API requires D-Bus for communication.  The command
@@ -543,6 +560,11 @@
 
 * Incompatible Lisp Changes in Emacs 24.1
 
+** For mouse click input events in the text area, the Y pixel
+coordinate in the POSITION list now counts from the top of the text
+area, excluding any header line.  Previously, it counted from the top
+of the header line.
+
 ** Remove obsolete name `e' (use `float-e' instead).
 
 ** A backquote not followed by a space is now always treated as new-style.
--- a/etc/NEWS.23	Sat Nov 20 13:24:28 2010 +0200
+++ b/etc/NEWS.23	Sat Nov 20 13:45:14 2010 +0200
@@ -48,6 +48,10 @@
 
 * Incompatible Lisp Changes in Emacs 23.3
 
+** posn-col-row now excludes the header line from the row count
+If the frame has a header line, posn-col-row will count row numbers
+starting from the first line of text below the header line.
+
 
 * Lisp changes in Emacs 23.3
 
@@ -55,6 +59,7 @@
   The old names are obsolete.
 ** The use of unintern without an obarray arg is declared obsolete.
 ** The function `princ-list' is declared obsolete.
+** The yank-handler argument to kill-region and friends is declared obsolete.
 ** New function byte-to-string, like char-to-string but for bytes.
 
 
--- a/lib-src/ChangeLog	Sat Nov 20 13:24:28 2010 +0200
+++ b/lib-src/ChangeLog	Sat Nov 20 13:45:14 2010 +0200
@@ -1,3 +1,14 @@
+2010-11-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+	* emacsclient.c (set_local_socket) [DARWIN_OS]: Add fall-back
+	definition of _CS_DARWIN_USER_TEMP_DIR for Mac OS X 10.4 and older.
+
+2010-11-15  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* test-distrib.c: Remove include guards for config.h and fcntl.h.
+	(O_RDONLY): Do not define.
+	(cool_read): Fix type for variable "sofar".
+
 2010-10-25  Glenn Morris  <rgm@gnu.org>
 
 	* makefile.w32-in (OTHER_PLATFORM_SUPPORT): Remove easymenu.elc.
--- a/lib-src/emacsclient.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/lib-src/emacsclient.c	Sat Nov 20 13:45:14 2010 +0200
@@ -1225,6 +1225,9 @@
 	if (!tmpdir)
           {
 #ifdef DARWIN_OS
+#ifndef _CS_DARWIN_USER_TEMP_DIR
+#define _CS_DARWIN_USER_TEMP_DIR 65537
+#endif
             size_t n = confstr (_CS_DARWIN_USER_TEMP_DIR, NULL, (size_t) 0);
             if (n > 0)
               {
--- a/lib-src/test-distrib.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/lib-src/test-distrib.c	Sat Nov 20 13:45:14 2010 +0200
@@ -19,24 +19,14 @@
 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
-#ifdef HAVE_CONFIG_H
 #include <config.h>
-#endif
-
 #include <stdio.h>
-
-#ifdef HAVE_FCNTL_H
 #include <fcntl.h>
-#endif
 
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
 #endif
 
-#ifndef O_RDONLY
-#define O_RDONLY 0
-#endif
-
 /* Break string in two parts to avoid buggy C compilers that ignore characters
    after nulls in strings.  */
 
@@ -55,7 +45,7 @@
 cool_read (int fd, char *buf, size_t size)
 {
   ssize_t num;
-  size_t sofar = 0;
+  ssize_t sofar = 0;
 
   while (1)
     {
--- a/lisp/ChangeLog	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/ChangeLog	Sat Nov 20 13:45:14 2010 +0200
@@ -1,3 +1,299 @@
+2010-11-20  Tassilo Horn  <tassilo@member.fsf.org>
+
+	* mail/emacsbug.el (report-emacs-bug-tracker-url)
+	(report-emacs-bug-create-existing-bugs-buffer)
+	(report-emacs-bug-parse-query-results)
+	(report-emacs-bug-query-existing-bugs): Implemented a bug querying
+	mechanism.
+
+2010-11-19  Tassilo Horn  <tassilo@member.fsf.org>
+
+	* textmodes/reftex-ref.el (reftex-goto-label): If point is inside
+	a \ref{} or \pageref{} macro, then use its value as initial input.
+
+2010-11-19  Jay Belanger  <jay.p.belanger@gmail.com>
+
+	* calc/calc-units.el (math-build-units-table-buffer):
+	calc/README: Mention that the TeX specific units won't use the
+	`tex' prefix in TeX mode.
+	calc/calc-lang.el (math-variable-table): Don't use the `tex'
+	prefix for units in TeX mode.
+
+2010-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* simple.el (kill-new, kill-append, kill-region):
+	* comint.el (comint-kill-region): Make the yank-handler argument obsolete.
+
+2010-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* emacs-lisp/smie.el (smie-bnf-classify): Signal errors for tokens
+	that are both openers (resp. closers) and something else.
+	(smie-grammar): Loosen definition of valid values.
+	(smie-next-sexp, smie-down-list, smie-blink-matching-open)
+	(smie-indent--parent, smie-rule-parent, smie-indent-keyword)
+	(smie-indent-after-keyword): Adjust users.
+	(smie-indent-keyword): Don't indent empty lines.
+
+	* vc-hg.el (vc-hg-program): New var.
+	Suggested by Norman Gray <norman@astro.gla.ac.uk>.
+	(vc-hg-state, vc-hg-working-revision, vc-hg-command): Use it.
+
+2010-11-18  Glenn Morris  <rgm@gnu.org>
+
+	* emacs-lisp/autoload.el (autoload-find-destination): The function
+	coding-system-eol-type may return non-numeric values.  (Bug#7414)
+
+2010-11-18  Ulrich Mueller  <ulm@gentoo.org>
+
+	* server.el (server-force-stop): Ensure the server is stopped (Bug#7409).
+
+2010-11-18  Eli Zaretskii  <eliz@gnu.org>
+
+	* subr.el (posn-col-row): Pay attention to header line.  (Bug#7390)
+
+2010-11-18  Chong Yidong  <cyd@stupidchicken.com>
+
+	* textmodes/picture.el (picture-mouse-set-point): Don't use
+	posn-col-row; explicitly compute the motion based on the posn at
+	the window-start (Bug#7390).
+
+2010-11-18  Glenn Morris  <rgm@gnu.org>
+
+	* novice.el (disabled-command-function):
+	Fix 2009-11-15 change.  (Bug#7384)
+
+2010-11-18  Glenn Morris  <rgm@gnu.org>
+
+	* calendar/calendar.el (diary-iso-date-forms): Make elements
+	mutually exclusive.  (Bug#7377)
+
+2010-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* emacs-lisp/smie.el (smie-prec2->grammar): Obey equality constraints
+	when filling the remaining "unconstrained" values.
+
+2010-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* emacs-lisp/bytecomp.el (byte-compile-warnings): Simplify the
+	safety predicate.
+
+	* files.el (safe-local-variable-p): Gracefully handle errors.
+
+	* emacs-lisp/smie.el (smie-rule-parent, smie-indent--rule):
+	Use smie-indent-virtual when indenting relative to an opener.
+	(smie-rule-separator): Use smie-rule-parent.
+	(smie-indent-keyword): Consult rules, even for openers at bol.
+	(smie-indent-comment-close): Try to align closer's content.
+
+2010-11-18  Glenn Morris  <rgm@gnu.org>
+
+	* ls-lisp.el (ls-lisp-dired-ignore-case): Make it an obsolete alias.
+
+2010-11-18  Glenn Morris  <rgm@gnu.org>
+
+	* printing.el (pr-menu-bind): Doc fix.
+
+	* speedbar.el (speedbar-toggle-images): Doc fix.
+
+	* progmodes/python.el (python-shell): Doc fix.
+
+	* wid-edit.el (widget-field-use-before-change)
+	(widget-use-overlay-change): Doc fixes.
+
+2010-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	Minor cleanup to improve style.
+	* textmodes/rst.el (rst-update-section): Use point-marker.
+	(rst-get-decoration): Eliminate unneeded assignment.
+	(rst-promote-region, rst-straighten-decorations)
+	(rst-section-tree, rst-adjust): Use point-marker.
+	(rst-toc-mode-mouse-goto): Avoid setq.
+	(rst-shift-region-guts, rst-shift-region-left)
+	(rst-iterate-leftmost-paragraphs, rst-iterate-leftmost-paragraphs-2)
+	(rst-convert-bullets-to-enumeration): Use copy-marker.
+
+	* minibuffer.el (completion-fail-discreetly): New var.
+	(completion--do-completion): Use it.
+
+	* electric.el (electric-pair-pairs): New var.
+	(electric-pair-post-self-insert-function): Use it.
+	(electric-layout-post-self-insert-function): Don't insert a before
+	newline unless it's actually needed.
+
+2010-11-17  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* progmodes/python.el (run-python): Explain why we remove the current
+	directory from sys.path.  Suggested by Eric Hanchrow <erich@cozi.com>.
+
+	* progmodes/grep.el (grep-regexp-alist): Tighten the regexp (bug#7378).
+
+2010-11-16  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* progmodes/octave-mod.el: Rely on elecric-*-modes.
+	(octave-mode-map): Don't bind ;, SPC, and LF.
+	(octave-auto-indent, octave-auto-newline): Remove.
+	(electric-layout-rules): Declare.
+	(octave-mode): Set electric-layout-rules.
+	(octave-indent-new-comment-line): Use reindent-then-newline-and-indent.
+	(octave-reindent-then-newline-and-indent, octave-electric-semi)
+	(octave-electric-space): Remove.
+
+	* electric.el (electric-layout-mode): New minor mode.
+	(electric--after-char-pos): New function.
+	(electric-indent-post-self-insert-function): Use it.
+	(electric-layout-rules): New var.
+	(electric-layout-post-self-insert-function): New function.
+	(electric-indent-mode): Make them interact better.
+
+2010-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* emacs-lisp/checkdoc.el (checkdoc-syntax-table): Fix last change.
+	(checkdoc-sentencespace-region-engine, checkdoc-this-string-valid)
+	(checkdoc-proper-noun-region-engine): Use with-syntax-table.
+
+2010-11-15  Agustín Martín  <agustin.martin@hispalinux.es>
+
+	* textmodes/flyspell.el (flyspell-generic-progmode-verify):
+	Make sure to check inside the word (Bug#6761).
+
+2010-11-14  Chong Yidong  <cyd@stupidchicken.com>
+
+	* startup.el (command-line): If the cursorColor resource is set,
+	change the cursor face-spec (Bug#7392).
+
+2010-11-13  Ken Manheimer  <ken.manheimer@gmail.com>
+
+	The main features of the following allout.el changes are:
+	- implement user customization for the allout key bindings
+	- add a customization control by which the user can inhibit use of
+	  a trailing Ctrl-H, so by default it's reserved for use with
+	  describe-prefix-bindings
+	- adapt to new version of called-interactively-p, while
+	  maintaining backwards compatibility with old version
+	- fix hotspot navigation so i works properly with meta-modified keys
+
+	* allout.el (allout-keybindings, allout-bind-keys)
+	(allout-keybindings-binding, allout-prefixed-keybindings)
+	(allout-unprefixed-keybindings, allout-preempt-trailing-ctrl-h)
+	(allout-keybindings-list, allout-mode-map-adjustments)
+	(allout-setup-mode-map): Establish allout-mode keymaps as user
+	customizable settings, and also establish a customizable setting which
+	regulates whether or not a trailing control-h is reserved for use with
+	describe-prefix-bindings - and inhibit it by default, so that control-h
+	*is* reserved for describe-prefix-bindings unless the user changes it.
+
+	* allout.el (allout-hotspot-key-handler): Distinguish more explicitly
+	and accurately between modified and unmodified events, and handle
+	modified events more comprehensively.
+
+	* allout.el (allout-substring-no-properties):
+	Alias to use or provide version of `substring-no-properties'.
+	(allout-solicit-alternate-bullet): Use `allout-substring-no-properties'.
+
+	* allout.el (allout-next-single-char-property-change):
+	Alias to use or provide version of `next-single-char-property-change'.
+	(allout-annotate-hidden, allout-hide-by-annotation):
+	Use `allout-next-single-char-property-change'.
+
+	* allout.el (allout-select-safe-coding-system):
+	Alias to use or provide version of `select-safe-coding-system'.
+	(allout-toggle-subtree-encryption):
+	Use `allout-select-safe-coding-system'.
+
+	* allout.el (allout-set-buffer-multibyte):
+	Alias to use or provide version of `set-buffer-multibyte'.
+	(allout-encrypt-string): Use `allout-set-buffer-multibyte'.
+
+	* allout.el (allout-called-interactively-p): Macro for using the
+	different versions of called-interactively-p identically, depending on
+	the subroutine's argument signature.
+	(allout-back-to-current-heading, allout-beginning-of-current-entry):
+	Use `(interactive "p")' instead of `(called-interactively-p)'.
+
+	* allout.el (allout-init, allout-ascend, allout-end-of-level)
+	(allout-previous-visible-heading, allout-forward-current-level)
+	(allout-backward-current-level, allout-show-children):
+	Use `allout-called-interactively-p' instead of `called-interactively-p'.
+
+	* allout.el (allout-before-change-handler):
+	Exempt edits to the (overlaid) character after the allout outline
+	bullet from edit confirmation prompt.
+
+	* allout.el (allout-add-resumptions):
+	Ensure that it respects correct buffer for keybindings.
+
+	* allout.el (allout-beginning-of-line):
+	Use `allout-previous-single-char-property-change' alias for the sake of
+	diverse compatibility.
+
+	* allout.el (allout-end-of-line):
+	Use `allout-mark-active-p' to encapsulate respect for mark activity.
+
+2010-11-13  Chong Yidong  <cyd@stupidchicken.com>
+
+	* frame.el (frame-notice-user-settings): Don't clobber other
+	user-set parameters when calling face-set-after-frame-default in
+	response to background-color parameter (Bug#7373).
+
+2010-11-13  Eli Zaretskii  <eliz@gnu.org>
+
+	* international/characters.el (glyphless-char-display-control):
+	Renamed from glyphless-char-control; all users changed.  Doc fix.
+	Signal an error if display method is not one of the recognized
+	symbols.
+
+2010-11-13  Michael Albinus  <michael.albinus@gmx.de>
+
+	* net/tramp-compat.el (tramp-compat-line-beginning-position)
+	(tramp-compat-line-end-position): Remove them.
+
+	* net/tramp.el (tramp-parse-rhosts-group)
+	(tramp-parse-shosts-group, tramp-parse-sconfig-group)
+	(tramp-parse-hosts-group, tramp-parse-passwd-group)
+	(tramp-parse-netrc-group, tramp-parse-putty-group)
+	* net/tramp-cmds.el (tramp-append-tramp-buffers)
+	* net/tramp-sh.el (tramp-do-file-attributes-with-ls)
+	(tramp-sh-handle-file-selinux-context)
+	(tramp-sh-handle-file-name-all-completions)
+	(tramp-sh-handle-insert-directory)
+	(tramp-sh-handle-expand-file-name, tramp-find-executable)
+	(tramp-wait-for-output, tramp-send-command-and-read)
+	* net/tramp-smb.el (tramp-smb-read-file-entry)
+	(tramp-smb-get-cifs-capabilities): Use `point-at-eol'.
+
+	* net/tramp-sh.el (tramp-sh-handle-insert-directory) Use
+	`point-at-bol'.
+	(tramp-remote-coding-commands): Add an alternative using "base64
+	-d -i".  This is needed for older base64 versions from GNU
+	coreutils.  Reported by Klaus Reichl
+	<Klaus.Reichl@thalesgroup.com>.
+
+2010-11-13  Hrvoje Niksic  <hniksic@xemacs.org>
+
+	* simple.el (count-words-region): New function.
+
+2010-11-12  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* shell.el (shell-dir-cookie-re): New custom variable.
+	(shell-dir-cookie-watcher): New function.
+
+	* vc/vc.el (vc-deduce-backend): Use default-directory in shell-mode
+	and compilation-mode (bug#7350).
+
+	* vc/smerge-mode.el (smerge-refine): Choose better default part to
+	highlight when one of them is empty.
+
+	* skeleton.el (skeleton-read): Don't use `newline' since it may strip
+	trailing space.
+	(skeleton-newline): New function.
+	(skeleton-internal-1): Use it.
+
+	* simple.el (open-line): `newline' may strip trailing space.
+
+2010-11-12  Kevin Ryde  <user42@zip.com.au>
+
+	* international/mule-cmds.el (princ-list): Use mapc.
+
 2010-11-12  Glenn Morris  <rgm@gnu.org>
 
 	* emacs-lisp/bytecomp.el (byte-compile-log-buffer): New constant.
@@ -67,7 +363,7 @@
 	* emacs-lisp/package.el (package-read-all-archive-contents):
 	Reset package-archive-contents to nil before re-reading.
 
-2010-11-10  Brandon Craig Rhodes <brandon@rhodesmill.org>  (tiny change)
+2010-11-10  Brandon Craig Rhodes  <brandon@rhodesmill.org>  (tiny change)
 
 	* textmodes/flyspell.el (flyspell-word): Do not re-check words
 	already found as misspellings by (flyspell-large-region), just
@@ -1201,7 +1497,7 @@
 
 	* newcomment.el (comment-dwim): Fix the intentation in the doc string.
 
-010-10-21  Michael Albinus  <michael.albinus@gmx.de>
+2010-10-21  Michael Albinus  <michael.albinus@gmx.de>
 
 	* net/tramp-sh.el (tramp-do-file-attributes-with-stat): Do not use
 	space in stat format string.
@@ -9457,7 +9753,7 @@
 
 	* vc-bzr.el (vc-bzr-revision-table): New function.
 
-2010-01-25  Eric Hanchrow  <eric.hanchrow@gmail.com>  (tiny change)
+2010-01-25  Eric Hanchrow  <eric.hanchrow@gmail.com>
 
 	* vc-git.el (vc-git-dir-status-goto-stage): Pass --relative to the
 	diff-index command.  This requires at least git-1.5.5.  (Bug#1589).
--- a/lisp/ChangeLog.11	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/ChangeLog.11	Sat Nov 20 13:45:14 2010 +0200
@@ -11494,7 +11494,7 @@
 	* net/zone-mode.el (zone-mode): Use write-file-functions, not
 	write-file-hooks.
 
-2003-12-29  Eric Hanchrow  <offby1@blarg.net>  (tiny change)
+2003-12-29  Eric Hanchrow  <offby1@blarg.net>
 
 	* autorevert.el (auto-revert-interval): Doc fix.
 
@@ -12922,7 +12922,7 @@
 
 	* emacs-lisp/tq.el (tq-create): Fix mixed up unquote style.
 
-2003-09-12  Eric Hanchrow  <offby1@blarg.net>  (tiny change)
+2003-09-12  Eric Hanchrow  <offby1@blarg.net>
 
 	* dired.el (dired-mode-map): Fix typo.
 
--- a/lisp/ChangeLog.12	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/ChangeLog.12	Sat Nov 20 13:45:14 2010 +0200
@@ -2528,7 +2528,7 @@
 	* files.el (find-alternate-file): Revert query message to Emacs 21
 	version.
 
-2007-01-20  Eric Hanchrow  <offby1@blarg.net>  (tiny change)
+2007-01-20  Eric Hanchrow  <offby1@blarg.net>
 
 	* progmodes/cperl-mode.el (cperl-electric-keywords): Document in
 	the doc string how to use personal abbrevs without electric keywords.
@@ -7791,7 +7791,7 @@
 	* textmodes/table.el: Add move-beginning-of-line and
 	move-end-of-line to Point Motion Only Group.
 
-2006-07-22  Eric Hanchrow  <offby1@blarg.net>  (tiny change)
+2006-07-22  Eric Hanchrow  <offby1@blarg.net>
 
 	* progmodes/delphi.el (delphi-fill-comment): Use save-restriction.
 
@@ -20588,7 +20588,7 @@
 	* progmodes/gud.el (gud-speedbar-menu-items): Use :visible
 	instead of :active.
 
-2005-10-08  Eric Hanchrow  <offby1@blarg.net>  (tiny change)
+2005-10-08  Eric Hanchrow  <offby1@blarg.net>
 
 	* textmodes/ispell.el (ispell-check-version):
 	Ignore hyphen, and all that follows, in aspell's version text.
@@ -29165,7 +29165,7 @@
 	* jit-lock.el (jit-lock-stealth-time): Change default value to 16.
 	(jit-lock-stealth-nice): Change default value to 0.5.
 
-2005-04-23  Eric Hanchrow  <offby1@blarg.net>  (tiny change)
+2005-04-23  Eric Hanchrow  <offby1@blarg.net>
 
 	* abbrev.el (write-abbrev-file): Write table entries in
 	alphabetical order by table name.
--- a/lisp/ChangeLog.13	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/ChangeLog.13	Sat Nov 20 13:45:14 2010 +0200
@@ -13493,7 +13493,7 @@
 	* menu-bar.el (menu-bar-vc-filter): New function.
 	(menu-bar-tools-menu): Use it as a filter.
 
-2007-08-01  Eric Hanchrow  <offby1@blarg.net>  (tiny change)
+2007-08-01  Eric Hanchrow  <offby1@blarg.net>
 
 	* ibuf-ext.el (ibuffer-mark-old-buffers): Docstring fix.
 
--- a/lisp/ChangeLog.14	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/ChangeLog.14	Sat Nov 20 13:45:14 2010 +0200
@@ -2148,7 +2148,7 @@
 	* emacs-lisp/find-func.el (find-library-name, find-library):
 	Doc fixes.  (Part of bug#2270)
 
-2009-02-10  Eric Hanchrow  <eric.hanchrow@gmail.com>  (tiny change)
+2009-02-10  Eric Hanchrow  <eric.hanchrow@gmail.com>
 
 	* env.el (getenv): When FRAME is non-nil, pass the frame environment
 	to `getenv-internal', not the frame.  (Bug#2259)
@@ -6518,7 +6518,7 @@
 	(hl-line-unhighlight, global-hl-line-unhighlight): Use `when'.
 	(hl-line-sticky-flag): Remove spurious * in docstring.
 
-2008-10-14  Eric Hanchrow  <offby1@blarg.net>  (tiny change)
+2008-10-14  Eric Hanchrow  <offby1@blarg.net>
 
 	* vc-git.el (vc-git-show-log-entry): Include the revision in the
 	search string.
--- a/lisp/allout.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/allout.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,12 +1,12 @@
 ;;; allout.el --- extensive outline mode for use alone and with other modes
 
-;; Copyright (C) 1992, 1993, 1994, 2001, 2002, 2003, 2004, 2005, 2006,
-;;   2007, 2008, 2009, 2010  Free Software Foundation, Inc.
+;; Copyright (C) 1992, 1993, 1994, 2001, 2002, 2003, 2004, 2005,
+;;   2006, 2007, 2008, 2009, 2010  Free Software Foundation, Inc.
 
 ;; Author: Ken Manheimer <ken dot manheimer at gmail dot com>
 ;; Maintainer: Ken Manheimer <ken dot manheimer at gmail dot com>
 ;; Created: Dec 1991 -- first release to usenet
-;; Version: 2.2.1
+;; Version: 2.2.2
 ;; Keywords: outlines wp languages
 ;; Website: http://myriadicity.net/Sundry/EmacsAllout
 
@@ -98,21 +98,142 @@
 
 ;;;_* USER CUSTOMIZATION VARIABLES:
 
-;;;_ > defgroup allout
+;;;_ > defgroup allout, allout-keybindings
 (defgroup allout nil
   "Extensive outline mode for use alone and with other modes."
   :prefix "allout-"
   :group 'outlines)
+(defgroup allout-keybindings nil
+  "Allout outline mode keyboard bindings configuration."
+  :group 'allout)
 
 ;;;_ + Layout, Mode, and Topic Header Configuration
 
-;;;_  = allout-command-prefix
+;;;_  > allout-keybindings incidentals:
+;;;_   > allout-bind-keys &optional varname value
+(defun allout-bind-keys (&optional varname value)
+  "Rebuild the `allout-mode-map' according to the keybinding specs.
+
+Useful standalone, to init the map, or in customizing the
+respective allout-mode keybinding variables, `allout-command-prefix',
+`allout-prefixed-keybindings', and `allout-unprefixed-keybindings'"
+  ;; Set the customization variable, if any:
+  (when varname
+    (set-default varname value))
+  (let ((map (make-sparse-keymap))
+        key)
+    (when (boundp 'allout-prefixed-keybindings)
+      ;; Be tolerant of the moments when the variables are first being defined.
+      (dolist (entry allout-prefixed-keybindings)
+        (define-key map
+          ;; XXX vector vs non-vector key descriptions?
+          (vconcat allout-command-prefix
+                   (car (read-from-string (car entry))))
+          (cadr entry))))
+    (when (boundp 'allout-unprefixed-keybindings)
+      (dolist (entry allout-unprefixed-keybindings)
+        (define-key map (car (read-from-string (car entry))) (cadr entry))))
+    (setq allout-mode-map map)
+    map
+    ))
+;;;_   = allout-command-prefix
 (defcustom allout-command-prefix "\C-c "
   "Key sequence to be used as prefix for outline mode command key bindings.
 
 Default is '\C-c<space>'; just '\C-c' is more short-and-sweet, if you're
 willing to let allout use a bunch of \C-c keybindings."
   :type 'string
+  :group 'allout-keybindings
+  :set 'allout-bind-keys)
+;;;_   = allout-keybindings-binding
+(define-widget 'allout-keybindings-binding 'lazy
+  "Structure of allout keybindings customization items."
+  :type '(repeat
+          (list (string :tag "Key" :value "[(meta control shift ?f)]")
+                (function :tag "Function name"
+                          :value allout-forward-current-level))))
+;;;_   = allout-prefixed-keybindings
+(defcustom allout-prefixed-keybindings
+  '(("[(control ?n)]" allout-next-visible-heading)
+    ("[(control ?p)]" allout-previous-visible-heading)
+;;    ("[(control ?u)]" allout-up-current-level)
+    ("[(control ?f)]" allout-forward-current-level)
+    ("[(control ?b)]" allout-backward-current-level)
+    ("[(control ?a)]" allout-beginning-of-current-entry)
+    ("[(control ?e)]" allout-end-of-entry)
+    ("[(control ?i)]" allout-show-children)
+    ("[(control ?i)]" allout-show-children)
+    ("[(control ?s)]" allout-show-current-subtree)
+    ("[(control ?t)]" allout-toggle-current-subtree-exposure)
+    ("[(control ?h)]" allout-hide-current-subtree)
+    ("[?h]" allout-hide-current-subtree)
+    ("[(control ?o)]" allout-show-current-entry)
+    ("[?!]" allout-show-all)
+    ("[?x]" allout-toggle-current-subtree-encryption)
+    ("[? ]" allout-open-sibtopic)
+    ("[?.]" allout-open-subtopic)
+    ("[?,]" allout-open-supertopic)
+    ("[?']" allout-shift-in)
+    ("[?>]" allout-shift-in)
+    ("[?<]" allout-shift-out)
+    ("[(control ?m)]" allout-rebullet-topic)
+    ("[?*]" allout-rebullet-current-heading)
+    ("[?']" allout-number-siblings)
+    ("[(control ?k)]" allout-kill-topic)
+    ("[??]" allout-copy-topic-as-kill)
+    ("[?@]" allout-resolve-xref)
+    ("[?=?c]" allout-copy-exposed-to-buffer)
+    ("[?=?i]" allout-indented-exposed-to-buffer)
+    ("[?=?t]" allout-latexify-exposed)
+    ("[?=?p]" allout-flatten-exposed-to-buffer)
+    )
+  "Allout-mode key bindings that are prefixed with `allout-command-prefix'.
+
+See `allout-unprefixed-keybindings' for the list of keybindings
+that are not prefixed.
+
+Use vector format for the keys:
+  - put literal keys after a '?' question mark, eg: '?a', '?.'
+  - enclose control, shift, or meta-modified keys as sequences within
+    parentheses, with the literal key, as above, preceded by the name(s)
+    of the modifers, eg: [(control ?a)]
+See the existing keys for examples.
+
+Functions can be bound to multiple keys, but binding keys to
+multiple functions will not work - the last binding for a key
+prevails."
+  :type 'allout-keybindings-binding
+  :group 'allout-keybindings
+  :set 'allout-bind-keys
+ )
+;;;_   = allout-unprefixed-keybindings
+(defcustom allout-unprefixed-keybindings
+  '(("[(control ?k)]" allout-kill-line)
+    ("[??(meta ?k)]" allout-copy-line-as-kill)
+    ("[(control ?y)]" allout-yank)
+    ("[??(meta ?y)]" allout-yank-pop)
+    )
+  "Allout-mode functions bound to keys without any added prefix.
+
+This is in contrast to the majority of allout-mode bindings on
+`allout-prefixed-bindings', whose bindings are created with a
+preceeding command key.
+
+Use vector format for the keys:
+  - put literal keys after a '?' question mark, eg: '?a', '?.'
+  - enclose control, shift, or meta-modified keys as sequences within
+    parentheses, with the literal key, as above, preceded by the name(s)
+    of the modifers, eg: [(control ?a)]
+See the existing keys for examples."
+  :type 'allout-keybindings-binding
+  :group 'allout-keybindings
+  :set 'allout-bind-keys
+  )
+
+;;;_  = allout-preempt-trailing-ctrl-h
+(defcustom allout-preempt-trailing-ctrl-h nil
+  "Use <prefix>-\C-h, instead of leaving it for describe-prefix-bindings?"
+  :type 'boolean
   :group 'allout)
 
 ;;;_  = allout-keybindings-list
@@ -133,9 +254,13 @@
         ("\C-a" allout-beginning-of-current-entry)
         ("\C-e" allout-end-of-entry)
                                         ; Exposure commands:
-        ("\C-i" allout-show-children)
+        ([(control i)] allout-show-children) ; xemacs translates "\C-i" to tab
+        ("\C-i" allout-show-children)   ; but we still need this for hotspot
         ("\C-s" allout-show-current-subtree)
-	("\C-h" allout-hide-current-subtree)
+        ;; binding to \C-h is included if allout-preempt-trailing-ctrl-h,
+        ;; so user controls whether or not to preempt the conventional ^H
+        ;; binding to help-command.
+        ("\C-h" allout-hide-current-subtree)
         ("\C-t" allout-toggle-current-subtree-exposure)
         ("h" allout-hide-current-subtree)
         ("\C-o" allout-show-current-entry)
@@ -753,7 +878,7 @@
 ;;;_ + Developer
 ;;;_  = allout-developer group
 (defgroup allout-developer nil
-  "Settings for topic encryption features of allout outliner."
+  "Allout settings developers care about, including topic encryption and more."
   :group 'allout)
 ;;;_  = allout-run-unit-tests-on-load
 (defcustom allout-run-unit-tests-on-load nil
@@ -792,7 +917,7 @@
 ;;;_ #1 Internal Outline Formatting and Configuration
 ;;;_  : Version
 ;;;_   = allout-version
-(defvar allout-version "2.2.1"
+(defvar allout-version "2.2.2"
   "Version of currently loaded outline package.  (allout.el)")
 ;;;_   > allout-version
 (defun allout-version (&optional here)
@@ -1163,6 +1288,13 @@
 			      (car (cdr cell)))))))
 	    keymap-list)
     map))
+;;;_   > allout-mode-map-adjustments (base-map)
+(defun allout-mode-map-adjustments (base-map)
+  "Do conditional additions to specified base-map, like inclusion of \\C-h."
+  (if allout-preempt-trailing-ctrl-h
+      (cons '("\C-h" allout-hide-current-subtree) base-map)
+    base-map)
+  )
 ;;;_  : Menu bar
 (defvar allout-mode-exposure-menu)
 (defvar allout-mode-editing-menu)
@@ -1278,7 +1410,7 @@
                           (void-variable nil)))
       (when (not (assoc name allout-mode-prior-settings))
         ;; Not already added as a resumption, create the prior setting entry.
-        (if (local-variable-p name)
+        (if (local-variable-p name (current-buffer))
             ;; is already local variable -- preserve the prior value:
             (push (list name prior-value) allout-mode-prior-settings)
           ;; wasn't local variable, indicate so for resumption by killing
@@ -1541,6 +1673,14 @@
     (goto-char (cadr allout-after-save-decrypt))
     (setq allout-after-save-decrypt nil))
   )
+;;;_   > allout-called-interactively-p ()
+(defmacro allout-called-interactively-p ()
+  "A version of called-interactively-p independent of emacs version."
+  ;; ... to ease maintenance of allout without betraying deprecation.
+  (if (equal (subr-arity (symbol-function 'called-interactively-p))
+             '(0 . 0))
+      '(called-interactively-p)
+    '(called-interactively-p 'interactive)))
 ;;;_   = allout-inhibit-aberrance-doublecheck nil
 ;; In some exceptional moments, disparate topic depths need to be allowed
 ;; momentarily, eg when one topic is being yanked into another and they're
@@ -1554,7 +1694,7 @@
 This should only be momentarily let-bound non-nil, not set
 non-nil in a lasting way.")
 
-;;;_ #2 Mode activation
+;;;_ #2 Mode environment and activation
 ;;;_  = allout-explicitly-deactivated
 (defvar allout-explicitly-deactivated nil
   "If t, `allout-mode's last deactivation was deliberate.
@@ -1590,7 +1730,7 @@
 \(allout-init t)"
 
   (interactive)
-  (if (called-interactively-p 'interactive)
+  (if (allout-called-interactively-p)
       (progn
 	(setq mode
 	      (completing-read
@@ -1614,7 +1754,7 @@
     (cond ((not mode)
 	   (set find-file-hook-var-name
                 (delq hook (symbol-value find-file-hook-var-name)))
-	   (if (called-interactively-p 'interactive)
+	   (if (allout-called-interactively-p)
 	       (message "Allout outline mode auto-activation inhibited.")))
 	  ((eq mode 'report)
 	   (if (not (memq hook (symbol-value find-file-hook-var-name)))
@@ -1656,7 +1796,7 @@
   (setplist 'allout-exposure-category nil)
   (put 'allout-exposure-category 'invisible 'allout)
   (put 'allout-exposure-category 'evaporate t)
-  ;; XXX We use isearch-open-invisible *and* isearch-mode-end-hook.  The
+  ;; ??? We use isearch-open-invisible *and* isearch-mode-end-hook.  The
   ;; latter would be sufficient, but it seems that a separate behavior --
   ;; the _transient_ opening of invisible text during isearch -- is keyed to
   ;; presence of the isearch-open-invisible property -- even though this
@@ -2116,9 +2256,11 @@
 (defun allout-setup-mode-map ()
   "Establish allout-mode bindings."
   (setq-default allout-mode-map
-                (produce-allout-mode-map allout-keybindings-list))
+                (produce-allout-mode-map
+                 (allout-mode-map-adjustments allout-keybindings-list)))
   (setq allout-mode-map
-        (produce-allout-mode-map allout-keybindings-list))
+        (produce-allout-mode-map
+         (allout-mode-map-adjustments allout-keybindings-list)))
   (substitute-key-definition 'beginning-of-line
                              'allout-beginning-of-line
                              allout-mode-map global-map)
@@ -2153,7 +2295,7 @@
 ;;;_  - Position Assessment
 ;;;_   > allout-hidden-p (&optional pos)
 (defsubst allout-hidden-p (&optional pos)
-  "Non-nil if the character after point is invisible."
+  "Non-nil if the character after point was made invisible by allout."
   (eq (get-char-property (or pos (point)) 'invisible) 'allout))
 
 ;;;_  > allout-overlay-insert-in-front-handler (ol after beg end
@@ -2162,8 +2304,8 @@
                                                   &optional prelen)
   "Shift the overlay so stuff inserted in front of it is excluded."
   (if after
-      ;; XXX Shouldn't moving the overlay should be unnecessary, if overlay
-      ;;     front-advance on the overlay worked as it should?
+      ;; ??? Shouldn't moving the overlay should be unnecessary, if overlay
+      ;;     front-advance on the overlay worked as expected?
       (move-overlay ol (1+ beg) (overlay-end ol))))
 ;;;_  > allout-overlay-interior-modification-handler (ol after beg end
 ;;;                                                      &optional prelen)
@@ -2225,8 +2367,9 @@
     (save-excursion
       (goto-char beg)
       (let ((overlay (allout-get-invisibility-overlay)))
-	(allout-overlay-interior-modification-handler
-	 overlay nil beg end nil)))))
+        (if overlay
+            (allout-overlay-interior-modification-handler
+             overlay nil beg end nil))))))
 ;;;_  > allout-isearch-end-handler (&optional overlay)
 (defun allout-isearch-end-handler (&optional overlay)
   "Reconcile allout outline exposure on arriving in hidden text after isearch.
@@ -2508,7 +2651,7 @@
 ;;;_   > allout-end-of-current-line ()
 (defun allout-end-of-current-line ()
   "Move to the end of line, past concealed text if any."
-  ;; XXX This is for symmetry with `allout-beginning-of-current-line' --
+  ;; This is for symmetry with `allout-beginning-of-current-line' --
   ;; `move-end-of-line' doesn't suffer the same problem as
   ;; `move-beginning-of-line'.
   (let ((inhibit-field-text-motion t))
@@ -2527,7 +2670,7 @@
       (progn
         (if (and (not (bolp))
                  (allout-hidden-p (1- (point))))
-            (goto-char (previous-single-char-property-change
+            (goto-char (allout-previous-single-char-property-change
                         (1- (point)) 'invisible)))
         (move-beginning-of-line 1))
     (allout-depth)
@@ -2573,9 +2716,20 @@
              (allout-back-to-current-heading)
              (allout-end-of-current-line))
             (t
-             (if (not (and transient-mark-mode mark-active))
+             (if (not (allout-mark-active-p))
                  (push-mark))
              (allout-end-of-entry))))))
+;;;_   > allout-mark-active-p ()
+(defun allout-mark-active-p ()
+  "True if the mark is currently or always active."
+  ;; `(cond (boundp...))' (or `(if ...)') invokes special byte-compiler
+  ;; provisions, at least in fsf emacs to prevent warnings about lack of,
+  ;; eg, region-active-p.
+  (cond ((boundp 'mark-active)
+         mark-active)
+        ((fboundp 'region-active-p)
+         (region-active-p))
+        (t)))
 ;;;_   > allout-next-heading ()
 (defsubst allout-next-heading ()
   "Move to the heading for the topic (possibly invisible) after this one.
@@ -2888,8 +3042,8 @@
   (if (not (allout-current-depth))
       nil
     (1- allout-recent-prefix-end)))
-;;;_   > allout-back-to-current-heading ()
-(defun allout-back-to-current-heading ()
+;;;_   > allout-back-to-current-heading (&optional interactive)
+(defun allout-back-to-current-heading (&optional interactive)
   "Move to heading line of current topic, or beginning if not in a topic.
 
 If interactive, we position at the end of the prefix.
@@ -2897,11 +3051,13 @@
 Return value of resulting point, unless we started outside
 of (before any) topics, in which case we return nil."
 
+  (interactive "p")
+
   (allout-beginning-of-current-line)
   (let ((bol-point (point)))
     (if (allout-goto-prefix-doublechecked)
         (if (<= (point) bol-point)
-            (if (called-interactively-p 'interactive)
+            (if interactive
                 (allout-end-of-prefix)
               (point))
           (goto-char (point-min))
@@ -2955,20 +3111,20 @@
 Returns the value of point."
   (interactive)
   (allout-end-of-subtree t include-trailing-blank))
-;;;_   > allout-beginning-of-current-entry ()
-(defun allout-beginning-of-current-entry ()
+;;;_   > allout-beginning-of-current-entry (&optional interactive)
+(defun allout-beginning-of-current-entry (&optional interactive)
   "When not already there, position point at beginning of current topic header.
 
 If already there, move cursor to bullet for hot-spot operation.
 \(See `allout-mode' doc string for details of hot-spot operation.)"
-  (interactive)
+  (interactive "p")
   (let ((start-point (point)))
     (move-beginning-of-line 1)
     (if (< 0 (allout-current-depth))
         (goto-char allout-recent-prefix-end)
       (goto-char (point-min)))
     (allout-end-of-prefix)
-    (if (and (called-interactively-p 'interactive)
+    (if (and interactive
 	     (= (point) start-point))
 	(goto-char (allout-current-bullet-pos)))))
 ;;;_   > allout-end-of-entry (&optional inclusive)
@@ -3018,9 +3174,9 @@
         (while (and (< depth allout-recent-depth)
                     (setq last-ascended (allout-ascend))))
         (goto-char allout-recent-prefix-beginning)
-        (if (called-interactively-p 'interactive) (allout-end-of-prefix))
+        (if (allout-called-interactively-p) (allout-end-of-prefix))
         (and last-ascended allout-recent-depth))))
-;;;_   > allout-ascend ()
+;;;_   > allout-ascend (&optional dont-move-if-unsuccessful)
 (defun allout-ascend (&optional dont-move-if-unsuccessful)
   "Ascend one level, returning resulting depth if successful, nil if not.
 
@@ -3046,7 +3202,7 @@
                    (goto-char bolevel)
                    (allout-depth)
                    nil))))
-    (if (called-interactively-p 'interactive) (allout-end-of-prefix))))
+    (if (allout-called-interactively-p) (allout-end-of-prefix))))
 ;;;_   > allout-descend-to-depth (depth)
 (defun allout-descend-to-depth (depth)
   "Descend to depth DEPTH within current topic.
@@ -3074,7 +3230,7 @@
     (if (not (allout-ascend))
         (progn (goto-char start-point)
                (error "Can't ascend past outermost level"))
-      (if (called-interactively-p 'interactive) (allout-end-of-prefix))
+      (if (allout-called-interactively-p) (allout-end-of-prefix))
       allout-recent-prefix-beginning)))
 
 ;;;_  - Linear
@@ -3219,7 +3375,7 @@
   (let ((depth (allout-depth)))
     (while (allout-previous-sibling depth nil))
     (prog1 allout-recent-depth
-      (if (called-interactively-p 'interactive) (allout-end-of-prefix)))))
+      (if (allout-called-interactively-p) (allout-end-of-prefix)))))
 ;;;_   > allout-next-visible-heading (arg)
 (defun allout-next-visible-heading (arg)
   "Move to the next ARG'th visible heading line, backward if arg is negative.
@@ -3272,7 +3428,7 @@
 matches)."
   (interactive "p")
   (prog1 (allout-next-visible-heading (- arg))
-    (if (called-interactively-p 'interactive) (allout-end-of-prefix))))
+    (if (allout-called-interactively-p) (allout-end-of-prefix))))
 ;;;_   > allout-forward-current-level (arg)
 (defun allout-forward-current-level (arg)
   "Position point at the next heading of the same level.
@@ -3293,7 +3449,7 @@
                     (allout-previous-sibling)
                   (allout-next-sibling)))
       (setq arg (1- arg)))
-    (if (not (called-interactively-p 'interactive))
+    (if (not (allout-called-interactively-p))
         nil
       (allout-end-of-prefix)
       (if (not (zerop arg))
@@ -3306,7 +3462,7 @@
 (defun allout-backward-current-level (arg)
   "Inverse of `allout-forward-current-level'."
   (interactive "p")
-  (if (called-interactively-p 'interactive)
+  (if (allout-called-interactively-p)
       (let ((current-prefix-arg (* -1 arg)))
 	(call-interactively 'allout-forward-current-level))
     (allout-forward-current-level (* -1 arg))))
@@ -3391,8 +3547,10 @@
 
 Returns the qualifying command, if any, else nil."
   (interactive)
-  (let* ((key-string (if (numberp last-command-event)
-                         (char-to-string last-command-event)))
+  (let* ((modified (event-modifiers last-command-event))
+         (key-string (if (numberp last-command-event)
+                         (char-to-string
+                          (event-basic-type last-command-event))))
          (key-num (cond ((numberp last-command-event) last-command-event)
                         ;; for XEmacs character type:
                         ((and (fboundp 'characterp)
@@ -3406,6 +3564,7 @@
 
       (if (and
            ;; exclude control chars and escape:
+           (not modified)
            (<= 33 key-num)
            (setq mapped-binding
                  (or (and (assoc key-string allout-keybindings-list)
@@ -3413,22 +3572,22 @@
                           (cadr (assoc key-string allout-keybindings-list)))
                      ;; translate as a keybinding:
                      (key-binding (vconcat allout-command-prefix
-                                          (char-to-string
-                                           (if (and (<= 97 key-num)   ; "a"
-                                                    (>= 122 key-num)) ; "z"
-                                               (- key-num 96) key-num)))
+                                           (vector
+                                            (if (and (<= 97 key-num) ; "a"
+                                                     (>= 122 key-num)) ; "z"
+                                                (- key-num 96) key-num)))
                                   t))))
           ;; Qualified as an allout command -- do hot-spot operation.
           (setq allout-post-goto-bullet t)
-        ;; accept-defaults nil, or else we'll get allout-item-icon-key-handler.
-        (setq mapped-binding (key-binding (char-to-string key-num))))
+        ;; accept-defaults nil, or else we get allout-item-icon-key-handler.
+        (setq mapped-binding (key-binding (vector key-num))))
 
       (while (keymapp mapped-binding)
         (setq mapped-binding
               (lookup-key mapped-binding (vector (read-char)))))
 
-      (if mapped-binding
-          (setq this-command mapped-binding)))))
+      (when mapped-binding
+        (setq this-command mapped-binding)))))
 
 ;;;_   > allout-find-file-hook ()
 (defun allout-find-file-hook ()
@@ -3457,7 +3616,7 @@
       (setq choice (solicit-char-in-string
                     (format "Select bullet: %s ('%s' default): "
                             sans-escapes
-                            (substring-no-properties default-bullet))
+                            (allout-substring-no-properties default-bullet))
                     sans-escapes
                     t)))
     (message "")
@@ -4455,9 +4614,9 @@
           (if (not (allout-hidden-p))
               (setq next
                     (max (1+ (point))
-                         (next-single-char-property-change (point)
-                                                           'invisible
-                                                           nil end))))
+                         (allout-next-single-char-property-change (point)
+                                                                  'invisible
+                                                                  nil end))))
           (if (or (not next) (eq prev next))
               ;; still not at start of hidden area -- must not be any left.
               (setq done t)
@@ -4496,9 +4655,8 @@
       (while (not done)
         ;; at or advance to start of next annotation:
         (if (not (get-text-property (point) 'allout-was-hidden))
-            (setq next (next-single-char-property-change (point)
-                                                         'allout-was-hidden
-                                                         nil end)))
+            (setq next (allout-next-single-char-property-change
+                        (point) 'allout-was-hidden nil end)))
         (if (or (not next) (eq prev next))
             ;; no more or not advancing -- must not be any left.
             (setq done t)
@@ -4508,9 +4666,8 @@
               ;; still not at start of annotation.
               (setq done t)
             ;; advance to just after end of this annotation:
-            (setq next (next-single-char-property-change (point)
-                                                         'allout-was-hidden
-                                                         nil end))
+            (setq next (allout-next-single-char-property-change
+                        (point) 'allout-was-hidden nil end))
             (overlay-put (make-overlay prev next nil 'front-advance)
                          'category 'allout-exposure-category)
             (allout-deannotate-hidden prev next)
@@ -4766,7 +4923,10 @@
       (when (featurep 'xemacs)
         (let ((props (symbol-plist 'allout-exposure-category)))
           (while props
-            (overlay-put o (pop props) (pop props)))))))
+            (condition-case nil
+                ;; as of 2008-02-27, xemacs lacks modification-hooks
+                (overlay-put o (pop props) (pop props))
+              (error nil)))))))
   (run-hooks 'allout-view-change-hook)
   (run-hook-with-args 'allout-exposure-change-hook from to flag))
 ;;;_   > allout-flag-current-subtree (flag)
@@ -4845,7 +5005,7 @@
                  (to-reveal (or (allout-chart-to-reveal chart chart-level)
                                 ;; interactive, show discontinuous children:
                                 (and chart
-                                     (called-interactively-p 'interactive)
+                                     (allout-called-interactively-p)
                                      (save-excursion
                                        (allout-back-to-current-heading)
                                        (setq depth (allout-current-depth))
@@ -5975,7 +6135,7 @@
         ;; they're encrypted, so the coding system is set to accommodate
         ;; them.
         (setq buffer-file-coding-system
-              (select-safe-coding-system subtree-beg subtree-end))
+              (allout-select-safe-coding-system subtree-beg subtree-end))
         ;; if the coding system for the text being encrypted is different
         ;; than that prevailing, then there a real risk that the coding
         ;; system can't be noticed by emacs when the file is visited.  to
@@ -6118,7 +6278,7 @@
           (insert text)
 
           ;; convey the text characteristics of the original buffer:
-          (set-buffer-multibyte multibyte)
+          (allout-set-buffer-multibyte multibyte)
           (when encoding
             (set-buffer-file-coding-system encoding)
             (if (not decrypt)
@@ -6830,6 +6990,14 @@
         ((atom (car list)) (cons (car list) (allout-flatten (cdr list))))
         (t (append (allout-flatten (car list)) (allout-flatten (cdr list))))))
 ;;;_  : Compatibility:
+;;;_   : xemacs undo-in-progress provision:
+(unless (boundp 'undo-in-progress)
+  (defvar undo-in-progress nil
+    "Placeholder defvar for XEmacs compatibility from allout.el.")
+  (defadvice undo-more (around allout activate)
+    ;; This defadvice used only in emacs that lack undo-in-progress, eg xemacs.
+    (let ((undo-in-progress t)) ad-do-it)))
+
 ;;;_   > allout-mark-marker to accommodate divergent emacsen:
 (defun allout-mark-marker (&optional force buffer)
   "Accommodate the different signature for `mark-marker' across Emacsen.
@@ -6990,6 +7158,42 @@
                   (setq arg 1)
                 (setq done t)))))))
   )
+;;;_   > allout-next-single-char-property-change -- alias unless lacking
+(defalias 'allout-next-single-char-property-change
+  (if (fboundp 'next-single-char-property-change)
+      'next-single-char-property-change
+    'next-single-property-change)
+  ;; No docstring because xemacs defalias doesn't support it.
+  )
+;;;_   > allout-previous-single-char-property-change -- alias unless lacking
+(defalias 'allout-previous-single-char-property-change
+  (if (fboundp 'previous-single-char-property-change)
+      'previous-single-char-property-change
+    'previous-single-property-change)
+  ;; No docstring because xemacs defalias doesn't support it.
+  )
+;;;_   > allout-set-buffer-multibyte
+;; define as alias first, so byte compiler is happy.
+(defalias 'allout-set-buffer-multibyte 'set-buffer-multibyte)
+;; then supplant with definition if underlying alias absent.
+(if (not (fboundp 'set-buffer-multibyte))
+  (defun allout-set-buffer-multibyte (is-multibyte)
+    (setq enable-multibyte-characters is-multibyte))
+ )
+;;;_   > allout-select-safe-coding-system
+(defalias 'allout-select-safe-coding-system
+  (if (fboundp 'select-safe-coding-system)
+      'select-safe-coding-system
+    'detect-coding-region)
+ )
+;;;_   > allout-substring-no-properties
+;; define as alias first, so byte compiler is happy.
+(defalias 'allout-substring-no-properties 'substring-no-properties)
+;; then supplant with definition if underlying alias absent.
+(if (not (fboundp 'substring-no-properties))
+  (defun allout-substring-no-properties (string &optional start end)
+    (substring string (or start 0) end))
+  )
 
 ;;;_ #10 Unfinished
 ;;;_  > allout-bullet-isearch (&optional bullet)
@@ -7021,7 +7225,7 @@
 ;;;_   > allout-tests-obliterate-variable (name)
 (defun allout-tests-obliterate-variable (name)
   "Completely unbind variable with NAME."
-  (if (local-variable-p name) (kill-local-variable name))
+  (if (local-variable-p name (current-buffer)) (kill-local-variable name))
   (while (boundp name) (makunbound name)))
 ;;;_   > allout-test-resumptions ()
 (defvar allout-tests-globally-unbound nil
@@ -7040,11 +7244,12 @@
     (allout-tests-obliterate-variable 'allout-tests-globally-unbound)
     (allout-add-resumptions '(allout-tests-globally-unbound t))
     (assert (not (default-boundp 'allout-tests-globally-unbound)))
-    (assert (local-variable-p 'allout-tests-globally-unbound))
+    (assert (local-variable-p 'allout-tests-globally-unbound (current-buffer)))
     (assert (boundp 'allout-tests-globally-unbound))
     (assert (equal allout-tests-globally-unbound t))
     (allout-do-resumptions)
-    (assert (not (local-variable-p 'allout-tests-globally-unbound)))
+    (assert (not (local-variable-p 'allout-tests-globally-unbound
+                                   (current-buffer))))
     (assert (not (boundp 'allout-tests-globally-unbound))))
 
   ;; ensure that variable with prior global value is resumed
@@ -7053,10 +7258,11 @@
     (setq allout-tests-globally-true t)
     (allout-add-resumptions '(allout-tests-globally-true nil))
     (assert (equal (default-value 'allout-tests-globally-true) t))
-    (assert (local-variable-p 'allout-tests-globally-true))
+    (assert (local-variable-p 'allout-tests-globally-true (current-buffer)))
     (assert (equal allout-tests-globally-true nil))
     (allout-do-resumptions)
-    (assert (not (local-variable-p 'allout-tests-globally-true)))
+    (assert (not (local-variable-p 'allout-tests-globally-true
+                                   (current-buffer))))
     (assert (boundp 'allout-tests-globally-true))
     (assert (equal allout-tests-globally-true t)))
 
@@ -7067,16 +7273,16 @@
     (assert (not (default-boundp 'allout-tests-locally-true))
             nil (concat "Test setup mistake -- variable supposed to"
                         " not have global binding, but it does."))
-    (assert (local-variable-p 'allout-tests-locally-true)
+    (assert (local-variable-p 'allout-tests-locally-true (current-buffer))
             nil (concat "Test setup mistake -- variable supposed to have"
                         " local binding, but it lacks one."))
     (allout-add-resumptions '(allout-tests-locally-true nil))
     (assert (not (default-boundp 'allout-tests-locally-true)))
-    (assert (local-variable-p 'allout-tests-locally-true))
+    (assert (local-variable-p 'allout-tests-locally-true (current-buffer)))
     (assert (equal allout-tests-locally-true nil))
     (allout-do-resumptions)
     (assert (boundp 'allout-tests-locally-true))
-    (assert (local-variable-p 'allout-tests-locally-true))
+    (assert (local-variable-p 'allout-tests-locally-true (current-buffer)))
     (assert (equal allout-tests-locally-true t))
     (assert (not (default-boundp 'allout-tests-locally-true))))
 
@@ -7095,22 +7301,24 @@
                             '(allout-tests-locally-true 4))
     ;; reestablish many of the basic conditions are maintained after re-add:
     (assert (not (default-boundp 'allout-tests-globally-unbound)))
-    (assert (local-variable-p 'allout-tests-globally-unbound))
+    (assert (local-variable-p 'allout-tests-globally-unbound (current-buffer)))
     (assert (equal allout-tests-globally-unbound 2))
     (assert (default-boundp 'allout-tests-globally-true))
-    (assert (local-variable-p 'allout-tests-globally-true))
+    (assert (local-variable-p 'allout-tests-globally-true (current-buffer)))
     (assert (equal allout-tests-globally-true 3))
     (assert (not (default-boundp 'allout-tests-locally-true)))
-    (assert (local-variable-p 'allout-tests-locally-true))
+    (assert (local-variable-p 'allout-tests-locally-true (current-buffer)))
     (assert (equal allout-tests-locally-true 4))
     (allout-do-resumptions)
-    (assert (not (local-variable-p 'allout-tests-globally-unbound)))
+    (assert (not (local-variable-p 'allout-tests-globally-unbound
+                                   (current-buffer))))
     (assert (not (boundp 'allout-tests-globally-unbound)))
-    (assert (not (local-variable-p 'allout-tests-globally-true)))
+    (assert (not (local-variable-p 'allout-tests-globally-true
+                                   (current-buffer))))
     (assert (boundp 'allout-tests-globally-true))
     (assert (equal allout-tests-globally-true t))
     (assert (boundp 'allout-tests-locally-true))
-    (assert (local-variable-p 'allout-tests-locally-true))
+    (assert (local-variable-p 'allout-tests-locally-true (current-buffer)))
     (assert (equal allout-tests-locally-true t))
     (assert (not (default-boundp 'allout-tests-locally-true))))
 
--- a/lisp/calc/README	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/calc/README	Sat Nov 20 13:45:14 2010 +0200
@@ -74,6 +74,9 @@
 
 Emacs 24.1
 
+* Calc no longer uses the tex prefix for TeX specific unit 
+names when using TeX or LaTeX mode.
+
 * Added option to highlight selections using faces.
 
 * Gave `calc-histogram' the option of using a vector to determine the bins.
--- a/lisp/calc/calc-lang.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/calc/calc-lang.el	Sat Nov 20 13:45:14 2010 +0200
@@ -540,6 +540,16 @@
     ( \\Psi        . var-Psi )
     ( \\omega      . var-omega )
     ( \\Omega      . var-Omega )
+    ;; Units
+    ( pt           . var-texpt )
+    ( pc           . var-texpc )
+    ( bp           . var-texbp )
+    ( dd           . var-texdd )
+    ( cc           . var-texcc )
+    ( sp           . var-texsp )
+    ( pint         . var-pt )
+    ( parsec       . var-pc)
+
     ;; Others
     ( \\ell        . var-ell )
     ( \\infty	   . var-inf )
--- a/lisp/calc/calc-units.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/calc/calc-units.el	Sat Nov 20 13:45:14 2010 +0200
@@ -57,23 +57,23 @@
               "149597870691 m (*)")
               ;; (approx) NASA JPL (http://neo.jpl.nasa.gov/glossary/au.html)
     ( lyr     "c yr"                 "Light Year" )
-    ( pc      "3.0856775854*10^16 m" "Parsec" nil
+    ( pc      "3.0856775854*10^16 m" "Parsec  (**)" nil
               "3.0856775854 10^16 m (*)") ;; (approx) ESUWM
     ( nmi     "1852 m"               "Nautical Mile" )
     ( fath    "6 ft"                 "Fathom" )
     ( fur     "660 ft"               "Furlong")
     ( mu      "1 um"                 "Micron" )
     ( mil     "(1/1000) in"          "Mil" )
-    ( point   "(1/72) in"            "Point (1/72 inch)" )
+    ( point   "(1/72) in"            "Point  (PostScript convention)" )
     ( Ang     "10^(-10) m"           "Angstrom" )
     ( mfi     "mi+ft+in"             "Miles + feet + inches" )
     ;; TeX lengths
-    ( texpt   "(100/7227) in"        "Point (TeX conventions)" )
-    ( texpc   "12 texpt"             "Pica" )
-    ( texbp   "point"                "Big point (TeX conventions)" )
-    ( texdd   "(1238/1157) texpt"    "Didot point" )
-    ( texcc   "12 texdd"             "Cicero" )
-    ( texsp   "(1/65536) texpt"      "Scaled TeX point" )
+    ( texpt   "(100/7227) in"        "Point  (TeX convention) (**)" )
+    ( texpc   "12 texpt"             "Pica  (TeX convention) (**)" )
+    ( texbp   "point"                "Big point  (TeX convention) (**)" )
+    ( texdd   "(1238/1157) texpt"    "Didot point  (TeX convention) (**)" )
+    ( texcc   "12 texdd"             "Cicero  (TeX convention) (**)" )
+    ( texsp   "(1/65536) texpt"      "Scaled TeX point (TeX convention) (**)" )
 
     ;; Area
     ( hect    "10000 m^2"            "*Hectare" )
@@ -86,7 +86,7 @@
     ( l       "L"                    "Liter" )
     ( gal     "4 qt"                 "US Gallon" )
     ( qt      "2 pt"                 "Quart" )
-    ( pt      "2 cup"                "Pint" )
+    ( pt      "2 cup"                "Pint (**)" )
     ( cup     "8 ozfl"               "Cup" )
     ( ozfl    "2 tbsp"               "Fluid Ounce" )
     ( floz    "2 tbsp"               "Fluid Ounce" )
@@ -1531,7 +1531,12 @@
               (indent-to 15)
               (insert "   " (nth 2 u) "\n")
               (while (eq (car (car (setq uptr (cdr uptr)))) 0)))
-            (insert "\n"))
+            (insert "\n\n")
+            (insert "(**) When in TeX or LaTeX display mode, the TeX specific unit\n"
+                     "names will not use the `tex' prefix; the unit name for a\n"
+                     "TeX point will be `pt' instead of `texpt', for example.\n"
+                     "To avoid conflicts, the unit names for pint and parsec will\n"
+                     "be `pint' and `parsec' instead of `pt' and `pc'."))
 	  (view-mode)
 	  (message "Formatting units table...done"))
 	(setq math-units-table-buffer-valid t)
--- a/lisp/calendar/calendar.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/calendar/calendar.el	Sat Nov 20 13:45:14 2010 +0200
@@ -736,14 +736,16 @@
 (defcustom diary-iso-date-forms
   '((month "[-/]" day "[^-/0-9]")
     (year "[-/]" month "[-/]" day "[^0-9]")
-    (monthname "-" day "[^-0-9]")
-    (year "-" monthname "-" day "[^0-9]")
+    ;; Cannot allow [-/] as separators here, since it would also match
+    ;; the first element (bug#7377).
+    (monthname " *" day "[^-0-9]")
+    (year " *" monthname " *" day "[^0-9]")
     (dayname "\\W"))
     "List of pseudo-patterns describing the ISO style of dates.
-The defaults are: MONTH[-/]DAY; YEAR[-/]MONTH[-/]DAY; MONTHNAME-DAY;
-YEAR-MONTHNAME-DAY; DAYNAME.  Normally you should not customize this,
+The defaults are: MONTH[-/]DAY; YEAR[-/]MONTH[-/]DAY; MONTHNAME DAY;
+YEAR MONTHNAME DAY; DAYNAME.  Normally you should not customize this,
 but `diary-date-forms' (which see)."
-    :version "23.1"
+    :version "23.3"                     ; bug#7377
     :type '(repeat (choice (cons :tag "Backup"
                                :value (backup . nil)
                                (const backup)
@@ -2570,5 +2572,4 @@
 ;; byte-compile-dynamic: t
 ;; End:
 
-;; arch-tag: 19c61596-c8fb-4c69-bcf1-7dd739919cd8
 ;;; calendar.el ends here
--- a/lisp/comint.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/comint.el	Sat Nov 20 13:45:14 2010 +0200
@@ -2648,6 +2648,7 @@
 	(let ((inhibit-read-only t))
 	  (kill-region beg end yank-handler)
 	  (comint-update-fence))))))
+(set-advertised-calling-convention 'comint-kill-region '(beg end) "23.3")
 
 
 ;; Support for source-file processing commands.
--- a/lisp/electric.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/electric.el	Sat Nov 20 13:45:14 2010 +0200
@@ -176,6 +176,20 @@
   "Electric behavior for self inserting keys."
   :group 'editing)
 
+(defun electric--after-char-pos ()
+  "Return the position after the char we just inserted.
+Returns nil when we can't find this char."
+  (let ((pos (point)))
+    (when (or (eq (char-before) last-command-event) ;; Sanity check.
+              (save-excursion
+                (or (progn (skip-chars-backward " \t")
+                           (setq pos (point))
+                           (eq (char-before) last-command-event))
+                    (progn (skip-chars-backward " \n\t")
+                           (setq pos (point))
+                           (eq (char-before) last-command-event)))))
+      pos)))
+
 ;; Electric indentation.
 
 ;; Autoloading variables is generally undesirable, but major modes
@@ -193,35 +207,35 @@
   ;; electric-pair-mode wrapping a region with a pair of parens.
   ;; There might be a way to get it working by analyzing buffer-undo-list, but
   ;; it looks challenging.
-  (when (and (memq last-command-event electric-indent-chars)
-             ;; Don't reindent while inserting spaces at beginning of line.
-             (or (not (memq last-command-event '(?\s ?\t)))
-                 (save-excursion (skip-chars-backward " \t") (not (bolp))))
-             ;; Not in a string or comment.
-             (not (nth 8 (syntax-ppss))))
-    ;; For newline, we want to reindent both lines and basically behave like
-    ;; reindent-then-newline-and-indent (whose code we hence copied).
-    (when (and (eq last-command-event ?\n)
-               ;; Don't reindent the previous line if the indentation function
-               ;; is not a real one.
-               (not (memq indent-line-function
-                          '(indent-relative indent-relative-maybe)))
-               ;; Sanity check.
-               (eq (char-before) last-command-event))
-      (let ((pos (copy-marker (1- (point)) t)))
-        (save-excursion
-          (goto-char pos)
-          (indent-according-to-mode)
-          ;; We are at EOL before the call to indent-according-to-mode, and
-          ;; after it we usually are as well, but not always.  We tried to
-          ;; address it with `save-excursion' but that uses a normal marker
-          ;; whereas we need `move after insertion', so we do the
-          ;; save/restore by hand.
-          (goto-char pos)
-          ;; Remove the trailing whitespace after indentation because
-          ;; indentation may (re)introduce the whitespace.
-          (delete-horizontal-space t))))
-    (indent-according-to-mode)))
+  (let (pos)
+    (when (and (memq last-command-event electric-indent-chars)
+               ;; Don't reindent while inserting spaces at beginning of line.
+               (or (not (memq last-command-event '(?\s ?\t)))
+                   (save-excursion (skip-chars-backward " \t") (not (bolp))))
+               (setq pos (electric--after-char-pos))
+               ;; Not in a string or comment.
+               (not (nth 8 (save-excursion (syntax-ppss pos)))))
+      ;; For newline, we want to reindent both lines and basically behave like
+      ;; reindent-then-newline-and-indent (whose code we hence copied).
+      (when (and (< (1- pos) (line-beginning-position))
+                 ;; Don't reindent the previous line if the indentation
+                 ;; function is not a real one.
+                 (not (memq indent-line-function
+                            '(indent-relative indent-relative-maybe))))
+        (let ((before (copy-marker (1- pos) t)))
+          (save-excursion
+            (goto-char before)
+            (indent-according-to-mode)
+            ;; We are at EOL before the call to indent-according-to-mode, and
+            ;; after it we usually are as well, but not always.  We tried to
+            ;; address it with `save-excursion' but that uses a normal marker
+            ;; whereas we need `move after insertion', so we do the
+            ;; save/restore by hand.
+            (goto-char before)
+            ;; Remove the trailing whitespace after indentation because
+            ;; indentation may (re)introduce the whitespace.
+            (delete-horizontal-space t))))
+      (indent-according-to-mode))))
 
 ;;;###autoload
 (define-minor-mode electric-indent-mode
@@ -233,10 +247,25 @@
       (add-hook 'post-self-insert-hook
                 #'electric-indent-post-self-insert-function)
     (remove-hook 'post-self-insert-hook
-                 #'electric-indent-post-self-insert-function)))
+                 #'electric-indent-post-self-insert-function))
+  ;; FIXME: electric-indent-mode and electric-layout-mode interact
+  ;; in non-trivial ways.  It turns out that electric-indent-mode works
+  ;; better if it is run *after* electric-layout-mode's hook.
+  (when (memq #'electric-layout-post-self-insert-function
+              (memq #'electric-indent-post-self-insert-function
+                    (default-value 'post-self-insert-hook)))
+    (remove-hook 'post-self-insert-hook
+                 #'electric-layout-post-self-insert-function)
+    (add-hook 'post-self-insert-hook
+              #'electric-layout-post-self-insert-function)))
 
 ;; Electric pairing.
 
+(defcustom electric-pair-pairs
+  '((?\" . ?\"))
+  "Alist of pairs that should be used regardless of major mode."
+  :type '(repeat (cons character character)))
+
 (defcustom electric-pair-skip-self t
   "If non-nil, skip char instead of inserting a second closing paren.
 When inserting a closing paren character right before the same character,
@@ -247,13 +276,18 @@
 
 (defun electric-pair-post-self-insert-function ()
   (let* ((syntax (and (eq (char-before) last-command-event) ; Sanity check.
-                      (char-syntax last-command-event)))
+                      (let ((x (assq last-command-event electric-pair-pairs)))
+                        (cond
+                         (x (if (eq (car x) (cdr x)) ?\" ?\())
+                         ((rassq last-command-event electric-pair-pairs) ?\))
+                         (t (char-syntax last-command-event))))))
          ;; FIXME: when inserting the closer, we should maybe use
          ;; self-insert-command, although it may prove tricky running
          ;; post-self-insert-hook recursively, and we wouldn't want to trigger
          ;; blink-matching-open.
          (closer (if (eq syntax ?\()
-                     (cdr (aref (syntax-table) last-command-event))
+                     (cdr (or (assq last-command-event electric-pair-pairs)
+                              (aref (syntax-table) last-command-event)))
                    last-command-event)))
     (cond
      ;; Wrap a pair around the active region.
@@ -302,7 +336,51 @@
                 #'electric-pair-post-self-insert-function)
     (remove-hook 'post-self-insert-hook
                  #'electric-pair-post-self-insert-function)))
-        
+
+;; Automatically add newlines after/before/around some chars.
+
+(defvar electric-layout-rules '()
+  "List of rules saying where to automatically insert newlines.
+Each rule has the form (CHAR . WHERE) where CHAR is the char
+that was just inserted and WHERE specifies where to insert newlines
+and can be: nil, `before', `after', `around', or a function that returns
+one of those symbols.")
+
+(defun electric-layout-post-self-insert-function ()
+  (let* ((rule (cdr (assq last-command-event electric-layout-rules)))
+         pos)
+    (when (and rule
+               (setq pos (electric--after-char-pos))
+               ;; Not in a string or comment.
+               (not (nth 8 (save-excursion (syntax-ppss pos)))))
+      (let ((end (copy-marker (point) t)))
+        (goto-char pos)
+        (case (if (functionp rule) (funcall rule) rule)
+          ;; FIXME: we used `newline' down here which called
+          ;; self-insert-command and ran post-self-insert-hook recursively.
+          ;; It happened to make electric-indent-mode work automatically with
+          ;; electric-layout-mode (at the cost of re-indenting lines
+          ;; multiple times), but I'm not sure it's what we want.
+          (before (goto-char (1- pos)) (skip-chars-backward " \t")
+                  (unless (bolp) (insert "\n")))
+          (after  (insert "\n"))       ; FIXME: check eolp before inserting \n?
+          (around (save-excursion
+                    (goto-char (1- pos)) (skip-chars-backward " \t")
+                    (unless (bolp) (insert "\n")))
+                  (insert "\n")))      ; FIXME: check eolp before inserting \n?
+        (goto-char end)))))
+
+;;;###autoload
+(define-minor-mode electric-layout-mode
+  "Automatically insert newlines around some chars."
+  :global t
+  :group 'electricity
+  (if electric-layout-mode
+      (add-hook 'post-self-insert-hook
+                #'electric-layout-post-self-insert-function)
+    (remove-hook 'post-self-insert-hook
+                 #'electric-layout-post-self-insert-function)))
+
 (provide 'electric)
 
 ;; arch-tag: dae045eb-dc2d-4fb7-9f27-9cc2ce277be8
--- a/lisp/emacs-lisp/autoload.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/emacs-lisp/autoload.el	Sat Nov 20 13:45:14 2010 +0200
@@ -575,8 +575,8 @@
            (autoload-ensure-default-file (autoload-generated-file)))
         ;; This is to make generated-autoload-file have Unix EOLs, so
         ;; that it is portable to all platforms.
-        (unless (zerop (coding-system-eol-type buffer-file-coding-system))
-          (set-buffer-file-coding-system 'unix))
+        (or (eq 0 (coding-system-eol-type buffer-file-coding-system))
+	    (set-buffer-file-coding-system 'unix))
         (or (> (buffer-size) 0)
             (error "Autoloads file %s lacks boilerplate" buffer-file-name))
         (or (file-writable-p buffer-file-name)
--- a/lisp/emacs-lisp/bytecomp.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/emacs-lisp/bytecomp.el	Sat Nov 20 13:45:14 2010 +0200
@@ -301,21 +301,12 @@
 		 (set :menu-tag "Some"
                       ,@(mapcar (lambda (x) `(const ,x))
                                 byte-compile-warning-types))))
-;;;###autoload(put 'byte-compile-warnings 'safe-local-variable 'byte-compile-warnings-safe-p)
 
 ;;;###autoload
-(defun byte-compile-warnings-safe-p (x)
-  "Return non-nil if X is valid as a value of `byte-compile-warnings'."
-  (or (booleanp x)
-      (and (listp x)
-           (if (eq (car x) 'not) (setq x (cdr x))
-             t)
-	   (equal (mapcar
-		   (lambda (e)
-		     (when (memq e byte-compile-warning-types)
-		       e))
-		   x)
-		  x))))
+(put 'byte-compile-warnings 'safe-local-variable
+     (lambda (v)
+       (or (symbolp v)
+           (null (delq nil (mapcar (lambda (x) (not (symbolp x))) v))))))
 
 (defun byte-compile-warning-enabled-p (warning)
   "Return non-nil if WARNING is enabled, according to `byte-compile-warnings'."
--- a/lisp/emacs-lisp/checkdoc.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/emacs-lisp/checkdoc.el	Sat Nov 20 13:45:14 2010 +0200
@@ -434,7 +434,7 @@
     ;; When dealing with syntax in doc strings, make sure that - are
     ;; encompassed in words so we can use cheap \\> to get the end of a symbol,
     ;; not the end of a word in a conglomerate.
-    (modify-syntax-entry ?- "w" checkdoc-syntax-table)
+    (modify-syntax-entry ?- "w" st)
     st)
   "Syntax table used by checkdoc in document strings.")
 
@@ -1370,12 +1370,8 @@
 documentation string")
 	      (point) (+ (point) 1) t)))))
     (if (and (not err) (looking-at "\""))
-	(let ((old-syntax-table (syntax-table)))
-	  (unwind-protect
-	      (progn
-		(set-syntax-table checkdoc-syntax-table)
-		(checkdoc-this-string-valid-engine fp))
-	    (set-syntax-table old-syntax-table)))
+        (with-syntax-table checkdoc-syntax-table
+          (checkdoc-this-string-valid-engine fp))
       err)))
 
 (defun checkdoc-this-string-valid-engine (fp)
@@ -1987,49 +1983,45 @@
 If the offending word is in a piece of quoted text, then it is skipped."
   (save-excursion
     (let ((case-fold-search nil)
-	  (errtxt nil) bb be
-	  (old-syntax-table (syntax-table)))
-      (unwind-protect
-	  (progn
-	    (set-syntax-table checkdoc-syntax-table)
-	    (goto-char begin)
-	    (while (re-search-forward checkdoc-proper-noun-regexp end t)
-	      (let ((text (match-string 1))
-		    (b (match-beginning 1))
-		    (e (match-end 1)))
-		(if (and (not (save-excursion
-				(goto-char b)
-				(forward-char -1)
-				(looking-at "`\\|\"\\|\\.\\|\\\\")))
-			 ;; surrounded by /, as in a URL or filename: /emacs/
-			 (not (and (= ?/ (char-after e))
-				   (= ?/ (char-before b))))
-			 (not (checkdoc-in-example-string-p begin end))
-			 ;; info or url links left alone
- 			 (not (thing-at-point-looking-at
- 			       help-xref-info-regexp))
-			 (not (thing-at-point-looking-at
- 			       help-xref-url-regexp)))
-		    (if (checkdoc-autofix-ask-replace
-			 b e (format "Text %s should be capitalized.  Fix? "
-				     text)
-			 (capitalize text) t)
-			nil
-		      (if errtxt
-			  ;; If there is already an error, then generate
-			  ;; the warning output if applicable
-			  (if checkdoc-generate-compile-warnings-flag
-			      (checkdoc-create-error
-			       (format
-				"Name %s should appear capitalized as %s"
-				text (capitalize text))
-			       b e))
-			(setq errtxt
-			      (format
-			       "Name %s should appear capitalized as %s"
-			       text (capitalize text))
-			      bb b be e)))))))
-	(set-syntax-table old-syntax-table))
+	  (errtxt nil) bb be)
+      (with-syntax-table checkdoc-syntax-table
+        (goto-char begin)
+        (while (re-search-forward checkdoc-proper-noun-regexp end t)
+          (let ((text (match-string 1))
+                (b (match-beginning 1))
+                (e (match-end 1)))
+            (if (and (not (save-excursion
+                            (goto-char b)
+                            (forward-char -1)
+                            (looking-at "`\\|\"\\|\\.\\|\\\\")))
+                     ;; surrounded by /, as in a URL or filename: /emacs/
+                     (not (and (= ?/ (char-after e))
+                               (= ?/ (char-before b))))
+                     (not (checkdoc-in-example-string-p begin end))
+                     ;; info or url links left alone
+                     (not (thing-at-point-looking-at
+                           help-xref-info-regexp))
+                     (not (thing-at-point-looking-at
+                           help-xref-url-regexp)))
+                (if (checkdoc-autofix-ask-replace
+                     b e (format "Text %s should be capitalized.  Fix? "
+                                 text)
+                     (capitalize text) t)
+                    nil
+                  (if errtxt
+                      ;; If there is already an error, then generate
+                      ;; the warning output if applicable
+                      (if checkdoc-generate-compile-warnings-flag
+                          (checkdoc-create-error
+                           (format
+                            "Name %s should appear capitalized as %s"
+                            text (capitalize text))
+                           b e))
+                    (setq errtxt
+                          (format
+                           "Name %s should appear capitalized as %s"
+                           text (capitalize text))
+                          bb b be e)))))))
       (if errtxt (checkdoc-create-error errtxt bb be)))))
 
 (defun checkdoc-sentencespace-region-engine (begin end)
@@ -2037,43 +2029,39 @@
   (if sentence-end-double-space
       (save-excursion
 	(let ((case-fold-search nil)
-	      (errtxt nil) bb be
-	      (old-syntax-table (syntax-table)))
-	  (unwind-protect
-	      (progn
-		(set-syntax-table checkdoc-syntax-table)
-		(goto-char begin)
-		(while (re-search-forward "[^ .0-9]\\(\\. \\)[^ \n]" end t)
-		  (let ((b (match-beginning 1))
-			(e (match-end 1)))
-		    (unless (or (checkdoc-in-sample-code-p begin end)
-				(checkdoc-in-example-string-p begin end)
-				(save-excursion
-				  (goto-char b)
-				  (condition-case nil
-				      (progn
-					(forward-sexp -1)
-					;; piece of an abbreviation
-					;; FIXME etc
-					(looking-at
-					 "\\([a-z]\\|[iI]\\.?e\\|[eE]\\.?g\\)\\."))
-				    (error t))))
-		      (if (checkdoc-autofix-ask-replace
-			   b e
-			   "There should be two spaces after a period.  Fix? "
-			   ".  ")
-			  nil
-			(if errtxt
-			    ;; If there is already an error, then generate
-			    ;; the warning output if applicable
-			    (if checkdoc-generate-compile-warnings-flag
-				(checkdoc-create-error
-				 "There should be two spaces after a period"
-				 b e))
-			  (setq errtxt
-				"There should be two spaces after a period"
-				bb b be e)))))))
-	    (set-syntax-table old-syntax-table))
+	      (errtxt nil) bb be)
+	  (with-syntax-table checkdoc-syntax-table
+            (goto-char begin)
+            (while (re-search-forward "[^ .0-9]\\(\\. \\)[^ \n]" end t)
+              (let ((b (match-beginning 1))
+                    (e (match-end 1)))
+                (unless (or (checkdoc-in-sample-code-p begin end)
+                            (checkdoc-in-example-string-p begin end)
+                            (save-excursion
+                              (goto-char b)
+                              (condition-case nil
+                                  (progn
+                                    (forward-sexp -1)
+                                    ;; piece of an abbreviation
+                                    ;; FIXME etc
+                                    (looking-at
+                                     "\\([a-z]\\|[iI]\\.?e\\|[eE]\\.?g\\)\\."))
+                                (error t))))
+                  (if (checkdoc-autofix-ask-replace
+                       b e
+                       "There should be two spaces after a period.  Fix? "
+                       ".  ")
+                      nil
+                    (if errtxt
+                        ;; If there is already an error, then generate
+                        ;; the warning output if applicable
+                        (if checkdoc-generate-compile-warnings-flag
+                            (checkdoc-create-error
+                             "There should be two spaces after a period"
+                             b e))
+                      (setq errtxt
+                            "There should be two spaces after a period"
+                            bb b be e)))))))
 	  (if errtxt (checkdoc-create-error errtxt bb be))))))
 
 ;;; Ispell engine
--- a/lisp/emacs-lisp/smie.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/emacs-lisp/smie.el	Sat Nov 20 13:45:14 2010 +0200
@@ -63,10 +63,31 @@
 ;; Since then, some of that code has been beaten into submission, but the
 ;; smie-indent-keyword is still pretty obscure.
 
-;;; Code:
+;; Conflict resolution:
+;;
+;; - One source of conflicts is when you have:
+;;     (exp ("IF" exp "ELSE" exp "END") ("CASE" cases "END"))
+;;     (cases (cases "ELSE" insts) ...)
+;;   The IF-rule implies ELSE=END and the CASE-rule implies ELSE>END.
+;;   FIXME: we could try to resolve such conflicts automatically by changing
+;;   the way BNF rules such as the IF-rule is handled.  I.e. rather than
+;;   IF=ELSE and ELSE=END, we could turn them into IF<ELSE and ELSE>END
+;;   and IF=END,
 
-;; FIXME: I think the behavior on empty lines is wrong.  It shouldn't
-;; look at the next token on subsequent lines.
+;; TODO & BUGS:
+;;
+;; - FIXME: I think the behavior on empty lines is wrong.  It shouldn't
+;;   look at the next token on subsequent lines.
+;; - Using the structural information SMIE gives us, it should be possible to
+;;   implement a `smie-align' command that would automatically figure out what
+;;   there is to align and how to do it (something like: align the token of
+;;   lowest precedence that appears the same number of times on all lines,
+;;   and then do the same on each side of that token).
+;; - Maybe accept two juxtaposed non-terminals in the BNF under the condition
+;;   that the first always ends with a terminal, or that the second always
+;;   starts with a terminal.
+
+;;; Code:
 
 (eval-when-compile (require 'cl))
 
@@ -155,6 +176,11 @@
 
 (put 'smie-bnf->prec2 'pure t)
 (defun smie-bnf->prec2 (bnf &rest precs)
+  ;; FIXME: Add repetition operator like (repeat <separator> <elems>).
+  ;; Maybe also add (or <elem1> <elem2>...) for things like
+  ;; (exp (exp (or "+" "*" "=" ..) exp)).
+  ;; Basically, make it EBNF (except for the specification of a separator in
+  ;; the repetition).
   (let ((nts (mapcar 'car bnf))         ;Non-terminals
         (first-ops-table ())
         (last-ops-table ())
@@ -327,6 +353,7 @@
   "Return a table classifying terminals.
 Each terminal can either be an `opener', a `closer', or neither."
   (let ((table (make-hash-table :test #'equal))
+        (nts (mapcar #'car bnf))
         (alist '()))
     (dolist (category bnf)
       (puthash (car category) 'neither table) ;Remove non-terminals.
@@ -336,14 +363,22 @@
           (let ((first (pop rhs)))
             (puthash first
                      (if (memq (gethash first table) '(nil opener))
-                         'opener 'neither)
+                         'opener
+                       (unless (member first nts)
+                         (error "SMIE: token %s is both opener and non-opener"
+                                first))
+                       'neither)
                      table))
           (while (cdr rhs)
             (puthash (pop rhs) 'neither table)) ;Remove internals.
           (let ((last (pop rhs)))
             (puthash last
                      (if (memq (gethash last table) '(nil closer))
-                         'closer 'neither)
+                         'closer
+                       (unless (member last nts)
+                         (error "SMIE: token %s is both closer and non-closer"
+                                last))
+                       'neither)
                      table)))))
     (maphash (lambda (tok v)
                (when (memq v '(closer opener))
@@ -385,6 +420,18 @@
      (append names (list (car names)))
      " < ")))
 
+;; (defun smie-check-grammar (grammar prec2 &optional dummy)
+;;   (maphash (lambda (k v)
+;;              (when (consp k)
+;;                (let ((left (nth 2 (assoc (car k) grammar)))
+;;                      (right (nth 1 (assoc (cdr k) grammar))))
+;;                  (when (and left right)
+;;                    (cond
+;;                     ((< left right) (assert (eq v '<)))
+;;                     ((> left right) (assert (eq v '>)))
+;;                     (t (assert (eq v '=))))))))
+;;            prec2))
+
 (put 'smie-prec2->grammar 'pure t)
 (defun smie-prec2->grammar (prec2)
   "Take a 2D precedence table and turn it into an alist of precedence levels.
@@ -453,6 +500,7 @@
               ;; left = right).
               (unless (caar cst)
                 (setcar (car cst) i)
+                ;; (smie-check-grammar table prec2 'step1)
                 (incf i))
               (setq csts (delq cst csts))))
           (unless progress
@@ -462,8 +510,19 @@
         (incf i 10))
       ;; Propagate equalities back to their source.
       (dolist (eq (nreverse eqs))
-        (assert (or (null (caar eq)) (eq (car eq) (cdr eq))))
-        (setcar (car eq) (cadr eq)))
+        (when (null (cadr eq))
+          ;; There's an equality constraint, but we still haven't given
+          ;; it a value: that means it binds tighter than anything else,
+          ;; and it can't be an opener/closer (those don't have equality
+          ;; constraints).
+          ;; So set it here rather than below since doing it below
+          ;; makes it more difficult to obey the equality constraints.
+          (setcar (cdr eq) i)
+          (incf i))
+        (assert (or (null (caar eq)) (eq (caar eq) (cadr eq))))
+        (setcar (car eq) (cadr eq))
+        ;; (smie-check-grammar table prec2 'step2)
+        )
       ;; Finally, fill in the remaining vars (which only appeared on the
       ;; right side of the < constraints).
       (let ((classification-table (gethash :smie-open/close-alist prec2)))
@@ -484,6 +543,7 @@
             (incf i)))))                ;See other (incf i) above.
     (let ((ca (gethash :smie-closer-alist prec2)))
       (when ca (push (cons :smie-closer-alist ca) table)))
+    ;; (smie-check-grammar table prec2 'step3)
     table))
 
 ;;; Parsing using a precedence level table.
@@ -493,9 +553,9 @@
 This list is normally built by `smie-prec2->grammar'.
 Each element is of the form (TOKEN LEFT-LEVEL RIGHT-LEVEL).
 Parsing is done using an operator precedence parser.
-LEFT-LEVEL and RIGHT-LEVEL can be either numbers or nil, where nil
+LEFT-LEVEL and RIGHT-LEVEL can be either numbers or a list, where a list
 means that this operator does not bind on the corresponding side,
-i.e. a LEFT-LEVEL of nil means this is a token that behaves somewhat like
+e.g. a LEFT-LEVEL of nil means this is a token that behaves somewhat like
 an open-paren, whereas a RIGHT-LEVEL of nil would correspond to something
 like a close-paren.")
 
@@ -579,9 +639,10 @@
                 (if (eq pos (point))
                     ;; We did not move, so let's abort the loop.
                     (throw 'return (list t (point))))))
-             ((null (funcall op-back toklevels))
+             ((not (numberp (funcall op-back toklevels)))
               ;; A token like a paren-close.
-              (assert (funcall op-forw toklevels)) ;Otherwise, why mention it?
+              (assert (numberp     ; Otherwise, why mention it in smie-grammar.
+                       (funcall op-forw toklevels)))
               (push toklevels levels))
              (t
               (while (and levels (< (funcall op-back toklevels)
@@ -589,7 +650,7 @@
                 (setq levels (cdr levels)))
               (cond
                ((null levels)
-                (if (and halfsexp (funcall op-forw toklevels))
+                (if (and halfsexp (numberp (funcall op-forw toklevels)))
                     (push toklevels levels)
                   (throw 'return
                          (prog1 (list (or (car toklevels) t) (point) token)
@@ -605,15 +666,15 @@
                    ;; Keep looking as long as we haven't matched the
                    ;; topmost operator.
                    (levels
-                    (if (funcall op-forw toklevels)
+                    (if (numberp (funcall op-forw toklevels))
                         (push toklevels levels)))
                    ;; We matched the topmost operator.  If the new operator
                    ;; is the last in the corresponding BNF rule, we're done.
-                   ((null (funcall op-forw toklevels))
+                   ((not (numberp (funcall op-forw toklevels)))
                     ;; It is the last element, let's stop here.
                     (throw 'return (list nil (point) token)))
                    ;; If the new operator is not the last in the BNF rule,
-                   ;; ans is not associative, it's one of the inner operators
+                   ;; and is not associative, it's one of the inner operators
                    ;; (like the "in" in "let .. in .. end"), so keep looking.
                    ((not (smie--associative-p toklevels))
                     (push toklevels levels))
@@ -714,7 +775,7 @@
                 ;; intervention, e.g. for Octave's use of `until'
                 ;; as a pseudo-closer of `do'.
                 (closer)
-                ((or (equal levels '(nil)) (nth 1 (car levels)))
+                ((or (equal levels '(nil)) (numberp (nth 1 (car levels))))
                  (error "Doesn't look like a block"))
                 (t
                  ;; Now that smie-setup automatically sets smie-closer-alist
@@ -725,7 +786,7 @@
                        (when (and (eq (nth 2 level) (nth 1 other))
                                   (not (memq other seen)))
                          (push other seen)
-                         (if (nth 2 other)
+                         (if (numberp (nth 2 other))
                              (push other levels)
                            (push (car other) found))))))
                  (cond
@@ -766,8 +827,8 @@
                   (progn (goto-char start) (down-list inc) nil)
                 (forward-sexp inc)
                 (/= (point) pos)))
-             ((and levels (null (nth (+ 1 offset) levels))) nil)
-             ((and levels (null (nth (- 2 offset) levels)))
+             ((and levels (not (numberp (nth (+ 1 offset) levels)))) nil)
+             ((and levels (not (numberp (nth (- 2 offset) levels))))
               (let ((end (point)))
                 (goto-char start)
                 (signal 'scan-error
@@ -852,7 +913,7 @@
                          (not (memq (char-before)
                                     smie-blink-matching-triggers)))
                      (or smie-blink-matching-inners
-                         (null (nth 2 (assoc token smie-grammar)))))
+                         (not (numberp (nth 2 (assoc token smie-grammar))))))
             ;; The major mode might set blink-matching-check-function
             ;; buffer-locally so that interactive calls to
             ;; blink-matching-open work right, but let's not presume
@@ -928,7 +989,7 @@
       (save-excursion
         (let* ((pos (point))
                (tok (funcall smie-forward-token-function)))
-          (unless (cadr (assoc tok smie-grammar))
+          (unless (numberp (cadr (assoc tok smie-grammar)))
             (goto-char pos))
           (setq smie--parent
                 (smie-backward-sexp 'halfsexp))))))
@@ -969,8 +1030,14 @@
     (goto-char (cadr (smie-indent--parent)))
     (cons 'column
           (+ (or offset 0)
-             (if (smie-indent--hanging-p)
-                 (smie-indent-virtual) (current-column))))))  
+             ;; Use smie-indent-virtual when indenting relative to an opener:
+             ;; this will also by default use current-column unless
+             ;; that opener is hanging, but will additionally consult
+             ;; rules-function, so it gives it a chance to tweak
+             ;; indentation (e.g. by forcing indentation relative to
+             ;; its own parent, as in fn a => fn b => fn c =>).
+             (if (or (listp (car smie--parent)) (smie-indent--hanging-p))
+                 (smie-indent-virtual) (current-column))))))
 
 (defvar smie-rule-separator-outdent 2)
 
@@ -1030,11 +1097,7 @@
     ;; FIXME: Rather than consult the number of spaces, we could *set* the
     ;; number of spaces so as to align the separator with the close-paren
     ;; while aligning the content with the rest.
-    (let ((parent-col
-           (save-excursion
-             (goto-char (cadr smie--parent))
-             (if (smie-indent--hanging-p)
-                 (smie-indent-virtual) (current-column))))
+    (let ((parent-col (cdr (smie-rule-parent)))
           (parent-pos-col     ;FIXME: we knew this when computing smie--parent.
            (save-excursion
              (goto-char (cadr smie--parent))
@@ -1083,7 +1146,16 @@
         (+ offset
            (if (null base-pos) 0
              (goto-char base-pos)
-             (if (smie-indent--hanging-p)
+             ;; Use smie-indent-virtual when indenting relative to an opener:
+             ;; this will also by default use current-column unless
+             ;; that opener is hanging, but will additionally consult
+             ;; rules-function, so it gives it a chance to tweak indentation
+             ;; (e.g. by forcing indentation relative to its own parent, as in
+             ;; fn a => fn b => fn c =>).
+             ;; When parent==nil it doesn't matter because the only case
+             ;; where it's really used is when the base-pos is hanging anyway.
+             (if (or (and parent (null (car parent)))
+                     (smie-indent--hanging-p))
                  (smie-indent-virtual) (current-column)))))
        (t (error "Unknown indentation offset %s" offset))))))
 
@@ -1160,27 +1232,30 @@
     (let* ((pos (point))
            (toklevels (smie-indent-forward-token))
            (token (pop toklevels)))
-      (if (null (car toklevels))
-          (save-excursion
-            (goto-char pos)
-            ;; Different cases:
-            ;; - smie-indent--bolp: "indent according to others".
-            ;; - common hanging: "indent according to others".
-            ;; - SML-let hanging: "indent like parent".
-            ;; - if-after-else: "indent-like parent".
-            ;; - middle-of-line: "trust current position".
-            (cond
-             ((null (cdr toklevels)) nil) ;Not a keyword.
-             ((smie-indent--bolp)
-              ;; For an open-paren-like thingy at BOL, always indent only
-              ;; based on other rules (typically smie-indent-after-keyword).
-              nil)
-             ;; We're only ever here for virtual-indent.
-             ((smie-indent--rule :before token))
-             (t
-              ;; By default use point unless we're hanging.
-              (unless (smie-indent--hanging-p) (current-column)))))
-
+      (cond
+       ((< pos (line-beginning-position))
+        ;; The token we just read is actually not on the line where we started.
+        nil)
+       ((not (numberp (car toklevels)))
+        (save-excursion
+          (goto-char pos)
+          ;; Different cases:
+          ;; - smie-indent--bolp: "indent according to others".
+          ;; - common hanging: "indent according to others".
+          ;; - SML-let hanging: "indent like parent".
+          ;; - if-after-else: "indent-like parent".
+          ;; - middle-of-line: "trust current position".
+          (cond
+           ((null (cdr toklevels)) nil) ;Not a keyword.
+           ((smie-indent--rule :before token))
+           ((smie-indent--bolp)         ;I.e. non-virtual indent.
+            ;; For an open-paren-like thingy at BOL, always indent only
+            ;; based on other rules (typically smie-indent-after-keyword).
+            nil)
+           (t
+            ;; By default use point unless we're hanging.
+            (unless (smie-indent--hanging-p) (current-column))))))
+       (t
         ;; FIXME: This still looks too much like black magic!!
         (let* ((parent (smie-backward-sexp 'halfsexp)))
           ;; Different behaviors:
@@ -1260,7 +1335,7 @@
               ;; So we use a heuristic here, which is that we only use virtual
               ;; if the parent is tightly linked to the child token (they're
               ;; part of the same BNF rule).
-              (if (car parent) (current-column) (smie-indent-virtual))))))))))
+              (if (car parent) (current-column) (smie-indent-virtual)))))))))))
 
 (defun smie-indent-comment ()
   "Compute indentation of a comment."
@@ -1298,10 +1373,19 @@
        comment-end-skip
        (not (looking-at " \t*$"))       ;Not just a \n comment-closer.
        (looking-at comment-end-skip)
-       (nth 4 (syntax-ppss))
-       (save-excursion
-         (goto-char (nth 8 (syntax-ppss)))
-         (current-column))))
+       (let ((end (match-string 0)))
+         (and (nth 4 (syntax-ppss))
+              (save-excursion
+                (goto-char (nth 8 (syntax-ppss)))
+                (and (looking-at comment-start-skip)
+                     (let ((start (match-string 0)))
+                       ;; Align the common substring between starter
+                       ;; and ender, if possible.
+                       (if (string-match "\\(.+\\).*\n\\(.*?\\)\\1"
+                                         (concat start "\n" end))
+                           (+ (current-column) (match-beginning 0)
+                              (- (match-beginning 2) (match-end 2)))
+                         (current-column)))))))))
 
 (defun smie-indent-comment-inside ()
   (and (nth 4 (syntax-ppss))
@@ -1319,11 +1403,11 @@
        ;; The default indentation after a keyword/operator is
        ;; 0 for infix, t for prefix, and use another rule
        ;; for postfix.
-       ((null (nth 2 toklevel)) nil)        ;A closer.
-       ((or (null (nth 1 toklevel))         ;An opener.
-            (rassoc tok smie-closer-alist)) ;An inner.
+       ((not (numberp (nth 2 toklevel))) nil)                   ;A closer.
+       ((or (not (numberp (nth 1 toklevel)))                    ;An opener.
+            (rassoc tok smie-closer-alist))                     ;An inner.
         (+ (smie-indent-virtual) (smie-indent--offset 'basic))) ;
-       (t (smie-indent-virtual))))))    ;An infix.
+       (t (smie-indent-virtual))))))                            ;An infix.
 
 (defun smie-indent-exps ()
   ;; Indentation of sequences of simple expressions without
--- a/lisp/erc/ChangeLog.06	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/erc/ChangeLog.06	Sat Nov 20 13:45:14 2010 +0200
@@ -174,7 +174,7 @@
 	* erc-nicklist.el (erc-nicklist-insert-contents): Add missing
 	parenthesis.  Thanks to Stephan Stahl for the report.
 
-2006-09-10  Eric Hanchrow  <offby1@blarg.net>  (tiny change)
+2006-09-10  Eric Hanchrow  <offby1@blarg.net>
 
 	* erc.el (erc-cmd-IGNORE): Prompt user if this might be a regexp
 	instead of a single user.
--- a/lisp/files.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/files.el	Sat Nov 20 13:45:14 2010 +0200
@@ -3224,7 +3224,10 @@
    evaluates to a non-nil value with VAL as an argument."
   (or (member (cons sym val) safe-local-variable-values)
       (let ((safep (get sym 'safe-local-variable)))
-        (and (functionp safep) (funcall safep val)))))
+        (and (functionp safep)
+             ;; If the function signals an error, that means it
+             ;; can't assure us that the value is safe.
+             (with-demoted-errors (funcall safep val))))))
 
 (defun risky-local-variable-p (sym &optional ignored)
   "Non-nil if SYM could be dangerous as a file-local variable.
--- a/lisp/frame.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/frame.el	Sat Nov 20 13:45:14 2010 +0200
@@ -296,22 +296,19 @@
 	       (null frame-initial-frame))
       ;; This case happens when we don't have a window system, and
       ;; also for MS-DOS frames.
-      (let ((parms (frame-parameters frame-initial-frame)))
+      (let ((parms (frame-parameters)))
 	;; Don't change the frame names.
 	(setq parms (delq (assq 'name parms) parms))
 	;; Can't modify the minibuffer parameter, so don't try.
 	(setq parms (delq (assq 'minibuffer parms) parms))
-	(modify-frame-parameters nil
-				 (if (null initial-window-system)
-				     (append initial-frame-alist
-					     window-system-frame-alist
-					     default-frame-alist
-					     parms
-					     nil)
-				   ;; initial-frame-alist and
-				   ;; default-frame-alist were already
-				   ;; applied in pc-win.el.
-				   parms))
+	(modify-frame-parameters
+	 nil
+	 (if initial-window-system
+	     parms
+	   ;; initial-frame-alist and default-frame-alist were already
+	   ;; applied in pc-win.el.
+	   (append initial-frame-alist window-system-frame-alist
+		   default-frame-alist parms nil)))
 	(if (null initial-window-system) ;; MS-DOS does this differently in pc-win.el
 	    (let ((newparms (frame-parameters))
 		  (frame (selected-frame)))
@@ -512,25 +509,28 @@
 	  ;; it is undesirable to specify the parm again
           ;; once the user has seen the frame and been able to alter it
 	  ;; manually.
-	  (while tail
-	    (let (newval oldval)
-	      (setq oldval (assq (car (car tail))
-				 frame-initial-frame-alist))
-	      (setq newval (cdr (assq (car (car tail)) allparms)))
+	  (let (newval oldval)
+	    (dolist (entry tail)
+	      (setq oldval (assq (car entry) frame-initial-frame-alist))
+	      (setq newval (cdr (assq (car entry) allparms)))
 	      (or (and oldval (eq (cdr oldval) newval))
 		  (setq newparms
-			(cons (cons (car (car tail)) newval) newparms))))
-	    (setq tail (cdr tail)))
+			(cons (cons (car entry) newval) newparms)))))
 	  (setq newparms (nreverse newparms))
-	  (modify-frame-parameters frame-initial-frame
-				   newparms)
-	  ;; If we changed the background color,
-	  ;; we need to update the background-mode parameter
-	  ;; and maybe some faces too.
-	  (when (assq 'background-color newparms)
-	    (unless (assq 'background-mode newparms)
-	      (frame-set-background-mode frame-initial-frame))
-	    (face-set-after-frame-default frame-initial-frame)))))
+
+	  (let ((new-bg (assq 'background-color newparms)))
+	    ;; If the `background-color' parameter is changed, apply
+	    ;; it first, then make sure that the `background-mode'
+	    ;; parameter and other faces are updated, before applying
+	    ;; the other parameters.
+	    (when new-bg
+	      (modify-frame-parameters frame-initial-frame
+				       (list new-bg))
+	      (unless (assq 'background-mode newparms)
+		(frame-set-background-mode frame-initial-frame))
+	      (face-set-after-frame-default frame-initial-frame)
+	      (setq newparms (delq new-bg newparms)))
+	    (modify-frame-parameters frame-initial-frame newparms)))))
 
     ;; Restore the original buffer.
     (set-buffer old-buffer)
--- a/lisp/gnus/ChangeLog	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/gnus/ChangeLog	Sat Nov 20 13:45:14 2010 +0200
@@ -1,3 +1,91 @@
+2010-11-20  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+	* gnus-gravatar.el (gnus-gravatar-transform-address): Decode name again.
+	(gnus-gravatar-insert): Put avatar always in the beginning of the field.
+
+2010-11-19  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+	* gnus-art.el (gnus-mime-display-single)
+	* gnus-html.el (gnus-html-wash-images, gnus-html-prefetch-images)
+	* mm-decode.el (mm-shr): Assume that gnus-inhibit-images may be a group
+	parameter.
+
+2010-11-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+	* shr.el (shr-table-horizontal-line): Renamed from shr-table-line.
+	(shr-table-vertical-line): New variable.
+	(shr-insert-table): Use it.
+
+2010-11-18  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+	* gnus-html.el (gnus-html-wash-images): Don't display images if
+	gnus-inhibit-images is non-nil; register displayer for cid images.
+	(gnus-html-display-image): Work for cid image.
+	(gnus-html-insert-image): Allow arguments.
+	(gnus-html-put-image): Inhibit read-only.
+	(gnus-html-prefetch-images): Don't prefetch images if
+	gnus-inhibit-images is non-nil.
+
+2010-11-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+	* shr.el (shr-put-image): Break lines when inserting big pictures.
+
+2010-11-17  Daniel Dehennin  <daniel.dehennin@baby-gnu.org>
+
+	* mml2015.el (mml2015-epg-encrypt): Fix two cons with missing
+	sender, thanks Katsumi Yamaoka.
+
+2010-11-17  Andrew Cohen  <cohen@andy.bu.edu>
+
+	* nnir.el (nnir-run-imap): Reverse the article list for each group
+	rather than the whole list.
+
+2010-11-17  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+	* shr.el (shr-image-displayer): Protect function against non-existent
+	image source.
+
+	* gnus-art.el (gnus-inhibit-images): New user option.
+	(gnus-mime-display-single): Don't display image if it is non-nil.
+
+	* mm-decode.el (mm-shr): Bind shr-inhibit-images to the value of
+	gnus-inhibit-images.
+
+	* shr.el (shr-image-displayer): New function.
+	(shr-tag-img): Use it.
+
+2010-11-16  Daniel Dehennin  <daniel.dehennin@baby-gnu.org>
+
+	* mml2015.el (mml2015-epg-sign): Use From header.
+
+2010-11-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+	* gnus-html.el (gnus-html-wash-images): Register a displayer.
+
+	* gnus-util.el (gnus-find-text-property-region): Return markers.
+
+	* shr.el (shr-tag-img): Put a displayer in the text property.
+
+	* gnus-util.el (gnus-find-text-property-region): New utility function.
+
+	* gnus-html.el (gnus-html-display-image): Make the alt optional.
+	(gnus-html-show-images): Remove.
+
+	* gnus-art.el (gnus-article-show-images): New, more general function.
+
+	* gnus-html.el: Use image-url instead of gnus-image-url to unify the
+	image url text properties.
+
+	* shr.el: Ditto.
+
+	* gnus-agent.el (gnus-agentize): Only do the auto-agentizing if
+	gnus-agent-auto-agentize-methods is set.  Which it isn't.
+
+2010-11-15  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+	* gnus-sum.el (gnus-summary-move-article): Fix `while' loop to make it
+	work for two or more articles.
+
 2010-11-12  Katsumi Yamaoka  <yamaoka@jpl.org>
 
 	* gnus-art.el (article-treat-non-ascii): Keep text properties not to
--- a/lisp/gnus/gnus-agent.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/gnus/gnus-agent.el	Sat Nov 20 13:45:14 2010 +0200
@@ -695,7 +695,9 @@
   ;; If the servers file doesn't exist, auto-agentize some servers and
   ;; save the servers file so this auto-agentizing isn't invoked
   ;; again.
-  (unless (file-exists-p (nnheader-concat gnus-agent-directory "lib/servers"))
+  (when (and (not (file-exists-p (nnheader-concat
+				  gnus-agent-directory "lib/servers")))
+	     gnus-agent-auto-agentize-methods)
     (gnus-message 3 "First time agent user, agentizing remote groups...")
     (mapc
      (lambda (server-or-method)
--- a/lisp/gnus/gnus-art.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/gnus/gnus-art.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1636,6 +1636,12 @@
   :group 'gnus-article
   :type 'boolean)
 
+(defcustom gnus-inhibit-images nil
+  "Non-nil means inhibit displaying of images inline in the article body."
+  :version "24.1"
+  :group 'gnus-article
+  :type 'boolean)
+
 (defcustom gnus-blocked-images 'gnus-block-private-groups
   "Images that have URLs matching this regexp will be blocked.
 This can also be a function to be evaluated.  If so, it will be
@@ -2271,6 +2277,17 @@
     (dolist (elem gnus-article-image-alist)
       (gnus-delete-images (car elem)))))
 
+(defun gnus-article-show-images ()
+  "Show any images that are in the HTML-rendered article buffer.
+This only works if the article in question is HTML."
+  (interactive)
+  (gnus-with-article-buffer
+    (dolist (region (gnus-find-text-property-region (point-min) (point-max)
+						    'image-displayer))
+      (destructuring-bind (start end function) region
+	(funcall function (get-text-property start 'image-url)
+		 start end)))))
+
 (defun gnus-article-treat-fold-newsgroups ()
   "Unfold folded message headers.
 Only the headers that fit into the current window width will be
@@ -5834,7 +5851,12 @@
 	(while ignored
 	  (when (string-match (pop ignored) type)
 	    (throw 'ignored nil)))
-	(if (and (setq not-attachment
+	(if (and (not (and (if (gnus-buffer-live-p gnus-summary-buffer)
+			       (with-current-buffer gnus-summary-buffer
+				 gnus-inhibit-images)
+			     gnus-inhibit-images)
+			   (string-match "\\`image/" type)))
+		 (setq not-attachment
 		       (and (not (mm-inline-override-p handle))
 			    (or (not (mm-handle-disposition handle))
 				(equal (car (mm-handle-disposition handle))
--- a/lisp/gnus/gnus-gravatar.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/gnus/gnus-gravatar.el	Sat Nov 20 13:45:14 2010 +0200
@@ -63,11 +63,13 @@
 	  (gravatar-size gnus-gravatar-size)
 	  name)
       (dolist (address addresses)
+	(when (setq name (cdr address))
+	  (setcdr address (setq name (mail-decode-encoded-word-string name))))
 	(when (or force
 		  (not (and gnus-gravatar-too-ugly
 			    (or (string-match gnus-gravatar-too-ugly
 					      (car address))
-				(and (setq name (cdr address))
+				(and name
 				     (string-match gnus-gravatar-too-ugly
 						   name))))))
 	  (ignore-errors
@@ -87,12 +89,12 @@
         (mail-header-narrow-to-field)
         (let ((real-name (cdr address))
               (mail-address (car address)))
-          (when (if real-name             ; have a realname, go for it!
-                    (and (search-forward real-name nil t)
-                         (search-backward real-name nil t))
-                  (and (search-forward mail-address nil t)
-                       (search-backward mail-address nil t)))
-            (goto-char (1- (point)))
+          (when (if real-name
+		    (re-search-forward (concat (regexp-quote real-name) "\\|"
+					       (regexp-quote mail-address))
+				       nil t)
+		  (search-forward mail-address nil t))
+	    (goto-char (1- (match-beginning 0)))
             ;; If we're on the " quoting the name, go backward
             (when (looking-at "[\"<]")
               (goto-char (1- (point))))
--- a/lisp/gnus/gnus-html.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/gnus/gnus-html.el	Sat Nov 20 13:45:14 2010 +0200
@@ -169,7 +169,14 @@
 
 (defun gnus-html-wash-images ()
   "Run through current buffer and replace img tags by images."
-  (let (tag parameters string start end images url)
+  (let (tag parameters string start end images url alt-text
+	    inhibit-images blocked-images)
+    (if (buffer-live-p gnus-summary-buffer)
+	(with-current-buffer gnus-summary-buffer
+	  (setq inhibit-images gnus-inhibit-images
+		blocked-images (gnus-blocked-images)))
+      (setq inhibit-images gnus-inhibit-images
+	    blocked-images (gnus-blocked-images)))
     (goto-char (point-min))
     ;; Search for all the images first.
     (while (re-search-forward "<img_alt \\([^>]*\\)>" nil t)
@@ -180,74 +187,88 @@
 	(delete-region (match-beginning 0) (match-end 0)))
       (setq end (point))
       (when (string-match "src=\"\\([^\"]+\\)" parameters)
-	(setq url (gnus-html-encode-url (match-string 1 parameters)))
 	(gnus-message 8 "gnus-html-wash-tags: fetching image URL %s" url)
-	(if (string-match "^cid:\\(.*\\)" url)
+	(setq url (gnus-html-encode-url (match-string 1 parameters))
+	      alt-text (when (string-match "\\(alt\\|title\\)=\"\\([^\"]+\\)"
+					   parameters)
+			 (xml-substitute-special (match-string 2 parameters))))
+	(gnus-add-text-properties
+	 start end
+	 (list 'image-url url
+	       'image-displayer `(lambda (url start end)
+				   (gnus-html-display-image url start end
+							    ,alt-text))
+	       'gnus-image (list url start end alt-text)))
+	(gnus-overlay-put (gnus-make-overlay start end)
+			  'local-map gnus-html-image-map)
+	(if (string-match "\\`cid:" url)
 	    ;; URLs with cid: have their content stashed in other
 	    ;; parts of the MIME structure, so just insert them
 	    ;; immediately.
-	    (let* ((handle (mm-get-content-id
-                            (setq url (match-string 1 url))))
-                   (image (when handle
-                            (gnus-create-image (mm-with-part handle (buffer-string))
-                                               nil t))))
-	      (when image
-                (let ((string (buffer-substring start end)))
-                  (delete-region start end)
-                  (gnus-put-image (gnus-rescale-image image (gnus-html-maximum-image-size))
-                                  (gnus-string-or string "*") 'cid)
-                  (gnus-add-image 'cid image))))
+	    (let* ((handle (mm-get-content-id (substring url (match-end 0))))
+		   (image (when (and handle
+				     (not inhibit-images))
+			    (gnus-create-image
+			     (mm-with-part handle (buffer-string))
+			     nil t))))
+	      (if image
+		  (progn
+		    (gnus-put-image
+		     (gnus-rescale-image
+		      image (gnus-html-maximum-image-size))
+		     (gnus-string-or (prog1
+					 (buffer-substring start end)
+				       (delete-region start end))
+				     "*")
+		     'cid)
+		    (gnus-add-image 'cid image))
+		(widget-convert-button
+		 'link start end
+		 :action 'gnus-html-insert-image
+		 :help-echo url
+		 :keymap gnus-html-image-map
+		 :button-keymap gnus-html-image-map)))
 	  ;; Normal, external URL.
-          (let ((alt-text (when (string-match "\\(alt\\|title\\)=\"\\([^\"]+\\)"
-                                              parameters)
-                            (xml-substitute-special (match-string 2 parameters)))))
-            (gnus-put-text-property start end 'gnus-image-url url)
-            (if (gnus-html-image-url-blocked-p
-                 url
-                 (if (buffer-live-p gnus-summary-buffer)
-                     (with-current-buffer gnus-summary-buffer
-                       (gnus-blocked-images))
-                   (gnus-blocked-images)))
-                (progn
-                  (widget-convert-button
-                   'link start end
-                   :action 'gnus-html-insert-image
-                   :help-echo url
-                   :keymap gnus-html-image-map
-                   :button-keymap gnus-html-image-map)
-                  (let ((overlay (gnus-make-overlay start end))
-                        (spec (list url start end alt-text)))
-                    (gnus-overlay-put overlay 'local-map gnus-html-image-map)
-                    (gnus-overlay-put overlay 'gnus-image spec)
-                    (gnus-put-text-property
-                     start end
-                     'gnus-image spec)))
-              ;; Non-blocked url
-              (let ((width
-                     (when (string-match "width=\"?\\([0-9]+\\)" parameters)
-                       (string-to-number (match-string 1 parameters))))
-                    (height
-                     (when (string-match "height=\"?\\([0-9]+\\)" parameters)
-                       (string-to-number (match-string 1 parameters)))))
-                ;; Don't fetch images that are really small.  They're
-                ;; probably tracking pictures.
-                (when (and (or (null height)
-                               (> height 4))
-                           (or (null width)
-                               (> width 4)))
-                  (gnus-html-display-image url start end alt-text))))))))))
+	  (if (or inhibit-images
+		  (gnus-html-image-url-blocked-p url blocked-images))
+	      (widget-convert-button
+	       'link start end
+	       :action 'gnus-html-insert-image
+	       :help-echo url
+	       :keymap gnus-html-image-map
+	       :button-keymap gnus-html-image-map)
+	    ;; Non-blocked url
+	    (let ((width
+		   (when (string-match "width=\"?\\([0-9]+\\)" parameters)
+		     (string-to-number (match-string 1 parameters))))
+		  (height
+		   (when (string-match "height=\"?\\([0-9]+\\)" parameters)
+		     (string-to-number (match-string 1 parameters)))))
+	      ;; Don't fetch images that are really small.  They're
+	      ;; probably tracking pictures.
+	      (when (and (or (null height)
+			     (> height 4))
+			 (or (null width)
+			     (> width 4)))
+		(gnus-html-display-image url start end alt-text)))))))))
 
-(defun gnus-html-display-image (url start end alt-text)
+(defun gnus-html-display-image (url start end &optional alt-text)
   "Display image at URL on text from START to END.
 Use ALT-TEXT for the image string."
-  (if (gnus-html-cache-expired url gnus-html-image-cache-ttl)
-      ;; We don't have it, so schedule it for fetching
-      ;; asynchronously.
-      (gnus-html-schedule-image-fetching
-       (current-buffer)
-       (list url alt-text))
-    ;; It's already cached, so just insert it.
-    (gnus-html-put-image (gnus-html-get-image-data url) url alt-text)))
+  (or alt-text (setq alt-text "*"))
+  (if (string-match "\\`cid:" url)
+      (let ((handle (mm-get-content-id (substring url (match-end 0)))))
+	(when handle
+	  (gnus-html-put-image (mm-with-part handle (buffer-string))
+			       url alt-text)))
+    (if (gnus-html-cache-expired url gnus-html-image-cache-ttl)
+	;; We don't have it, so schedule it for fetching
+	;; asynchronously.
+	(gnus-html-schedule-image-fetching
+	 (current-buffer)
+	 (list url alt-text))
+      ;; It's already cached, so just insert it.
+      (gnus-html-put-image (gnus-html-get-image-data url) url alt-text))))
 
 (defun gnus-html-wash-tags ()
   (let (tag parameters string start end images url)
@@ -331,7 +352,7 @@
       (replace-match "" t t))
     (mm-url-decode-entities)))
 
-(defun gnus-html-insert-image ()
+(defun gnus-html-insert-image (&rest args)
   "Fetch and insert the image under point."
   (interactive)
   (apply 'gnus-html-display-image (get-text-property (point) 'gnus-image)))
@@ -344,7 +365,7 @@
 (defun gnus-html-browse-image ()
   "Browse the image under point."
   (interactive)
-  (browse-url (get-text-property (point) 'gnus-image-url)))
+  (browse-url (get-text-property (point) 'image-url)))
 
 (defun gnus-html-browse-url ()
   "Browse the image under point."
@@ -415,9 +436,9 @@
   "Put an image with DATA from URL and optional ALT-TEXT."
   (when (gnus-graphic-display-p)
     (let* ((start (text-property-any (point-min) (point-max)
-				     'gnus-image-url url))
+				     'image-url url))
            (end (when start
-                  (next-single-property-change start 'gnus-image-url))))
+                  (next-single-property-change start 'image-url))))
       ;; Image found?
       (when start
         (let* ((image
@@ -430,7 +451,8 @@
           (save-excursion
             (goto-char start)
             (let ((alt-text (or alt-text
-				(buffer-substring-no-properties start end))))
+				(buffer-substring-no-properties start end)))
+		  (inhibit-read-only t))
               (if (and image
                        ;; Kludge to avoid displaying 30x30 gif images, which
                        ;; seems to be a signal of a broken image.
@@ -459,7 +481,7 @@
 					    'gnus-alt-text alt-text)
                     (when url
                       (gnus-put-text-property start (point)
-					      'gnus-image-url url))
+					      'image-url url))
                     (gnus-add-image 'external image)
                     t)
                 ;; Bad image, try to show something else
@@ -482,26 +504,19 @@
                     url blocked-images))
     ret))
 
-(defun gnus-html-show-images ()
-  "Show any images that are in the HTML-rendered article buffer.
-This only works if the article in question is HTML."
-  (interactive)
-  (gnus-with-article-buffer
-    (dolist (overlay (overlays-in (point-min) (point-max)))
-      (let ((o (overlay-get overlay 'gnus-image)))
-        (when o
-          (apply 'gnus-html-display-image o))))))
-
 ;;;###autoload
 (defun gnus-html-prefetch-images (summary)
   (when (buffer-live-p summary)
-    (let ((blocked-images (with-current-buffer summary
-                            (gnus-blocked-images))))
+    (let (inhibit-images blocked-images)
+      (with-current-buffer summary
+	(setq inhibit-images gnus-inhibit-images
+	      blocked-images (gnus-blocked-images)))
       (save-match-data
 	(while (re-search-forward "<img[^>]+src=[\"']\\(http[^\"']+\\)" nil t)
 	  (let ((url (gnus-html-encode-url
 		      (mm-url-decode-entities-string (match-string 1)))))
-	    (unless (gnus-html-image-url-blocked-p url blocked-images)
+	    (unless (or inhibit-images
+			(gnus-html-image-url-blocked-p url blocked-images))
               (when (gnus-html-cache-expired url gnus-html-image-cache-ttl)
                 (gnus-html-schedule-image-fetching nil
                                                    (list url))))))))))
--- a/lisp/gnus/gnus-sum.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/gnus/gnus-sum.el	Sat Nov 20 13:45:14 2010 +0200
@@ -2136,7 +2136,7 @@
   "d" gnus-article-display-face
   "s" gnus-treat-smiley
   "D" gnus-article-remove-images
-  "W" gnus-html-show-images
+  "W" gnus-article-show-images
   "f" gnus-treat-from-picon
   "m" gnus-treat-mail-picon
   "n" gnus-treat-newsgroups-picon
@@ -9709,199 +9709,206 @@
 	    (gnus-article-original-subject
 	     (mail-header-subject
 	      (gnus-data-header (assoc article (gnus-data-list nil))))))
-      (setq
-       art-group
-       (cond
-	;; Move the article.
-	((eq action 'move)
-	 ;; Remove this article from future suppression.
-	 (gnus-dup-unsuppress-article article)
-	 (let* ((from-method (gnus-find-method-for-group
-			      gnus-newsgroup-name))
-		(to-method (or select-method
-			       (gnus-find-method-for-group to-newsgroup)))
-		(move-is-internal (gnus-server-equal from-method to-method)))
-	   (gnus-request-move-article
-	    article			; Article to move
-	    gnus-newsgroup-name		; From newsgroup
-	    (nth 1 (gnus-find-method-for-group
-		    gnus-newsgroup-name)) ; Server
-	    (list 'gnus-request-accept-article
-		  to-newsgroup (list 'quote select-method)
-		  (not articles) t)	; Accept form
-	    (not articles)		; Only save nov last time
-	    (and move-is-internal
-		 to-newsgroup		; Not respooling
-		 (gnus-group-real-name to-newsgroup))))) ; Is this move internal?
-	;; Copy the article.
-	((eq action 'copy)
-	 (with-current-buffer copy-buf
-	   (when (gnus-request-article-this-buffer article gnus-newsgroup-name)
-	     (save-restriction
-	       (nnheader-narrow-to-headers)
-	       (dolist (hdr gnus-copy-article-ignored-headers)
-		 (message-remove-header hdr t)))
-	     (gnus-request-accept-article
-	      to-newsgroup select-method (not articles) t))))
-	;; Crosspost the article.
-	((eq action 'crosspost)
-	 (let ((xref (message-tokenize-header
-		      (mail-header-xref (gnus-summary-article-header article))
-		      " ")))
-	   (setq new-xref (concat (gnus-group-real-name gnus-newsgroup-name)
-				  ":" (number-to-string article)))
-	   (unless xref
-	     (setq xref (list (system-name))))
-	   (setq new-xref
-		 (concat
-		  (mapconcat 'identity
-			     (delete "Xref:" (delete new-xref xref))
-			     " ")
-		  " " new-xref))
+	(setq
+	 art-group
+	 (cond
+	  ;; Move the article.
+	  ((eq action 'move)
+	   ;; Remove this article from future suppression.
+	   (gnus-dup-unsuppress-article article)
+	   (let* ((from-method (gnus-find-method-for-group
+				gnus-newsgroup-name))
+		  (to-method (or select-method
+				 (gnus-find-method-for-group to-newsgroup)))
+		  (move-is-internal (gnus-server-equal from-method to-method)))
+	     (gnus-request-move-article
+	      article			; Article to move
+	      gnus-newsgroup-name	; From newsgroup
+	      (nth 1 (gnus-find-method-for-group
+		      gnus-newsgroup-name)) ; Server
+	      (list 'gnus-request-accept-article
+		    to-newsgroup (list 'quote select-method)
+		    (not articles) t)	; Accept form
+	      (not articles)		; Only save nov last time
+	      (and move-is-internal
+		   to-newsgroup		; Not respooling
+					; Is this move internal?
+		   (gnus-group-real-name to-newsgroup)))))
+	  ;; Copy the article.
+	  ((eq action 'copy)
 	   (with-current-buffer copy-buf
-	     ;; First put the article in the destination group.
-	     (gnus-request-article-this-buffer article gnus-newsgroup-name)
-	     (when (consp (setq art-group
-				(gnus-request-accept-article
-				 to-newsgroup select-method (not articles) t)))
-	       (setq new-xref (concat new-xref " " (car art-group)
-				      ":"
-				      (number-to-string (cdr art-group))))
-	       ;; Now we have the new Xrefs header, so we insert
-	       ;; it and replace the new article.
-	       (nnheader-replace-header "Xref" new-xref)
-	       (gnus-request-replace-article
-		(cdr art-group) to-newsgroup (current-buffer) t)
-	       art-group))))))
-      (cond
-       ((not art-group)
-	(gnus-message 1 "Couldn't %s article %s: %s"
-		      (cadr (assq action names)) article
-		      (nnheader-get-report (car to-method))))
-       ((eq art-group 'junk)
-	(when (eq action 'move)
-	  (gnus-summary-mark-article article gnus-canceled-mark)
-	  (gnus-message 4 "Deleted article %s" article)
-	  ;; run the delete hook
-	  (run-hook-with-args 'gnus-summary-article-delete-hook
-			      action
-			      (gnus-data-header
-			       (assoc article (gnus-data-list nil)))
-			      gnus-newsgroup-original-name nil
-			      select-method)))
-       (t
-	(let* ((pto-group (gnus-group-prefixed-name
-			   (car art-group) to-method))
-	       (info (gnus-get-info pto-group))
-	       (to-group (gnus-info-group info))
-	       to-marks)
-	  ;; Update the group that has been moved to.
-	  (when (and info
-		     (memq action '(move copy)))
-	    (unless (member to-group to-groups)
-	      (push to-group to-groups))
-
-	    (unless (memq article gnus-newsgroup-unreads)
-	      (push 'read to-marks)
-	      (gnus-info-set-read
-	       info (gnus-add-to-range (gnus-info-read info)
-				       (list (cdr art-group)))))
-
-	    ;; See whether the article is to be put in the cache.
-	    (let* ((expirable (gnus-group-auto-expirable-p to-group))
-		   (marks (if expirable
-			      gnus-article-mark-lists
-			    (delete '(expirable . expire)
-				    (copy-sequence gnus-article-mark-lists))))
-		   (to-article (cdr art-group)))
-
-	      ;; Enter the article into the cache in the new group,
-	      ;; if that is required.
-	      (when gnus-use-cache
-		(gnus-cache-possibly-enter-article
-		 to-group to-article
-		 (memq article gnus-newsgroup-marked)
-		 (memq article gnus-newsgroup-dormant)
-		 (memq article gnus-newsgroup-unreads)))
-
-	      (when gnus-preserve-marks
-		;; Copy any marks over to the new group.
-		(when (and (equal to-group gnus-newsgroup-name)
-			   (not (memq article gnus-newsgroup-unreads)))
-		  ;; Mark this article as read in this group.
-		  (push (cons to-article gnus-read-mark) gnus-newsgroup-reads)
-		  ;; Increase the active status of this group.
-		  (setcdr (gnus-active to-group) to-article)
- 		  (setcdr gnus-newsgroup-active to-article))
-
-		(while marks
-		  (when (eq (gnus-article-mark-to-type (cdar marks)) 'list)
-		    (when (memq article (symbol-value
-					 (intern (format "gnus-newsgroup-%s"
-							 (caar marks)))))
-		      (push (cdar marks) to-marks)
-		      ;; If the other group is the same as this group,
-		      ;; then we have to add the mark to the list.
-		      (when (equal to-group gnus-newsgroup-name)
-			(set (intern (format "gnus-newsgroup-%s" (caar marks)))
-			     (cons to-article
-				   (symbol-value
-				    (intern (format "gnus-newsgroup-%s"
-						    (caar marks)))))))
-		      ;; Copy the marks to other group.
-		      (gnus-add-marked-articles
-		       to-group (cdar marks) (list to-article) info)))
-		  (setq marks (cdr marks)))
-
-		(when (and expirable
-			   gnus-mark-copied-or-moved-articles-as-expirable
-			   (not (memq 'expire to-marks)))
-		  ;; Mark this article as expirable.
-		  (push 'expire to-marks)
-		  (when (equal to-group gnus-newsgroup-name)
-		    (push to-article gnus-newsgroup-expirable))
-		  ;; Copy the expirable mark to other group.
-		  (gnus-add-marked-articles
-		   to-group 'expire (list to-article) info))
-
-		(when to-marks
-		  (gnus-request-set-mark
-		   to-group (list (list (list to-article) 'add to-marks)))))
-
-	      (gnus-dribble-enter
-	       (concat "(gnus-group-set-info '"
-		       (gnus-prin1-to-string (gnus-get-info to-group))
-		       ")"))))
-
-	  ;; Update the Xref header in this article to point to
-	  ;; the new crossposted article we have just created.
-	  (when (eq action 'crosspost)
-	    (with-current-buffer copy-buf
-	      (gnus-request-article-this-buffer article gnus-newsgroup-name)
-	      (nnheader-replace-header "Xref" new-xref)
-	      (gnus-request-replace-article
-	       article gnus-newsgroup-name (current-buffer) t)))
-
-	  ;; run the move/copy/crosspost/respool hook
-	  (let ((header (gnus-data-header
-			 (assoc article (gnus-data-list nil)))))
-	    (mail-header-set-subject header gnus-article-original-subject)
-	  (run-hook-with-args 'gnus-summary-article-move-hook
-			      action
-			      (gnus-data-header
-			       (assoc article (gnus-data-list nil)))
-			      gnus-newsgroup-original-name
-			      to-newsgroup
-			      select-method)))
-
-	;;;!!!Why is this necessary?
-	(set-buffer gnus-summary-buffer)
-
-	(when (eq action 'move)
-	  (save-excursion
-	    (gnus-summary-goto-subject article)
-	    (gnus-summary-mark-article article gnus-canceled-mark)))))
-      (push article articles-to-update-marks))
+	     (when (gnus-request-article-this-buffer article
+						     gnus-newsgroup-name)
+	       (save-restriction
+		 (nnheader-narrow-to-headers)
+		 (dolist (hdr gnus-copy-article-ignored-headers)
+		   (message-remove-header hdr t)))
+	       (gnus-request-accept-article
+		to-newsgroup select-method (not articles) t))))
+	  ;; Crosspost the article.
+	  ((eq action 'crosspost)
+	   (let ((xref (message-tokenize-header
+			(mail-header-xref (gnus-summary-article-header
+					   article))
+			" ")))
+	     (setq new-xref (concat (gnus-group-real-name gnus-newsgroup-name)
+				    ":" (number-to-string article)))
+	     (unless xref
+	       (setq xref (list (system-name))))
+	     (setq new-xref
+		   (concat
+		    (mapconcat 'identity
+			       (delete "Xref:" (delete new-xref xref))
+			       " ")
+		    " " new-xref))
+	     (with-current-buffer copy-buf
+	       ;; First put the article in the destination group.
+	       (gnus-request-article-this-buffer article gnus-newsgroup-name)
+	       (when (consp (setq art-group
+				  (gnus-request-accept-article
+				   to-newsgroup select-method (not articles)
+				   t)))
+		 (setq new-xref (concat new-xref " " (car art-group)
+					":"
+					(number-to-string (cdr art-group))))
+		 ;; Now we have the new Xrefs header, so we insert
+		 ;; it and replace the new article.
+		 (nnheader-replace-header "Xref" new-xref)
+		 (gnus-request-replace-article
+		  (cdr art-group) to-newsgroup (current-buffer) t)
+		 art-group))))))
+	(cond
+	 ((not art-group)
+	  (gnus-message 1 "Couldn't %s article %s: %s"
+			(cadr (assq action names)) article
+			(nnheader-get-report (car to-method))))
+	 ((eq art-group 'junk)
+	  (when (eq action 'move)
+	    (gnus-summary-mark-article article gnus-canceled-mark)
+	    (gnus-message 4 "Deleted article %s" article)
+	    ;; run the delete hook
+	    (run-hook-with-args 'gnus-summary-article-delete-hook
+				action
+				(gnus-data-header
+				 (assoc article (gnus-data-list nil)))
+				gnus-newsgroup-original-name nil
+				select-method)))
+	 (t
+	  (let* ((pto-group (gnus-group-prefixed-name
+			     (car art-group) to-method))
+		 (info (gnus-get-info pto-group))
+		 (to-group (gnus-info-group info))
+		 to-marks)
+	    ;; Update the group that has been moved to.
+	    (when (and info
+		       (memq action '(move copy)))
+	      (unless (member to-group to-groups)
+		(push to-group to-groups))
+
+	      (unless (memq article gnus-newsgroup-unreads)
+		(push 'read to-marks)
+		(gnus-info-set-read
+		 info (gnus-add-to-range (gnus-info-read info)
+					 (list (cdr art-group)))))
+
+	      ;; See whether the article is to be put in the cache.
+	      (let* ((expirable (gnus-group-auto-expirable-p to-group))
+		     (marks (if expirable
+				gnus-article-mark-lists
+			      (delete '(expirable . expire)
+				      (copy-sequence
+				       gnus-article-mark-lists))))
+		     (to-article (cdr art-group)))
+
+		;; Enter the article into the cache in the new group,
+		;; if that is required.
+		(when gnus-use-cache
+		  (gnus-cache-possibly-enter-article
+		   to-group to-article
+		   (memq article gnus-newsgroup-marked)
+		   (memq article gnus-newsgroup-dormant)
+		   (memq article gnus-newsgroup-unreads)))
+
+		(when gnus-preserve-marks
+		  ;; Copy any marks over to the new group.
+		  (when (and (equal to-group gnus-newsgroup-name)
+			     (not (memq article gnus-newsgroup-unreads)))
+		    ;; Mark this article as read in this group.
+		    (push (cons to-article gnus-read-mark)
+			  gnus-newsgroup-reads)
+		    ;; Increase the active status of this group.
+		    (setcdr (gnus-active to-group) to-article)
+		    (setcdr gnus-newsgroup-active to-article))
+
+		  (while marks
+		    (when (eq (gnus-article-mark-to-type (cdar marks)) 'list)
+		      (when (memq article (symbol-value
+					   (intern (format "gnus-newsgroup-%s"
+							   (caar marks)))))
+			(push (cdar marks) to-marks)
+			;; If the other group is the same as this group,
+			;; then we have to add the mark to the list.
+			(when (equal to-group gnus-newsgroup-name)
+			  (set (intern (format "gnus-newsgroup-%s"
+					       (caar marks)))
+			       (cons to-article
+				     (symbol-value
+				      (intern (format "gnus-newsgroup-%s"
+						      (caar marks)))))))
+			;; Copy the marks to other group.
+			(gnus-add-marked-articles
+			 to-group (cdar marks) (list to-article) info)))
+		    (setq marks (cdr marks)))
+
+		  (when (and expirable
+			     gnus-mark-copied-or-moved-articles-as-expirable
+			     (not (memq 'expire to-marks)))
+		    ;; Mark this article as expirable.
+		    (push 'expire to-marks)
+		    (when (equal to-group gnus-newsgroup-name)
+		      (push to-article gnus-newsgroup-expirable))
+		    ;; Copy the expirable mark to other group.
+		    (gnus-add-marked-articles
+		     to-group 'expire (list to-article) info))
+
+		  (when to-marks
+		    (gnus-request-set-mark
+		     to-group (list (list (list to-article) 'add to-marks)))))
+
+		(gnus-dribble-enter
+		 (concat "(gnus-group-set-info '"
+			 (gnus-prin1-to-string (gnus-get-info to-group))
+			 ")"))))
+
+	    ;; Update the Xref header in this article to point to
+	    ;; the new crossposted article we have just created.
+	    (when (eq action 'crosspost)
+	      (with-current-buffer copy-buf
+		(gnus-request-article-this-buffer article gnus-newsgroup-name)
+		(nnheader-replace-header "Xref" new-xref)
+		(gnus-request-replace-article
+		 article gnus-newsgroup-name (current-buffer) t)))
+
+	    ;; run the move/copy/crosspost/respool hook
+	    (let ((header (gnus-data-header
+			   (assoc article (gnus-data-list nil)))))
+	      (mail-header-set-subject header gnus-article-original-subject)
+	      (run-hook-with-args 'gnus-summary-article-move-hook
+				  action
+				  (gnus-data-header
+				   (assoc article (gnus-data-list nil)))
+				  gnus-newsgroup-original-name
+				  to-newsgroup
+				  select-method)))
+
+	  ;;;!!!Why is this necessary?
+	  (set-buffer gnus-summary-buffer)
+
+	  (when (eq action 'move)
+	    (save-excursion
+	      (gnus-summary-goto-subject article)
+	      (gnus-summary-mark-article article gnus-canceled-mark)))))
+	(push article articles-to-update-marks)))
 
     (save-excursion
       (apply 'gnus-summary-remove-process-mark articles-to-update-marks))
@@ -9912,7 +9919,7 @@
 
     (gnus-kill-buffer copy-buf)
     (gnus-summary-position-point)
-    (gnus-set-mode-line 'summary))))
+    (gnus-set-mode-line 'summary)))
 
 (defun gnus-summary-copy-article (&optional n to-newsgroup select-method)
   "Copy the current article to some other group.
--- a/lisp/gnus/gnus-util.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/gnus/gnus-util.el	Sat Nov 20 13:45:14 2010 +0200
@@ -277,6 +277,24 @@
       (setq start (when end
 		    (next-single-property-change start prop))))))
 
+(defun gnus-find-text-property-region (start end prop)
+  "Return a list of text property regions that has property PROP."
+  (let (regions value)
+    (unless (get-text-property start prop)
+      (setq start (next-single-property-change start prop)))
+    (while start
+      (setq value (get-text-property start prop)
+	    end (text-property-not-all start (point-max) prop value))
+      (if (not end)
+	  (setq start nil)
+	(when value
+	  (push (list (set-marker (make-marker) start)
+		      (set-marker (make-marker) end)
+		      value)
+		regions))
+	(setq start (next-single-property-change start prop))))
+    (nreverse regions)))
+
 (defun gnus-newsgroup-directory-form (newsgroup)
   "Make hierarchical directory name from NEWSGROUP name."
   (let* ((newsgroup (gnus-newsgroup-savable-name newsgroup))
--- a/lisp/gnus/gnus.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/gnus/gnus.el	Sat Nov 20 13:45:14 2010 +0200
@@ -2876,7 +2876,6 @@
       gnus-start-date-timer gnus-stop-date-timer
       gnus-mime-view-all-parts)
      ("gnus-int" gnus-request-type)
-     ("gnus-html" gnus-html-show-images)
      ("gnus-start" gnus-newsrc-parse-options gnus-1 gnus-no-server-1
       gnus-dribble-enter gnus-read-init-file gnus-dribble-touch
       gnus-check-reasonable-setup)
--- a/lisp/gnus/mm-decode.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/gnus/mm-decode.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1687,23 +1687,26 @@
 		  (start end &optional base-url))
 (declare-function shr-insert-document "shr" (dom))
 (defvar shr-blocked-images)
+(defvar gnus-inhibit-images)
 (autoload 'gnus-blocked-images "gnus-art")
 
 (defun mm-shr (handle)
   ;; Require since we bind its variables.
   (require 'shr)
   (let ((article-buffer (current-buffer))
-	(shr-blocked-images (if (and (boundp 'gnus-summary-buffer)
-				     (buffer-name gnus-summary-buffer))
-				(with-current-buffer gnus-summary-buffer
-				  (gnus-blocked-images))
-			      shr-blocked-images))
 	(shr-content-function (lambda (id)
 				(let ((handle (mm-get-content-id id)))
 				  (when handle
 				    (mm-with-part handle
 				      (buffer-string))))))
-	charset)
+	shr-inhibit-images shr-blocked-images charset)
+    (if (and (boundp 'gnus-summary-buffer)
+	     (buffer-name gnus-summary-buffer))
+	(with-current-buffer gnus-summary-buffer
+	  (setq shr-inhibit-images gnus-inhibit-images
+		shr-blocked-images (gnus-blocked-images)))
+      (setq shr-inhibit-images gnus-inhibit-images
+	    shr-blocked-images (gnus-blocked-images)))
     (unless handle
       (setq handle (mm-dissect-buffer t)))
     (setq charset (mail-content-type-get (mm-handle-type handle) 'charset))
--- a/lisp/gnus/mml2015.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/gnus/mml2015.el	Sat Nov 20 13:45:14 2010 +0200
@@ -941,6 +941,7 @@
   (let* ((inhibit-redisplay t)
 	 (context (epg-make-context))
 	 (boundary (mml-compute-boundary cont))
+	 (sender (message-options-get 'message-sender))
 	 signer-key
 	 (signers
 	  (or (message-options-get 'mml2015-epg-signers)
@@ -950,8 +951,8 @@
 		   (epa-select-keys context "\
 Select keys for signing.
 If no one is selected, default secret key is used.  "
-				    mml2015-signers t)
-		 (if mml2015-signers
+				    (cons sender mml2015-signers) t)
+		 (if (or sender mml2015-signers)
 		     (delq nil
 			   (mapcar
 			    (lambda (signer)
@@ -965,7 +966,7 @@
 					    signer)))
 				(error "No secret key for %s" signer))
 			      signer-key)
-			    mml2015-signers)))))))
+			    (cons sender mml2015-signers))))))))
 	 signature micalg)
     (epg-context-set-armor context t)
     (epg-context-set-textmode context t)
@@ -1008,6 +1009,7 @@
   (let ((inhibit-redisplay t)
 	(context (epg-make-context))
 	(config (epg-configuration))
+	(sender (message-options-get 'message-sender))
 	(recipients (message-options-get 'mml2015-epg-recipients))
 	cipher signers
 	(boundary (mml-compute-boundary cont))
@@ -1025,9 +1027,9 @@
 					      (read-string "Recipients: ")))
 		     "[ \f\t\n\r\v,]+"))))
       (when mml2015-encrypt-to-self
-	(unless mml2015-signers
-	  (error "mml2015-signers not set"))
-	(setq recipients (nconc recipients mml2015-signers)))
+	(unless (or sender mml2015-signers)
+	  (error "Message sender and mml2015-signers not set"))
+	(setq recipients (nconc recipients (cons sender mml2015-signers))))
       (if (eq mm-encrypt-option 'guided)
 	  (setq recipients
 		(epa-select-keys context "\
@@ -1060,8 +1062,8 @@
 		     (epa-select-keys context "\
 Select keys for signing.
 If no one is selected, default secret key is used.  "
-				      mml2015-signers t)
-		   (if mml2015-signers
+				      (cons sender mml2015-signers) t)
+		   (if (or sender mml2015-signers)
 		       (delq nil
 			     (mapcar
 			      (lambda (signer)
@@ -1075,7 +1077,7 @@
 					      signer)))
 				  (error "No secret key for %s" signer))
 				signer-key)
-			      mml2015-signers)))))))
+			      (cons sender mml2015-signers))))))))
       (epg-context-set-signers context signers))
     (epg-context-set-armor context t)
     (epg-context-set-textmode context t)
--- a/lisp/gnus/nnir.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/gnus/nnir.el	Sat Nov 20 13:45:14 2010 +0200
@@ -677,14 +677,14 @@
                         (cdr (assoc nnir-imap-default-search-key
                                     nnir-imap-search-arguments))))
           (gnus-inhibit-demon t)
-	  (groups (or groups (nnir-get-active srv)))
-          artlist)
+	  (groups (or groups (nnir-get-active srv))))
       (message "Opening server %s" server)
       (apply
        'vconcat
        (mapcar
 	(lambda (x)
-	  (let ((group x))
+	  (let ((group x)
+		artlist)
 	    (condition-case ()
 		(when (nnimap-possibly-change-group
 		       (gnus-group-short-name group) server)
--- a/lisp/gnus/shr.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/gnus/shr.el	Sat Nov 20 13:45:14 2010 +0200
@@ -55,18 +55,23 @@
   :group 'shr
   :type 'regexp)
 
-(defcustom shr-table-line ?-
-  "Character used to draw table line."
+(defcustom shr-table-horizontal-line ?-
+  "Character used to draw horizontal table lines."
+  :group 'shr
+  :type 'character)
+
+(defcustom shr-table-vertical-line ?|
+  "Character used to draw vertical table lines."
   :group 'shr
   :type 'character)
 
 (defcustom shr-table-corner ?+
-  "Character used to draw table corner."
+  "Character used to draw table corners."
   :group 'shr
   :type 'character)
 
 (defcustom shr-hr-line ?-
-  "Character used to draw hr line."
+  "Character used to draw hr lines."
   :group 'shr
   :type 'character)
 
@@ -154,7 +159,7 @@
 (defun shr-browse-image ()
   "Browse the image under point."
   (interactive)
-  (let ((url (get-text-property (point) 'shr-image)))
+  (let ((url (get-text-property (point) 'image-url)))
     (if (not url)
 	(message "No image under point")
       (message "Browsing %s..." url)
@@ -163,7 +168,7 @@
 (defun shr-insert-image ()
   "Insert the image under point into the buffer."
   (interactive)
-  (let ((url (get-text-property (point) 'shr-image)))
+  (let ((url (get-text-property (point) 'image-url)))
     (if (not url)
 	(message "No image under point")
       (message "Inserting %s..." url)
@@ -388,6 +393,11 @@
       (let ((image (ignore-errors
                      (shr-rescale-image data))))
         (when image
+	  ;; When inserting big-ish pictures, put them at the
+	  ;; beginning of the line.
+	  (when (and (> (current-column) 0)
+		     (> (car (image-size image t)) 400))
+	    (insert "\n"))
 	  (insert-image image (or alt "*"))))
     (insert alt)))
 
@@ -435,6 +445,27 @@
 		(search-forward "\r\n\r\n" nil t))
 	(buffer-substring (point) (point-max))))))
 
+(defun shr-image-displayer (content-function)
+  "Return a function to display an image.
+CONTENT-FUNCTION is a function to retrieve an image for a cid url that
+is an argument.  The function to be returned takes three arguments URL,
+START, and END."
+  `(lambda (url start end)
+     (when url
+       (if (string-match "\\`cid:" url)
+	   ,(when content-function
+	      `(let ((image (funcall ,content-function
+				     (substring url (match-end 0)))))
+		 (when image
+		   (goto-char start)
+		   (shr-put-image image
+				  (prog1
+				      (buffer-substring-no-properties start end)
+				    (delete-region start end))))))
+	 (url-retrieve url 'shr-image-fetched
+		       (list (current-buffer) start end)
+		       t)))))
+
 (defun shr-heading (cont &rest types)
   (shr-ensure-paragraph)
   (apply #'shr-fontize-cont cont types)
@@ -572,7 +603,9 @@
 			  t))))
 	(put-text-property start (point) 'keymap shr-map)
 	(put-text-property start (point) 'shr-alt alt)
-	(put-text-property start (point) 'shr-image url)
+	(put-text-property start (point) 'image-url url)
+	(put-text-property start (point) 'image-displayer
+			   (shr-image-displayer shr-content-function))
 	(put-text-property start (point) 'help-echo alt)
 	(setq shr-state 'image)))))
 
@@ -750,7 +783,7 @@
 		    max)))
       (dotimes (i height)
 	(shr-indent)
-	(insert "|\n"))
+	(insert shr-table-vertical-line "\n"))
       (dolist (column row)
 	(goto-char start)
 	(let ((lines (nth 2 column))
@@ -759,7 +792,7 @@
 	  (dolist (line lines)
 	    (setq overlay-line (pop overlay-lines))
 	    (end-of-line)
-	    (insert line "|")
+	    (insert line shr-table-vertical-line)
 	    (dolist (overlay overlay-line)
 	      (let ((o (make-overlay (- (point) (nth 0 overlay) 1)
 				     (- (point) (nth 1 overlay) 1)))
@@ -771,7 +804,8 @@
 	  ;; possibly.
 	  (dotimes (i (- height (length lines)))
 	    (end-of-line)
-	    (insert (make-string (string-width (car lines)) ? ) "|")
+	    (insert (make-string (string-width (car lines)) ? )
+		    shr-table-vertical-line)
 	    (forward-line 1)))))
     (shr-insert-table-ruler widths)))
 
@@ -781,7 +815,8 @@
     (shr-indent))
   (insert shr-table-corner)
   (dotimes (i (length widths))
-    (insert (make-string (aref widths i) shr-table-line) shr-table-corner))
+    (insert (make-string (aref widths i) shr-table-horizontal-line)
+	    shr-table-corner))
   (insert "\n"))
 
 (defun shr-table-widths (table suggested-widths)
--- a/lisp/international/characters.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/international/characters.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1294,40 +1294,48 @@
 (aset char-acronym-table #xE007F "->|TAG") ; CANCEL TAG
 
 ;;; Control of displaying glyphless characters.
-(defvar glyphless-char-control
+(defvar glyphless-char-display-control
   '((format-control . thin-space)
-    (no-font . hexa-code))
-  "List of directives to control displaying of glyphless characters.
+    (no-font . hex-code))
+  "List of directives to control display of glyphless characters.
+
+Each element has the form (GROUP . METHOD), where GROUP is a
+symbol specifying the character group, and METHOD is a symbol
+specifying the method of displaying characters belonging to that
+group.
 
-Each element has the form (TARGET . METHOD), where TARGET is a
-symbol specifying the target character group to control, and
-METHOD is a symbol specifying the method of displaying them.
-
-TARGET must be one of these symbols:
-  `c0-control': U+0000..U+001F.
-  `c1-control': U+0080..U+009F.
-  `format-control': Characters of Unicode General Category `Cf'.
-     Ex: U+200C (ZWNJ), U+200E (LRM)), but don't include characters
-     that have graphic image such as U+00AD (SHY).
-  `no-font': characters for which no suitable font is found.
+GROUP must be one of these symbols:
+  `c0-control':     U+0000..U+001F.
+  `c1-control':     U+0080..U+009F.
+  `format-control': Characters of Unicode General Category `Cf',
+                    such as U+200C (ZWNJ), U+200E (LRM), but
+                    excluding characters that have graphic images,
+                    such as U+00AD (SHY).
+  `no-font':        characters for which no suitable font is found.
+                    For character terminals, characters that cannot
+                    be encoded by `terminal-coding-system'.
 
 METHOD must be one of these symbols:
   `zero-width': don't display.
-  `thin-space': display a thin space (1-pixel width).
-  `empty-box': display an empty box.
-  `acronym': display an acronum string in a box.
-  `hexa-code': display a hexadecimal character code in a box.
+  `thin-space': display a thin (1-pixel width) space.  On character
+                terminals, display as 1-character space.
+  `empty-box':  display an empty box.
+  `acronym':    display an acronym of the character in a box.  The
+                acronym is taken from `char-acronym-table', which see.
+  `hex-code':   display the hexadecimal character code in a box.
 
 Just setting this variable does not take effect.  Call the
 function `update-glyphless-char-display' (which see) after
 setting this variable.")
 
 (defun update-glyphless-char-display ()
-  "Make the setting of `glyphless-char-control' take effect.
+  "Make the setting of `glyphless-char-display-control' take effect.
 This function updates the char-table `glyphless-char-display'."
-  (dolist (elt glyphless-char-control)
+  (dolist (elt glyphless-char-display-control)
     (let ((target (car elt))
 	  (method (cdr elt)))
+      (or (memq method '(zero-width thin-space empty-box acronym hex-code))
+	  (error "Invalid glyphless character display method: %s" method))
       (cond ((eq target 'c0-control)
 	     (set-char-table-range glyphless-char-display '(#x00 . #x1F)
 				   method))
@@ -1346,7 +1354,7 @@
 			(while (<= from to)
 			  (when (/= from #xAD)
 			    (if (eq method 'acronym)
-				(setq this-method 
+				(setq this-method
 				      (aref char-acronym-table from)))
 			    (set-char-table-range glyphless-char-display
 						  from this-method))
@@ -1355,7 +1363,7 @@
 	    ((eq target 'no-font)
 	     (set-char-table-extra-slot glyphless-char-display 0 method))
 	    (t
-	     (error "Invalid target character group: %s" target))))))
+	     (error "Invalid glyphless character group: %s" target))))))
 
 (update-glyphless-char-display)
 
--- a/lisp/international/mule-cmds.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/international/mule-cmds.el	Sat Nov 20 13:45:14 2010 +0200
@@ -2035,7 +2035,7 @@
 
 (defun princ-list (&rest args)
   "Print all arguments with `princ', then print \"\\n\"."
-  (while args (princ (car args)) (setq args (cdr args)))
+  (mapc #'princ args)
   (princ "\n"))
 (make-obsolete 'princ-list "use mapc and princ instead" "23.3")
 
--- a/lisp/ldefs-boot.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/ldefs-boot.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,11 +1,10 @@
 ;;; loaddefs.el --- automatically extracted autoloads
 ;;
 ;;; Code:
-
 
 ;;;### (autoloads (5x5-crack 5x5-crack-xor-mutate 5x5-crack-mutating-best
 ;;;;;;  5x5-crack-mutating-current 5x5-crack-randomly 5x5) "5x5"
-;;;;;;  "play/5x5.el" (19279 5151))
+;;;;;;  "play/5x5.el" (19634 57717))
 ;;; Generated autoloads from play/5x5.el
 
 (autoload '5x5 "5x5" "\
@@ -65,7 +64,7 @@
 ;;;***
 
 ;;;### (autoloads (list-one-abbrev-table) "abbrevlist" "abbrevlist.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from abbrevlist.el
 
 (autoload 'list-one-abbrev-table "abbrevlist" "\
@@ -76,7 +75,7 @@
 ;;;***
 
 ;;;### (autoloads (ada-mode ada-add-extensions) "ada-mode" "progmodes/ada-mode.el"
-;;;;;;  (19313 15414))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from progmodes/ada-mode.el
 
 (autoload 'ada-add-extensions "ada-mode" "\
@@ -90,13 +89,14 @@
 
 (autoload 'ada-mode "ada-mode" "\
 Ada mode is the major mode for editing Ada code.
+\\{ada-mode-map}
 
 \(fn)" t nil)
 
 ;;;***
 
 ;;;### (autoloads (ada-header) "ada-stmt" "progmodes/ada-stmt.el"
-;;;;;;  (19279 38446))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from progmodes/ada-stmt.el
 
 (autoload 'ada-header "ada-stmt" "\
@@ -107,7 +107,7 @@
 ;;;***
 
 ;;;### (autoloads (ada-find-file) "ada-xref" "progmodes/ada-xref.el"
-;;;;;;  (19279 38446))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from progmodes/ada-xref.el
 
 (autoload 'ada-find-file "ada-xref" "\
@@ -121,9 +121,9 @@
 ;;;### (autoloads (change-log-merge add-log-current-defun change-log-mode
 ;;;;;;  add-change-log-entry-other-window add-change-log-entry find-change-log
 ;;;;;;  prompt-for-change-log-name add-log-mailing-address add-log-full-name
-;;;;;;  add-log-current-defun-function) "add-log" "add-log.el" (19279
-;;;;;;  5148))
-;;; Generated autoloads from add-log.el
+;;;;;;  add-log-current-defun-function) "add-log" "vc/add-log.el"
+;;;;;;  (19661 45226))
+;;; Generated autoloads from vc/add-log.el
 
 (put 'change-log-default-name 'safe-local-variable 'string-or-null-p)
 
@@ -261,7 +261,7 @@
 
 ;;;### (autoloads (defadvice ad-activate ad-add-advice ad-disable-advice
 ;;;;;;  ad-enable-advice ad-default-compilation-action ad-redefinition-action)
-;;;;;;  "advice" "emacs-lisp/advice.el" (19323 49698))
+;;;;;;  "advice" "emacs-lisp/advice.el" (19578 56905))
 ;;; Generated autoloads from emacs-lisp/advice.el
 
 (defvar ad-redefinition-action 'warn "\
@@ -400,11 +400,13 @@
 
 \(fn FUNCTION ARGS &rest BODY)" nil (quote macro))
 
+(put 'defadvice 'doc-string-elt '3)
+
 ;;;***
 
 ;;;### (autoloads (align-newline-and-indent align-unhighlight-rule
 ;;;;;;  align-highlight-rule align-current align-entire align-regexp
-;;;;;;  align) "align" "align.el" (19279 5148))
+;;;;;;  align) "align" "align.el" (19569 38342))
 ;;; Generated autoloads from align.el
 
 (autoload 'align "align" "\
@@ -447,7 +449,7 @@
     Joe (123) 456-7890
 
 There is no predefined rule to handle this, but you could easily do it
-using a REGEXP like \"(\". All you would have to do is to mark the
+using a REGEXP like \"(\".  All you would have to do is to mark the
 region, call `align-regexp' and type in that regular expression.
 
 \(fn BEG END REGEXP &optional GROUP SPACING REPEAT)" t nil)
@@ -494,7 +496,7 @@
 ;;;***
 
 ;;;### (autoloads (outlineify-sticky allout-mode) "allout" "allout.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19682 26290))
 ;;; Generated autoloads from allout.el
 
 (put 'allout-use-hanging-indents 'safe-local-variable (if (fboundp 'booleanp) 'booleanp '(lambda (x) (member x '(t nil)))))
@@ -801,7 +803,7 @@
 ;;;***
 
 ;;;### (autoloads (ange-ftp-hook-function ange-ftp-reread-dir) "ange-ftp"
-;;;;;;  "net/ange-ftp.el" (19356 10801))
+;;;;;;  "net/ange-ftp.el" (19669 58161))
 ;;; Generated autoloads from net/ange-ftp.el
 
 (defalias 'ange-ftp-re-read-dir 'ange-ftp-reread-dir)
@@ -823,7 +825,7 @@
 ;;;***
 
 ;;;### (autoloads (animate-birthday-present animate-sequence animate-string)
-;;;;;;  "animate" "play/animate.el" (19279 5151))
+;;;;;;  "animate" "play/animate.el" (19379 23432))
 ;;; Generated autoloads from play/animate.el
 
 (autoload 'animate-string "animate" "\
@@ -851,7 +853,7 @@
 ;;;***
 
 ;;;### (autoloads (ansi-color-process-output ansi-color-for-comint-mode-on)
-;;;;;;  "ansi-color" "ansi-color.el" (19279 5148))
+;;;;;;  "ansi-color" "ansi-color.el" (19595 20656))
 ;;; Generated autoloads from ansi-color.el
 
 (autoload 'ansi-color-for-comint-mode-on "ansi-color" "\
@@ -860,12 +862,12 @@
 \(fn)" t nil)
 
 (autoload 'ansi-color-process-output "ansi-color" "\
-Maybe translate SGR control sequences of comint output into text-properties.
+Maybe translate SGR control sequences of comint output into text properties.
 
 Depending on variable `ansi-color-for-comint-mode' the comint output is
 either not processed, SGR control sequences are filtered using
 `ansi-color-filter-region', or SGR control sequences are translated into
-text-properties using `ansi-color-apply-on-region'.
+text properties using `ansi-color-apply-on-region'.
 
 The comint output is assumed to lie between the marker
 `comint-last-output-start' and the process-mark.
@@ -877,7 +879,7 @@
 ;;;***
 
 ;;;### (autoloads (antlr-set-tabs antlr-mode antlr-show-makefile-rules)
-;;;;;;  "antlr-mode" "progmodes/antlr-mode.el" (19279 5151))
+;;;;;;  "antlr-mode" "progmodes/antlr-mode.el" (19599 32188))
 ;;; Generated autoloads from progmodes/antlr-mode.el
 
 (autoload 'antlr-show-makefile-rules "antlr-mode" "\
@@ -913,35 +915,18 @@
 
 ;;;***
 
-;;;### (autoloads (appt-activate appt-make-list appt-delete appt-add)
-;;;;;;  "appt" "calendar/appt.el" (19279 5149))
+;;;### (autoloads (appt-activate appt-add) "appt" "calendar/appt.el"
+;;;;;;  (19629 41197))
 ;;; Generated autoloads from calendar/appt.el
 
 (autoload 'appt-add "appt" "\
-Add an appointment for today at NEW-APPT-TIME with message NEW-APPT-MSG.
+Add an appointment for today at TIME with message MSG.
 The time should be in either 24 hour format or am/pm format.
-
-\(fn NEW-APPT-TIME NEW-APPT-MSG)" t nil)
-
-(autoload 'appt-delete "appt" "\
-Delete an appointment from the list of appointments.
-
-\(fn)" t nil)
-
-(autoload 'appt-make-list "appt" "\
-Update the appointments list from today's diary buffer.
-The time must be at the beginning of a line for it to be
-put in the appointments list (see examples in documentation of
-the function `appt-check').  We assume that the variables DATE and
-NUMBER hold the arguments that `diary-list-entries' received.
-They specify the range of dates that the diary is being processed for.
-
-Any appointments made with `appt-add' are not affected by this function.
-
-For backwards compatibility, this function activates the
-appointment package (if it is not already active).
-
-\(fn)" nil nil)
+Optional argument WARNTIME is an integer (or string) giving the number
+of minutes before the appointment at which to start warning.
+The default is `appt-message-warning-time'.
+
+\(fn TIME MSG &optional WARNTIME)" t nil)
 
 (autoload 'appt-activate "appt" "\
 Toggle checking of appointments.
@@ -954,7 +939,7 @@
 
 ;;;### (autoloads (apropos-documentation apropos-value apropos-library
 ;;;;;;  apropos apropos-documentation-property apropos-command apropos-variable
-;;;;;;  apropos-read-pattern) "apropos" "apropos.el" (19279 5148))
+;;;;;;  apropos-read-pattern) "apropos" "apropos.el" (19578 56905))
 ;;; Generated autoloads from apropos.el
 
 (autoload 'apropos-read-pattern "apropos" "\
@@ -1057,8 +1042,8 @@
 
 ;;;***
 
-;;;### (autoloads (archive-mode) "arc-mode" "arc-mode.el" (19321
-;;;;;;  4517))
+;;;### (autoloads (archive-mode) "arc-mode" "arc-mode.el" (19669
+;;;;;;  58161))
 ;;; Generated autoloads from arc-mode.el
 
 (autoload 'archive-mode "arc-mode" "\
@@ -1078,7 +1063,7 @@
 
 ;;;***
 
-;;;### (autoloads (array-mode) "array" "array.el" (19279 5148))
+;;;### (autoloads (array-mode) "array" "array.el" (19675 9114))
 ;;; Generated autoloads from array.el
 
 (autoload 'array-mode "array" "\
@@ -1149,8 +1134,8 @@
 
 ;;;***
 
-;;;### (autoloads (artist-mode) "artist" "textmodes/artist.el" (19321
-;;;;;;  4517))
+;;;### (autoloads (artist-mode) "artist" "textmodes/artist.el" (19623
+;;;;;;  61514))
 ;;; Generated autoloads from textmodes/artist.el
 
 (autoload 'artist-mode "artist" "\
@@ -1356,8 +1341,8 @@
 
 ;;;***
 
-;;;### (autoloads (asm-mode) "asm-mode" "progmodes/asm-mode.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (asm-mode) "asm-mode" "progmodes/asm-mode.el" (19438
+;;;;;;  21798))
 ;;; Generated autoloads from progmodes/asm-mode.el
 
 (autoload 'asm-mode "asm-mode" "\
@@ -1385,7 +1370,7 @@
 ;;;***
 
 ;;;### (autoloads (autoarg-kp-mode autoarg-mode) "autoarg" "autoarg.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from autoarg.el
 
 (defvar autoarg-mode nil "\
@@ -1439,7 +1424,7 @@
 ;;;***
 
 ;;;### (autoloads (autoconf-mode) "autoconf" "progmodes/autoconf.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19595 20656))
 ;;; Generated autoloads from progmodes/autoconf.el
 
 (autoload 'autoconf-mode "autoconf" "\
@@ -1450,7 +1435,7 @@
 ;;;***
 
 ;;;### (autoloads (auto-insert-mode define-auto-insert auto-insert)
-;;;;;;  "autoinsert" "autoinsert.el" (19279 5148))
+;;;;;;  "autoinsert" "autoinsert.el" (19502 54176))
 ;;; Generated autoloads from autoinsert.el
 
 (autoload 'auto-insert "autoinsert" "\
@@ -1489,7 +1474,7 @@
 
 ;;;### (autoloads (batch-update-autoloads update-directory-autoloads
 ;;;;;;  update-file-autoloads) "autoload" "emacs-lisp/autoload.el"
-;;;;;;  (19365 25156))
+;;;;;;  (19686 22639))
 ;;; Generated autoloads from emacs-lisp/autoload.el
 
 (put 'generated-autoload-file 'safe-local-variable 'stringp)
@@ -1528,7 +1513,7 @@
 
 ;;;### (autoloads (global-auto-revert-mode turn-on-auto-revert-tail-mode
 ;;;;;;  auto-revert-tail-mode turn-on-auto-revert-mode auto-revert-mode)
-;;;;;;  "autorevert" "autorevert.el" (19279 5148))
+;;;;;;  "autorevert" "autorevert.el" (19379 23432))
 ;;; Generated autoloads from autorevert.el
 
 (autoload 'auto-revert-mode "autorevert" "\
@@ -1609,7 +1594,7 @@
 ;;;***
 
 ;;;### (autoloads (mouse-avoidance-mode mouse-avoidance-mode) "avoid"
-;;;;;;  "avoid.el" (19279 5148))
+;;;;;;  "avoid.el" (19644 49850))
 ;;; Generated autoloads from avoid.el
 
 (defvar mouse-avoidance-mode nil "\
@@ -1650,7 +1635,7 @@
 ;;;***
 
 ;;;### (autoloads (display-battery-mode battery) "battery" "battery.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from battery.el
  (put 'battery-mode-line-string 'risky-local-variable t)
 
@@ -1682,7 +1667,7 @@
 ;;;***
 
 ;;;### (autoloads (benchmark benchmark-run-compiled benchmark-run)
-;;;;;;  "benchmark" "emacs-lisp/benchmark.el" (19279 5149))
+;;;;;;  "benchmark" "emacs-lisp/benchmark.el" (19379 23432))
 ;;; Generated autoloads from emacs-lisp/benchmark.el
 
 (autoload 'benchmark-run "benchmark" "\
@@ -1715,7 +1700,7 @@
 ;;;***
 
 ;;;### (autoloads (bibtex-search-entry bibtex-mode bibtex-initialize)
-;;;;;;  "bibtex" "textmodes/bibtex.el" (19279 38446))
+;;;;;;  "bibtex" "textmodes/bibtex.el" (19661 45226))
 ;;; Generated autoloads from textmodes/bibtex.el
 
 (autoload 'bibtex-initialize "bibtex" "\
@@ -1802,9 +1787,8 @@
 ;;;***
 
 ;;;### (autoloads (bibtex-style-mode) "bibtex-style" "textmodes/bibtex-style.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19612 6522))
 ;;; Generated autoloads from textmodes/bibtex-style.el
- (add-to-list 'auto-mode-alist (cons (purecopy "\\.bst\\'") 'bibtex-style-mode))
 
 (autoload 'bibtex-style-mode "bibtex-style" "\
 Major mode for editing BibTeX style files.
@@ -1815,7 +1799,7 @@
 
 ;;;### (autoloads (binhex-decode-region binhex-decode-region-external
 ;;;;;;  binhex-decode-region-internal) "binhex" "mail/binhex.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19583 31640))
 ;;; Generated autoloads from mail/binhex.el
 
 (defconst binhex-begin-line "^:...............................................................$")
@@ -1838,8 +1822,8 @@
 
 ;;;***
 
-;;;### (autoloads (blackbox) "blackbox" "play/blackbox.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (blackbox) "blackbox" "play/blackbox.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from play/blackbox.el
 
 (autoload 'blackbox "blackbox" "\
@@ -1962,7 +1946,7 @@
 ;;;;;;  bookmark-save bookmark-write bookmark-delete bookmark-insert
 ;;;;;;  bookmark-rename bookmark-insert-location bookmark-relocate
 ;;;;;;  bookmark-jump-other-window bookmark-jump bookmark-set) "bookmark"
-;;;;;;  "bookmark.el" (19326 6129))
+;;;;;;  "bookmark.el" (19669 58161))
 ;;; Generated autoloads from bookmark.el
  (define-key ctl-x-r-map "b" 'bookmark-jump)
  (define-key ctl-x-r-map "m" 'bookmark-set)
@@ -2164,15 +2148,15 @@
 ;;;;;;  browse-url-mail browse-url-text-emacs browse-url-text-xterm
 ;;;;;;  browse-url-w3-gnudoit browse-url-w3 browse-url-cci browse-url-mosaic
 ;;;;;;  browse-url-gnome-moz browse-url-emacs browse-url-galeon browse-url-firefox
-;;;;;;  browse-url-mozilla browse-url-netscape browse-url-default-browser
-;;;;;;  browse-url-at-mouse browse-url-at-point browse-url browse-url-of-region
-;;;;;;  browse-url-of-dired-file browse-url-of-buffer browse-url-of-file
-;;;;;;  browse-url-url-at-point browse-url-galeon-program browse-url-firefox-program
+;;;;;;  browse-url-mozilla browse-url-netscape browse-url-xdg-open
+;;;;;;  browse-url-default-browser browse-url-at-mouse browse-url-at-point
+;;;;;;  browse-url browse-url-of-region browse-url-of-dired-file
+;;;;;;  browse-url-of-buffer browse-url-of-file browse-url-url-at-point
 ;;;;;;  browse-url-browser-function) "browse-url" "net/browse-url.el"
-;;;;;;  (19356 10801))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from net/browse-url.el
 
-(defvar browse-url-browser-function (cond ((memq system-type '(windows-nt ms-dos cygwin)) 'browse-url-default-windows-browser) ((memq system-type '(darwin)) 'browse-url-default-macosx-browser) (t 'browse-url-default-browser)) "\
+(defvar browse-url-browser-function `(("\\`mailto:" . browse-url-mail) ("." \, (cond ((memq system-type '(windows-nt ms-dos cygwin)) 'browse-url-default-windows-browser) ((memq system-type '(darwin)) 'browse-url-default-macosx-browser) (t 'browse-url-default-browser)))) "\
 Function to display the current buffer in a WWW browser.
 This is used by the `browse-url-at-point', `browse-url-at-mouse', and
 `browse-url-of-file' commands.
@@ -2185,16 +2169,6 @@
 
 (custom-autoload 'browse-url-browser-function "browse-url" t)
 
-(defvar browse-url-firefox-program (purecopy "firefox") "\
-The name by which to invoke Firefox.")
-
-(custom-autoload 'browse-url-firefox-program "browse-url" t)
-
-(defvar browse-url-galeon-program (purecopy "galeon") "\
-The name by which to invoke Galeon.")
-
-(custom-autoload 'browse-url-galeon-program "browse-url" t)
-
 (autoload 'browse-url-url-at-point "browse-url" "\
 Not documented
 
@@ -2267,6 +2241,11 @@
 
 \(fn URL &rest ARGS)" nil nil)
 
+(autoload 'browse-url-xdg-open "browse-url" "\
+Not documented
+
+\(fn URL &optional NEW-WINDOW)" t nil)
+
 (autoload 'browse-url-netscape "browse-url" "\
 Ask the Netscape WWW browser to load URL.
 Default to the URL around or before point.  The strings in variable
@@ -2499,8 +2478,8 @@
 
 ;;;***
 
-;;;### (autoloads (snarf-bruces bruce) "bruce" "play/bruce.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (snarf-bruces bruce) "bruce" "play/bruce.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from play/bruce.el
 
 (autoload 'bruce "bruce" "\
@@ -2516,7 +2495,7 @@
 ;;;***
 
 ;;;### (autoloads (bs-show bs-customize bs-cycle-previous bs-cycle-next)
-;;;;;;  "bs" "bs.el" (19279 5148))
+;;;;;;  "bs" "bs.el" (19520 54552))
 ;;; Generated autoloads from bs.el
 
 (autoload 'bs-cycle-next "bs" "\
@@ -2556,7 +2535,7 @@
 
 ;;;***
 
-;;;### (autoloads (bubbles) "bubbles" "play/bubbles.el" (19279 5151))
+;;;### (autoloads (bubbles) "bubbles" "play/bubbles.el" (19612 3157))
 ;;; Generated autoloads from play/bubbles.el
 
 (autoload 'bubbles "bubbles" "\
@@ -2578,10 +2557,10 @@
 ;;;***
 
 ;;;### (autoloads (bug-reference-prog-mode bug-reference-mode) "bug-reference"
-;;;;;;  "progmodes/bug-reference.el" (19279 5151))
+;;;;;;  "progmodes/bug-reference.el" (19416 29566))
 ;;; Generated autoloads from progmodes/bug-reference.el
 
-(put 'bug-reference-url-format 'safe-local-variable 'stringp)
+(put 'bug-reference-url-format 'safe-local-variable (lambda (s) (or (stringp s) (and (symbolp s) (get s 'bug-reference-url-format)))))
 
 (autoload 'bug-reference-mode "bug-reference" "\
 Minor mode to buttonize bugzilla references in the current buffer.
@@ -2598,19 +2577,14 @@
 ;;;### (autoloads (batch-byte-recompile-directory batch-byte-compile
 ;;;;;;  batch-byte-compile-if-not-done display-call-tree byte-compile
 ;;;;;;  compile-defun byte-compile-file byte-recompile-directory
-;;;;;;  byte-force-recompile byte-compile-enable-warning byte-compile-disable-warning
-;;;;;;  byte-compile-warnings-safe-p) "bytecomp" "emacs-lisp/bytecomp.el"
-;;;;;;  (19279 5149))
+;;;;;;  byte-force-recompile byte-compile-enable-warning byte-compile-disable-warning)
+;;;;;;  "bytecomp" "emacs-lisp/bytecomp.el" (19686 22639))
 ;;; Generated autoloads from emacs-lisp/bytecomp.el
 (put 'byte-compile-dynamic 'safe-local-variable 'booleanp)
 (put 'byte-compile-disable-print-circle 'safe-local-variable 'booleanp)
 (put 'byte-compile-dynamic-docstrings 'safe-local-variable 'booleanp)
-(put 'byte-compile-warnings 'safe-local-variable 'byte-compile-warnings-safe-p)
-
-(autoload 'byte-compile-warnings-safe-p "bytecomp" "\
-Return non-nil if X is valid as a value of `byte-compile-warnings'.
-
-\(fn X)" nil nil)
+
+(put 'byte-compile-warnings 'safe-local-variable (lambda (v) (or (symbolp v) (null (delq nil (mapcar (lambda (x) (not (symbolp x))) v))))))
 
 (autoload 'byte-compile-disable-warning "bytecomp" "\
 Change `byte-compile-warnings' to disable WARNING.
@@ -2724,8 +2698,8 @@
 
 ;;;***
 
-;;;### (autoloads nil "cal-china" "calendar/cal-china.el" (19279
-;;;;;;  5149))
+;;;### (autoloads nil "cal-china" "calendar/cal-china.el" (19578
+;;;;;;  56905))
 ;;; Generated autoloads from calendar/cal-china.el
 
 (put 'calendar-chinese-time-zone 'risky-local-variable t)
@@ -2734,7 +2708,7 @@
 
 ;;;***
 
-;;;### (autoloads nil "cal-dst" "calendar/cal-dst.el" (19279 5149))
+;;;### (autoloads nil "cal-dst" "calendar/cal-dst.el" (19578 56905))
 ;;; Generated autoloads from calendar/cal-dst.el
 
 (put 'calendar-daylight-savings-starts 'risky-local-variable t)
@@ -2746,7 +2720,7 @@
 ;;;***
 
 ;;;### (autoloads (calendar-hebrew-list-yahrzeits) "cal-hebrew" "calendar/cal-hebrew.el"
-;;;;;;  (19345 41626))
+;;;;;;  (19632 22628))
 ;;; Generated autoloads from calendar/cal-hebrew.el
 
 (autoload 'calendar-hebrew-list-yahrzeits "cal-hebrew" "\
@@ -2762,8 +2736,8 @@
 
 ;;;### (autoloads (defmath calc-embedded-activate calc-embedded calc-grab-rectangle
 ;;;;;;  calc-grab-region full-calc-keypad calc-keypad calc-eval quick-calc
-;;;;;;  full-calc calc calc-dispatch) "calc" "calc/calc.el" (19282
-;;;;;;  55646))
+;;;;;;  full-calc calc calc-dispatch) "calc" "calc/calc.el" (19550
+;;;;;;  35591))
 ;;; Generated autoloads from calc/calc.el
  (define-key ctl-x-map "*" 'calc-dispatch)
 
@@ -2843,10 +2817,12 @@
 
 \(fn FUNC ARGS &rest BODY)" nil (quote macro))
 
-;;;***
-
-;;;### (autoloads (calculator) "calculator" "calculator.el" (19356
-;;;;;;  10801))
+(put 'defmath 'doc-string-elt '3)
+
+;;;***
+
+;;;### (autoloads (calculator) "calculator" "calculator.el" (19612
+;;;;;;  3157))
 ;;; Generated autoloads from calculator.el
 
 (autoload 'calculator "calculator" "\
@@ -2857,8 +2833,8 @@
 
 ;;;***
 
-;;;### (autoloads (calendar) "calendar" "calendar/calendar.el" (19279
-;;;;;;  5149))
+;;;### (autoloads (calendar) "calendar" "calendar/calendar.el" (19686
+;;;;;;  22639))
 ;;; Generated autoloads from calendar/calendar.el
 
 (autoload 'calendar "calendar" "\
@@ -2902,7 +2878,7 @@
 ;;;***
 
 ;;;### (autoloads (canlock-verify canlock-insert-header) "canlock"
-;;;;;;  "gnus/canlock.el" (19279 5150))
+;;;;;;  "gnus/canlock.el" (19583 31640))
 ;;; Generated autoloads from gnus/canlock.el
 
 (autoload 'canlock-insert-header "canlock" "\
@@ -2920,7 +2896,7 @@
 ;;;***
 
 ;;;### (autoloads (capitalized-words-mode) "cap-words" "progmodes/cap-words.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from progmodes/cap-words.el
 
 (autoload 'capitalized-words-mode "cap-words" "\
@@ -2955,15 +2931,15 @@
 
 ;;;***
 
-;;;### (autoloads nil "cc-compat" "progmodes/cc-compat.el" (19279
-;;;;;;  5151))
+;;;### (autoloads nil "cc-compat" "progmodes/cc-compat.el" (19578
+;;;;;;  56905))
 ;;; Generated autoloads from progmodes/cc-compat.el
 (put 'c-indent-level 'safe-local-variable 'integerp)
 
 ;;;***
 
 ;;;### (autoloads (c-guess-basic-syntax) "cc-engine" "progmodes/cc-engine.el"
-;;;;;;  (19370 36541))
+;;;;;;  (19632 54888))
 ;;; Generated autoloads from progmodes/cc-engine.el
 
 (autoload 'c-guess-basic-syntax "cc-engine" "\
@@ -2975,7 +2951,7 @@
 
 ;;;### (autoloads (pike-mode idl-mode java-mode objc-mode c++-mode
 ;;;;;;  c-mode c-initialize-cc-mode) "cc-mode" "progmodes/cc-mode.el"
-;;;;;;  (19338 9841))
+;;;;;;  (19646 65152))
 ;;; Generated autoloads from progmodes/cc-mode.el
 
 (autoload 'c-initialize-cc-mode "cc-mode" "\
@@ -3135,7 +3111,7 @@
 ;;;***
 
 ;;;### (autoloads (c-set-offset c-add-style c-set-style) "cc-styles"
-;;;;;;  "progmodes/cc-styles.el" (19279 5151))
+;;;;;;  "progmodes/cc-styles.el" (19623 58252))
 ;;; Generated autoloads from progmodes/cc-styles.el
 
 (autoload 'c-set-style "cc-styles" "\
@@ -3186,7 +3162,7 @@
 
 ;;;***
 
-;;;### (autoloads nil "cc-vars" "progmodes/cc-vars.el" (19279 5151))
+;;;### (autoloads nil "cc-vars" "progmodes/cc-vars.el" (19578 56905))
 ;;; Generated autoloads from progmodes/cc-vars.el
 (put 'c-basic-offset 'safe-local-variable 'integerp)
 (put 'c-backslash-column 'safe-local-variable 'integerp)
@@ -3196,7 +3172,7 @@
 
 ;;;### (autoloads (ccl-execute-with-args check-ccl-program define-ccl-program
 ;;;;;;  declare-ccl-program ccl-dump ccl-compile) "ccl" "international/ccl.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19638 63299))
 ;;; Generated autoloads from international/ccl.el
 
 (autoload 'ccl-compile "ccl" "\
@@ -3354,7 +3330,7 @@
 	;; Normal arithmethic operators (same meaning as C code).
 	+ | - | * | / | %
 
-	;; Bitwize operators (same meaning as C code)
+	;; Bitwise operators (same meaning as C code)
 	| & | `|' | ^
 
 	;; Shifting operators (same meaning as C code)
@@ -3435,6 +3411,8 @@
 
 \(fn NAME CCL-PROGRAM &optional DOC)" nil (quote macro))
 
+(put 'define-ccl-program 'doc-string-elt '3)
+
 (autoload 'check-ccl-program "ccl" "\
 Check validity of CCL-PROGRAM.
 If CCL-PROGRAM is a symbol denoting a CCL program, return
@@ -3455,7 +3433,7 @@
 ;;;***
 
 ;;;### (autoloads (cfengine-mode) "cfengine" "progmodes/cfengine.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19595 20656))
 ;;; Generated autoloads from progmodes/cfengine.el
 
 (autoload 'cfengine-mode "cfengine" "\
@@ -3470,7 +3448,7 @@
 ;;;***
 
 ;;;### (autoloads (check-declare-directory check-declare-file) "check-declare"
-;;;;;;  "emacs-lisp/check-declare.el" (19279 5149))
+;;;;;;  "emacs-lisp/check-declare.el" (19379 23432))
 ;;; Generated autoloads from emacs-lisp/check-declare.el
 
 (autoload 'check-declare-file "check-declare" "\
@@ -3495,7 +3473,7 @@
 ;;;;;;  checkdoc-comments checkdoc-continue checkdoc-start checkdoc-current-buffer
 ;;;;;;  checkdoc-eval-current-buffer checkdoc-message-interactive
 ;;;;;;  checkdoc-interactive checkdoc checkdoc-list-of-strings-p)
-;;;;;;  "checkdoc" "emacs-lisp/checkdoc.el" (19279 5149))
+;;;;;;  "checkdoc" "emacs-lisp/checkdoc.el" (19682 26290))
 ;;; Generated autoloads from emacs-lisp/checkdoc.el
 (put 'checkdoc-force-docstrings-flag 'safe-local-variable 'booleanp)
 (put 'checkdoc-force-history-flag 'safe-local-variable 'booleanp)
@@ -3690,7 +3668,7 @@
 
 ;;;### (autoloads (pre-write-encode-hz post-read-decode-hz encode-hz-buffer
 ;;;;;;  encode-hz-region decode-hz-buffer decode-hz-region) "china-util"
-;;;;;;  "language/china-util.el" (19279 5150))
+;;;;;;  "language/china-util.el" (19379 23432))
 ;;; Generated autoloads from language/china-util.el
 
 (autoload 'decode-hz-region "china-util" "\
@@ -3728,7 +3706,7 @@
 ;;;***
 
 ;;;### (autoloads (command-history list-command-history repeat-matching-complex-command)
-;;;;;;  "chistory" "chistory.el" (19279 5148))
+;;;;;;  "chistory" "chistory.el" (19379 23432))
 ;;; Generated autoloads from chistory.el
 
 (autoload 'repeat-matching-complex-command "chistory" "\
@@ -3767,7 +3745,7 @@
 
 ;;;***
 
-;;;### (autoloads nil "cl" "emacs-lisp/cl.el" (19279 5149))
+;;;### (autoloads nil "cl" "emacs-lisp/cl.el" (19628 18012))
 ;;; Generated autoloads from emacs-lisp/cl.el
 
 (defvar custom-print-functions nil "\
@@ -3783,7 +3761,7 @@
 ;;;***
 
 ;;;### (autoloads (common-lisp-indent-function) "cl-indent" "emacs-lisp/cl-indent.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from emacs-lisp/cl-indent.el
 
 (autoload 'common-lisp-indent-function "cl-indent" "\
@@ -3862,7 +3840,7 @@
 ;;;***
 
 ;;;### (autoloads (c-macro-expand) "cmacexp" "progmodes/cmacexp.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from progmodes/cmacexp.el
 
 (autoload 'c-macro-expand "cmacexp" "\
@@ -3882,8 +3860,8 @@
 
 ;;;***
 
-;;;### (autoloads (run-scheme) "cmuscheme" "cmuscheme.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (run-scheme) "cmuscheme" "cmuscheme.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from cmuscheme.el
 
 (autoload 'run-scheme "cmuscheme" "\
@@ -3907,7 +3885,7 @@
 ;;;### (autoloads (comint-redirect-results-list-from-process comint-redirect-results-list
 ;;;;;;  comint-redirect-send-command-to-process comint-redirect-send-command
 ;;;;;;  comint-run make-comint make-comint-in-buffer) "comint" "comint.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19686 22639))
 ;;; Generated autoloads from comint.el
 
 (defvar comint-output-filter-functions '(comint-postoutput-scroll-to-bottom comint-watch-for-password-prompt) "\
@@ -3923,8 +3901,6 @@
 You can use `add-hook' to add functions to this list
 either globally or locally.")
 
-(define-obsolete-variable-alias 'comint-use-prompt-regexp-instead-of-fields 'comint-use-prompt-regexp "22.1")
-
 (autoload 'make-comint-in-buffer "comint" "\
 Make a Comint process NAME in BUFFER, running PROGRAM.
 If BUFFER is nil, it defaults to NAME surrounded by `*'s.
@@ -3937,6 +3913,8 @@
 
 If PROGRAM is a string, any more args are arguments to PROGRAM.
 
+Returns the (possibly newly created) process buffer.
+
 \(fn NAME BUFFER PROGRAM &optional STARTFILE &rest SWITCHES)" nil nil)
 
 (autoload 'make-comint "comint" "\
@@ -3951,6 +3929,8 @@
 
 If PROGRAM is a string, any more args are arguments to PROGRAM.
 
+Returns the (possibly newly created) process buffer.
+
 \(fn NAME PROGRAM &optional STARTFILE &rest SWITCHES)" nil nil)
 
 (autoload 'comint-run "comint" "\
@@ -3999,9 +3979,9 @@
 
 ;;;***
 
-;;;### (autoloads (compare-windows) "compare-w" "compare-w.el" (19279
-;;;;;;  5148))
-;;; Generated autoloads from compare-w.el
+;;;### (autoloads (compare-windows) "compare-w" "vc/compare-w.el"
+;;;;;;  (19478 26045))
+;;; Generated autoloads from vc/compare-w.el
 
 (autoload 'compare-windows "compare-w" "\
 Compare text in current window with text in next window.
@@ -4037,8 +4017,8 @@
 ;;;;;;  compilation-shell-minor-mode compilation-mode compilation-start
 ;;;;;;  compile compilation-disable-input compile-command compilation-search-path
 ;;;;;;  compilation-ask-about-save compilation-window-height compilation-start-hook
-;;;;;;  compilation-mode-hook) "compile" "progmodes/compile.el" (19375
-;;;;;;  49830))
+;;;;;;  compilation-mode-hook) "compile" "progmodes/compile.el" (19657
+;;;;;;  35339))
 ;;; Generated autoloads from progmodes/compile.el
 
 (defvar compilation-mode-hook nil "\
@@ -4211,54 +4191,10 @@
 
 \(fn N &optional RESET)" t nil)
 
-(add-to-list 'auto-mode-alist (cons (purecopy "\\.gcov\\'") 'compilation-mode))
-
-;;;***
-
-;;;### (autoloads (partial-completion-mode) "complete" "complete.el"
-;;;;;;  (19358 54001))
-;;; Generated autoloads from complete.el
-
-(defvar partial-completion-mode nil "\
-Non-nil if Partial-Completion mode is enabled.
-See the command `partial-completion-mode' for a description of this minor mode.
-Setting this variable directly does not take effect;
-either customize it (see the info node `Easy Customization')
-or call the function `partial-completion-mode'.")
-
-(custom-autoload 'partial-completion-mode "complete" nil)
-
-(autoload 'partial-completion-mode "complete" "\
-Toggle Partial Completion mode.
-With prefix ARG, turn Partial Completion mode on if ARG is positive.
-
-When Partial Completion mode is enabled, TAB (or M-TAB if `PC-meta-flag' is
-nil) is enhanced so that if some string is divided into words and each word is
-delimited by a character in `PC-word-delimiters', partial words are completed
-as much as possible and `*' characters are treated likewise in file names.
-
-For example, M-x p-c-m expands to M-x partial-completion-mode since no other
-command begins with that sequence of characters, and
-\\[find-file] f_b.c TAB might complete to foo_bar.c if that file existed and no
-other file in that directory begins with that sequence of characters.
-
-Unless `PC-disable-includes' is non-nil, the `<...>' sequence is interpreted
-specially in \\[find-file].  For example,
-\\[find-file] <sys/time.h> RET finds the file `/usr/include/sys/time.h'.
-See also the variable `PC-include-file-path'.
-
-Partial Completion mode extends the meaning of `completion-auto-help' (which
-see), so that if it is neither nil nor t, Emacs shows the `*Completions*'
-buffer only on the second attempt to complete.  That is, if TAB finds nothing
-to complete, the first TAB just says \"Next char not unique\" and the
-second TAB brings up the `*Completions*' buffer.
-
-\(fn &optional ARG)" t nil)
-
 ;;;***
 
 ;;;### (autoloads (dynamic-completion-mode) "completion" "completion.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from completion.el
 
 (defvar dynamic-completion-mode nil "\
@@ -4280,7 +4216,7 @@
 ;;;### (autoloads (conf-xdefaults-mode conf-ppd-mode conf-colon-mode
 ;;;;;;  conf-space-keywords conf-space-mode conf-javaprop-mode conf-windows-mode
 ;;;;;;  conf-unix-mode conf-mode) "conf-mode" "textmodes/conf-mode.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from textmodes/conf-mode.el
 
 (autoload 'conf-mode "conf-mode" "\
@@ -4436,7 +4372,7 @@
 ;;;***
 
 ;;;### (autoloads (shuffle-vector cookie-snarf cookie-insert cookie)
-;;;;;;  "cookie1" "play/cookie1.el" (19279 5151))
+;;;;;;  "cookie1" "play/cookie1.el" (19583 31640))
 ;;; Generated autoloads from play/cookie1.el
 
 (autoload 'cookie "cookie1" "\
@@ -4468,8 +4404,8 @@
 ;;;***
 
 ;;;### (autoloads (copyright-update-directory copyright copyright-fix-years
-;;;;;;  copyright-update) "copyright" "emacs-lisp/copyright.el" (19279
-;;;;;;  5149))
+;;;;;;  copyright-update) "copyright" "emacs-lisp/copyright.el" (19564
+;;;;;;  19367))
 ;;; Generated autoloads from emacs-lisp/copyright.el
 
 (autoload 'copyright-update "copyright" "\
@@ -4502,7 +4438,7 @@
 ;;;***
 
 ;;;### (autoloads (cperl-perldoc-at-point cperl-perldoc cperl-mode)
-;;;;;;  "cperl-mode" "progmodes/cperl-mode.el" (19279 5151))
+;;;;;;  "cperl-mode" "progmodes/cperl-mode.el" (19675 9114))
 ;;; Generated autoloads from progmodes/cperl-mode.el
 (put 'cperl-indent-level 'safe-local-variable 'integerp)
 (put 'cperl-brace-offset 'safe-local-variable 'integerp)
@@ -4701,7 +4637,7 @@
 ;;;***
 
 ;;;### (autoloads (cpp-parse-edit cpp-highlight-buffer) "cpp" "progmodes/cpp.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from progmodes/cpp.el
 
 (autoload 'cpp-highlight-buffer "cpp" "\
@@ -4720,7 +4656,7 @@
 ;;;***
 
 ;;;### (autoloads (crisp-mode crisp-mode) "crisp" "emulation/crisp.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19611 13362))
 ;;; Generated autoloads from emulation/crisp.el
 
 (defvar crisp-mode nil "\
@@ -4744,7 +4680,7 @@
 ;;;***
 
 ;;;### (autoloads (completing-read-multiple) "crm" "emacs-lisp/crm.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from emacs-lisp/crm.el
 
 (autoload 'completing-read-multiple "crm" "\
@@ -4779,10 +4715,9 @@
 
 ;;;***
 
-;;;### (autoloads (css-mode) "css-mode" "textmodes/css-mode.el" (19279
-;;;;;;  5152))
+;;;### (autoloads (css-mode) "css-mode" "textmodes/css-mode.el" (19612
+;;;;;;  6522))
 ;;; Generated autoloads from textmodes/css-mode.el
- (add-to-list 'auto-mode-alist (cons (purecopy "\\.css\\'") 'css-mode))
 
 (autoload 'css-mode "css-mode" "\
 Major mode to edit Cascading Style Sheets.
@@ -4792,7 +4727,7 @@
 ;;;***
 
 ;;;### (autoloads (cua-selection-mode cua-mode) "cua-base" "emulation/cua-base.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19649 27409))
 ;;; Generated autoloads from emulation/cua-base.el
 
 (defvar cua-mode nil "\
@@ -4851,7 +4786,7 @@
 ;;;;;;  customize-mode customize customize-save-variable customize-set-variable
 ;;;;;;  customize-set-value custom-menu-sort-alphabetically custom-buffer-sort-alphabetically
 ;;;;;;  custom-browse-sort-alphabetically) "cus-edit" "cus-edit.el"
-;;;;;;  (19356 10801))
+;;;;;;  (19642 16823))
 ;;; Generated autoloads from cus-edit.el
 
 (defvar custom-browse-sort-alphabetically nil "\
@@ -5153,20 +5088,36 @@
 
 ;;;***
 
-;;;### (autoloads (customize-create-theme) "cus-theme" "cus-theme.el"
-;;;;;;  (19279 5148))
+;;;### (autoloads (customize-themes describe-theme customize-create-theme)
+;;;;;;  "cus-theme" "cus-theme.el" (19642 16823))
 ;;; Generated autoloads from cus-theme.el
 
 (autoload 'customize-create-theme "cus-theme" "\
-Create a custom theme.
-
-\(fn)" t nil)
-
-;;;***
-
-;;;### (autoloads (cvs-status-mode) "cvs-status" "cvs-status.el"
-;;;;;;  (19279 5148))
-;;; Generated autoloads from cvs-status.el
+Create or edit a custom theme.
+THEME, if non-nil, should be an existing theme to edit.  If THEME
+is `user', provide an option to remove these as custom settings.
+BUFFER, if non-nil, should be a buffer to use; the default is
+named *Custom Theme*.
+
+\(fn &optional THEME BUFFER)" t nil)
+
+(autoload 'describe-theme "cus-theme" "\
+Display a description of the Custom theme THEME (a symbol).
+
+\(fn THEME)" t nil)
+
+(autoload 'customize-themes "cus-theme" "\
+Display a selectable list of Custom themes.
+When called from Lisp, BUFFER should be the buffer to use; if
+omitted, a buffer named *Custom Themes* is used.
+
+\(fn &optional BUFFER)" t nil)
+
+;;;***
+
+;;;### (autoloads (cvs-status-mode) "cvs-status" "vc/cvs-status.el"
+;;;;;;  (19474 38892))
+;;; Generated autoloads from vc/cvs-status.el
 
 (autoload 'cvs-status-mode "cvs-status" "\
 Mode used for cvs status output.
@@ -5176,7 +5127,7 @@
 ;;;***
 
 ;;;### (autoloads (global-cwarn-mode turn-on-cwarn-mode cwarn-mode)
-;;;;;;  "cwarn" "progmodes/cwarn.el" (19279 5151))
+;;;;;;  "cwarn" "progmodes/cwarn.el" (19578 56905))
 ;;; Generated autoloads from progmodes/cwarn.el
 
 (autoload 'cwarn-mode "cwarn" "\
@@ -5223,7 +5174,7 @@
 
 ;;;### (autoloads (standard-display-cyrillic-translit cyrillic-encode-alternativnyj-char
 ;;;;;;  cyrillic-encode-koi8-r-char) "cyril-util" "language/cyril-util.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from language/cyril-util.el
 
 (autoload 'cyrillic-encode-koi8-r-char "cyril-util" "\
@@ -5252,7 +5203,7 @@
 ;;;***
 
 ;;;### (autoloads (dabbrev-expand dabbrev-completion) "dabbrev" "dabbrev.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19551 10990))
 ;;; Generated autoloads from dabbrev.el
 (put 'dabbrev-case-fold-search 'risky-local-variable t)
 (put 'dabbrev-case-replace 'risky-local-variable t)
@@ -5268,7 +5219,7 @@
 function pointed out by `dabbrev-friend-buffer-function' to find the
 completions.
 
-If the prefix argument is 16 (which comes from \\[prefix-argument] \\[prefix-argument]),
+If the prefix argument is 16 (which comes from \\[universal-argument] \\[universal-argument]),
 then it searches *all* buffers.
 
 \(fn &optional ARG)" t nil)
@@ -5299,7 +5250,7 @@
 ;;;***
 
 ;;;### (autoloads (data-debug-new-buffer) "data-debug" "cedet/data-debug.el"
-;;;;;;  (19323 49698))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from cedet/data-debug.el
 
 (autoload 'data-debug-new-buffer "data-debug" "\
@@ -5309,22 +5260,22 @@
 
 ;;;***
 
-;;;### (autoloads (dbus-handle-event) "dbus" "net/dbus.el" (19345
-;;;;;;  41626))
+;;;### (autoloads (dbus-handle-event) "dbus" "net/dbus.el" (19665
+;;;;;;  17270))
 ;;; Generated autoloads from net/dbus.el
 
 (autoload 'dbus-handle-event "dbus" "\
 Handle events from the D-Bus.
 EVENT is a D-Bus event, see `dbus-check-event'.  HANDLER, being
 part of the event, is called with arguments ARGS.
-If the HANDLER returns an `dbus-error', it is propagated as return message.
+If the HANDLER returns a `dbus-error', it is propagated as return message.
 
 \(fn EVENT)" t nil)
 
 ;;;***
 
-;;;### (autoloads (dcl-mode) "dcl-mode" "progmodes/dcl-mode.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (dcl-mode) "dcl-mode" "progmodes/dcl-mode.el" (19669
+;;;;;;  58161))
 ;;; Generated autoloads from progmodes/dcl-mode.el
 
 (autoload 'dcl-mode "dcl-mode" "\
@@ -5451,7 +5402,7 @@
 ;;;***
 
 ;;;### (autoloads (cancel-debug-on-entry debug-on-entry debug) "debug"
-;;;;;;  "emacs-lisp/debug.el" (19279 5149))
+;;;;;;  "emacs-lisp/debug.el" (19580 5054))
 ;;; Generated autoloads from emacs-lisp/debug.el
 
 (setq debugger 'debug)
@@ -5495,7 +5446,7 @@
 ;;;***
 
 ;;;### (autoloads (decipher-mode decipher) "decipher" "play/decipher.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19671 21337))
 ;;; Generated autoloads from play/decipher.el
 
 (autoload 'decipher "decipher" "\
@@ -5524,8 +5475,8 @@
 ;;;***
 
 ;;;### (autoloads (delimit-columns-rectangle delimit-columns-region
-;;;;;;  delimit-columns-customize) "delim-col" "delim-col.el" (19323
-;;;;;;  49698))
+;;;;;;  delimit-columns-customize) "delim-col" "delim-col.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from delim-col.el
 
 (autoload 'delimit-columns-customize "delim-col" "\
@@ -5549,8 +5500,8 @@
 
 ;;;***
 
-;;;### (autoloads (delphi-mode) "delphi" "progmodes/delphi.el" (19279
-;;;;;;  38446))
+;;;### (autoloads (delphi-mode) "delphi" "progmodes/delphi.el" (19520
+;;;;;;  54552))
 ;;; Generated autoloads from progmodes/delphi.el
 
 (autoload 'delphi-mode "delphi" "\
@@ -5601,8 +5552,8 @@
 
 ;;;***
 
-;;;### (autoloads (delete-selection-mode) "delsel" "delsel.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (delete-selection-mode) "delsel" "delsel.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from delsel.el
 
 (defalias 'pending-delete-mode 'delete-selection-mode)
@@ -5631,7 +5582,7 @@
 ;;;***
 
 ;;;### (autoloads (derived-mode-init-mode-variables define-derived-mode)
-;;;;;;  "derived" "emacs-lisp/derived.el" (19279 5149))
+;;;;;;  "derived" "emacs-lisp/derived.el" (19578 56905))
 ;;; Generated autoloads from emacs-lisp/derived.el
 
 (autoload 'define-derived-mode "derived" "\
@@ -5685,6 +5636,8 @@
 
 \(fn CHILD PARENT NAME &optional DOCSTRING &rest BODY)" nil (quote macro))
 
+(put 'define-derived-mode 'doc-string-elt '4)
+
 (autoload 'derived-mode-init-mode-variables "derived" "\
 Initialize variables for a new MODE.
 Right now, if they don't already exist, set up a blank keymap, an
@@ -5696,7 +5649,7 @@
 ;;;***
 
 ;;;### (autoloads (describe-char describe-text-properties) "descr-text"
-;;;;;;  "descr-text.el" (19279 5148))
+;;;;;;  "descr-text.el" (19520 54552))
 ;;; Generated autoloads from descr-text.el
 
 (autoload 'describe-text-properties "descr-text" "\
@@ -5724,7 +5677,7 @@
 ;;;### (autoloads (desktop-revert desktop-save-in-desktop-dir desktop-change-dir
 ;;;;;;  desktop-load-default desktop-read desktop-remove desktop-save
 ;;;;;;  desktop-clear desktop-locals-to-save desktop-save-mode) "desktop"
-;;;;;;  "desktop.el" (19372 27330))
+;;;;;;  "desktop.el" (19589 20829))
 ;;; Generated autoloads from desktop.el
 
 (defvar desktop-save-mode nil "\
@@ -5908,7 +5861,7 @@
 
 ;;;### (autoloads (gnus-article-outlook-deuglify-article gnus-outlook-deuglify-article
 ;;;;;;  gnus-article-outlook-repair-attribution gnus-article-outlook-unwrap-lines)
-;;;;;;  "deuglify" "gnus/deuglify.el" (19279 5150))
+;;;;;;  "deuglify" "gnus/deuglify.el" (19583 31640))
 ;;; Generated autoloads from gnus/deuglify.el
 
 (autoload 'gnus-article-outlook-unwrap-lines "deuglify" "\
@@ -5941,7 +5894,7 @@
 ;;;***
 
 ;;;### (autoloads (diary-mode diary-mail-entries diary) "diary-lib"
-;;;;;;  "calendar/diary-lib.el" (19299 25154))
+;;;;;;  "calendar/diary-lib.el" (19619 63775))
 ;;; Generated autoloads from calendar/diary-lib.el
 
 (autoload 'diary "diary-lib" "\
@@ -5984,8 +5937,8 @@
 ;;;***
 
 ;;;### (autoloads (diff-backup diff diff-command diff-switches) "diff"
-;;;;;;  "diff.el" (19279 5148))
-;;; Generated autoloads from diff.el
+;;;;;;  "vc/diff.el" (19474 38892))
+;;; Generated autoloads from vc/diff.el
 
 (defvar diff-switches (purecopy "-c") "\
 A string or list of strings specifying switches to be passed to diff.")
@@ -6021,9 +5974,9 @@
 
 ;;;***
 
-;;;### (autoloads (diff-minor-mode diff-mode) "diff-mode" "diff-mode.el"
-;;;;;;  (19356 10801))
-;;; Generated autoloads from diff-mode.el
+;;;### (autoloads (diff-minor-mode diff-mode) "diff-mode" "vc/diff-mode.el"
+;;;;;;  (19547 59994))
+;;; Generated autoloads from vc/diff-mode.el
 
 (autoload 'diff-mode "diff-mode" "\
 Major mode for viewing/editing context diffs.
@@ -6050,7 +6003,7 @@
 
 ;;;***
 
-;;;### (autoloads (dig) "dig" "net/dig.el" (19279 5151))
+;;;### (autoloads (dig) "dig" "net/dig.el" (19634 57717))
 ;;; Generated autoloads from net/dig.el
 
 (autoload 'dig "dig" "\
@@ -6063,7 +6016,7 @@
 
 ;;;### (autoloads (dired-mode dired-auto-revert-buffer dired-noselect
 ;;;;;;  dired-other-frame dired-other-window dired dired-trivial-filenames
-;;;;;;  dired-listing-switches) "dired" "dired.el" (19313 15414))
+;;;;;;  dired-listing-switches) "dired" "dired.el" (19675 9114))
 ;;; Generated autoloads from dired.el
 
 (defvar dired-listing-switches (purecopy "-al") "\
@@ -6077,7 +6030,7 @@
 
 (custom-autoload 'dired-listing-switches "dired" t)
 
-(defvar dired-chown-program (purecopy (if (memq system-type '(hpux usg-unix-v irix linux gnu/linux cygwin)) "chown" (if (file-exists-p "/usr/sbin/chown") "/usr/sbin/chown" "/etc/chown"))) "\
+(defvar dired-chown-program (purecopy (if (memq system-type '(hpux usg-unix-v irix gnu/linux cygwin)) "chown" (if (file-exists-p "/usr/sbin/chown") "/usr/sbin/chown" "/etc/chown"))) "\
 Name of chown command (usually `chown' or `/etc/chown').")
 
 (defvar dired-trivial-filenames (purecopy "^\\.\\.?$\\|^#") "\
@@ -6208,7 +6161,7 @@
 ;;;***
 
 ;;;### (autoloads (dirtrack dirtrack-mode) "dirtrack" "dirtrack.el"
-;;;;;;  (19299 25154))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from dirtrack.el
 
 (autoload 'dirtrack-mode "dirtrack" "\
@@ -6234,8 +6187,8 @@
 
 ;;;***
 
-;;;### (autoloads (disassemble) "disass" "emacs-lisp/disass.el" (19279
-;;;;;;  5149))
+;;;### (autoloads (disassemble) "disass" "emacs-lisp/disass.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from emacs-lisp/disass.el
 
 (autoload 'disassemble "disass" "\
@@ -6249,124 +6202,8 @@
 
 ;;;***
 
-;;;### (autoloads (standard-display-european glyph-face glyph-char
-;;;;;;  make-glyph-code create-glyph standard-display-underline standard-display-graphic
-;;;;;;  standard-display-g1 standard-display-ascii standard-display-default
-;;;;;;  standard-display-8bit describe-current-display-table describe-display-table
-;;;;;;  set-display-table-slot display-table-slot make-display-table)
-;;;;;;  "disp-table" "disp-table.el" (19279 5148))
-;;; Generated autoloads from disp-table.el
-
-(autoload 'make-display-table "disp-table" "\
-Return a new, empty display table.
-
-\(fn)" nil nil)
-
-(autoload 'display-table-slot "disp-table" "\
-Return the value of the extra slot in DISPLAY-TABLE named SLOT.
-SLOT may be a number from 0 to 5 inclusive, or a slot name (symbol).
-Valid symbols are `truncation', `wrap', `escape', `control',
-`selective-display', and `vertical-border'.
-
-\(fn DISPLAY-TABLE SLOT)" nil nil)
-
-(autoload 'set-display-table-slot "disp-table" "\
-Set the value of the extra slot in DISPLAY-TABLE named SLOT to VALUE.
-SLOT may be a number from 0 to 5 inclusive, or a name (symbol).
-Valid symbols are `truncation', `wrap', `escape', `control',
-`selective-display', and `vertical-border'.
-
-\(fn DISPLAY-TABLE SLOT VALUE)" nil nil)
-
-(autoload 'describe-display-table "disp-table" "\
-Describe the display table DT in a help buffer.
-
-\(fn DT)" nil nil)
-
-(autoload 'describe-current-display-table "disp-table" "\
-Describe the display table in use in the selected window and buffer.
-
-\(fn)" t nil)
-
-(autoload 'standard-display-8bit "disp-table" "\
-Display characters in the range L to H literally.
-
-\(fn L H)" nil nil)
-
-(autoload 'standard-display-default "disp-table" "\
-Display characters in the range L to H using the default notation.
-
-\(fn L H)" nil nil)
-
-(autoload 'standard-display-ascii "disp-table" "\
-Display character C using printable string S.
-
-\(fn C S)" nil nil)
-
-(autoload 'standard-display-g1 "disp-table" "\
-Display character C as character SC in the g1 character set.
-This function assumes that your terminal uses the SO/SI characters;
-it is meaningless for an X frame.
-
-\(fn C SC)" nil nil)
-
-(autoload 'standard-display-graphic "disp-table" "\
-Display character C as character GC in graphics character set.
-This function assumes VT100-compatible escapes; it is meaningless for an
-X frame.
-
-\(fn C GC)" nil nil)
-
-(autoload 'standard-display-underline "disp-table" "\
-Display character C as character UC plus underlining.
-
-\(fn C UC)" nil nil)
-
-(autoload 'create-glyph "disp-table" "\
-Allocate a glyph code to display by sending STRING to the terminal.
-
-\(fn STRING)" nil nil)
-
-(autoload 'make-glyph-code "disp-table" "\
-Return a glyph code representing char CHAR with face FACE.
-
-\(fn CHAR &optional FACE)" nil nil)
-
-(autoload 'glyph-char "disp-table" "\
-Return the character of glyph code GLYPH.
-
-\(fn GLYPH)" nil nil)
-
-(autoload 'glyph-face "disp-table" "\
-Return the face of glyph code GLYPH, or nil if glyph has default face.
-
-\(fn GLYPH)" nil nil)
-
-(autoload 'standard-display-european "disp-table" "\
-Semi-obsolete way to toggle display of ISO 8859 European characters.
-
-This function is semi-obsolete; you probably don't need it, or else you
-probably should use `set-language-environment' or `set-locale-environment'.
-
-This function enables European character display if ARG is positive,
-disables it if negative.  Otherwise, it toggles European character display.
-
-When this mode is enabled, characters in the range of 160 to 255
-display not as octal escapes, but as accented characters.  Codes 146
-and 160 display as apostrophe and space, even though they are not the
-ASCII codes for apostrophe and space.
-
-Enabling European character display with this command noninteractively
-from Lisp code also selects Latin-1 as the language environment.
-This provides increased compatibility for users who call this function
-in `.emacs'.
-
-\(fn ARG)" nil nil)
-
-;;;***
-
 ;;;### (autoloads (dissociated-press) "dissociate" "play/dissociate.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from play/dissociate.el
 
 (autoload 'dissociated-press "dissociate" "\
@@ -6382,28 +6219,8 @@
 
 ;;;***
 
-;;;### (autoloads (dnd-protocol-alist) "dnd" "dnd.el" (19279 5148))
-;;; Generated autoloads from dnd.el
-
-(defvar dnd-protocol-alist `((,(purecopy "^file:///") . dnd-open-local-file) (,(purecopy "^file://") . dnd-open-file) (,(purecopy "^file:") . dnd-open-local-file) (,(purecopy "^\\(https?\\|ftp\\|file\\|nfs\\)://") . dnd-open-file)) "\
-The functions to call for different protocols when a drop is made.
-This variable is used by `dnd-handle-one-url' and `dnd-handle-file-name'.
-The list contains of (REGEXP . FUNCTION) pairs.
-The functions shall take two arguments, URL, which is the URL dropped and
-ACTION which is the action to be performed for the drop (move, copy, link,
-private or ask).
-If no match is found here, and the value of `browse-url-browser-function'
-is a pair of (REGEXP . FUNCTION), those regexps are tried for a match.
-If no match is found, the URL is inserted as text by calling `dnd-insert-text'.
-The function shall return the action done (move, copy, link or private)
-if some action was made, or nil if the URL is ignored.")
-
-(custom-autoload 'dnd-protocol-alist "dnd" t)
-
-;;;***
-
 ;;;### (autoloads (dns-mode-soa-increment-serial dns-mode) "dns-mode"
-;;;;;;  "textmodes/dns-mode.el" (19279 5152))
+;;;;;;  "textmodes/dns-mode.el" (19612 6522))
 ;;; Generated autoloads from textmodes/dns-mode.el
 
 (autoload 'dns-mode "dns-mode" "\
@@ -6423,12 +6240,11 @@
 Locate SOA record and increment the serial field.
 
 \(fn)" t nil)
-(add-to-list 'auto-mode-alist (purecopy '("\\.soa\\'" . dns-mode)))
 
 ;;;***
 
 ;;;### (autoloads (doc-view-bookmark-jump doc-view-minor-mode doc-view-mode
-;;;;;;  doc-view-mode-p) "doc-view" "doc-view.el" (19323 49698))
+;;;;;;  doc-view-mode-p) "doc-view" "doc-view.el" (19520 54552))
 ;;; Generated autoloads from doc-view.el
 
 (autoload 'doc-view-mode-p "doc-view" "\
@@ -6463,7 +6279,7 @@
 
 ;;;***
 
-;;;### (autoloads (doctor) "doctor" "play/doctor.el" (19279 5151))
+;;;### (autoloads (doctor) "doctor" "play/doctor.el" (19667 61332))
 ;;; Generated autoloads from play/doctor.el
 
 (autoload 'doctor "doctor" "\
@@ -6473,7 +6289,7 @@
 
 ;;;***
 
-;;;### (autoloads (double-mode) "double" "double.el" (19279 5148))
+;;;### (autoloads (double-mode) "double" "double.el" (19379 23432))
 ;;; Generated autoloads from double.el
 
 (autoload 'double-mode "double" "\
@@ -6488,7 +6304,7 @@
 
 ;;;***
 
-;;;### (autoloads (dunnet) "dunnet" "play/dunnet.el" (19279 5151))
+;;;### (autoloads (dunnet) "dunnet" "play/dunnet.el" (19379 23432))
 ;;; Generated autoloads from play/dunnet.el
 
 (autoload 'dunnet "dunnet" "\
@@ -6498,45 +6314,32 @@
 
 ;;;***
 
-;;;### (autoloads (gnus-earcon-display) "earcon" "gnus/earcon.el"
-;;;;;;  (19279 5150))
-;;; Generated autoloads from gnus/earcon.el
-
-(autoload 'gnus-earcon-display "earcon" "\
-Play sounds in message buffers.
-
-\(fn)" t nil)
-
-;;;***
-
 ;;;### (autoloads (easy-mmode-defsyntax easy-mmode-defmap easy-mmode-define-keymap
 ;;;;;;  define-globalized-minor-mode define-minor-mode) "easy-mmode"
-;;;;;;  "emacs-lisp/easy-mmode.el" (19279 5149))
+;;;;;;  "emacs-lisp/easy-mmode.el" (19658 41957))
 ;;; Generated autoloads from emacs-lisp/easy-mmode.el
 
 (defalias 'easy-mmode-define-minor-mode 'define-minor-mode)
 
 (autoload 'define-minor-mode "easy-mmode" "\
 Define a new minor mode MODE.
-This function defines the associated control variable MODE, keymap MODE-map,
-and toggle command MODE.
-
+This defines the control variable MODE and the toggle command MODE.
 DOC is the documentation for the mode toggle command.
+
 Optional INIT-VALUE is the initial value of the mode's variable.
 Optional LIGHTER is displayed in the modeline when the mode is on.
-Optional KEYMAP is the default (defvar) keymap bound to the mode keymap.
-  If it is a list, it is passed to `easy-mmode-define-keymap'
-  in order to build a valid keymap.  It's generally better to use
-  a separate MODE-map variable than to use this argument.
-The above three arguments can be skipped if keyword arguments are
-used (see below).
-
-BODY contains code to execute each time the mode is activated or deactivated.
-  It is executed after toggling the mode,
-  and before running the hook variable `MODE-hook'.
-  Before the actual body code, you can write keyword arguments (alternating
-  keywords and values).  These following keyword arguments are supported (other
-  keywords will be passed to `defcustom' if the minor mode is global):
+Optional KEYMAP is the default keymap bound to the mode keymap.
+  If non-nil, it should be a variable name (whose value is a keymap),
+  a keymap, or a list of arguments for `easy-mmode-define-keymap'.
+  If KEYMAP is a keymap or list, this also defines the variable MODE-map.
+
+BODY contains code to execute each time the mode is enabled or disabled.
+  It is executed after toggling the mode, and before running MODE-hook.
+  Before the actual body code, you can write keyword arguments, i.e.
+  alternating keywords and values.  These following special keywords
+  are supported (other keywords are passed to `defcustom' if the minor
+  mode is global):
+
 :group GROUP	Custom group name to use in all generated `defcustom' forms.
 		Defaults to MODE without the possible trailing \"-mode\".
 		Don't use this default group name unless you have written a
@@ -6548,6 +6351,12 @@
 :lighter SPEC	Same as the LIGHTER argument.
 :keymap MAP	Same as the KEYMAP argument.
 :require SYM	Same as in `defcustom'.
+:variable PLACE	The location (as can be used with `setf') to use instead
+		of the variable MODE to store the state of the mode.  PLACE
+		can also be of the form (GET . SET) where GET is an expression
+		that returns the current state and SET is a function that takes
+		a new state and sets it.  If you specify a :variable, this
+		function assumes it is defined elsewhere.
 
 For example, you could write
   (define-minor-mode foo-mode \"If enabled, foo on you!\"
@@ -6616,12 +6425,10 @@
 ;;;***
 
 ;;;### (autoloads (easy-menu-change easy-menu-create-menu easy-menu-do-define
-;;;;;;  easy-menu-define) "easymenu" "emacs-lisp/easymenu.el" (19279
-;;;;;;  5149))
+;;;;;;  easy-menu-define) "easymenu" "emacs-lisp/easymenu.el" (19580
+;;;;;;  5054))
 ;;; Generated autoloads from emacs-lisp/easymenu.el
 
-(put 'easy-menu-define 'lisp-indent-function 'defun)
-
 (autoload 'easy-menu-define "easymenu" "\
 Define a menu bar submenu in maps MAPS, according to MENU.
 
@@ -6730,6 +6537,8 @@
 
 \(fn SYMBOL MAPS DOC MENU)" nil (quote macro))
 
+(put 'easy-menu-define 'lisp-indent-function 'defun)
+
 (autoload 'easy-menu-do-define "easymenu" "\
 Not documented
 
@@ -6771,7 +6580,7 @@
 ;;;;;;  ebnf-eps-file ebnf-eps-directory ebnf-spool-region ebnf-spool-buffer
 ;;;;;;  ebnf-spool-file ebnf-spool-directory ebnf-print-region ebnf-print-buffer
 ;;;;;;  ebnf-print-file ebnf-print-directory ebnf-customize) "ebnf2ps"
-;;;;;;  "progmodes/ebnf2ps.el" (19279 5151))
+;;;;;;  "progmodes/ebnf2ps.el" (19669 58161))
 ;;; Generated autoloads from progmodes/ebnf2ps.el
 
 (autoload 'ebnf-customize "ebnf2ps" "\
@@ -7045,8 +6854,8 @@
 ;;;;;;  ebrowse-tags-find-declaration-other-window ebrowse-tags-find-definition
 ;;;;;;  ebrowse-tags-view-definition ebrowse-tags-find-declaration
 ;;;;;;  ebrowse-tags-view-declaration ebrowse-member-mode ebrowse-electric-choose-tree
-;;;;;;  ebrowse-tree-mode) "ebrowse" "progmodes/ebrowse.el" (19279
-;;;;;;  5151))
+;;;;;;  ebrowse-tree-mode) "ebrowse" "progmodes/ebrowse.el" (19669
+;;;;;;  58161))
 ;;; Generated autoloads from progmodes/ebrowse.el
 
 (autoload 'ebrowse-tree-mode "ebrowse" "\
@@ -7197,7 +7006,7 @@
 ;;;***
 
 ;;;### (autoloads (electric-buffer-list) "ebuff-menu" "ebuff-menu.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19669 58161))
 ;;; Generated autoloads from ebuff-menu.el
 
 (autoload 'electric-buffer-list "ebuff-menu" "\
@@ -7222,7 +7031,7 @@
 ;;;***
 
 ;;;### (autoloads (Electric-command-history-redo-expression) "echistory"
-;;;;;;  "echistory.el" (19279 5148))
+;;;;;;  "echistory.el" (19379 23432))
 ;;; Generated autoloads from echistory.el
 
 (autoload 'Electric-command-history-redo-expression "echistory" "\
@@ -7234,7 +7043,7 @@
 ;;;***
 
 ;;;### (autoloads (ecomplete-setup) "ecomplete" "gnus/ecomplete.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from gnus/ecomplete.el
 
 (autoload 'ecomplete-setup "ecomplete" "\
@@ -7244,7 +7053,7 @@
 
 ;;;***
 
-;;;### (autoloads (global-ede-mode) "ede" "cedet/ede.el" (19323 49698))
+;;;### (autoloads (global-ede-mode) "ede" "cedet/ede.el" (19662 54456))
 ;;; Generated autoloads from cedet/ede.el
 
 (defvar global-ede-mode nil "\
@@ -7270,7 +7079,7 @@
 
 ;;;### (autoloads (edebug-all-forms edebug-all-defs edebug-eval-top-level-form
 ;;;;;;  edebug-basic-spec edebug-all-forms edebug-all-defs) "edebug"
-;;;;;;  "emacs-lisp/edebug.el" (19279 5149))
+;;;;;;  "emacs-lisp/edebug.el" (19669 58161))
 ;;; Generated autoloads from emacs-lisp/edebug.el
 
 (defvar edebug-all-defs nil "\
@@ -7343,8 +7152,8 @@
 ;;;;;;  ediff-merge-directories-with-ancestor ediff-merge-directories
 ;;;;;;  ediff-directories3 ediff-directory-revisions ediff-directories
 ;;;;;;  ediff-buffers3 ediff-buffers ediff-backup ediff-current-file
-;;;;;;  ediff-files3 ediff-files) "ediff" "ediff.el" (19279 5148))
-;;; Generated autoloads from ediff.el
+;;;;;;  ediff-files3 ediff-files) "ediff" "vc/ediff.el" (19578 56905))
+;;; Generated autoloads from vc/ediff.el
 
 (autoload 'ediff-files "ediff" "\
 Run Ediff on a pair of files, FILE-A and FILE-B.
@@ -7574,9 +7383,9 @@
 
 ;;;***
 
-;;;### (autoloads (ediff-customize) "ediff-help" "ediff-help.el"
-;;;;;;  (19279 5148))
-;;; Generated autoloads from ediff-help.el
+;;;### (autoloads (ediff-customize) "ediff-help" "vc/ediff-help.el"
+;;;;;;  (19578 56905))
+;;; Generated autoloads from vc/ediff-help.el
 
 (autoload 'ediff-customize "ediff-help" "\
 Not documented
@@ -7585,9 +7394,9 @@
 
 ;;;***
 
-;;;### (autoloads (ediff-show-registry) "ediff-mult" "ediff-mult.el"
-;;;;;;  (19279 5148))
-;;; Generated autoloads from ediff-mult.el
+;;;### (autoloads (ediff-show-registry) "ediff-mult" "vc/ediff-mult.el"
+;;;;;;  (19578 56905))
+;;; Generated autoloads from vc/ediff-mult.el
 
 (autoload 'ediff-show-registry "ediff-mult" "\
 Display Ediff's registry.
@@ -7599,8 +7408,8 @@
 ;;;***
 
 ;;;### (autoloads (ediff-toggle-use-toolbar ediff-toggle-multiframe)
-;;;;;;  "ediff-util" "ediff-util.el" (19313 15414))
-;;; Generated autoloads from ediff-util.el
+;;;;;;  "ediff-util" "vc/ediff-util.el" (19665 17270))
+;;; Generated autoloads from vc/ediff-util.el
 
 (autoload 'ediff-toggle-multiframe "ediff-util" "\
 Switch from multiframe display to single-frame display and back.
@@ -7620,7 +7429,7 @@
 
 ;;;### (autoloads (format-kbd-macro read-kbd-macro edit-named-kbd-macro
 ;;;;;;  edit-last-kbd-macro edit-kbd-macro) "edmacro" "edmacro.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19634 57717))
 ;;; Generated autoloads from edmacro.el
 
 (defvar edmacro-eight-bits nil "\
@@ -7673,7 +7482,7 @@
 ;;;***
 
 ;;;### (autoloads (edt-emulation-on edt-set-scroll-margins) "edt"
-;;;;;;  "emulation/edt.el" (19281 39617))
+;;;;;;  "emulation/edt.el" (19675 9114))
 ;;; Generated autoloads from emulation/edt.el
 
 (autoload 'edt-set-scroll-margins "edt" "\
@@ -7691,7 +7500,7 @@
 ;;;***
 
 ;;;### (autoloads (electric-helpify with-electric-help) "ehelp" "ehelp.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19535 3923))
 ;;; Generated autoloads from ehelp.el
 
 (autoload 'with-electric-help "ehelp" "\
@@ -7716,7 +7525,7 @@
 
 When the user exits (with `electric-help-exit', or otherwise), the help
 buffer's window disappears (i.e., we use `save-window-excursion'), and
-BUFFER is put into default `major-mode' (or `fundamental-mode').
+BUFFER is put back into its original major mode.
 
 \(fn THUNK &optional BUFFER NOERASE MINHEIGHT)" nil nil)
 
@@ -7728,7 +7537,7 @@
 ;;;***
 
 ;;;### (autoloads (turn-on-eldoc-mode eldoc-mode eldoc-minor-mode-string)
-;;;;;;  "eldoc" "emacs-lisp/eldoc.el" (19279 5149))
+;;;;;;  "eldoc" "emacs-lisp/eldoc.el" (19461 3301))
 ;;; Generated autoloads from emacs-lisp/eldoc.el
 
 (defvar eldoc-minor-mode-string (purecopy " ElDoc") "\
@@ -7771,8 +7580,60 @@
 
 ;;;***
 
-;;;### (autoloads (elide-head) "elide-head" "elide-head.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (electric-layout-mode electric-pair-mode electric-indent-mode)
+;;;;;;  "electric" "electric.el" (19686 22639))
+;;; Generated autoloads from electric.el
+
+(defvar electric-indent-chars '(10) "\
+Characters that should cause automatic reindentation.")
+
+(defvar electric-indent-mode nil "\
+Non-nil if Electric-Indent mode is enabled.
+See the command `electric-indent-mode' for a description of this minor mode.
+Setting this variable directly does not take effect;
+either customize it (see the info node `Easy Customization')
+or call the function `electric-indent-mode'.")
+
+(custom-autoload 'electric-indent-mode "electric" nil)
+
+(autoload 'electric-indent-mode "electric" "\
+Automatically reindent lines of code when inserting particular chars.
+`electric-indent-chars' specifies the set of chars that should cause reindentation.
+
+\(fn &optional ARG)" t nil)
+
+(defvar electric-pair-mode nil "\
+Non-nil if Electric-Pair mode is enabled.
+See the command `electric-pair-mode' for a description of this minor mode.
+Setting this variable directly does not take effect;
+either customize it (see the info node `Easy Customization')
+or call the function `electric-pair-mode'.")
+
+(custom-autoload 'electric-pair-mode "electric" nil)
+
+(autoload 'electric-pair-mode "electric" "\
+Automatically pair-up parens when inserting an open paren.
+
+\(fn &optional ARG)" t nil)
+
+(defvar electric-layout-mode nil "\
+Non-nil if Electric-Layout mode is enabled.
+See the command `electric-layout-mode' for a description of this minor mode.
+Setting this variable directly does not take effect;
+either customize it (see the info node `Easy Customization')
+or call the function `electric-layout-mode'.")
+
+(custom-autoload 'electric-layout-mode "electric" nil)
+
+(autoload 'electric-layout-mode "electric" "\
+Automatically insert newlines around some chars.
+
+\(fn &optional ARG)" t nil)
+
+;;;***
+
+;;;### (autoloads (elide-head) "elide-head" "elide-head.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from elide-head.el
 
 (autoload 'elide-head "elide-head" "\
@@ -7789,7 +7650,7 @@
 
 ;;;### (autoloads (elint-initialize elint-defun elint-current-buffer
 ;;;;;;  elint-directory elint-file) "elint" "emacs-lisp/elint.el"
-;;;;;;  (19338 9840))
+;;;;;;  (19669 58161))
 ;;; Generated autoloads from emacs-lisp/elint.el
 
 (autoload 'elint-file "elint" "\
@@ -7825,8 +7686,8 @@
 ;;;***
 
 ;;;### (autoloads (elp-results elp-instrument-package elp-instrument-list
-;;;;;;  elp-instrument-function) "elp" "emacs-lisp/elp.el" (19279
-;;;;;;  5149))
+;;;;;;  elp-instrument-function) "elp" "emacs-lisp/elp.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from emacs-lisp/elp.el
 
 (autoload 'elp-instrument-function "elp" "\
@@ -7861,7 +7722,7 @@
 ;;;***
 
 ;;;### (autoloads (report-emacs-bug) "emacsbug" "mail/emacsbug.el"
-;;;;;;  (19365 25156))
+;;;;;;  (19639 5054))
 ;;; Generated autoloads from mail/emacsbug.el
 
 (autoload 'report-emacs-bug "emacsbug" "\
@@ -7876,8 +7737,8 @@
 ;;;;;;  emerge-revisions emerge-files-with-ancestor-remote emerge-files-remote
 ;;;;;;  emerge-files-with-ancestor-command emerge-files-command emerge-buffers-with-ancestor
 ;;;;;;  emerge-buffers emerge-files-with-ancestor emerge-files) "emerge"
-;;;;;;  "emerge.el" (19256 49601))
-;;; Generated autoloads from emerge.el
+;;;;;;  "vc/emerge.el" (19675 9114))
+;;; Generated autoloads from vc/emerge.el
 
 (autoload 'emerge-files "emerge" "\
 Run Emerge on two files.
@@ -7937,7 +7798,7 @@
 ;;;***
 
 ;;;### (autoloads (enriched-decode enriched-encode enriched-mode)
-;;;;;;  "enriched" "textmodes/enriched.el" (19279 5152))
+;;;;;;  "enriched" "textmodes/enriched.el" (19611 13362))
 ;;; Generated autoloads from textmodes/enriched.el
 
 (autoload 'enriched-mode "enriched" "\
@@ -7972,8 +7833,8 @@
 ;;;;;;  epa-sign-region epa-verify-cleartext-in-region epa-verify-region
 ;;;;;;  epa-decrypt-armor-in-region epa-decrypt-region epa-encrypt-file
 ;;;;;;  epa-sign-file epa-verify-file epa-decrypt-file epa-select-keys
-;;;;;;  epa-list-secret-keys epa-list-keys) "epa" "epa.el" (19279
-;;;;;;  5148))
+;;;;;;  epa-list-secret-keys epa-list-keys) "epa" "epa.el" (19675
+;;;;;;  9114))
 ;;; Generated autoloads from epa.el
 
 (autoload 'epa-list-keys "epa" "\
@@ -8146,7 +8007,7 @@
 ;;;***
 
 ;;;### (autoloads (epa-dired-do-encrypt epa-dired-do-sign epa-dired-do-verify
-;;;;;;  epa-dired-do-decrypt) "epa-dired" "epa-dired.el" (19279 5148))
+;;;;;;  epa-dired-do-decrypt) "epa-dired" "epa-dired.el" (19578 56905))
 ;;; Generated autoloads from epa-dired.el
 
 (autoload 'epa-dired-do-decrypt "epa-dired" "\
@@ -8172,7 +8033,7 @@
 ;;;***
 
 ;;;### (autoloads (epa-file-disable epa-file-enable epa-file-handler)
-;;;;;;  "epa-file" "epa-file.el" (19279 5148))
+;;;;;;  "epa-file" "epa-file.el" (19633 49761))
 ;;; Generated autoloads from epa-file.el
 
 (autoload 'epa-file-handler "epa-file" "\
@@ -8194,7 +8055,7 @@
 
 ;;;### (autoloads (epa-global-mail-mode epa-mail-import-keys epa-mail-encrypt
 ;;;;;;  epa-mail-sign epa-mail-verify epa-mail-decrypt epa-mail-mode)
-;;;;;;  "epa-mail" "epa-mail.el" (19279 5148))
+;;;;;;  "epa-mail" "epa-mail.el" (19655 16813))
 ;;; Generated autoloads from epa-mail.el
 
 (autoload 'epa-mail-mode "epa-mail" "\
@@ -8258,7 +8119,7 @@
 
 ;;;***
 
-;;;### (autoloads (epg-make-context) "epg" "epg.el" (19279 5148))
+;;;### (autoloads (epg-make-context) "epg" "epg.el" (19578 56905))
 ;;; Generated autoloads from epg.el
 
 (autoload 'epg-make-context "epg" "\
@@ -8269,7 +8130,7 @@
 ;;;***
 
 ;;;### (autoloads (epg-expand-group epg-check-configuration epg-configuration)
-;;;;;;  "epg-config" "epg-config.el" (19356 10801))
+;;;;;;  "epg-config" "epg-config.el" (19652 27168))
 ;;; Generated autoloads from epg-config.el
 
 (autoload 'epg-configuration "epg-config" "\
@@ -8290,7 +8151,7 @@
 ;;;***
 
 ;;;### (autoloads (erc-handle-irc-url erc erc-select-read-args) "erc"
-;;;;;;  "erc/erc.el" (19299 25154))
+;;;;;;  "erc/erc.el" (19578 56905))
 ;;; Generated autoloads from erc/erc.el
 
 (autoload 'erc-select-read-args "erc" "\
@@ -8332,33 +8193,33 @@
 
 ;;;***
 
-;;;### (autoloads nil "erc-autoaway" "erc/erc-autoaway.el" (19279
-;;;;;;  5150))
+;;;### (autoloads nil "erc-autoaway" "erc/erc-autoaway.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from erc/erc-autoaway.el
  (autoload 'erc-autoaway-mode "erc-autoaway")
 
 ;;;***
 
-;;;### (autoloads nil "erc-button" "erc/erc-button.el" (19279 5150))
+;;;### (autoloads nil "erc-button" "erc/erc-button.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-button.el
  (autoload 'erc-button-mode "erc-button" nil t)
 
 ;;;***
 
-;;;### (autoloads nil "erc-capab" "erc/erc-capab.el" (19279 5150))
+;;;### (autoloads nil "erc-capab" "erc/erc-capab.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-capab.el
  (autoload 'erc-capab-identify-mode "erc-capab" nil t)
 
 ;;;***
 
-;;;### (autoloads nil "erc-compat" "erc/erc-compat.el" (19279 5150))
+;;;### (autoloads nil "erc-compat" "erc/erc-compat.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-compat.el
  (autoload 'erc-define-minor-mode "erc-compat")
 
 ;;;***
 
 ;;;### (autoloads (erc-ctcp-query-DCC pcomplete/erc-mode/DCC erc-cmd-DCC)
-;;;;;;  "erc-dcc" "erc/erc-dcc.el" (19279 5150))
+;;;;;;  "erc-dcc" "erc/erc-dcc.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-dcc.el
  (autoload 'erc-dcc-mode "erc-dcc")
 
@@ -8391,7 +8252,7 @@
 ;;;;;;  erc-ezb-add-session erc-ezb-end-of-session-list erc-ezb-init-session-list
 ;;;;;;  erc-ezb-identify erc-ezb-notice-autodetect erc-ezb-lookup-action
 ;;;;;;  erc-ezb-get-login erc-cmd-ezb) "erc-ezbounce" "erc/erc-ezbounce.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from erc/erc-ezbounce.el
 
 (autoload 'erc-cmd-ezb "erc-ezbounce" "\
@@ -8453,8 +8314,8 @@
 
 ;;;***
 
-;;;### (autoloads (erc-fill) "erc-fill" "erc/erc-fill.el" (19279
-;;;;;;  5150))
+;;;### (autoloads (erc-fill) "erc-fill" "erc/erc-fill.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from erc/erc-fill.el
  (autoload 'erc-fill-mode "erc-fill" nil t)
 
@@ -8466,15 +8327,15 @@
 
 ;;;***
 
-;;;### (autoloads nil "erc-hecomplete" "erc/erc-hecomplete.el" (19279
-;;;;;;  5150))
+;;;### (autoloads nil "erc-hecomplete" "erc/erc-hecomplete.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from erc/erc-hecomplete.el
  (autoload 'erc-hecomplete-mode "erc-hecomplete" nil t)
 
 ;;;***
 
 ;;;### (autoloads (erc-identd-stop erc-identd-start) "erc-identd"
-;;;;;;  "erc/erc-identd.el" (19279 5150))
+;;;;;;  "erc/erc-identd.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-identd.el
  (autoload 'erc-identd-mode "erc-identd")
 
@@ -8496,7 +8357,7 @@
 ;;;***
 
 ;;;### (autoloads (erc-create-imenu-index) "erc-imenu" "erc/erc-imenu.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from erc/erc-imenu.el
 
 (autoload 'erc-create-imenu-index "erc-imenu" "\
@@ -8506,20 +8367,20 @@
 
 ;;;***
 
-;;;### (autoloads nil "erc-join" "erc/erc-join.el" (19279 5150))
+;;;### (autoloads nil "erc-join" "erc/erc-join.el" (19564 19367))
 ;;; Generated autoloads from erc/erc-join.el
  (autoload 'erc-autojoin-mode "erc-join" nil t)
 
 ;;;***
 
-;;;### (autoloads nil "erc-list" "erc/erc-list.el" (19279 5150))
+;;;### (autoloads nil "erc-list" "erc/erc-list.el" (19634 57717))
 ;;; Generated autoloads from erc/erc-list.el
  (autoload 'erc-list-mode "erc-list")
 
 ;;;***
 
 ;;;### (autoloads (erc-save-buffer-in-logs erc-logging-enabled) "erc-log"
-;;;;;;  "erc/erc-log.el" (19279 5150))
+;;;;;;  "erc/erc-log.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-log.el
  (autoload 'erc-log-mode "erc-log" nil t)
 
@@ -8551,7 +8412,7 @@
 ;;;### (autoloads (erc-delete-dangerous-host erc-add-dangerous-host
 ;;;;;;  erc-delete-keyword erc-add-keyword erc-delete-fool erc-add-fool
 ;;;;;;  erc-delete-pal erc-add-pal) "erc-match" "erc/erc-match.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from erc/erc-match.el
  (autoload 'erc-match-mode "erc-match")
 
@@ -8597,14 +8458,14 @@
 
 ;;;***
 
-;;;### (autoloads nil "erc-menu" "erc/erc-menu.el" (19279 5150))
+;;;### (autoloads nil "erc-menu" "erc/erc-menu.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-menu.el
  (autoload 'erc-menu-mode "erc-menu" nil t)
 
 ;;;***
 
 ;;;### (autoloads (erc-cmd-WHOLEFT) "erc-netsplit" "erc/erc-netsplit.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from erc/erc-netsplit.el
  (autoload 'erc-netsplit-mode "erc-netsplit")
 
@@ -8616,7 +8477,7 @@
 ;;;***
 
 ;;;### (autoloads (erc-server-select erc-determine-network) "erc-networks"
-;;;;;;  "erc/erc-networks.el" (19279 5150))
+;;;;;;  "erc/erc-networks.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-networks.el
 
 (autoload 'erc-determine-network "erc-networks" "\
@@ -8634,7 +8495,7 @@
 ;;;***
 
 ;;;### (autoloads (pcomplete/erc-mode/NOTIFY erc-cmd-NOTIFY) "erc-notify"
-;;;;;;  "erc/erc-notify.el" (19279 5150))
+;;;;;;  "erc/erc-notify.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-notify.el
  (autoload 'erc-notify-mode "erc-notify" nil t)
 
@@ -8652,33 +8513,33 @@
 
 ;;;***
 
-;;;### (autoloads nil "erc-page" "erc/erc-page.el" (19279 5150))
+;;;### (autoloads nil "erc-page" "erc/erc-page.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-page.el
  (autoload 'erc-page-mode "erc-page")
 
 ;;;***
 
-;;;### (autoloads nil "erc-pcomplete" "erc/erc-pcomplete.el" (19279
-;;;;;;  5150))
+;;;### (autoloads nil "erc-pcomplete" "erc/erc-pcomplete.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from erc/erc-pcomplete.el
  (autoload 'erc-completion-mode "erc-pcomplete" nil t)
 
 ;;;***
 
-;;;### (autoloads nil "erc-replace" "erc/erc-replace.el" (19279 5150))
+;;;### (autoloads nil "erc-replace" "erc/erc-replace.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-replace.el
  (autoload 'erc-replace-mode "erc-replace")
 
 ;;;***
 
-;;;### (autoloads nil "erc-ring" "erc/erc-ring.el" (19279 5150))
+;;;### (autoloads nil "erc-ring" "erc/erc-ring.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-ring.el
  (autoload 'erc-ring-mode "erc-ring" nil t)
 
 ;;;***
 
 ;;;### (autoloads (erc-nickserv-identify erc-nickserv-identify-mode)
-;;;;;;  "erc-services" "erc/erc-services.el" (19313 15414))
+;;;;;;  "erc-services" "erc/erc-services.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-services.el
  (autoload 'erc-services-mode "erc-services" nil t)
 
@@ -8695,14 +8556,14 @@
 
 ;;;***
 
-;;;### (autoloads nil "erc-sound" "erc/erc-sound.el" (19279 5150))
+;;;### (autoloads nil "erc-sound" "erc/erc-sound.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-sound.el
  (autoload 'erc-sound-mode "erc-sound")
 
 ;;;***
 
 ;;;### (autoloads (erc-speedbar-browser) "erc-speedbar" "erc/erc-speedbar.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from erc/erc-speedbar.el
 
 (autoload 'erc-speedbar-browser "erc-speedbar" "\
@@ -8713,21 +8574,21 @@
 
 ;;;***
 
-;;;### (autoloads nil "erc-spelling" "erc/erc-spelling.el" (19279
-;;;;;;  5150))
+;;;### (autoloads nil "erc-spelling" "erc/erc-spelling.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from erc/erc-spelling.el
  (autoload 'erc-spelling-mode "erc-spelling" nil t)
 
 ;;;***
 
-;;;### (autoloads nil "erc-stamp" "erc/erc-stamp.el" (19279 5150))
+;;;### (autoloads nil "erc-stamp" "erc/erc-stamp.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-stamp.el
  (autoload 'erc-timestamp-mode "erc-stamp" nil t)
 
 ;;;***
 
 ;;;### (autoloads (erc-track-minor-mode) "erc-track" "erc/erc-track.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from erc/erc-track.el
 
 (defvar erc-track-minor-mode nil "\
@@ -8750,7 +8611,7 @@
 ;;;***
 
 ;;;### (autoloads (erc-truncate-buffer erc-truncate-buffer-to-size)
-;;;;;;  "erc-truncate" "erc/erc-truncate.el" (19279 5150))
+;;;;;;  "erc-truncate" "erc/erc-truncate.el" (19379 23432))
 ;;; Generated autoloads from erc/erc-truncate.el
  (autoload 'erc-truncate-mode "erc-truncate" nil t)
 
@@ -8770,7 +8631,7 @@
 ;;;***
 
 ;;;### (autoloads (erc-xdcc-add-file) "erc-xdcc" "erc/erc-xdcc.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19638 63299))
 ;;; Generated autoloads from erc/erc-xdcc.el
  (autoload 'erc-xdcc-mode "erc-xdcc")
 
@@ -8781,8 +8642,8 @@
 
 ;;;***
 
-;;;### (autoloads (eshell-mode) "esh-mode" "eshell/esh-mode.el" (19279
-;;;;;;  5150))
+;;;### (autoloads (eshell-mode) "esh-mode" "eshell/esh-mode.el" (19614
+;;;;;;  29799))
 ;;; Generated autoloads from eshell/esh-mode.el
 
 (autoload 'eshell-mode "esh-mode" "\
@@ -8794,8 +8655,8 @@
 
 ;;;***
 
-;;;### (autoloads (eshell-test) "esh-test" "eshell/esh-test.el" (19279
-;;;;;;  5150))
+;;;### (autoloads (eshell-test) "esh-test" "eshell/esh-test.el" (19675
+;;;;;;  9114))
 ;;; Generated autoloads from eshell/esh-test.el
 
 (autoload 'eshell-test "esh-test" "\
@@ -8806,7 +8667,7 @@
 ;;;***
 
 ;;;### (autoloads (eshell-command-result eshell-command eshell) "eshell"
-;;;;;;  "eshell/eshell.el" (19330 37505))
+;;;;;;  "eshell/eshell.el" (19451 41962))
 ;;; Generated autoloads from eshell/eshell.el
 
 (autoload 'eshell "eshell" "\
@@ -8847,7 +8708,7 @@
 ;;;;;;  visit-tags-table tags-table-mode find-tag-default-function
 ;;;;;;  find-tag-hook tags-add-tables tags-compression-info-list
 ;;;;;;  tags-table-list tags-case-fold-search) "etags" "progmodes/etags.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from progmodes/etags.el
 
 (defvar tags-file-name nil "\
@@ -8856,6 +8717,7 @@
 If you set this variable, do not also set `tags-table-list'.
 Use the `etags' program to make a tags table file.")
  (put 'tags-file-name 'variable-interactive (purecopy "fVisit tags table: "))
+ (put 'tags-file-name 'safe-local-variable 'stringp)
 
 (defvar tags-case-fold-search 'default "\
 *Whether tags operations should be case-sensitive.
@@ -8873,7 +8735,7 @@
 
 (custom-autoload 'tags-table-list "etags" t)
 
-(defvar tags-compression-info-list (purecopy '("" ".Z" ".bz2" ".gz" ".tgz")) "\
+(defvar tags-compression-info-list (purecopy '("" ".Z" ".bz2" ".gz" ".xz" ".tgz")) "\
 *List of extensions tried by etags when jka-compr is used.
 An empty string means search the non-compressed file.
 These extensions will be tried only if jka-compr was activated
@@ -8942,6 +8804,11 @@
 without directory names.
 
 \(fn)" nil nil)
+ (defun tags-completion-at-point-function ()
+  (if (or tags-table-list tags-file-name)
+      (progn
+        (load "etags")
+        (tags-completion-at-point-function))))
 
 (autoload 'find-tag-noselect "etags" "\
 Find tag (in current tags table) whose name contains TAGNAME.
@@ -9155,7 +9022,7 @@
 ;;;;;;  ethio-fidel-to-sera-marker ethio-fidel-to-sera-region ethio-fidel-to-sera-buffer
 ;;;;;;  ethio-sera-to-fidel-marker ethio-sera-to-fidel-region ethio-sera-to-fidel-buffer
 ;;;;;;  setup-ethiopic-environment-internal) "ethio-util" "language/ethio-util.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19451 41962))
 ;;; Generated autoloads from language/ethio-util.el
 
 (autoload 'setup-ethiopic-environment-internal "ethio-util" "\
@@ -9325,7 +9192,7 @@
 
 ;;;### (autoloads (eudc-load-eudc eudc-query-form eudc-expand-inline
 ;;;;;;  eudc-get-phone eudc-get-email eudc-set-server) "eudc" "net/eudc.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from net/eudc.el
 
 (autoload 'eudc-set-server "eudc" "\
@@ -9381,7 +9248,7 @@
 
 ;;;### (autoloads (eudc-display-jpeg-as-button eudc-display-jpeg-inline
 ;;;;;;  eudc-display-sound eudc-display-mail eudc-display-url eudc-display-generic-binary)
-;;;;;;  "eudc-bob" "net/eudc-bob.el" (19279 5151))
+;;;;;;  "eudc-bob" "net/eudc-bob.el" (19578 56905))
 ;;; Generated autoloads from net/eudc-bob.el
 
 (autoload 'eudc-display-generic-binary "eudc-bob" "\
@@ -9417,7 +9284,7 @@
 ;;;***
 
 ;;;### (autoloads (eudc-try-bbdb-insert eudc-insert-record-at-point-into-bbdb)
-;;;;;;  "eudc-export" "net/eudc-export.el" (19279 5151))
+;;;;;;  "eudc-export" "net/eudc-export.el" (19578 56905))
 ;;; Generated autoloads from net/eudc-export.el
 
 (autoload 'eudc-insert-record-at-point-into-bbdb "eudc-export" "\
@@ -9434,7 +9301,7 @@
 ;;;***
 
 ;;;### (autoloads (eudc-edit-hotlist) "eudc-hotlist" "net/eudc-hotlist.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19634 57717))
 ;;; Generated autoloads from net/eudc-hotlist.el
 
 (autoload 'eudc-edit-hotlist "eudc-hotlist" "\
@@ -9444,8 +9311,8 @@
 
 ;;;***
 
-;;;### (autoloads (ewoc-create) "ewoc" "emacs-lisp/ewoc.el" (19279
-;;;;;;  5149))
+;;;### (autoloads (ewoc-create) "ewoc" "emacs-lisp/ewoc.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from emacs-lisp/ewoc.el
 
 (autoload 'ewoc-create "ewoc" "\
@@ -9474,7 +9341,7 @@
 ;;;### (autoloads (executable-make-buffer-file-executable-if-script-p
 ;;;;;;  executable-self-display executable-set-magic executable-interpret
 ;;;;;;  executable-command-find-posix-p) "executable" "progmodes/executable.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from progmodes/executable.el
 
 (autoload 'executable-command-find-posix-p "executable" "\
@@ -9517,7 +9384,7 @@
 
 ;;;### (autoloads (expand-jump-to-next-slot expand-jump-to-previous-slot
 ;;;;;;  expand-abbrev-hook expand-add-abbrevs) "expand" "expand.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19451 41962))
 ;;; Generated autoloads from expand.el
 
 (autoload 'expand-add-abbrevs "expand" "\
@@ -9566,7 +9433,7 @@
 
 ;;;***
 
-;;;### (autoloads (f90-mode) "f90" "progmodes/f90.el" (19326 6129))
+;;;### (autoloads (f90-mode) "f90" "progmodes/f90.el" (19652 27168))
 ;;; Generated autoloads from progmodes/f90.el
 
 (autoload 'f90-mode "f90" "\
@@ -9632,8 +9499,8 @@
 ;;;### (autoloads (variable-pitch-mode buffer-face-toggle buffer-face-set
 ;;;;;;  buffer-face-mode text-scale-adjust text-scale-decrease text-scale-increase
 ;;;;;;  text-scale-set face-remap-set-base face-remap-reset-base
-;;;;;;  face-remap-add-relative) "face-remap" "face-remap.el" (19358
-;;;;;;  54001))
+;;;;;;  face-remap-add-relative) "face-remap" "face-remap.el" (19652
+;;;;;;  50311))
 ;;; Generated autoloads from face-remap.el
 
 (autoload 'face-remap-add-relative "face-remap" "\
@@ -9773,7 +9640,7 @@
 
 ;;;### (autoloads (feedmail-queue-reminder feedmail-run-the-queue
 ;;;;;;  feedmail-run-the-queue-global-prompt feedmail-run-the-queue-no-prompts
-;;;;;;  feedmail-send-it) "feedmail" "mail/feedmail.el" (19256 49601))
+;;;;;;  feedmail-send-it) "feedmail" "mail/feedmail.el" (19611 13362))
 ;;; Generated autoloads from mail/feedmail.el
 
 (autoload 'feedmail-send-it "feedmail" "\
@@ -9827,7 +9694,7 @@
 ;;;***
 
 ;;;### (autoloads (ffap-bindings dired-at-point ffap-at-mouse ffap-menu
-;;;;;;  find-file-at-point ffap-next) "ffap" "ffap.el" (19321 4517))
+;;;;;;  find-file-at-point ffap-next) "ffap" "ffap.el" (19379 23432))
 ;;; Generated autoloads from ffap.el
 
 (autoload 'ffap-next "ffap" "\
@@ -9891,7 +9758,7 @@
 ;;;### (autoloads (file-cache-minibuffer-complete file-cache-add-directory-recursively
 ;;;;;;  file-cache-add-directory-using-locate file-cache-add-directory-using-find
 ;;;;;;  file-cache-add-file file-cache-add-directory-list file-cache-add-directory)
-;;;;;;  "filecache" "filecache.el" (19279 5148))
+;;;;;;  "filecache" "filecache.el" (19675 9114))
 ;;; Generated autoloads from filecache.el
 
 (autoload 'file-cache-add-directory "filecache" "\
@@ -9904,8 +9771,8 @@
 (autoload 'file-cache-add-directory-list "filecache" "\
 Add DIRECTORY-LIST (a list of directory names) to the file cache.
 If the optional REGEXP argument is non-nil, only files which match it
-will be added to the cache. Note that the REGEXP is applied to the files
-in each directory, not to the directory list itself.
+will be added to the cache.  Note that the REGEXP is applied to the
+files in each directory, not to the directory list itself.
 
 \(fn DIRECTORY-LIST &optional REGEXP)" t nil)
 
@@ -9928,10 +9795,10 @@
 
 (autoload 'file-cache-add-directory-recursively "filecache" "\
 Adds DIR and any subdirectories to the file-cache.
-This function does not use any external programs
+This function does not use any external programs.
 If the optional REGEXP argument is non-nil, only files which match it
-will be added to the cache. Note that the REGEXP is applied to the files
-in each directory, not to the directory list itself.
+will be added to the cache.  Note that the REGEXP is applied to the
+files in each directory, not to the directory list itself.
 
 \(fn DIR &optional REGEXP)" t nil)
 
@@ -9951,7 +9818,7 @@
 ;;;;;;  copy-file-locals-to-dir-locals delete-dir-local-variable
 ;;;;;;  add-dir-local-variable delete-file-local-variable-prop-line
 ;;;;;;  add-file-local-variable-prop-line delete-file-local-variable
-;;;;;;  add-file-local-variable) "files-x" "files-x.el" (19279 5148))
+;;;;;;  add-file-local-variable) "files-x" "files-x.el" (19578 56905))
 ;;; Generated autoloads from files-x.el
 
 (autoload 'add-file-local-variable "files-x" "\
@@ -10016,8 +9883,8 @@
 
 ;;;***
 
-;;;### (autoloads (filesets-init) "filesets" "filesets.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (filesets-init) "filesets" "filesets.el" (19612
+;;;;;;  6522))
 ;;; Generated autoloads from filesets.el
 
 (autoload 'filesets-init "filesets" "\
@@ -10028,7 +9895,7 @@
 
 ;;;***
 
-;;;### (autoloads (find-cmd) "find-cmd" "find-cmd.el" (19279 38446))
+;;;### (autoloads (find-cmd) "find-cmd" "find-cmd.el" (19379 23432))
 ;;; Generated autoloads from find-cmd.el
 
 (autoload 'find-cmd "find-cmd" "\
@@ -10049,7 +9916,7 @@
 
 ;;;### (autoloads (find-grep-dired find-name-dired find-dired find-grep-options
 ;;;;;;  find-ls-subdir-switches find-ls-option) "find-dired" "find-dired.el"
-;;;;;;  (19375 49830))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from find-dired.el
 
 (defvar find-ls-option (if (eq system-type 'berkeley-unix) (purecopy '("-ls" . "-gilsb")) (purecopy '("-exec ls -ld {} \\;" . "-ld"))) "\
@@ -10110,7 +9977,7 @@
 
 ;;;### (autoloads (ff-mouse-find-other-file-other-window ff-mouse-find-other-file
 ;;;;;;  ff-find-other-file ff-get-other-file) "find-file" "find-file.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from find-file.el
 
 (defvar ff-special-constructs `((,(purecopy "^#\\s *\\(include\\|import\\)\\s +[<\"]\\(.*\\)[>\"]") lambda nil (buffer-substring (match-beginning 2) (match-end 2)))) "\
@@ -10204,7 +10071,7 @@
 ;;;;;;  find-variable find-variable-noselect find-function-other-frame
 ;;;;;;  find-function-other-window find-function find-function-noselect
 ;;;;;;  find-function-search-for-symbol find-library) "find-func"
-;;;;;;  "emacs-lisp/find-func.el" (19279 5149))
+;;;;;;  "emacs-lisp/find-func.el" (19649 27409))
 ;;; Generated autoloads from emacs-lisp/find-func.el
 
 (autoload 'find-library "find-func" "\
@@ -10359,7 +10226,7 @@
 ;;;***
 
 ;;;### (autoloads (find-lisp-find-dired-filter find-lisp-find-dired-subdirectories
-;;;;;;  find-lisp-find-dired) "find-lisp" "find-lisp.el" (19279 5148))
+;;;;;;  find-lisp-find-dired) "find-lisp" "find-lisp.el" (19379 23432))
 ;;; Generated autoloads from find-lisp.el
 
 (autoload 'find-lisp-find-dired "find-lisp" "\
@@ -10380,7 +10247,7 @@
 ;;;***
 
 ;;;### (autoloads (finder-by-keyword finder-commentary finder-list-keywords)
-;;;;;;  "finder" "finder.el" (19368 35187))
+;;;;;;  "finder" "finder.el" (19662 54456))
 ;;; Generated autoloads from finder.el
 
 (autoload 'finder-list-keywords "finder" "\
@@ -10402,7 +10269,7 @@
 ;;;***
 
 ;;;### (autoloads (enable-flow-control-on enable-flow-control) "flow-ctrl"
-;;;;;;  "flow-ctrl.el" (19279 5148))
+;;;;;;  "flow-ctrl.el" (19379 23432))
 ;;; Generated autoloads from flow-ctrl.el
 
 (autoload 'enable-flow-control "flow-ctrl" "\
@@ -10424,7 +10291,7 @@
 ;;;***
 
 ;;;### (autoloads (fill-flowed fill-flowed-encode) "flow-fill" "gnus/flow-fill.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19606 36461))
 ;;; Generated autoloads from gnus/flow-fill.el
 
 (autoload 'fill-flowed-encode "flow-fill" "\
@@ -10440,7 +10307,7 @@
 ;;;***
 
 ;;;### (autoloads (flymake-mode-off flymake-mode-on flymake-mode)
-;;;;;;  "flymake" "progmodes/flymake.el" (19299 25155))
+;;;;;;  "flymake" "progmodes/flymake.el" (19671 21337))
 ;;; Generated autoloads from progmodes/flymake.el
 
 (autoload 'flymake-mode "flymake" "\
@@ -10464,7 +10331,7 @@
 
 ;;;### (autoloads (flyspell-buffer flyspell-region flyspell-mode-off
 ;;;;;;  turn-off-flyspell turn-on-flyspell flyspell-mode flyspell-prog-mode)
-;;;;;;  "flyspell" "textmodes/flyspell.el" (19370 36541))
+;;;;;;  "flyspell" "textmodes/flyspell.el" (19682 26290))
 ;;; Generated autoloads from textmodes/flyspell.el
 
 (autoload 'flyspell-prog-mode "flyspell" "\
@@ -10534,7 +10401,7 @@
 
 ;;;### (autoloads (follow-delete-other-windows-and-split follow-mode
 ;;;;;;  turn-off-follow-mode turn-on-follow-mode) "follow" "follow.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from follow.el
 
 (autoload 'turn-on-follow-mode "follow" "\
@@ -10607,8 +10474,8 @@
 
 ;;;***
 
-;;;### (autoloads (footnote-mode) "footnote" "mail/footnote.el" (19279
-;;;;;;  5150))
+;;;### (autoloads (footnote-mode) "footnote" "mail/footnote.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from mail/footnote.el
 
 (autoload 'footnote-mode "footnote" "\
@@ -10622,7 +10489,7 @@
 ;;;***
 
 ;;;### (autoloads (forms-find-file-other-window forms-find-file forms-mode)
-;;;;;;  "forms" "forms.el" (19279 5148))
+;;;;;;  "forms" "forms.el" (19397 4695))
 ;;; Generated autoloads from forms.el
 
 (autoload 'forms-mode "forms" "\
@@ -10659,7 +10526,7 @@
 ;;;***
 
 ;;;### (autoloads (fortran-mode) "fortran" "progmodes/fortran.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from progmodes/fortran.el
 
 (autoload 'fortran-mode "fortran" "\
@@ -10737,7 +10604,7 @@
 ;;;***
 
 ;;;### (autoloads (fortune fortune-to-signature fortune-compile fortune-from-region
-;;;;;;  fortune-add-fortune) "fortune" "play/fortune.el" (19279 5151))
+;;;;;;  fortune-add-fortune) "fortune" "play/fortune.el" (19661 45226))
 ;;; Generated autoloads from play/fortune.el
 
 (autoload 'fortune-add-fortune "fortune" "\
@@ -10776,7 +10643,6 @@
 
 (autoload 'fortune "fortune" "\
 Display a fortune cookie.
-
 If called with a prefix asks for the FILE to choose the fortune from,
 otherwise uses the value of `fortune-file'.  If you want to have fortune
 choose from a set of files in a directory, call interactively with prefix
@@ -10787,7 +10653,7 @@
 ;;;***
 
 ;;;### (autoloads (gdb gdb-enable-debug) "gdb-mi" "progmodes/gdb-mi.el"
-;;;;;;  (19375 49830))
+;;;;;;  (19613 57681))
 ;;; Generated autoloads from progmodes/gdb-mi.el
 
 (defvar gdb-enable-debug nil "\
@@ -10848,8 +10714,8 @@
 ;;;***
 
 ;;;### (autoloads (generic-make-keywords-list generic-mode generic-mode-internal
-;;;;;;  define-generic-mode) "generic" "emacs-lisp/generic.el" (19279
-;;;;;;  5149))
+;;;;;;  define-generic-mode) "generic" "emacs-lisp/generic.el" (19578
+;;;;;;  56905))
 ;;; Generated autoloads from emacs-lisp/generic.el
 
 (defvar generic-mode-list nil "\
@@ -10893,6 +10759,8 @@
 
 \(fn MODE COMMENT-LIST KEYWORD-LIST FONT-LOCK-LIST AUTO-MODE-LIST FUNCTION-LIST &optional DOCSTRING)" nil (quote macro))
 
+(put 'define-generic-mode 'lisp-indent-function '1)
+
 (autoload 'generic-mode-internal "generic" "\
 Go into the generic mode MODE.
 
@@ -10924,7 +10792,7 @@
 ;;;***
 
 ;;;### (autoloads (glasses-mode) "glasses" "progmodes/glasses.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from progmodes/glasses.el
 
 (autoload 'glasses-mode "glasses" "\
@@ -10938,7 +10806,7 @@
 
 ;;;### (autoloads (gmm-tool-bar-from-list gmm-widget-p gmm-error
 ;;;;;;  gmm-message gmm-regexp-concat) "gmm-utils" "gnus/gmm-utils.el"
-;;;;;;  (19365 25156))
+;;;;;;  (19623 61514))
 ;;; Generated autoloads from gnus/gmm-utils.el
 
 (autoload 'gmm-regexp-concat "gmm-utils" "\
@@ -10993,7 +10861,7 @@
 ;;;***
 
 ;;;### (autoloads (gnus gnus-other-frame gnus-slave gnus-no-server
-;;;;;;  gnus-slave-no-server) "gnus" "gnus/gnus.el" (19279 5150))
+;;;;;;  gnus-slave-no-server) "gnus" "gnus/gnus.el" (19682 26290))
 ;;; Generated autoloads from gnus/gnus.el
 (when (fboundp 'custom-autoload)
  (custom-autoload 'gnus-select-method "gnus"))
@@ -11046,7 +10914,7 @@
 ;;;;;;  gnus-agent-get-undownloaded-list gnus-agent-delete-group
 ;;;;;;  gnus-agent-rename-group gnus-agent-possibly-save-gcc gnus-agentize
 ;;;;;;  gnus-slave-unplugged gnus-plugged gnus-unplugged) "gnus-agent"
-;;;;;;  "gnus/gnus-agent.el" (19368 35187))
+;;;;;;  "gnus/gnus-agent.el" (19682 26290))
 ;;; Generated autoloads from gnus/gnus-agent.el
 
 (autoload 'gnus-unplugged "gnus-agent" "\
@@ -11137,7 +11005,7 @@
 ;;;***
 
 ;;;### (autoloads (gnus-article-prepare-display) "gnus-art" "gnus/gnus-art.el"
-;;;;;;  (19368 35187))
+;;;;;;  (19686 22639))
 ;;; Generated autoloads from gnus/gnus-art.el
 
 (autoload 'gnus-article-prepare-display "gnus-art" "\
@@ -11147,19 +11015,8 @@
 
 ;;;***
 
-;;;### (autoloads (gnus-audio-play) "gnus-audio" "gnus/gnus-audio.el"
-;;;;;;  (19279 5150))
-;;; Generated autoloads from gnus/gnus-audio.el
-
-(autoload 'gnus-audio-play "gnus-audio" "\
-Play a sound FILE through the speaker.
-
-\(fn FILE)" t nil)
-
-;;;***
-
 ;;;### (autoloads (gnus-bookmark-bmenu-list gnus-bookmark-jump gnus-bookmark-set)
-;;;;;;  "gnus-bookmark" "gnus/gnus-bookmark.el" (19279 5150))
+;;;;;;  "gnus-bookmark" "gnus/gnus-bookmark.el" (19671 21337))
 ;;; Generated autoloads from gnus/gnus-bookmark.el
 
 (autoload 'gnus-bookmark-set "gnus-bookmark" "\
@@ -11184,8 +11041,8 @@
 
 ;;;### (autoloads (gnus-cache-delete-group gnus-cache-rename-group
 ;;;;;;  gnus-cache-generate-nov-databases gnus-cache-generate-active
-;;;;;;  gnus-jog-cache) "gnus-cache" "gnus/gnus-cache.el" (19279
-;;;;;;  5150))
+;;;;;;  gnus-jog-cache) "gnus-cache" "gnus/gnus-cache.el" (19635
+;;;;;;  41857))
 ;;; Generated autoloads from gnus/gnus-cache.el
 
 (autoload 'gnus-jog-cache "gnus-cache" "\
@@ -11227,7 +11084,7 @@
 ;;;***
 
 ;;;### (autoloads (gnus-delay-initialize gnus-delay-send-queue gnus-delay-article)
-;;;;;;  "gnus-delay" "gnus/gnus-delay.el" (19279 5150))
+;;;;;;  "gnus-delay" "gnus/gnus-delay.el" (19644 51090))
 ;;; Generated autoloads from gnus/gnus-delay.el
 
 (autoload 'gnus-delay-article "gnus-delay" "\
@@ -11263,7 +11120,7 @@
 ;;;***
 
 ;;;### (autoloads (gnus-user-format-function-D gnus-user-format-function-d)
-;;;;;;  "gnus-diary" "gnus/gnus-diary.el" (19279 38446))
+;;;;;;  "gnus-diary" "gnus/gnus-diary.el" (19641 32539))
 ;;; Generated autoloads from gnus/gnus-diary.el
 
 (autoload 'gnus-user-format-function-d "gnus-diary" "\
@@ -11279,7 +11136,7 @@
 ;;;***
 
 ;;;### (autoloads (turn-on-gnus-dired-mode) "gnus-dired" "gnus/gnus-dired.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19662 8083))
 ;;; Generated autoloads from gnus/gnus-dired.el
 
 (autoload 'turn-on-gnus-dired-mode "gnus-dired" "\
@@ -11290,7 +11147,7 @@
 ;;;***
 
 ;;;### (autoloads (gnus-draft-reminder) "gnus-draft" "gnus/gnus-draft.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19646 65152))
 ;;; Generated autoloads from gnus/gnus-draft.el
 
 (autoload 'gnus-draft-reminder "gnus-draft" "\
@@ -11302,8 +11159,8 @@
 
 ;;;### (autoloads (gnus-convert-png-to-face gnus-convert-face-to-png
 ;;;;;;  gnus-face-from-file gnus-x-face-from-file gnus-insert-random-x-face-header
-;;;;;;  gnus-random-x-face) "gnus-fun" "gnus/gnus-fun.el" (19279
-;;;;;;  5150))
+;;;;;;  gnus-random-x-face) "gnus-fun" "gnus/gnus-fun.el" (19635
+;;;;;;  41857))
 ;;; Generated autoloads from gnus/gnus-fun.el
 
 (autoload 'gnus-random-x-face "gnus-fun" "\
@@ -11347,8 +11204,26 @@
 
 ;;;***
 
+;;;### (autoloads (gnus-treat-mail-gravatar gnus-treat-from-gravatar)
+;;;;;;  "gnus-gravatar" "gnus/gnus-gravatar.el" (19671 21337))
+;;; Generated autoloads from gnus/gnus-gravatar.el
+
+(autoload 'gnus-treat-from-gravatar "gnus-gravatar" "\
+Display gravatar in the From header.
+If gravatar is already displayed, remove it.
+
+\(fn &optional FORCE)" t nil)
+
+(autoload 'gnus-treat-mail-gravatar "gnus-gravatar" "\
+Display gravatars in the Cc and To headers.
+If gravatars are already displayed, remove them.
+
+\(fn &optional FORCE)" t nil)
+
+;;;***
+
 ;;;### (autoloads (gnus-fetch-group-other-frame gnus-fetch-group)
-;;;;;;  "gnus-group" "gnus/gnus-group.el" (19279 5150))
+;;;;;;  "gnus-group" "gnus/gnus-group.el" (19675 9114))
 ;;; Generated autoloads from gnus/gnus-group.el
 
 (autoload 'gnus-fetch-group "gnus-group" "\
@@ -11365,8 +11240,24 @@
 
 ;;;***
 
+;;;### (autoloads (gnus-html-prefetch-images gnus-article-html) "gnus-html"
+;;;;;;  "gnus/gnus-html.el" (19686 22639))
+;;; Generated autoloads from gnus/gnus-html.el
+
+(autoload 'gnus-article-html "gnus-html" "\
+Not documented
+
+\(fn &optional HANDLE)" nil nil)
+
+(autoload 'gnus-html-prefetch-images "gnus-html" "\
+Not documented
+
+\(fn SUMMARY)" nil nil)
+
+;;;***
+
 ;;;### (autoloads (gnus-batch-score) "gnus-kill" "gnus/gnus-kill.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19636 31813))
 ;;; Generated autoloads from gnus/gnus-kill.el
 
 (defalias 'gnus-batch-kill 'gnus-batch-score)
@@ -11381,7 +11272,7 @@
 
 ;;;### (autoloads (gnus-mailing-list-mode gnus-mailing-list-insinuate
 ;;;;;;  turn-on-gnus-mailing-list-mode) "gnus-ml" "gnus/gnus-ml.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19583 31640))
 ;;; Generated autoloads from gnus/gnus-ml.el
 
 (autoload 'turn-on-gnus-mailing-list-mode "gnus-ml" "\
@@ -11406,7 +11297,7 @@
 
 ;;;### (autoloads (gnus-group-split-fancy gnus-group-split gnus-group-split-update
 ;;;;;;  gnus-group-split-setup) "gnus-mlspl" "gnus/gnus-mlspl.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19583 31640))
 ;;; Generated autoloads from gnus/gnus-mlspl.el
 
 (autoload 'gnus-group-split-setup "gnus-mlspl" "\
@@ -11506,20 +11397,8 @@
 
 ;;;***
 
-;;;### (autoloads (gnus-change-server) "gnus-move" "gnus/gnus-move.el"
-;;;;;;  (19279 5150))
-;;; Generated autoloads from gnus/gnus-move.el
-
-(autoload 'gnus-change-server "gnus-move" "\
-Move from FROM-SERVER to TO-SERVER.
-Update the .newsrc.eld file to reflect the change of nntp server.
-
-\(fn FROM-SERVER TO-SERVER)" t nil)
-
-;;;***
-
 ;;;### (autoloads (gnus-button-reply gnus-button-mailto gnus-msg-mail)
-;;;;;;  "gnus-msg" "gnus/gnus-msg.el" (19279 5150))
+;;;;;;  "gnus-msg" "gnus/gnus-msg.el" (19662 54456))
 ;;; Generated autoloads from gnus/gnus-msg.el
 
 (autoload 'gnus-msg-mail "gnus-msg" "\
@@ -11543,25 +11422,9 @@
 
 ;;;***
 
-;;;### (autoloads (gnus-nocem-load-cache gnus-nocem-scan-groups)
-;;;;;;  "gnus-nocem" "gnus/gnus-nocem.el" (19279 5150))
-;;; Generated autoloads from gnus/gnus-nocem.el
-
-(autoload 'gnus-nocem-scan-groups "gnus-nocem" "\
-Scan all NoCeM groups for new NoCeM messages.
-
-\(fn)" t nil)
-
-(autoload 'gnus-nocem-load-cache "gnus-nocem" "\
-Load the NoCeM cache.
-
-\(fn)" t nil)
-
-;;;***
-
 ;;;### (autoloads (gnus-treat-newsgroups-picon gnus-treat-mail-picon
 ;;;;;;  gnus-treat-from-picon) "gnus-picon" "gnus/gnus-picon.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19635 41857))
 ;;; Generated autoloads from gnus/gnus-picon.el
 
 (autoload 'gnus-treat-from-picon "gnus-picon" "\
@@ -11588,7 +11451,7 @@
 ;;;;;;  gnus-sorted-nintersection gnus-sorted-range-intersection
 ;;;;;;  gnus-sorted-intersection gnus-intersection gnus-sorted-complement
 ;;;;;;  gnus-sorted-ndifference gnus-sorted-difference) "gnus-range"
-;;;;;;  "gnus/gnus-range.el" (19279 5150))
+;;;;;;  "gnus/gnus-range.el" (19606 36461))
 ;;; Generated autoloads from gnus/gnus-range.el
 
 (autoload 'gnus-sorted-difference "gnus-range" "\
@@ -11656,7 +11519,7 @@
 ;;;***
 
 ;;;### (autoloads (gnus-registry-install-hooks gnus-registry-initialize)
-;;;;;;  "gnus-registry" "gnus/gnus-registry.el" (19368 35187))
+;;;;;;  "gnus-registry" "gnus/gnus-registry.el" (19644 51090))
 ;;; Generated autoloads from gnus/gnus-registry.el
 
 (autoload 'gnus-registry-initialize "gnus-registry" "\
@@ -11672,8 +11535,8 @@
 ;;;***
 
 ;;;### (autoloads (gnus-sieve-article-add-rule gnus-sieve-generate
-;;;;;;  gnus-sieve-update) "gnus-sieve" "gnus/gnus-sieve.el" (19279
-;;;;;;  5150))
+;;;;;;  gnus-sieve-update) "gnus-sieve" "gnus/gnus-sieve.el" (19583
+;;;;;;  31640))
 ;;; Generated autoloads from gnus/gnus-sieve.el
 
 (autoload 'gnus-sieve-update "gnus-sieve" "\
@@ -11700,28 +11563,8 @@
 
 ;;;***
 
-;;;### (autoloads (gnus-batch-brew-soup) "gnus-soup" "gnus/gnus-soup.el"
-;;;;;;  (19279 5150))
-;;; Generated autoloads from gnus/gnus-soup.el
-
-(autoload 'gnus-batch-brew-soup "gnus-soup" "\
-Brew a SOUP packet from groups mention on the command line.
-Will use the remaining command line arguments as regular expressions
-for matching on group names.
-
-For instance, if you want to brew on all the nnml groups, as well as
-groups with \"emacs\" in the name, you could say something like:
-
-$ emacs -batch -f gnus-batch-brew-soup ^nnml \".*emacs.*\"
-
-Note -- this function hasn't been implemented yet.
-
-\(fn)" t nil)
-
-;;;***
-
 ;;;### (autoloads (gnus-update-format) "gnus-spec" "gnus/gnus-spec.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19638 15279))
 ;;; Generated autoloads from gnus/gnus-spec.el
 
 (autoload 'gnus-update-format "gnus-spec" "\
@@ -11731,9 +11574,8 @@
 
 ;;;***
 
-;;;### (autoloads (gnus-fixup-nnimap-unread-after-getting-new-news
-;;;;;;  gnus-declare-backend) "gnus-start" "gnus/gnus-start.el" (19279
-;;;;;;  5150))
+;;;### (autoloads (gnus-declare-backend) "gnus-start" "gnus/gnus-start.el"
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from gnus/gnus-start.el
 
 (autoload 'gnus-declare-backend "gnus-start" "\
@@ -11741,15 +11583,38 @@
 
 \(fn NAME &rest ABILITIES)" nil nil)
 
-(autoload 'gnus-fixup-nnimap-unread-after-getting-new-news "gnus-start" "\
-Not documented
-
-\(fn)" nil nil)
+;;;***
+
+;;;### (autoloads (gnus-summary-bookmark-jump) "gnus-sum" "gnus/gnus-sum.el"
+;;;;;;  (19682 26290))
+;;; Generated autoloads from gnus/gnus-sum.el
+
+(autoload 'gnus-summary-bookmark-jump "gnus-sum" "\
+Handler function for record returned by `gnus-summary-bookmark-make-record'.
+BOOKMARK is a bookmark name or a bookmark record.
+
+\(fn BOOKMARK)" nil nil)
+
+;;;***
+
+;;;### (autoloads (gnus-sync-install-hooks gnus-sync-initialize)
+;;;;;;  "gnus-sync" "gnus/gnus-sync.el" (19629 41197))
+;;; Generated autoloads from gnus/gnus-sync.el
+
+(autoload 'gnus-sync-initialize "gnus-sync" "\
+Initialize the Gnus sync facility.
+
+\(fn)" t nil)
+
+(autoload 'gnus-sync-install-hooks "gnus-sync" "\
+Install the sync hooks.
+
+\(fn)" t nil)
 
 ;;;***
 
 ;;;### (autoloads (gnus-add-configuration) "gnus-win" "gnus/gnus-win.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19626 28928))
 ;;; Generated autoloads from gnus/gnus-win.el
 
 (autoload 'gnus-add-configuration "gnus-win" "\
@@ -11759,7 +11624,7 @@
 
 ;;;***
 
-;;;### (autoloads (gomoku) "gomoku" "play/gomoku.el" (19279 5151))
+;;;### (autoloads (gomoku) "gomoku" "play/gomoku.el" (19677 58077))
 ;;; Generated autoloads from play/gomoku.el
 
 (autoload 'gomoku "gomoku" "\
@@ -11786,8 +11651,8 @@
 ;;;***
 
 ;;;### (autoloads (goto-address-prog-mode goto-address-mode goto-address
-;;;;;;  goto-address-at-point) "goto-addr" "net/goto-addr.el" (19356
-;;;;;;  10801))
+;;;;;;  goto-address-at-point) "goto-addr" "net/goto-addr.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from net/goto-addr.el
 
 (define-obsolete-function-alias 'goto-address-at-mouse 'goto-address-at-point "22.1")
@@ -11825,9 +11690,21 @@
 
 ;;;***
 
+;;;### (autoloads (gravatar-retrieve) "gravatar" "gnus/gravatar.el"
+;;;;;;  (19626 28928))
+;;; Generated autoloads from gnus/gravatar.el
+
+(autoload 'gravatar-retrieve "gravatar" "\
+Retrieve MAIL-ADDRESS gravatar and call CB on retrieval.
+You can provide a list of argument to pass to CB in CBARGS.
+
+\(fn MAIL-ADDRESS CB &optional CBARGS)" nil nil)
+
+;;;***
+
 ;;;### (autoloads (zrgrep rgrep lgrep grep-find grep grep-mode grep-compute-defaults
 ;;;;;;  grep-process-setup grep-setup-hook grep-find-command grep-command
-;;;;;;  grep-window-height) "grep" "progmodes/grep.el" (19304 5068))
+;;;;;;  grep-window-height) "grep" "progmodes/grep.el" (19686 22639))
 ;;; Generated autoloads from progmodes/grep.el
 
 (defvar grep-window-height nil "\
@@ -11860,7 +11737,7 @@
 
 (custom-autoload 'grep-setup-hook "grep" t)
 
-(defconst grep-regexp-alist '(("^\\(.+?\\)\\(:[ 	]*\\)\\([0-9]+\\)\\2" 1 3) ("^\\(\\(.+?\\):\\([0-9]+\\):\\).*?\\(\\[01;31m\\(?:\\[K\\)?\\)\\(.*?\\)\\(\\[[0-9]*m\\)" 2 3 ((lambda nil (setq compilation-error-screen-columns nil) (- (match-beginning 4) (match-end 1))) lambda nil (- (match-end 5) (match-end 1) (- (match-end 4) (match-beginning 4)))) nil 1) ("^Binary file \\(.+\\) matches$" 1 nil nil 0 1)) "\
+(defconst grep-regexp-alist '(("^\\(.+?\\)\\(:[ 	]*\\)\\([0-9]+\\)\\2" 1 3) ("^\\(\\(.+?\\):\\([1-9][0-9]*\\):\\).*?\\(\\[01;31m\\(?:\\[K\\)?\\)\\(.*?\\)\\(\\[[0-9]*m\\)" 2 3 ((lambda nil (setq compilation-error-screen-columns nil) (- (match-beginning 4) (match-end 1))) lambda nil (- (match-end 5) (match-end 1) (- (match-end 4) (match-beginning 4)))) nil 1) ("^Binary file \\(.+\\) matches$" 1 nil nil 0 1)) "\
 Regexp used to match grep hits.  See `compilation-error-regexp-alist'.")
 
 (defvar grep-program (purecopy "grep") "\
@@ -11983,7 +11860,7 @@
 
 ;;;***
 
-;;;### (autoloads (gs-load-image) "gs" "gs.el" (19279 5148))
+;;;### (autoloads (gs-load-image) "gs" "gs.el" (19379 23432))
 ;;; Generated autoloads from gs.el
 
 (autoload 'gs-load-image "gs" "\
@@ -11997,7 +11874,7 @@
 ;;;***
 
 ;;;### (autoloads (gud-tooltip-mode gdb-script-mode jdb pdb perldb
-;;;;;;  xdb dbx sdb gud-gdb) "gud" "progmodes/gud.el" (19374 384))
+;;;;;;  xdb dbx sdb gud-gdb) "gud" "progmodes/gud.el" (19612 6522))
 ;;; Generated autoloads from progmodes/gud.el
 
 (autoload 'gud-gdb "gud" "\
@@ -12062,8 +11939,6 @@
 \(fn COMMAND-LINE)" t nil)
  (add-hook 'same-window-regexps (purecopy "\\*gud-.*\\*\\(\\|<[0-9]+>\\)"))
 
-(add-to-list 'auto-mode-alist (cons (purecopy "/\\.[a-z0-9-]*gdbinit") 'gdb-script-mode))
-
 (autoload 'gdb-script-mode "gud" "\
 Major mode for editing GDB scripts.
 
@@ -12085,8 +11960,8 @@
 
 ;;;***
 
-;;;### (autoloads (handwrite) "handwrite" "play/handwrite.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (handwrite) "handwrite" "play/handwrite.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from play/handwrite.el
 
 (autoload 'handwrite "handwrite" "\
@@ -12104,7 +11979,7 @@
 ;;;***
 
 ;;;### (autoloads (hanoi-unix-64 hanoi-unix hanoi) "hanoi" "play/hanoi.el"
-;;;;;;  (19256 49601))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from play/hanoi.el
 
 (autoload 'hanoi "hanoi" "\
@@ -12133,7 +12008,7 @@
 
 ;;;### (autoloads (mail-check-payment mail-add-payment-async mail-add-payment
 ;;;;;;  hashcash-verify-payment hashcash-insert-payment-async hashcash-insert-payment)
-;;;;;;  "hashcash" "mail/hashcash.el" (19365 25156))
+;;;;;;  "hashcash" "mail/hashcash.el" (19635 41857))
 ;;; Generated autoloads from mail/hashcash.el
 
 (autoload 'hashcash-insert-payment "hashcash" "\
@@ -12178,7 +12053,7 @@
 ;;;### (autoloads (scan-buf-previous-region scan-buf-next-region
 ;;;;;;  scan-buf-move-to-region help-at-pt-display-when-idle help-at-pt-set-timer
 ;;;;;;  help-at-pt-cancel-timer display-local-help help-at-pt-kbd-string
-;;;;;;  help-at-pt-string) "help-at-pt" "help-at-pt.el" (19279 5148))
+;;;;;;  help-at-pt-string) "help-at-pt" "help-at-pt.el" (19379 23432))
 ;;; Generated autoloads from help-at-pt.el
 
 (autoload 'help-at-pt-string "help-at-pt" "\
@@ -12305,10 +12180,10 @@
 
 ;;;***
 
-;;;### (autoloads (describe-categories describe-syntax describe-variable
-;;;;;;  variable-at-point describe-function-1 find-lisp-object-file-name
-;;;;;;  help-C-file-name describe-function) "help-fns" "help-fns.el"
-;;;;;;  (19279 5148))
+;;;### (autoloads (doc-file-to-info doc-file-to-man describe-categories
+;;;;;;  describe-syntax describe-variable variable-at-point describe-function-1
+;;;;;;  find-lisp-object-file-name help-C-file-name describe-function)
+;;;;;;  "help-fns" "help-fns.el" (19651 9126))
 ;;; Generated autoloads from help-fns.el
 
 (autoload 'describe-function "help-fns" "\
@@ -12326,8 +12201,8 @@
 Guess the file that defined the Lisp object OBJECT, of type TYPE.
 OBJECT should be a symbol associated with a function, variable, or face;
   alternatively, it can be a function definition.
-If TYPE is `variable', search for a variable definition.
-If TYPE is `face', search for a face definition.
+If TYPE is `defvar', search for a variable definition.
+If TYPE is `defface', search for a face definition.
 If TYPE is the value returned by `symbol-function' for a function symbol,
  search for a function definition.
 
@@ -12375,10 +12250,20 @@
 
 \(fn &optional BUFFER)" t nil)
 
+(autoload 'doc-file-to-man "help-fns" "\
+Produce an nroff buffer containing the doc-strings from the DOC file.
+
+\(fn FILE)" t nil)
+
+(autoload 'doc-file-to-info "help-fns" "\
+Produce a texinfo buffer with sorted doc-strings from the DOC file.
+
+\(fn FILE)" t nil)
+
 ;;;***
 
 ;;;### (autoloads (three-step-help) "help-macro" "help-macro.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from help-macro.el
 
 (defvar three-step-help nil "\
@@ -12394,8 +12279,8 @@
 
 ;;;### (autoloads (help-xref-on-pp help-insert-xref-button help-xref-button
 ;;;;;;  help-make-xrefs help-buffer help-setup-xref help-mode-finish
-;;;;;;  help-mode-setup help-mode) "help-mode" "help-mode.el" (19279
-;;;;;;  5148))
+;;;;;;  help-mode-setup help-mode) "help-mode" "help-mode.el" (19636
+;;;;;;  19378))
 ;;; Generated autoloads from help-mode.el
 
 (autoload 'help-mode "help-mode" "\
@@ -12487,7 +12372,7 @@
 ;;;***
 
 ;;;### (autoloads (Helper-help Helper-describe-bindings) "helper"
-;;;;;;  "emacs-lisp/helper.el" (19279 5149))
+;;;;;;  "emacs-lisp/helper.el" (19578 56905))
 ;;; Generated autoloads from emacs-lisp/helper.el
 
 (autoload 'Helper-describe-bindings "helper" "\
@@ -12503,7 +12388,7 @@
 ;;;***
 
 ;;;### (autoloads (hexlify-buffer hexl-find-file hexl-mode) "hexl"
-;;;;;;  "hexl.el" (19279 38446))
+;;;;;;  "hexl.el" (19648 1980))
 ;;; Generated autoloads from hexl.el
 
 (autoload 'hexl-mode "hexl" "\
@@ -12600,7 +12485,7 @@
 ;;;### (autoloads (hi-lock-write-interactive-patterns hi-lock-unface-buffer
 ;;;;;;  hi-lock-face-phrase-buffer hi-lock-face-buffer hi-lock-line-face-buffer
 ;;;;;;  global-hi-lock-mode hi-lock-mode) "hi-lock" "hi-lock.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19635 38402))
 ;;; Generated autoloads from hi-lock.el
 
 (autoload 'hi-lock-mode "hi-lock" "\
@@ -12734,7 +12619,7 @@
 ;;;***
 
 ;;;### (autoloads (hide-ifdef-mode) "hideif" "progmodes/hideif.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19669 58161))
 ;;; Generated autoloads from progmodes/hideif.el
 
 (autoload 'hide-ifdef-mode "hideif" "\
@@ -12774,7 +12659,7 @@
 ;;;***
 
 ;;;### (autoloads (turn-off-hideshow hs-minor-mode) "hideshow" "progmodes/hideshow.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from progmodes/hideshow.el
 
 (defvar hs-special-modes-alist (mapcar 'purecopy '((c-mode "{" "}" "/[*/]" nil nil) (c++-mode "{" "}" "/[*/]" nil nil) (bibtex-mode ("@\\S(*\\(\\s(\\)" 1)) (java-mode "{" "}" "/[*/]" nil nil) (js-mode "{" "}" "/[*/]" nil))) "\
@@ -12836,8 +12721,8 @@
 ;;;;;;  highlight-compare-buffers highlight-changes-rotate-faces
 ;;;;;;  highlight-changes-previous-change highlight-changes-next-change
 ;;;;;;  highlight-changes-remove-highlight highlight-changes-visible-mode
-;;;;;;  highlight-changes-mode) "hilit-chg" "hilit-chg.el" (19279
-;;;;;;  5148))
+;;;;;;  highlight-changes-mode) "hilit-chg" "hilit-chg.el" (19630
+;;;;;;  8477))
 ;;; Generated autoloads from hilit-chg.el
 
 (autoload 'highlight-changes-mode "hilit-chg" "\
@@ -12966,7 +12851,7 @@
 ;;;;;;  hippie-expand-ignore-buffers hippie-expand-max-buffers hippie-expand-no-restriction
 ;;;;;;  hippie-expand-dabbrev-as-symbol hippie-expand-dabbrev-skip-space
 ;;;;;;  hippie-expand-verbose hippie-expand-try-functions-list) "hippie-exp"
-;;;;;;  "hippie-exp.el" (19279 5148))
+;;;;;;  "hippie-exp.el" (19675 9114))
 ;;; Generated autoloads from hippie-exp.el
 
 (defvar hippie-expand-try-functions-list '(try-complete-file-name-partially try-complete-file-name try-expand-all-abbrevs try-expand-list try-expand-line try-expand-dabbrev try-expand-dabbrev-all-buffers try-expand-dabbrev-from-kill try-complete-lisp-symbol-partially try-complete-lisp-symbol) "\
@@ -13039,7 +12924,7 @@
 ;;;***
 
 ;;;### (autoloads (global-hl-line-mode hl-line-mode) "hl-line" "hl-line.el"
-;;;;;;  (19356 10801))
+;;;;;;  (19520 54552))
 ;;; Generated autoloads from hl-line.el
 
 (autoload 'hl-line-mode "hl-line" "\
@@ -13083,9 +12968,11 @@
 ;;;;;;  holiday-bahai-holidays holiday-islamic-holidays holiday-christian-holidays
 ;;;;;;  holiday-hebrew-holidays holiday-other-holidays holiday-local-holidays
 ;;;;;;  holiday-oriental-holidays holiday-general-holidays) "holidays"
-;;;;;;  "calendar/holidays.el" (19279 5149))
+;;;;;;  "calendar/holidays.el" (19662 54456))
 ;;; Generated autoloads from calendar/holidays.el
 
+(define-obsolete-variable-alias 'general-holidays 'holiday-general-holidays "23.1")
+
 (defvar holiday-general-holidays (mapcar 'purecopy '((holiday-fixed 1 1 "New Year's Day") (holiday-float 1 1 3 "Martin Luther King Day") (holiday-fixed 2 2 "Groundhog Day") (holiday-fixed 2 14 "Valentine's Day") (holiday-float 2 1 3 "President's Day") (holiday-fixed 3 17 "St. Patrick's Day") (holiday-fixed 4 1 "April Fools' Day") (holiday-float 5 0 2 "Mother's Day") (holiday-float 5 1 -1 "Memorial Day") (holiday-fixed 6 14 "Flag Day") (holiday-float 6 0 3 "Father's Day") (holiday-fixed 7 4 "Independence Day") (holiday-float 9 1 1 "Labor Day") (holiday-float 10 1 2 "Columbus Day") (holiday-fixed 10 31 "Halloween") (holiday-fixed 11 11 "Veteran's Day") (holiday-float 11 4 4 "Thanksgiving"))) "\
 General holidays.  Default value is for the United States.
 See the documentation for `calendar-holidays' for details.")
@@ -13094,7 +12981,7 @@
 
 (put 'holiday-general-holidays 'risky-local-variable t)
 
-(define-obsolete-variable-alias 'general-holidays 'holiday-general-holidays "23.1")
+(define-obsolete-variable-alias 'oriental-holidays 'holiday-oriental-holidays "23.1")
 
 (defvar holiday-oriental-holidays (mapcar 'purecopy '((holiday-chinese-new-year) (if calendar-chinese-all-holidays-flag (append (holiday-chinese 1 15 "Lantern Festival") (holiday-chinese-qingming) (holiday-chinese 5 5 "Dragon Boat Festival") (holiday-chinese 7 7 "Double Seventh Festival") (holiday-chinese 8 15 "Mid-Autumn Festival") (holiday-chinese 9 9 "Double Ninth Festival") (holiday-chinese-winter-solstice))))) "\
 Oriental holidays.
@@ -13104,7 +12991,7 @@
 
 (put 'holiday-oriental-holidays 'risky-local-variable t)
 
-(define-obsolete-variable-alias 'oriental-holidays 'holiday-oriental-holidays "23.1")
+(define-obsolete-variable-alias 'local-holidays 'holiday-local-holidays "23.1")
 
 (defvar holiday-local-holidays nil "\
 Local holidays.
@@ -13114,7 +13001,7 @@
 
 (put 'holiday-local-holidays 'risky-local-variable t)
 
-(define-obsolete-variable-alias 'local-holidays 'holiday-local-holidays "23.1")
+(define-obsolete-variable-alias 'other-holidays 'holiday-other-holidays "23.1")
 
 (defvar holiday-other-holidays nil "\
 User defined holidays.
@@ -13124,8 +13011,6 @@
 
 (put 'holiday-other-holidays 'risky-local-variable t)
 
-(define-obsolete-variable-alias 'other-holidays 'holiday-other-holidays "23.1")
-
 (defvar hebrew-holidays-1 (mapcar 'purecopy '((holiday-hebrew-rosh-hashanah) (if calendar-hebrew-all-holidays-flag (holiday-julian 11 (let ((m displayed-month) (y displayed-year) year) (calendar-increment-month m y -1) (setq year (calendar-extract-year (calendar-julian-from-absolute (calendar-absolute-from-gregorian (list m 1 y))))) (if (zerop (% (1+ year) 4)) 22 21)) "\"Tal Umatar\" (evening)")))) "\
 Component of the old default value of `holiday-hebrew-holidays'.")
 
@@ -13146,6 +13031,8 @@
 
 (put 'hebrew-holidays-4 'risky-local-variable t)
 
+(define-obsolete-variable-alias 'hebrew-holidays 'holiday-hebrew-holidays "23.1")
+
 (defvar holiday-hebrew-holidays (mapcar 'purecopy '((holiday-hebrew-passover) (holiday-hebrew-rosh-hashanah) (holiday-hebrew-hanukkah) (if calendar-hebrew-all-holidays-flag (append (holiday-hebrew-tisha-b-av) (holiday-hebrew-misc))))) "\
 Jewish holidays.
 See the documentation for `calendar-holidays' for details.")
@@ -13154,7 +13041,7 @@
 
 (put 'holiday-hebrew-holidays 'risky-local-variable t)
 
-(define-obsolete-variable-alias 'hebrew-holidays 'holiday-hebrew-holidays "23.1")
+(define-obsolete-variable-alias 'christian-holidays 'holiday-christian-holidays "23.1")
 
 (defvar holiday-christian-holidays (mapcar 'purecopy '((holiday-easter-etc) (holiday-fixed 12 25 "Christmas") (if calendar-christian-all-holidays-flag (append (holiday-fixed 1 6 "Epiphany") (holiday-julian 12 25 "Eastern Orthodox Christmas") (holiday-greek-orthodox-easter) (holiday-fixed 8 15 "Assumption") (holiday-advent 0 "Advent"))))) "\
 Christian holidays.
@@ -13164,7 +13051,7 @@
 
 (put 'holiday-christian-holidays 'risky-local-variable t)
 
-(define-obsolete-variable-alias 'christian-holidays 'holiday-christian-holidays "23.1")
+(define-obsolete-variable-alias 'islamic-holidays 'holiday-islamic-holidays "23.1")
 
 (defvar holiday-islamic-holidays (mapcar 'purecopy '((holiday-islamic-new-year) (holiday-islamic 9 1 "Ramadan Begins") (if calendar-islamic-all-holidays-flag (append (holiday-islamic 1 10 "Ashura") (holiday-islamic 3 12 "Mulad-al-Nabi") (holiday-islamic 7 26 "Shab-e-Mi'raj") (holiday-islamic 8 15 "Shab-e-Bara't") (holiday-islamic 9 27 "Shab-e Qadr") (holiday-islamic 10 1 "Id-al-Fitr") (holiday-islamic 12 10 "Id-al-Adha"))))) "\
 Islamic holidays.
@@ -13174,7 +13061,7 @@
 
 (put 'holiday-islamic-holidays 'risky-local-variable t)
 
-(define-obsolete-variable-alias 'islamic-holidays 'holiday-islamic-holidays "23.1")
+(define-obsolete-variable-alias 'bahai-holidays 'holiday-bahai-holidays "23.1")
 
 (defvar holiday-bahai-holidays (mapcar 'purecopy '((holiday-bahai-new-year) (holiday-bahai-ridvan) (holiday-fixed 5 23 "Declaration of the Bab") (holiday-fixed 5 29 "Ascension of Baha'u'llah") (holiday-fixed 7 9 "Martyrdom of the Bab") (holiday-fixed 10 20 "Birth of the Bab") (holiday-fixed 11 12 "Birth of Baha'u'llah") (if calendar-bahai-all-holidays-flag (append (holiday-fixed 11 26 "Day of the Covenant") (holiday-fixed 11 28 "Ascension of `Abdu'l-Baha"))))) "\
 Baha'i holidays.
@@ -13184,7 +13071,7 @@
 
 (put 'holiday-bahai-holidays 'risky-local-variable t)
 
-(define-obsolete-variable-alias 'bahai-holidays 'holiday-bahai-holidays "23.1")
+(define-obsolete-variable-alias 'solar-holidays 'holiday-solar-holidays "23.1")
 
 (defvar holiday-solar-holidays (mapcar 'purecopy '((solar-equinoxes-solstices) (holiday-sexp calendar-daylight-savings-starts (format "Daylight Saving Time Begins %s" (solar-time-string (/ calendar-daylight-savings-starts-time (float 60)) calendar-standard-time-zone-name))) (holiday-sexp calendar-daylight-savings-ends (format "Daylight Saving Time Ends %s" (solar-time-string (/ calendar-daylight-savings-ends-time (float 60)) calendar-daylight-time-zone-name))))) "\
 Sun-related holidays.
@@ -13194,8 +13081,6 @@
 
 (put 'holiday-solar-holidays 'risky-local-variable t)
 
-(define-obsolete-variable-alias 'solar-holidays 'holiday-solar-holidays "23.1")
-
 (put 'calendar-holidays 'risky-local-variable t)
 
 (autoload 'holidays "holidays" "\
@@ -13231,8 +13116,8 @@
 
 ;;;***
 
-;;;### (autoloads (html2text) "html2text" "gnus/html2text.el" (19279
-;;;;;;  5150))
+;;;### (autoloads (html2text) "html2text" "gnus/html2text.el" (19583
+;;;;;;  31640))
 ;;; Generated autoloads from gnus/html2text.el
 
 (autoload 'html2text "html2text" "\
@@ -13242,9 +13127,42 @@
 
 ;;;***
 
+;;;### (autoloads (htmlfontify-copy-and-link-dir htmlfontify-buffer)
+;;;;;;  "htmlfontify" "htmlfontify.el" (19630 57790))
+;;; Generated autoloads from htmlfontify.el
+
+(autoload 'htmlfontify-buffer "htmlfontify" "\
+Create a new buffer, named for the current buffer + a .html extension,
+containing an inline CSS-stylesheet and formatted CSS-markup HTML
+that reproduces the look of the current Emacs buffer as closely
+as possible.
+
+Dangerous characters in the existing buffer are turned into HTML
+entities, so you should even be able to do HTML-within-HTML
+fontified display.
+
+You should, however, note that random control or eight-bit
+characters such as ^L () or ¤ (\244) won't get mapped yet.
+
+If the SRCDIR and FILE arguments are set, lookup etags derived
+entries in the `hfy-tags-cache' and add HTML anchors and
+hyperlinks as appropriate.
+
+\(fn &optional SRCDIR FILE)" t nil)
+
+(autoload 'htmlfontify-copy-and-link-dir "htmlfontify" "\
+Trawl SRCDIR and write fontified-and-hyperlinked output in DSTDIR.
+F-EXT and L-EXT specify values for `hfy-extn' and `hfy-link-extn'.
+
+You may also want to set `hfy-page-header' and `hfy-page-footer'.
+
+\(fn SRCDIR DSTDIR &optional F-EXT L-EXT)" t nil)
+
+;;;***
+
 ;;;### (autoloads (define-ibuffer-filter define-ibuffer-op define-ibuffer-sorter
-;;;;;;  define-ibuffer-column) "ibuf-macs" "ibuf-macs.el" (19279
-;;;;;;  5148))
+;;;;;;  define-ibuffer-column) "ibuf-macs" "ibuf-macs.el" (19578
+;;;;;;  56905))
 ;;; Generated autoloads from ibuf-macs.el
 
 (autoload 'define-ibuffer-column "ibuf-macs" "\
@@ -13272,6 +13190,8 @@
 
 \(fn SYMBOL (&key NAME INLINE PROPS SUMMARIZER) &rest BODY)" nil (quote macro))
 
+(put 'define-ibuffer-column 'lisp-indent-function 'defun)
+
 (autoload 'define-ibuffer-sorter "ibuf-macs" "\
 Define a method of sorting named NAME.
 DOCUMENTATION is the documentation of the function, which will be called
@@ -13284,6 +13204,8 @@
 
 \(fn NAME DOCUMENTATION (&key DESCRIPTION) &rest BODY)" nil (quote macro))
 
+(put 'define-ibuffer-sorter 'lisp-indent-function '1)
+
 (autoload 'define-ibuffer-op "ibuf-macs" "\
 Generate a function which operates on a buffer.
 OP becomes the name of the function; if it doesn't begin with
@@ -13317,6 +13239,8 @@
 
 \(fn OP ARGS DOCUMENTATION (&key INTERACTIVE MARK MODIFIER-P DANGEROUS OPSTRING ACTIVE-OPSTRING COMPLEX) &rest BODY)" nil (quote macro))
 
+(put 'define-ibuffer-op 'lisp-indent-function '2)
+
 (autoload 'define-ibuffer-filter "ibuf-macs" "\
 Define a filter named NAME.
 DOCUMENTATION is the documentation of the function.
@@ -13330,10 +13254,12 @@
 
 \(fn NAME DOCUMENTATION (&key READER DESCRIPTION) &rest BODY)" nil (quote macro))
 
+(put 'define-ibuffer-filter 'lisp-indent-function '2)
+
 ;;;***
 
 ;;;### (autoloads (ibuffer ibuffer-other-window ibuffer-list-buffers)
-;;;;;;  "ibuffer" "ibuffer.el" (19279 5148))
+;;;;;;  "ibuffer" "ibuffer.el" (19632 54888))
 ;;; Generated autoloads from ibuffer.el
 
 (autoload 'ibuffer-list-buffers "ibuffer" "\
@@ -13374,7 +13300,7 @@
 
 ;;;### (autoloads (icalendar-import-buffer icalendar-import-file
 ;;;;;;  icalendar-export-region icalendar-export-file) "icalendar"
-;;;;;;  "calendar/icalendar.el" (19338 9840))
+;;;;;;  "calendar/icalendar.el" (19578 56905))
 ;;; Generated autoloads from calendar/icalendar.el
 
 (autoload 'icalendar-export-file "icalendar" "\
@@ -13426,8 +13352,8 @@
 
 ;;;***
 
-;;;### (autoloads (icomplete-mode) "icomplete" "icomplete.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (icomplete-mode) "icomplete" "icomplete.el" (19407
+;;;;;;  29238))
 ;;; Generated autoloads from icomplete.el
 
 (defvar icomplete-mode nil "\
@@ -13448,7 +13374,7 @@
 
 ;;;***
 
-;;;### (autoloads (icon-mode) "icon" "progmodes/icon.el" (19279 5151))
+;;;### (autoloads (icon-mode) "icon" "progmodes/icon.el" (19669 58161))
 ;;; Generated autoloads from progmodes/icon.el
 
 (autoload 'icon-mode "icon" "\
@@ -13489,7 +13415,7 @@
 ;;;***
 
 ;;;### (autoloads (idlwave-shell) "idlw-shell" "progmodes/idlw-shell.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from progmodes/idlw-shell.el
 
 (autoload 'idlwave-shell "idlw-shell" "\
@@ -13515,7 +13441,7 @@
 ;;;***
 
 ;;;### (autoloads (idlwave-mode) "idlwave" "progmodes/idlwave.el"
-;;;;;;  (19279 38446))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from progmodes/idlwave.el
 
 (autoload 'idlwave-mode "idlwave" "\
@@ -13649,8 +13575,8 @@
 ;;;;;;  ido-find-alternate-file ido-find-file-other-window ido-find-file
 ;;;;;;  ido-find-file-in-dir ido-switch-buffer-other-frame ido-insert-buffer
 ;;;;;;  ido-kill-buffer ido-display-buffer ido-switch-buffer-other-window
-;;;;;;  ido-switch-buffer ido-mode ido-mode) "ido" "ido.el" (19292
-;;;;;;  15231))
+;;;;;;  ido-switch-buffer ido-mode ido-mode) "ido" "ido.el" (19606
+;;;;;;  36461))
 ;;; Generated autoloads from ido.el
 
 (defvar ido-mode nil "\
@@ -13911,7 +13837,7 @@
 
 ;;;***
 
-;;;### (autoloads (ielm) "ielm" "ielm.el" (19279 5148))
+;;;### (autoloads (ielm) "ielm" "ielm.el" (19379 23432))
 ;;; Generated autoloads from ielm.el
  (add-hook 'same-window-buffer-names (purecopy "*ielm*"))
 
@@ -13923,14 +13849,10 @@
 
 ;;;***
 
-;;;### (autoloads (iimage-mode turn-on-iimage-mode) "iimage" "iimage.el"
-;;;;;;  (19279 5148))
+;;;### (autoloads (iimage-mode) "iimage" "iimage.el" (19629 41197))
 ;;; Generated autoloads from iimage.el
 
-(autoload 'turn-on-iimage-mode "iimage" "\
-Unconditionally turn on iimage mode.
-
-\(fn)" t nil)
+(define-obsolete-function-alias 'turn-on-iimage-mode 'iimage-mode "24.1")
 
 (autoload 'iimage-mode "iimage" "\
 Toggle inline image minor mode.
@@ -13939,216 +13861,24 @@
 
 ;;;***
 
-;;;### (autoloads (create-animated-image defimage find-image remove-images
-;;;;;;  insert-sliced-image insert-image put-image create-image image-type-auto-detected-p
-;;;;;;  image-type-available-p image-type image-type-from-file-name
-;;;;;;  image-type-from-file-header image-type-from-buffer image-type-from-data)
-;;;;;;  "image" "image.el" (19356 10801))
-;;; Generated autoloads from image.el
-
-(autoload 'image-type-from-data "image" "\
-Determine the image type from image data DATA.
-Value is a symbol specifying the image type or nil if type cannot
-be determined.
-
-\(fn DATA)" nil nil)
-
-(autoload 'image-type-from-buffer "image" "\
-Determine the image type from data in the current buffer.
-Value is a symbol specifying the image type or nil if type cannot
-be determined.
-
-\(fn)" nil nil)
-
-(autoload 'image-type-from-file-header "image" "\
-Determine the type of image file FILE from its first few bytes.
-Value is a symbol specifying the image type, or nil if type cannot
-be determined.
-
-\(fn FILE)" nil nil)
-
-(autoload 'image-type-from-file-name "image" "\
-Determine the type of image file FILE from its name.
-Value is a symbol specifying the image type, or nil if type cannot
-be determined.
-
-\(fn FILE)" nil nil)
-
-(autoload 'image-type "image" "\
-Determine and return image type.
-SOURCE is an image file name or image data.
-Optional TYPE is a symbol describing the image type.  If TYPE is omitted
-or nil, try to determine the image type from its first few bytes
-of image data.  If that doesn't work, and SOURCE is a file name,
-use its file extension as image type.
-Optional DATA-P non-nil means SOURCE is a string containing image data.
-
-\(fn SOURCE &optional TYPE DATA-P)" nil nil)
-
-(autoload 'image-type-available-p "image" "\
-Return non-nil if image type TYPE is available.
-Image types are symbols like `xbm' or `jpeg'.
-
-\(fn TYPE)" nil nil)
-
-(autoload 'image-type-auto-detected-p "image" "\
-Return t if the current buffer contains an auto-detectable image.
-This function is intended to be used from `magic-fallback-mode-alist'.
-
-The buffer is considered to contain an auto-detectable image if
-its beginning matches an image type in `image-type-header-regexps',
-and that image type is present in `image-type-auto-detectable' with a
-non-nil value.  If that value is non-nil, but not t, then the image type
-must be available.
-
-\(fn)" nil nil)
-
-(autoload 'create-image "image" "\
-Create an image.
-FILE-OR-DATA is an image file name or image data.
-Optional TYPE is a symbol describing the image type.  If TYPE is omitted
-or nil, try to determine the image type from its first few bytes
-of image data.  If that doesn't work, and FILE-OR-DATA is a file name,
-use its file extension as image type.
-Optional DATA-P non-nil means FILE-OR-DATA is a string containing image data.
-Optional PROPS are additional image attributes to assign to the image,
-like, e.g. `:mask MASK'.
-Value is the image created, or nil if images of type TYPE are not supported.
-
-Images should not be larger than specified by `max-image-size'.
-
-Image file names that are not absolute are searched for in the
-\"images\" sub-directory of `data-directory' and
-`x-bitmap-file-path' (in that order).
-
-\(fn FILE-OR-DATA &optional TYPE DATA-P &rest PROPS)" nil nil)
-
-(autoload 'put-image "image" "\
-Put image IMAGE in front of POS in the current buffer.
-IMAGE must be an image created with `create-image' or `defimage'.
-IMAGE is displayed by putting an overlay into the current buffer with a
-`before-string' STRING that has a `display' property whose value is the
-image.  STRING is defaulted if you omit it.
-POS may be an integer or marker.
-AREA is where to display the image.  AREA nil or omitted means
-display it in the text area, a value of `left-margin' means
-display it in the left marginal area, a value of `right-margin'
-means display it in the right marginal area.
-
-\(fn IMAGE POS &optional STRING AREA)" nil nil)
-
-(autoload 'insert-image "image" "\
-Insert IMAGE into current buffer at point.
-IMAGE is displayed by inserting STRING into the current buffer
-with a `display' property whose value is the image.  STRING is
-defaulted if you omit it.
-AREA is where to display the image.  AREA nil or omitted means
-display it in the text area, a value of `left-margin' means
-display it in the left marginal area, a value of `right-margin'
-means display it in the right marginal area.
-SLICE specifies slice of IMAGE to insert.  SLICE nil or omitted
-means insert whole image.  SLICE is a list (X Y WIDTH HEIGHT)
-specifying the X and Y positions and WIDTH and HEIGHT of image area
-to insert.  A float value 0.0 - 1.0 means relative to the width or
-height of the image; integer values are taken as pixel values.
-
-\(fn IMAGE &optional STRING AREA SLICE)" nil nil)
-
-(autoload 'insert-sliced-image "image" "\
-Insert IMAGE into current buffer at point.
-IMAGE is displayed by inserting STRING into the current buffer
-with a `display' property whose value is the image.  STRING is
-defaulted if you omit it.
-AREA is where to display the image.  AREA nil or omitted means
-display it in the text area, a value of `left-margin' means
-display it in the left marginal area, a value of `right-margin'
-means display it in the right marginal area.
-The image is automatically split into ROWS x COLS slices.
-
-\(fn IMAGE &optional STRING AREA ROWS COLS)" nil nil)
-
-(autoload 'remove-images "image" "\
-Remove images between START and END in BUFFER.
-Remove only images that were put in BUFFER with calls to `put-image'.
-BUFFER nil or omitted means use the current buffer.
-
-\(fn START END &optional BUFFER)" nil nil)
-
-(autoload 'find-image "image" "\
-Find an image, choosing one of a list of image specifications.
-
-SPECS is a list of image specifications.
-
-Each image specification in SPECS is a property list.  The contents of
-a specification are image type dependent.  All specifications must at
-least contain the properties `:type TYPE' and either `:file FILE' or
-`:data DATA', where TYPE is a symbol specifying the image type,
-e.g. `xbm', FILE is the file to load the image from, and DATA is a
-string containing the actual image data.  The specification whose TYPE
-is supported, and FILE exists, is used to construct the image
-specification to be returned.  Return nil if no specification is
-satisfied.
-
-The image is looked for in `image-load-path'.
-
-Image files should not be larger than specified by `max-image-size'.
-
-\(fn SPECS)" nil nil)
-
-(autoload 'defimage "image" "\
-Define SYMBOL as an image.
-
-SPECS is a list of image specifications.  DOC is an optional
-documentation string.
-
-Each image specification in SPECS is a property list.  The contents of
-a specification are image type dependent.  All specifications must at
-least contain the properties `:type TYPE' and either `:file FILE' or
-`:data DATA', where TYPE is a symbol specifying the image type,
-e.g. `xbm', FILE is the file to load the image from, and DATA is a
-string containing the actual image data.  The first image
-specification whose TYPE is supported, and FILE exists, is used to
-define SYMBOL.
-
-Example:
-
-   (defimage test-image ((:type xpm :file \"~/test1.xpm\")
-                         (:type xbm :file \"~/test1.xbm\")))
-
-\(fn SYMBOL SPECS &optional DOC)" nil (quote macro))
-
-(autoload 'create-animated-image "image" "\
-Create an animated image.
-FILE-OR-DATA is an image file name or image data.
-Optional TYPE is a symbol describing the image type.  If TYPE is omitted
-or nil, try to determine the image type from its first few bytes
-of image data.  If that doesn't work, and FILE-OR-DATA is a file name,
-use its file extension as image type.
-Optional DATA-P non-nil means FILE-OR-DATA is a string containing image data.
-Optional PROPS are additional image attributes to assign to the image,
-like, e.g. `:mask MASK'.
-Value is the image created, or nil if images of type TYPE are not supported.
-
-Images should not be larger than specified by `max-image-size'.
-
-\(fn FILE-OR-DATA &optional TYPE DATA-P &rest PROPS)" nil nil)
-
-;;;***
-
 ;;;### (autoloads (image-dired-dired-edit-comment-and-tags image-dired-mark-tagged-files
 ;;;;;;  image-dired-dired-comment-files image-dired-dired-display-image
 ;;;;;;  image-dired-dired-display-external image-dired-display-thumb
 ;;;;;;  image-dired-display-thumbs-append image-dired-setup-dired-keybindings
 ;;;;;;  image-dired-jump-thumbnail-buffer image-dired-delete-tag
 ;;;;;;  image-dired-tag-files image-dired-show-all-from-dir image-dired-display-thumbs
-;;;;;;  image-dired-dired-with-window-configuration image-dired-dired-insert-marked-thumbs)
-;;;;;;  "image-dired" "image-dired.el" (19370 36540))
+;;;;;;  image-dired-dired-with-window-configuration image-dired-dired-toggle-marked-thumbs)
+;;;;;;  "image-dired" "image-dired.el" (19456 17095))
 ;;; Generated autoloads from image-dired.el
 
-(autoload 'image-dired-dired-insert-marked-thumbs "image-dired" "\
-Insert thumbnails before file names of marked files in the dired buffer.
-
-\(fn)" t nil)
+(autoload 'image-dired-dired-toggle-marked-thumbs "image-dired" "\
+Toggle thumbnails in front of file names in the dired buffer.
+If no marked file could be found, insert or hide thumbnails on the
+current line.  ARG, if non-nil, specifies the files to use instead
+of the marked files.  If ARG is an integer, use the next ARG (or
+previous -ARG, if ARG<0) files.
+
+\(fn &optional ARG)" t nil)
 
 (autoload 'image-dired-dired-with-window-configuration "image-dired" "\
 Open directory DIR and create a default window configuration.
@@ -14276,7 +14006,7 @@
 
 ;;;### (autoloads (auto-image-file-mode insert-image-file image-file-name-regexp
 ;;;;;;  image-file-name-regexps image-file-name-extensions) "image-file"
-;;;;;;  "image-file.el" (19279 5148))
+;;;;;;  "image-file.el" (19379 23432))
 ;;; Generated autoloads from image-file.el
 
 (defvar image-file-name-extensions (purecopy '("png" "jpeg" "jpg" "gif" "tiff" "tif" "xbm" "xpm" "pbm" "pgm" "ppm" "pnm" "svg")) "\
@@ -14338,17 +14068,8 @@
 ;;;***
 
 ;;;### (autoloads (image-bookmark-jump image-mode-as-text image-minor-mode
-;;;;;;  image-mode) "image-mode" "image-mode.el" (19356 10801))
+;;;;;;  image-mode) "image-mode" "image-mode.el" (19612 6522))
 ;;; Generated autoloads from image-mode.el
- (push (cons (purecopy "\\.jpe?g\\'")    'image-mode) auto-mode-alist)
- (push (cons (purecopy "\\.png\\'")      'image-mode) auto-mode-alist)
- (push (cons (purecopy "\\.gif\\'")      'image-mode) auto-mode-alist)
- (push (cons (purecopy "\\.tiff?\\'")    'image-mode) auto-mode-alist)
- (push (cons (purecopy "\\.p[bpgn]m\\'") 'image-mode) auto-mode-alist)
- (push (cons (purecopy "\\.x[bp]m\\'")   'c-mode)     auto-mode-alist)
- (push (cons (purecopy "\\.x[bp]m\\'")   'image-mode) auto-mode-alist)
- (push (cons (purecopy "\\.svgz?\\'")    'xml-mode)   auto-mode-alist)
- (push (cons (purecopy "\\.svgz?\\'")    'image-mode) auto-mode-alist)
 
 (autoload 'image-mode "image-mode" "\
 Major mode for image files.
@@ -14373,7 +14094,7 @@
 to display an image file as the actual image.
 
 You can use `image-mode-as-text' in `auto-mode-alist' when you want
-to display an image file as text inititally.
+to display an image file as text initially.
 
 See commands `image-mode' and `image-minor-mode' for more information
 on these modes.
@@ -14388,7 +14109,7 @@
 ;;;***
 
 ;;;### (autoloads (imenu imenu-add-menubar-index imenu-add-to-menubar
-;;;;;;  imenu-sort-function) "imenu" "imenu.el" (19279 5148))
+;;;;;;  imenu-sort-function) "imenu" "imenu.el" (19612 6522))
 ;;; Generated autoloads from imenu.el
 
 (defvar imenu-sort-function nil "\
@@ -14505,7 +14226,7 @@
 
 ;;;### (autoloads (indian-2-column-to-ucs-region in-is13194-pre-write-conversion
 ;;;;;;  in-is13194-post-read-conversion indian-compose-string indian-compose-region)
-;;;;;;  "ind-util" "language/ind-util.el" (19279 5150))
+;;;;;;  "ind-util" "language/ind-util.el" (19379 23432))
 ;;; Generated autoloads from language/ind-util.el
 
 (autoload 'indian-compose-region "ind-util" "\
@@ -14537,7 +14258,7 @@
 
 ;;;### (autoloads (inferior-lisp inferior-lisp-prompt inferior-lisp-load-command
 ;;;;;;  inferior-lisp-program inferior-lisp-filter-regexp) "inf-lisp"
-;;;;;;  "progmodes/inf-lisp.el" (19279 5151))
+;;;;;;  "progmodes/inf-lisp.el" (19634 57717))
 ;;; Generated autoloads from progmodes/inf-lisp.el
 
 (defvar inferior-lisp-filter-regexp (purecopy "\\`\\s *\\(:\\(\\w\\|\\s_\\)\\)?\\s *\\'") "\
@@ -14605,7 +14326,7 @@
 ;;;;;;  Info-goto-emacs-command-node Info-mode info-finder info-apropos
 ;;;;;;  Info-index Info-directory Info-on-current-buffer info-standalone
 ;;;;;;  info-emacs-manual info info-other-window) "info" "info.el"
-;;;;;;  (19368 35187))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from info.el
 
 (autoload 'info-other-window "info" "\
@@ -14748,7 +14469,7 @@
 \\[universal-argument] \\[info]	Move to new Info file with completion.
 \\[universal-argument] N \\[info]	Select Info buffer with prefix number in the name *info*<N>.
 
-\(fn)" nil nil)
+\(fn)" t nil)
  (put 'Info-goto-emacs-command-node 'info-file (purecopy "emacs"))
 
 (autoload 'Info-goto-emacs-command-node "info" "\
@@ -14787,7 +14508,7 @@
 
 ;;;### (autoloads (info-complete-file info-complete-symbol info-lookup-file
 ;;;;;;  info-lookup-symbol info-lookup-reset) "info-look" "info-look.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from info-look.el
 
 (autoload 'info-lookup-reset "info-look" "\
@@ -14835,7 +14556,7 @@
 ;;;***
 
 ;;;### (autoloads (info-xref-check-all-custom info-xref-check-all
-;;;;;;  info-xref-check) "info-xref" "info-xref.el" (19279 5148))
+;;;;;;  info-xref-check) "info-xref" "info-xref.el" (19379 23432))
 ;;; Generated autoloads from info-xref.el
 
 (autoload 'info-xref-check "info-xref" "\
@@ -14862,7 +14583,7 @@
 ;;;***
 
 ;;;### (autoloads (batch-info-validate Info-validate Info-split Info-split-threshold
-;;;;;;  Info-tagify) "informat" "informat.el" (19279 5148))
+;;;;;;  Info-tagify) "informat" "informat.el" (19379 23432))
 ;;; Generated autoloads from informat.el
 
 (autoload 'Info-tagify "informat" "\
@@ -14909,7 +14630,7 @@
 
 ;;;### (autoloads (isearch-process-search-multibyte-characters isearch-toggle-input-method
 ;;;;;;  isearch-toggle-specified-input-method) "isearch-x" "international/isearch-x.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from international/isearch-x.el
 
 (autoload 'isearch-toggle-specified-input-method "isearch-x" "\
@@ -14929,8 +14650,8 @@
 
 ;;;***
 
-;;;### (autoloads (isearchb-activate) "isearchb" "isearchb.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (isearchb-activate) "isearchb" "isearchb.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from isearchb.el
 
 (autoload 'isearchb-activate "isearchb" "\
@@ -14946,7 +14667,7 @@
 ;;;### (autoloads (iso-cvt-define-menu iso-cvt-write-only iso-cvt-read-only
 ;;;;;;  iso-sgml2iso iso-iso2sgml iso-iso2duden iso-iso2gtex iso-gtex2iso
 ;;;;;;  iso-tex2iso iso-iso2tex iso-german iso-spanish) "iso-cvt"
-;;;;;;  "international/iso-cvt.el" (19279 5150))
+;;;;;;  "international/iso-cvt.el" (19379 23432))
 ;;; Generated autoloads from international/iso-cvt.el
 
 (autoload 'iso-spanish "iso-cvt" "\
@@ -15037,7 +14758,7 @@
 ;;;***
 
 ;;;### (autoloads nil "iso-transl" "international/iso-transl.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from international/iso-transl.el
  (or key-translation-map (setq key-translation-map (make-sparse-keymap)))
  (define-key key-translation-map "\C-x8" 'iso-transl-ctl-x-8-map)
@@ -15049,8 +14770,9 @@
 ;;;;;;  ispell-complete-word ispell-continue ispell-buffer ispell-comments-and-strings
 ;;;;;;  ispell-region ispell-change-dictionary ispell-kill-ispell
 ;;;;;;  ispell-help ispell-pdict-save ispell-word ispell-personal-dictionary)
-;;;;;;  "ispell" "textmodes/ispell.el" (19313 15415))
+;;;;;;  "ispell" "textmodes/ispell.el" (19675 9114))
 ;;; Generated autoloads from textmodes/ispell.el
+
 (put 'ispell-check-comments 'safe-local-variable (lambda (a) (memq a '(nil t exclusive))))
 
 (defvar ispell-personal-dictionary nil "\
@@ -15060,6 +14782,7 @@
 default dictionary and LANG the two letter language code.")
 
 (custom-autoload 'ispell-personal-dictionary "ispell" t)
+
 (put 'ispell-local-dictionary 'safe-local-variable 'string-or-null-p)
 
 (defvar ispell-menu-map nil "\
@@ -15267,8 +14990,8 @@
 
 ;;;***
 
-;;;### (autoloads (iswitchb-mode) "iswitchb" "iswitchb.el" (19321
-;;;;;;  4517))
+;;;### (autoloads (iswitchb-mode) "iswitchb" "iswitchb.el" (19657
+;;;;;;  35339))
 ;;; Generated autoloads from iswitchb.el
 
 (defvar iswitchb-mode nil "\
@@ -15293,7 +15016,7 @@
 ;;;### (autoloads (read-hiragana-string japanese-zenkaku-region japanese-hankaku-region
 ;;;;;;  japanese-hiragana-region japanese-katakana-region japanese-zenkaku
 ;;;;;;  japanese-hankaku japanese-hiragana japanese-katakana setup-japanese-environment-internal)
-;;;;;;  "japan-util" "language/japan-util.el" (19279 5150))
+;;;;;;  "japan-util" "language/japan-util.el" (19379 23432))
 ;;; Generated autoloads from language/japan-util.el
 
 (autoload 'setup-japanese-environment-internal "japan-util" "\
@@ -15371,7 +15094,7 @@
 ;;;***
 
 ;;;### (autoloads (jka-compr-uninstall jka-compr-handler) "jka-compr"
-;;;;;;  "jka-compr.el" (19292 15231))
+;;;;;;  "jka-compr.el" (19455 29789))
 ;;; Generated autoloads from jka-compr.el
 
 (defvar jka-compr-inhibit nil "\
@@ -15394,7 +15117,7 @@
 
 ;;;***
 
-;;;### (autoloads (js-mode) "js" "progmodes/js.el" (19279 5151))
+;;;### (autoloads (js-mode) "js" "progmodes/js.el" (19671 21337))
 ;;; Generated autoloads from progmodes/js.el
 
 (autoload 'js-mode "js" "\
@@ -15412,7 +15135,7 @@
 
 ;;;### (autoloads (keypad-setup keypad-numlock-shifted-setup keypad-shifted-setup
 ;;;;;;  keypad-numlock-setup keypad-setup) "keypad" "emulation/keypad.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from emulation/keypad.el
 
 (defvar keypad-setup nil "\
@@ -15468,7 +15191,7 @@
 ;;;***
 
 ;;;### (autoloads (kinsoku) "kinsoku" "international/kinsoku.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from international/kinsoku.el
 
 (autoload 'kinsoku "kinsoku" "\
@@ -15489,8 +15212,8 @@
 
 ;;;***
 
-;;;### (autoloads (kkc-region) "kkc" "international/kkc.el" (19279
-;;;;;;  5150))
+;;;### (autoloads (kkc-region) "kkc" "international/kkc.el" (19611
+;;;;;;  13362))
 ;;; Generated autoloads from international/kkc.el
 
 (defvar kkc-after-update-conversion-functions nil "\
@@ -15515,7 +15238,7 @@
 ;;;### (autoloads (kmacro-end-call-mouse kmacro-end-and-call-macro
 ;;;;;;  kmacro-end-or-call-macro kmacro-start-macro-or-insert-counter
 ;;;;;;  kmacro-call-macro kmacro-end-macro kmacro-start-macro kmacro-exec-ring-item)
-;;;;;;  "kmacro" "kmacro.el" (19279 5148))
+;;;;;;  "kmacro" "kmacro.el" (19492 29282))
 ;;; Generated autoloads from kmacro.el
  (global-set-key "\C-x(" 'kmacro-start-macro)
  (global-set-key "\C-x)" 'kmacro-end-macro)
@@ -15626,7 +15349,7 @@
 ;;;***
 
 ;;;### (autoloads (setup-korean-environment-internal) "korea-util"
-;;;;;;  "language/korea-util.el" (19279 5150))
+;;;;;;  "language/korea-util.el" (19379 23432))
 ;;; Generated autoloads from language/korea-util.el
 
 (defvar default-korean-keyboard (purecopy (if (string-match "3" (or (getenv "HANGUL_KEYBOARD_TYPE") "")) "3" "")) "\
@@ -15641,7 +15364,7 @@
 ;;;***
 
 ;;;### (autoloads (lm lm-test-run) "landmark" "play/landmark.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from play/landmark.el
 
 (defalias 'landmark-repeat 'lm-test-run)
@@ -15675,7 +15398,7 @@
 
 ;;;### (autoloads (lao-compose-region lao-composition-function lao-transcribe-roman-to-lao-string
 ;;;;;;  lao-transcribe-single-roman-syllable-to-lao lao-compose-string)
-;;;;;;  "lao-util" "language/lao-util.el" (19279 5150))
+;;;;;;  "lao-util" "language/lao-util.el" (19379 23432))
 ;;; Generated autoloads from language/lao-util.el
 
 (autoload 'lao-compose-string "lao-util" "\
@@ -15714,7 +15437,7 @@
 
 ;;;### (autoloads (latexenc-find-file-coding-system latexenc-coding-system-to-inputenc
 ;;;;;;  latexenc-inputenc-to-coding-system latex-inputenc-coding-alist)
-;;;;;;  "latexenc" "international/latexenc.el" (19279 5150))
+;;;;;;  "latexenc" "international/latexenc.el" (19379 23432))
 ;;; Generated autoloads from international/latexenc.el
 
 (defvar latex-inputenc-coding-alist (purecopy '(("ansinew" . windows-1252) ("applemac" . mac-roman) ("ascii" . us-ascii) ("cp1250" . windows-1250) ("cp1252" . windows-1252) ("cp1257" . cp1257) ("cp437de" . cp437) ("cp437" . cp437) ("cp850" . cp850) ("cp852" . cp852) ("cp858" . cp858) ("cp865" . cp865) ("latin1" . iso-8859-1) ("latin2" . iso-8859-2) ("latin3" . iso-8859-3) ("latin4" . iso-8859-4) ("latin5" . iso-8859-5) ("latin9" . iso-8859-15) ("next" . next) ("utf8" . utf-8) ("utf8x" . utf-8))) "\
@@ -15746,7 +15469,7 @@
 ;;;***
 
 ;;;### (autoloads (latin1-display-ucs-per-lynx latin1-display latin1-display)
-;;;;;;  "latin1-disp" "international/latin1-disp.el" (19279 5150))
+;;;;;;  "latin1-disp" "international/latin1-disp.el" (19379 23432))
 ;;; Generated autoloads from international/latin1-disp.el
 
 (defvar latin1-display nil "\
@@ -15788,15 +15511,9 @@
 ;;;***
 
 ;;;### (autoloads (ld-script-mode) "ld-script" "progmodes/ld-script.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19611 13362))
 ;;; Generated autoloads from progmodes/ld-script.el
 
-(add-to-list 'auto-mode-alist (purecopy '("\\.ld[si]?\\>" . ld-script-mode)))
-
-(add-to-list 'auto-mode-alist (purecopy '("ld\\.?script\\>" . ld-script-mode)))
-
-(add-to-list 'auto-mode-alist (purecopy '("\\.x[bdsru]?[cn]?\\'" . ld-script-mode)))
-
 (autoload 'ld-script-mode "ld-script" "\
 A major mode to edit GNU ld script files
 
@@ -15805,7 +15522,7 @@
 ;;;***
 
 ;;;### (autoloads (ledit-from-lisp-mode ledit-mode) "ledit" "ledit.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from ledit.el
 
 (defconst ledit-save-files t "\
@@ -15840,7 +15557,7 @@
 
 ;;;***
 
-;;;### (autoloads (life) "life" "play/life.el" (19279 5151))
+;;;### (autoloads (life) "life" "play/life.el" (19669 58161))
 ;;; Generated autoloads from play/life.el
 
 (autoload 'life "life" "\
@@ -15854,7 +15571,7 @@
 ;;;***
 
 ;;;### (autoloads (global-linum-mode linum-mode linum-format) "linum"
-;;;;;;  "linum.el" (19279 5148))
+;;;;;;  "linum.el" (19578 56905))
 ;;; Generated autoloads from linum.el
 
 (defvar linum-format 'dynamic "\
@@ -15892,8 +15609,8 @@
 
 ;;;***
 
-;;;### (autoloads (unload-feature) "loadhist" "loadhist.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (unload-feature) "loadhist" "loadhist.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from loadhist.el
 
 (autoload 'unload-feature "loadhist" "\
@@ -15925,7 +15642,7 @@
 ;;;***
 
 ;;;### (autoloads (locate-with-filter locate locate-ls-subdir-switches)
-;;;;;;  "locate" "locate.el" (19279 5148))
+;;;;;;  "locate" "locate.el" (19675 9114))
 ;;; Generated autoloads from locate.el
 
 (defvar locate-ls-subdir-switches (purecopy "-al") "\
@@ -15937,7 +15654,7 @@
 (autoload 'locate "locate" "\
 Run the program `locate', putting results in `*Locate*' buffer.
 Pass it SEARCH-STRING as argument.  Interactively, prompt for SEARCH-STRING.
-With prefix arg, prompt for the exact shell command to run instead.
+With prefix arg ARG, prompt for the exact shell command to run instead.
 
 This program searches for those file names in a database that match
 SEARCH-STRING and normally outputs all matching absolute file names,
@@ -15953,7 +15670,8 @@
 The main use of FILTER is to implement `locate-with-filter'.  See
 the docstring of that function for its meaning.
 
-ARG is the interactive prefix arg.
+After preparing the results buffer, this runs `dired-mode-hook' and
+then `locate-post-command-hook'.
 
 \(fn SEARCH-STRING &optional FILTER ARG)" t nil)
 
@@ -15976,8 +15694,8 @@
 
 ;;;***
 
-;;;### (autoloads (log-edit) "log-edit" "log-edit.el" (19370 36540))
-;;; Generated autoloads from log-edit.el
+;;;### (autoloads (log-edit) "log-edit" "vc/log-edit.el" (19657 41085))
+;;; Generated autoloads from vc/log-edit.el
 
 (autoload 'log-edit "log-edit" "\
 Setup a buffer to enter a log message.
@@ -16003,9 +15721,9 @@
 
 ;;;***
 
-;;;### (autoloads (log-view-mode) "log-view" "log-view.el" (19358
-;;;;;;  54001))
-;;; Generated autoloads from log-view.el
+;;;### (autoloads (log-view-mode) "log-view" "vc/log-view.el" (19633
+;;;;;;  49761))
+;;; Generated autoloads from vc/log-view.el
 
 (autoload 'log-view-mode "log-view" "\
 Major mode for browsing CVS log output.
@@ -16014,8 +15732,8 @@
 
 ;;;***
 
-;;;### (autoloads (longlines-mode) "longlines" "longlines.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (longlines-mode) "longlines" "longlines.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from longlines.el
 
 (autoload 'longlines-mode "longlines" "\
@@ -16036,8 +15754,8 @@
 ;;;***
 
 ;;;### (autoloads (print-region lpr-region print-buffer lpr-buffer
-;;;;;;  lpr-command lpr-switches printer-name) "lpr" "lpr.el" (19279
-;;;;;;  5148))
+;;;;;;  lpr-command lpr-switches printer-name) "lpr" "lpr.el" (19451
+;;;;;;  41962))
 ;;; Generated autoloads from lpr.el
 
 (defvar lpr-windows-system (memq system-type '(ms-dos windows-nt)))
@@ -16130,20 +15848,8 @@
 
 ;;;***
 
-;;;### (autoloads (ls-lisp-support-shell-wildcards) "ls-lisp" "ls-lisp.el"
-;;;;;;  (19321 4517))
-;;; Generated autoloads from ls-lisp.el
-
-(defvar ls-lisp-support-shell-wildcards t "\
-Non-nil means ls-lisp treats file patterns as shell wildcards.
-Otherwise they are treated as Emacs regexps (for backward compatibility).")
-
-(custom-autoload 'ls-lisp-support-shell-wildcards "ls-lisp" t)
-
-;;;***
-
-;;;### (autoloads (lunar-phases) "lunar" "calendar/lunar.el" (19279
-;;;;;;  5149))
+;;;### (autoloads (lunar-phases) "lunar" "calendar/lunar.el" (19578
+;;;;;;  56905))
 ;;; Generated autoloads from calendar/lunar.el
 
 (autoload 'lunar-phases "lunar" "\
@@ -16157,8 +15863,8 @@
 
 ;;;***
 
-;;;### (autoloads (m4-mode) "m4-mode" "progmodes/m4-mode.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (m4-mode) "m4-mode" "progmodes/m4-mode.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from progmodes/m4-mode.el
 
 (autoload 'm4-mode "m4-mode" "\
@@ -16170,7 +15876,7 @@
 ;;;***
 
 ;;;### (autoloads (macroexpand-all) "macroexp" "emacs-lisp/macroexp.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19577 43088))
 ;;; Generated autoloads from emacs-lisp/macroexp.el
 
 (autoload 'macroexpand-all "macroexp" "\
@@ -16184,7 +15890,7 @@
 ;;;***
 
 ;;;### (autoloads (apply-macro-to-region-lines kbd-macro-query insert-kbd-macro
-;;;;;;  name-last-kbd-macro) "macros" "macros.el" (19345 41626))
+;;;;;;  name-last-kbd-macro) "macros" "macros.el" (19578 56905))
 ;;; Generated autoloads from macros.el
 
 (autoload 'name-last-kbd-macro "macros" "\
@@ -16273,7 +15979,7 @@
 ;;;***
 
 ;;;### (autoloads (what-domain mail-extract-address-components) "mail-extr"
-;;;;;;  "mail/mail-extr.el" (19279 5150))
+;;;;;;  "mail/mail-extr.el" (19669 58161))
 ;;; Generated autoloads from mail/mail-extr.el
 
 (autoload 'mail-extract-address-components "mail-extr" "\
@@ -16305,7 +16011,7 @@
 
 ;;;### (autoloads (mail-hist-put-headers-into-history mail-hist-keep-history
 ;;;;;;  mail-hist-enable mail-hist-define-keys) "mail-hist" "mail/mail-hist.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from mail/mail-hist.el
 
 (autoload 'mail-hist-define-keys "mail-hist" "\
@@ -16337,7 +16043,7 @@
 ;;;### (autoloads (mail-fetch-field mail-unquote-printable-region
 ;;;;;;  mail-unquote-printable mail-quote-printable-region mail-quote-printable
 ;;;;;;  mail-file-babyl-p mail-use-rfc822) "mail-utils" "mail/mail-utils.el"
-;;;;;;  (19313 15414))
+;;;;;;  (19635 38402))
 ;;; Generated autoloads from mail/mail-utils.el
 
 (defvar mail-use-rfc822 nil "\
@@ -16399,8 +16105,8 @@
 ;;;***
 
 ;;;### (autoloads (define-mail-abbrev build-mail-abbrevs mail-abbrevs-setup
-;;;;;;  mail-abbrevs-mode) "mailabbrev" "mail/mailabbrev.el" (19279
-;;;;;;  5150))
+;;;;;;  mail-abbrevs-mode) "mailabbrev" "mail/mailabbrev.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from mail/mailabbrev.el
 
 (defvar mail-abbrevs-mode nil "\
@@ -16442,8 +16148,8 @@
 ;;;***
 
 ;;;### (autoloads (mail-complete define-mail-alias expand-mail-aliases
-;;;;;;  mail-complete-style) "mailalias" "mail/mailalias.el" (19279
-;;;;;;  5150))
+;;;;;;  mail-complete-style) "mailalias" "mail/mailalias.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from mail/mailalias.el
 
 (defvar mail-complete-style 'angles "\
@@ -16489,7 +16195,7 @@
 ;;;***
 
 ;;;### (autoloads (mailclient-send-it) "mailclient" "mail/mailclient.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from mail/mailclient.el
 
 (autoload 'mailclient-send-it "mailclient" "\
@@ -16503,7 +16209,7 @@
 
 ;;;### (autoloads (makefile-imake-mode makefile-bsdmake-mode makefile-makepp-mode
 ;;;;;;  makefile-gmake-mode makefile-automake-mode makefile-mode)
-;;;;;;  "make-mode" "progmodes/make-mode.el" (19372 27330))
+;;;;;;  "make-mode" "progmodes/make-mode.el" (19595 20656))
 ;;; Generated autoloads from progmodes/make-mode.el
 
 (autoload 'makefile-mode "make-mode" "\
@@ -16620,8 +16326,8 @@
 
 ;;;***
 
-;;;### (autoloads (make-command-summary) "makesum" "makesum.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (make-command-summary) "makesum" "makesum.el" (19669
+;;;;;;  58161))
 ;;; Generated autoloads from makesum.el
 
 (autoload 'make-command-summary "makesum" "\
@@ -16632,7 +16338,8 @@
 
 ;;;***
 
-;;;### (autoloads (man-follow man) "man" "man.el" (19345 41626))
+;;;### (autoloads (Man-bookmark-jump man-follow man) "man" "man.el"
+;;;;;;  (19638 63299))
 ;;; Generated autoloads from man.el
 
 (defalias 'manual-entry 'man)
@@ -16679,9 +16386,14 @@
 
 \(fn MAN-ARGS)" t nil)
 
-;;;***
-
-;;;### (autoloads (master-mode) "master" "master.el" (19279 5148))
+(autoload 'Man-bookmark-jump "man" "\
+Default bookmark handler for Man buffers.
+
+\(fn BOOKMARK)" nil nil)
+
+;;;***
+
+;;;### (autoloads (master-mode) "master" "master.el" (19379 23432))
 ;;; Generated autoloads from master.el
 
 (autoload 'master-mode "master" "\
@@ -16704,7 +16416,7 @@
 ;;;***
 
 ;;;### (autoloads (minibuffer-depth-indicate-mode) "mb-depth" "mb-depth.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from mb-depth.el
 
 (defvar minibuffer-depth-indicate-mode nil "\
@@ -16735,7 +16447,7 @@
 ;;;;;;  message-forward-make-body message-forward message-recover
 ;;;;;;  message-supersede message-cancel-news message-followup message-wide-reply
 ;;;;;;  message-reply message-news message-mail message-mode) "message"
-;;;;;;  "gnus/message.el" (19370 36541))
+;;;;;;  "gnus/message.el" (19677 58077))
 ;;; Generated autoloads from gnus/message.el
 
 (define-mail-user-agent 'message-user-agent 'message-mail 'message-send-and-exit 'message-kill-buffer 'message-send-hook)
@@ -16901,7 +16613,7 @@
 ;;;***
 
 ;;;### (autoloads (metapost-mode metafont-mode) "meta-mode" "progmodes/meta-mode.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from progmodes/meta-mode.el
 
 (autoload 'metafont-mode "meta-mode" "\
@@ -16928,7 +16640,7 @@
 
 ;;;### (autoloads (metamail-region metamail-buffer metamail-interpret-body
 ;;;;;;  metamail-interpret-header) "metamail" "mail/metamail.el"
-;;;;;;  (19356 10801))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from mail/metamail.el
 
 (autoload 'metamail-interpret-header "metamail" "\
@@ -16973,7 +16685,7 @@
 
 ;;;### (autoloads (mh-fully-kill-draft mh-send-letter mh-user-agent-compose
 ;;;;;;  mh-smail-batch mh-smail-other-window mh-smail) "mh-comp"
-;;;;;;  "mh-e/mh-comp.el" (19279 5150))
+;;;;;;  "mh-e/mh-comp.el" (19443 63936))
 ;;; Generated autoloads from mh-e/mh-comp.el
 
 (autoload 'mh-smail "mh-comp" "\
@@ -17063,7 +16775,7 @@
 
 ;;;***
 
-;;;### (autoloads (mh-version) "mh-e" "mh-e/mh-e.el" (19279 5150))
+;;;### (autoloads (mh-version) "mh-e" "mh-e/mh-e.el" (19422 40643))
 ;;; Generated autoloads from mh-e/mh-e.el
 
 (put 'mh-progs 'risky-local-variable t)
@@ -17080,7 +16792,7 @@
 ;;;***
 
 ;;;### (autoloads (mh-folder-mode mh-nmail mh-rmail) "mh-folder"
-;;;;;;  "mh-e/mh-folder.el" (19279 5150))
+;;;;;;  "mh-e/mh-folder.el" (19379 23432))
 ;;; Generated autoloads from mh-e/mh-folder.el
 
 (autoload 'mh-rmail "mh-folder" "\
@@ -17162,7 +16874,7 @@
 ;;;***
 
 ;;;### (autoloads (midnight-delay-set clean-buffer-list) "midnight"
-;;;;;;  "midnight.el" (19369 15960))
+;;;;;;  "midnight.el" (19379 23432))
 ;;; Generated autoloads from midnight.el
 
 (autoload 'clean-buffer-list "midnight" "\
@@ -17189,7 +16901,7 @@
 ;;;***
 
 ;;;### (autoloads (minibuffer-electric-default-mode) "minibuf-eldef"
-;;;;;;  "minibuf-eldef.el" (19279 5148))
+;;;;;;  "minibuf-eldef.el" (19379 23432))
 ;;; Generated autoloads from minibuf-eldef.el
 
 (defvar minibuffer-electric-default-mode nil "\
@@ -17216,7 +16928,7 @@
 
 ;;;***
 
-;;;### (autoloads (butterfly) "misc" "misc.el" (19279 5148))
+;;;### (autoloads (butterfly) "misc" "misc.el" (19669 58161))
 ;;; Generated autoloads from misc.el
 
 (autoload 'butterfly "misc" "\
@@ -17235,7 +16947,7 @@
 
 ;;;### (autoloads (multi-isearch-files-regexp multi-isearch-files
 ;;;;;;  multi-isearch-buffers-regexp multi-isearch-buffers multi-isearch-setup)
-;;;;;;  "misearch" "misearch.el" (19279 5148))
+;;;;;;  "misearch" "misearch.el" (19379 23432))
 ;;; Generated autoloads from misearch.el
  (add-hook 'isearch-mode-hook 'multi-isearch-setup)
 
@@ -17317,7 +17029,7 @@
 ;;;***
 
 ;;;### (autoloads (mixal-mode) "mixal-mode" "progmodes/mixal-mode.el"
-;;;;;;  (19358 54001))
+;;;;;;  (19612 6522))
 ;;; Generated autoloads from progmodes/mixal-mode.el
 
 (autoload 'mixal-mode "mixal-mode" "\
@@ -17326,12 +17038,10 @@
 
 \(fn)" t nil)
 
-(add-to-list 'auto-mode-alist '("\\.mixal\\'" . mixal-mode))
-
 ;;;***
 
 ;;;### (autoloads (mm-inline-external-body mm-extern-cache-contents)
-;;;;;;  "mm-extern" "gnus/mm-extern.el" (19279 5150))
+;;;;;;  "mm-extern" "gnus/mm-extern.el" (19635 41857))
 ;;; Generated autoloads from gnus/mm-extern.el
 
 (autoload 'mm-extern-cache-contents "mm-extern" "\
@@ -17350,7 +17060,7 @@
 ;;;***
 
 ;;;### (autoloads (mm-inline-partial) "mm-partial" "gnus/mm-partial.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19606 36461))
 ;;; Generated autoloads from gnus/mm-partial.el
 
 (autoload 'mm-inline-partial "mm-partial" "\
@@ -17364,7 +17074,7 @@
 ;;;***
 
 ;;;### (autoloads (mm-url-insert-file-contents-external mm-url-insert-file-contents)
-;;;;;;  "mm-url" "gnus/mm-url.el" (19279 5150))
+;;;;;;  "mm-url" "gnus/mm-url.el" (19583 31640))
 ;;; Generated autoloads from gnus/mm-url.el
 
 (autoload 'mm-url-insert-file-contents "mm-url" "\
@@ -17381,7 +17091,7 @@
 ;;;***
 
 ;;;### (autoloads (mm-uu-dissect-text-parts mm-uu-dissect) "mm-uu"
-;;;;;;  "gnus/mm-uu.el" (19279 5150))
+;;;;;;  "gnus/mm-uu.el" (19583 31640))
 ;;; Generated autoloads from gnus/mm-uu.el
 
 (autoload 'mm-uu-dissect "mm-uu" "\
@@ -17401,7 +17111,7 @@
 ;;;***
 
 ;;;### (autoloads (mml1991-sign mml1991-encrypt) "mml1991" "gnus/mml1991.el"
-;;;;;;  (19365 25156))
+;;;;;;  (19635 41857))
 ;;; Generated autoloads from gnus/mml1991.el
 
 (autoload 'mml1991-encrypt "mml1991" "\
@@ -17418,7 +17128,7 @@
 
 ;;;### (autoloads (mml2015-self-encrypt mml2015-sign mml2015-encrypt
 ;;;;;;  mml2015-verify-test mml2015-verify mml2015-decrypt-test mml2015-decrypt)
-;;;;;;  "mml2015" "gnus/mml2015.el" (19365 25156))
+;;;;;;  "mml2015" "gnus/mml2015.el" (19686 22639))
 ;;; Generated autoloads from gnus/mml2015.el
 
 (autoload 'mml2015-decrypt "mml2015" "\
@@ -17458,11 +17168,13 @@
 
 ;;;***
 
-;;;### (autoloads (modula-2-mode) "modula2" "progmodes/modula2.el"
-;;;;;;  (19256 49603))
+;;;### (autoloads (m2-mode) "modula2" "progmodes/modula2.el" (19677
+;;;;;;  58077))
 ;;; Generated autoloads from progmodes/modula2.el
 
-(autoload 'modula-2-mode "modula2" "\
+(defalias 'modula-2-mode 'm2-mode)
+
+(autoload 'm2-mode "modula2" "\
 This is a mode intended to support program development in Modula-2.
 All control constructs of Modula-2 can be reached by typing C-c
 followed by the first character of the construct.
@@ -17491,7 +17203,7 @@
 ;;;***
 
 ;;;### (autoloads (unmorse-region morse-region) "morse" "play/morse.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from play/morse.el
 
 (autoload 'morse-region "morse" "\
@@ -17507,7 +17219,7 @@
 ;;;***
 
 ;;;### (autoloads (mouse-drag-drag mouse-drag-throw) "mouse-drag"
-;;;;;;  "mouse-drag.el" (19279 5148))
+;;;;;;  "mouse-drag.el" (19675 9114))
 ;;; Generated autoloads from mouse-drag.el
 
 (autoload 'mouse-drag-throw "mouse-drag" "\
@@ -17554,8 +17266,8 @@
 
 ;;;***
 
-;;;### (autoloads (mouse-sel-mode) "mouse-sel" "mouse-sel.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (mouse-sel-mode) "mouse-sel" "mouse-sel.el" (19686
+;;;;;;  22639))
 ;;; Generated autoloads from mouse-sel.el
 
 (defvar mouse-sel-mode nil "\
@@ -17607,7 +17319,7 @@
 
 ;;;***
 
-;;;### (autoloads (mpc) "mpc" "mpc.el" (19372 27330))
+;;;### (autoloads (mpc) "mpc" "mpc.el" (19379 23432))
 ;;; Generated autoloads from mpc.el
 
 (autoload 'mpc "mpc" "\
@@ -17617,7 +17329,7 @@
 
 ;;;***
 
-;;;### (autoloads (mpuz) "mpuz" "play/mpuz.el" (19279 5151))
+;;;### (autoloads (mpuz) "mpuz" "play/mpuz.el" (19634 57717))
 ;;; Generated autoloads from play/mpuz.el
 
 (autoload 'mpuz "mpuz" "\
@@ -17627,7 +17339,7 @@
 
 ;;;***
 
-;;;### (autoloads (msb-mode) "msb" "msb.el" (19279 5148))
+;;;### (autoloads (msb-mode) "msb" "msb.el" (19379 23432))
 ;;; Generated autoloads from msb.el
 
 (defvar msb-mode nil "\
@@ -17654,7 +17366,7 @@
 ;;;;;;  describe-current-coding-system describe-current-coding-system-briefly
 ;;;;;;  describe-coding-system describe-character-set list-charset-chars
 ;;;;;;  read-charset list-character-sets) "mule-diag" "international/mule-diag.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19617 8027))
 ;;; Generated autoloads from international/mule-diag.el
 
 (autoload 'list-character-sets "mule-diag" "\
@@ -17791,7 +17503,7 @@
 ;;;;;;  coding-system-translation-table-for-decode coding-system-pre-write-conversion
 ;;;;;;  coding-system-post-read-conversion lookup-nested-alist set-nested-alist
 ;;;;;;  truncate-string-to-width store-substring string-to-sequence)
-;;;;;;  "mule-util" "international/mule-util.el" (19313 15414))
+;;;;;;  "mule-util" "international/mule-util.el" (19472 6950))
 ;;; Generated autoloads from international/mule-util.el
 
 (autoload 'string-to-sequence "mule-util" "\
@@ -17931,8 +17643,8 @@
 ;;;### (autoloads (network-connection network-connection-to-service
 ;;;;;;  whois-reverse-lookup whois finger ftp run-dig dns-lookup-host
 ;;;;;;  nslookup nslookup-host ping traceroute route arp netstat
-;;;;;;  iwconfig ifconfig) "net-utils" "net/net-utils.el" (19279
-;;;;;;  5151))
+;;;;;;  iwconfig ifconfig) "net-utils" "net/net-utils.el" (19675
+;;;;;;  9114))
 ;;; Generated autoloads from net/net-utils.el
 
 (autoload 'ifconfig "net-utils" "\
@@ -18026,12 +17738,25 @@
 
 ;;;***
 
+;;;### (autoloads (netrc-credentials) "netrc" "net/netrc.el" (19621
+;;;;;;  13173))
+;;; Generated autoloads from net/netrc.el
+
+(autoload 'netrc-credentials "netrc" "\
+Return a user name/password pair.
+Port specifications will be prioritised in the order they are
+listed in the PORTS list.
+
+\(fn MACHINE &rest PORTS)" nil nil)
+
+;;;***
+
 ;;;### (autoloads (comment-indent-new-line comment-auto-fill-only-comments
 ;;;;;;  comment-dwim comment-or-uncomment-region comment-box comment-region
 ;;;;;;  uncomment-region comment-kill comment-set-column comment-indent
 ;;;;;;  comment-indent-default comment-normalize-vars comment-multi-line
 ;;;;;;  comment-padding comment-style comment-column) "newcomment"
-;;;;;;  "newcomment.el" (19279 5148))
+;;;;;;  "newcomment.el" (19649 27409))
 ;;; Generated autoloads from newcomment.el
 
 (defalias 'indent-for-comment 'comment-indent)
@@ -18195,8 +17920,8 @@
 (autoload 'comment-dwim "newcomment" "\
 Call the comment command you want (Do What I Mean).
 If the region is active and `transient-mark-mode' is on, call
-  `comment-region' (unless it only consists of comments, in which
-  case it calls `uncomment-region').
+`comment-region' (unless it only consists of comments, in which
+case it calls `uncomment-region').
 Else, if the current line is empty, call `comment-insert-comment-function'
 if it is defined, otherwise insert a comment and indent it.
 Else if a prefix ARG is specified, call `comment-kill'.
@@ -18231,7 +17956,7 @@
 ;;;***
 
 ;;;### (autoloads (newsticker-start newsticker-running-p) "newst-backend"
-;;;;;;  "net/newst-backend.el" (19279 5151))
+;;;;;;  "net/newst-backend.el" (19578 56905))
 ;;; Generated autoloads from net/newst-backend.el
 
 (autoload 'newsticker-running-p "newst-backend" "\
@@ -18253,7 +17978,7 @@
 ;;;***
 
 ;;;### (autoloads (newsticker-plainview) "newst-plainview" "net/newst-plainview.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from net/newst-plainview.el
 
 (autoload 'newsticker-plainview "newst-plainview" "\
@@ -18264,7 +17989,7 @@
 ;;;***
 
 ;;;### (autoloads (newsticker-show-news) "newst-reader" "net/newst-reader.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from net/newst-reader.el
 
 (autoload 'newsticker-show-news "newst-reader" "\
@@ -18275,7 +18000,7 @@
 ;;;***
 
 ;;;### (autoloads (newsticker-start-ticker newsticker-ticker-running-p)
-;;;;;;  "newst-ticker" "net/newst-ticker.el" (19279 5151))
+;;;;;;  "newst-ticker" "net/newst-ticker.el" (19578 56905))
 ;;; Generated autoloads from net/newst-ticker.el
 
 (autoload 'newsticker-ticker-running-p "newst-ticker" "\
@@ -18296,7 +18021,7 @@
 ;;;***
 
 ;;;### (autoloads (newsticker-treeview) "newst-treeview" "net/newst-treeview.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from net/newst-treeview.el
 
 (autoload 'newsticker-treeview "newst-treeview" "\
@@ -18307,7 +18032,7 @@
 ;;;***
 
 ;;;### (autoloads (nndiary-generate-nov-databases) "nndiary" "gnus/nndiary.el"
-;;;;;;  (19279 38446))
+;;;;;;  (19665 17270))
 ;;; Generated autoloads from gnus/nndiary.el
 
 (autoload 'nndiary-generate-nov-databases "nndiary" "\
@@ -18317,8 +18042,8 @@
 
 ;;;***
 
-;;;### (autoloads (nndoc-add-type) "nndoc" "gnus/nndoc.el" (19279
-;;;;;;  5150))
+;;;### (autoloads (nndoc-add-type) "nndoc" "gnus/nndoc.el" (19662
+;;;;;;  2422))
 ;;; Generated autoloads from gnus/nndoc.el
 
 (autoload 'nndoc-add-type "nndoc" "\
@@ -18333,7 +18058,7 @@
 ;;;***
 
 ;;;### (autoloads (nnfolder-generate-active-file) "nnfolder" "gnus/nnfolder.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19635 41857))
 ;;; Generated autoloads from gnus/nnfolder.el
 
 (autoload 'nnfolder-generate-active-file "nnfolder" "\
@@ -18344,20 +18069,8 @@
 
 ;;;***
 
-;;;### (autoloads (nnkiboze-generate-groups) "nnkiboze" "gnus/nnkiboze.el"
-;;;;;;  (19279 5150))
-;;; Generated autoloads from gnus/nnkiboze.el
-
-(autoload 'nnkiboze-generate-groups "nnkiboze" "\
-\"Usage: emacs -batch -l nnkiboze -f nnkiboze-generate-groups\".
-Finds out what articles are to be part of the nnkiboze groups.
-
-\(fn)" t nil)
-
-;;;***
-
 ;;;### (autoloads (nnml-generate-nov-databases) "nnml" "gnus/nnml.el"
-;;;;;;  (19279 38446))
+;;;;;;  (19615 37479))
 ;;; Generated autoloads from gnus/nnml.el
 
 (autoload 'nnml-generate-nov-databases "nnml" "\
@@ -18367,29 +18080,8 @@
 
 ;;;***
 
-;;;### (autoloads (nnsoup-revert-variables nnsoup-set-variables nnsoup-pack-replies)
-;;;;;;  "nnsoup" "gnus/nnsoup.el" (19279 5150))
-;;; Generated autoloads from gnus/nnsoup.el
-
-(autoload 'nnsoup-pack-replies "nnsoup" "\
-Make an outbound package of SOUP replies.
-
-\(fn)" t nil)
-
-(autoload 'nnsoup-set-variables "nnsoup" "\
-Use the SOUP methods for posting news and mailing mail.
-
-\(fn)" t nil)
-
-(autoload 'nnsoup-revert-variables "nnsoup" "\
-Revert posting and mailing methods to the standard Emacs methods.
-
-\(fn)" t nil)
-
-;;;***
-
 ;;;### (autoloads (disable-command enable-command disabled-command-function)
-;;;;;;  "novice" "novice.el" (19279 5148))
+;;;;;;  "novice" "novice.el" (19686 22639))
 ;;; Generated autoloads from novice.el
 
 (defvar disabled-command-function 'disabled-command-function "\
@@ -18422,7 +18114,7 @@
 ;;;***
 
 ;;;### (autoloads (nroff-mode) "nroff-mode" "textmodes/nroff-mode.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19606 36461))
 ;;; Generated autoloads from textmodes/nroff-mode.el
 
 (autoload 'nroff-mode "nroff-mode" "\
@@ -18437,7 +18129,7 @@
 ;;;***
 
 ;;;### (autoloads (nxml-glyph-display-string) "nxml-glyph" "nxml/nxml-glyph.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from nxml/nxml-glyph.el
 
 (autoload 'nxml-glyph-display-string "nxml-glyph" "\
@@ -18449,8 +18141,8 @@
 
 ;;;***
 
-;;;### (autoloads (nxml-mode) "nxml-mode" "nxml/nxml-mode.el" (19356
-;;;;;;  10801))
+;;;### (autoloads (nxml-mode) "nxml-mode" "nxml/nxml-mode.el" (19652
+;;;;;;  27168))
 ;;; Generated autoloads from nxml/nxml-mode.el
 
 (autoload 'nxml-mode "nxml-mode" "\
@@ -18512,7 +18204,7 @@
 ;;;***
 
 ;;;### (autoloads (nxml-enable-unicode-char-name-sets) "nxml-uchnm"
-;;;;;;  "nxml/nxml-uchnm.el" (19279 5151))
+;;;;;;  "nxml/nxml-uchnm.el" (19379 23432))
 ;;; Generated autoloads from nxml/nxml-uchnm.el
 
 (autoload 'nxml-enable-unicode-char-name-sets "nxml-uchnm" "\
@@ -18524,8 +18216,250 @@
 
 ;;;***
 
+;;;### (autoloads (org-babel-mark-block org-babel-previous-src-block
+;;;;;;  org-babel-next-src-block org-babel-goto-named-result org-babel-goto-named-src-block
+;;;;;;  org-babel-goto-src-block-head org-babel-hide-result-toggle-maybe
+;;;;;;  org-babel-sha1-hash org-babel-execute-subtree org-babel-execute-buffer
+;;;;;;  org-babel-open-src-block-result org-babel-switch-to-session-with-code
+;;;;;;  org-babel-switch-to-session org-babel-initiate-session org-babel-load-in-session
+;;;;;;  org-babel-expand-src-block org-babel-execute-src-block org-babel-pop-to-session-maybe
+;;;;;;  org-babel-load-in-session-maybe org-babel-expand-src-block-maybe
+;;;;;;  org-babel-execute-maybe org-babel-execute-safely-maybe) "ob"
+;;;;;;  "org/ob.el" (19681 9924))
+;;; Generated autoloads from org/ob.el
+
+(autoload 'org-babel-execute-safely-maybe "ob" "\
+Not documented
+
+\(fn)" nil nil)
+
+(autoload 'org-babel-execute-maybe "ob" "\
+Not documented
+
+\(fn)" t nil)
+
+(autoload 'org-babel-expand-src-block-maybe "ob" "\
+Conditionally expand a source block.
+Detect if this is context for a org-babel src-block and if so
+then run `org-babel-expand-src-block'.
+
+\(fn)" t nil)
+
+(autoload 'org-babel-load-in-session-maybe "ob" "\
+Conditionally load a source block in a session.
+Detect if this is context for a org-babel src-block and if so
+then run `org-babel-load-in-session'.
+
+\(fn)" t nil)
+
+(autoload 'org-babel-pop-to-session-maybe "ob" "\
+Conditionally pop to a session.
+Detect if this is context for a org-babel src-block and if so
+then run `org-babel-pop-to-session'.
+
+\(fn)" t nil)
+
+(autoload 'org-babel-execute-src-block "ob" "\
+Execute the current source code block.
+Insert the results of execution into the buffer.  Source code
+execution and the collection and formatting of results can be
+controlled through a variety of header arguments.
+
+With prefix argument ARG, force re-execution even if a an
+existing result cached in the buffer would otherwise have been
+returned.
+
+Optionally supply a value for INFO in the form returned by
+`org-babel-get-src-block-info'.
+
+Optionally supply a value for PARAMS which will be merged with
+the header arguments specified at the front of the source code
+block.
+
+\(fn &optional ARG INFO PARAMS)" t nil)
+
+(autoload 'org-babel-expand-src-block "ob" "\
+Expand the current source code block.
+Expand according to the source code block's header
+arguments and pop open the results in a preview buffer.
+
+\(fn &optional ARG INFO PARAMS)" t nil)
+
+(autoload 'org-babel-load-in-session "ob" "\
+Load the body of the current source-code block.
+Evaluate the header arguments for the source block before
+entering the session.  After loading the body this pops open the
+session.
+
+\(fn &optional ARG INFO)" t nil)
+
+(autoload 'org-babel-initiate-session "ob" "\
+Initiate session for current code block.
+If called with a prefix argument then resolve any variable
+references in the header arguments and assign these variables in
+the session. Copy the body of the code block to the kill ring.
+
+\(fn &optional ARG INFO)" t nil)
+
+(autoload 'org-babel-switch-to-session "ob" "\
+Switch to the session of the current code block.
+Uses `org-babel-initiate-session' to start the session. If called
+with a prefix argument then this is passed on to
+`org-babel-initiate-session'.
+
+\(fn &optional ARG INFO)" t nil)
+
+(autoload 'org-babel-switch-to-session-with-code "ob" "\
+Switch to code buffer and display session.
+
+\(fn &optional ARG INFO)" t nil)
+
+(autoload 'org-babel-open-src-block-result "ob" "\
+If `point' is on a src block then open the results of the
+source code block, otherwise return nil.  With optional prefix
+argument RE-RUN the source-code block is evaluated even if
+results already exist.
+
+\(fn &optional RE-RUN)" t nil)
+
+(autoload 'org-babel-execute-buffer "ob" "\
+Execute source code blocks in a buffer.
+Call `org-babel-execute-src-block' on every source block in
+the current buffer.
+
+\(fn &optional ARG)" t nil)
+
+(autoload 'org-babel-execute-subtree "ob" "\
+Execute source code blocks in a subtree.
+Call `org-babel-execute-src-block' on every source block in
+the current subtree.
+
+\(fn &optional ARG)" t nil)
+
+(autoload 'org-babel-sha1-hash "ob" "\
+Generate an sha1 hash based on the value of info.
+
+\(fn &optional INFO)" t nil)
+
+(autoload 'org-babel-hide-result-toggle-maybe "ob" "\
+Toggle visibility of result at point.
+
+\(fn)" t nil)
+
+(autoload 'org-babel-goto-src-block-head "ob" "\
+Go to the beginning of the current code block.
+
+\(fn)" t nil)
+
+(autoload 'org-babel-goto-named-src-block "ob" "\
+Go to a named source-code block.
+
+\(fn NAME)" t nil)
+
+(autoload 'org-babel-goto-named-result "ob" "\
+Go to a named result.
+
+\(fn NAME)" t nil)
+
+(autoload 'org-babel-next-src-block "ob" "\
+Jump to the next source block.
+With optional prefix argument ARG, jump forward ARG many source blocks.
+
+\(fn &optional ARG)" t nil)
+
+(autoload 'org-babel-previous-src-block "ob" "\
+Jump to the previous source block.
+With optional prefix argument ARG, jump backward ARG many source blocks.
+
+\(fn &optional ARG)" t nil)
+
+(autoload 'org-babel-mark-block "ob" "\
+Mark current src block
+
+\(fn)" t nil)
+
+;;;***
+
+;;;### (autoloads (org-babel-describe-bindings) "ob-keys" "org/ob-keys.el"
+;;;;;;  (19677 58077))
+;;; Generated autoloads from org/ob-keys.el
+
+(autoload 'org-babel-describe-bindings "ob-keys" "\
+Describe all keybindings behind `org-babel-key-prefix'.
+
+\(fn)" t nil)
+
+;;;***
+
+;;;### (autoloads (org-babel-lob-get-info org-babel-lob-execute-maybe
+;;;;;;  org-babel-lob-ingest) "ob-lob" "org/ob-lob.el" (19681 9924))
+;;; Generated autoloads from org/ob-lob.el
+
+(autoload 'org-babel-lob-ingest "ob-lob" "\
+Add all named source-blocks defined in FILE to
+`org-babel-library-of-babel'.
+
+\(fn &optional FILE)" t nil)
+
+(autoload 'org-babel-lob-execute-maybe "ob-lob" "\
+Execute a Library of Babel source block, if appropriate.
+Detect if this is context for a Library Of Babel source block and
+if so then run the appropriate source block from the Library.
+
+\(fn)" t nil)
+
+(autoload 'org-babel-lob-get-info "ob-lob" "\
+Return a Library of Babel function call as a string.
+
+\(fn)" nil nil)
+
+;;;***
+
+;;;### (autoloads (org-babel-tangle org-babel-tangle-file org-babel-load-file
+;;;;;;  org-babel-tangle-lang-exts) "ob-tangle" "org/ob-tangle.el"
+;;;;;;  (19677 58077))
+;;; Generated autoloads from org/ob-tangle.el
+
+(defvar org-babel-tangle-lang-exts '(("emacs-lisp" . "el")) "\
+Alist mapping languages to their file extensions.
+The key is the language name, the value is the string that should
+be inserted as the extension commonly used to identify files
+written in this language.  If no entry is found in this list,
+then the name of the language is used.")
+
+(custom-autoload 'org-babel-tangle-lang-exts "ob-tangle" t)
+
+(autoload 'org-babel-load-file "ob-tangle" "\
+Load Emacs Lisp source code blocks in the Org-mode FILE.
+This function exports the source code using
+`org-babel-tangle' and then loads the resulting file using
+`load-file'.
+
+\(fn FILE)" nil nil)
+
+(autoload 'org-babel-tangle-file "ob-tangle" "\
+Extract the bodies of source code blocks in FILE.
+Source code blocks are extracted with `org-babel-tangle'.
+Optional argument TARGET-FILE can be used to specify a default
+export file for all source blocks.  Optional argument LANG can be
+used to limit the exported source code blocks by language.
+
+\(fn FILE &optional TARGET-FILE LANG)" t nil)
+
+(autoload 'org-babel-tangle "ob-tangle" "\
+Write code blocks to source-specific files.
+Extract the bodies of all source code blocks from the current
+file into their own source-specific files.  Optional argument
+TARGET-FILE can be used to specify a default export file for all
+source blocks.  Optional argument LANG can be used to limit the
+exported source code blocks by language.
+
+\(fn &optional TARGET-FILE LANG)" t nil)
+
+;;;***
+
 ;;;### (autoloads (inferior-octave) "octave-inf" "progmodes/octave-inf.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from progmodes/octave-inf.el
 
 (autoload 'inferior-octave "octave-inf" "\
@@ -18548,7 +18482,7 @@
 ;;;***
 
 ;;;### (autoloads (octave-mode) "octave-mod" "progmodes/octave-mod.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19686 22639))
 ;;; Generated autoloads from progmodes/octave-mod.el
 
 (autoload 'octave-mode "octave-mod" "\
@@ -18579,14 +18513,6 @@
 Variables you can use to customize Octave mode
 ==============================================
 
-`octave-auto-indent'
-  Non-nil means indent current line after a semicolon or space.
-  Default is nil.
-
-`octave-auto-newline'
-  Non-nil means auto-insert a newline and indent after a semicolon.
-  Default is nil.
-
 `octave-blink-matching-block'
   Non-nil means show matching begin of block when inserting a space,
   newline or semicolon after an else or end keyword.  Default is t.
@@ -18639,13 +18565,19 @@
 ;;;***
 
 ;;;### (autoloads (org-customize org-reload org-require-autoloaded-modules
-;;;;;;  org-submit-bug-report org-cycle-agenda-files org-iswitchb
+;;;;;;  org-submit-bug-report org-cycle-agenda-files org-switchb
 ;;;;;;  org-map-entries org-open-link-from-string org-open-at-point-global
 ;;;;;;  org-insert-link-global org-store-link org-run-like-in-org-mode
 ;;;;;;  turn-on-orgstruct++ turn-on-orgstruct orgstruct-mode org-global-cycle
-;;;;;;  org-mode) "org" "org/org.el" (19356 10801))
+;;;;;;  org-mode org-babel-do-load-languages) "org" "org/org.el"
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org.el
 
+(autoload 'org-babel-do-load-languages "org" "\
+Load the languages defined in `org-babel-load-languages'.
+
+\(fn SYM VALUE)" nil nil)
+
 (autoload 'org-mode "org" "\
 Outline-based notes management and organizer, alias
 \"Carsten's outline-mode for keeping track of everything.\"
@@ -18671,17 +18603,17 @@
 
 (autoload 'org-global-cycle "org" "\
 Cycle the global visibility.  For details see `org-cycle'.
-With C-u prefix arg, switch to startup visibility.
+With \\[universal-argument] prefix arg, switch to startup visibility.
 With a numeric prefix, show all headlines up to that level.
 
 \(fn &optional ARG)" t nil)
 
 (autoload 'orgstruct-mode "org" "\
-Toggle the minor more `orgstruct-mode'.
-This mode is for using Org-mode structure commands in other modes.
-The following key behave as if Org-mode was active, if the cursor
-is on a headline, or on a plain list item (both in the definition
-of Org-mode).
+Toggle the minor mode `orgstruct-mode'.
+This mode is for using Org-mode structure commands in other
+modes.  The following keys behave as if Org-mode were active, if
+the cursor is on a headline, or on a plain list item (both as
+defined by Org-mode).
 
 M-up        Move entry/item up
 M-down	    Move entry/item down
@@ -18807,14 +18739,19 @@
 
 \(fn FUNC &optional MATCH SCOPE &rest SKIP)" nil nil)
 
-(autoload 'org-iswitchb "org" "\
-Use `org-icompleting-read' to prompt for an Org buffer to switch to.
+(autoload 'org-switchb "org" "\
+Switch between Org buffers.
 With a prefix argument, restrict available to files.
 With two prefix arguments, restrict available buffers to agenda files.
 
-\(fn &optional ARG)" t nil)
-
-(defalias 'org-ido-switchb 'org-iswitchb)
+Defaults to `iswitchb' for buffer name completion.
+Set `org-completion-use-ido' to make it use ido instead.
+
+\(fn &optional ARG)" t nil)
+
+(defalias 'org-ido-switchb 'org-switchb)
+
+(defalias 'org-iswitchb 'org-switchb)
 
 (autoload 'org-cycle-agenda-files "org" "\
 Cycle through the files in `org-agenda-files'.
@@ -18856,7 +18793,7 @@
 ;;;;;;  org-diary org-agenda-list-stuck-projects org-tags-view org-todo-list
 ;;;;;;  org-search-view org-agenda-list org-batch-store-agenda-views
 ;;;;;;  org-store-agenda-views org-batch-agenda-csv org-batch-agenda
-;;;;;;  org-agenda) "org-agenda" "org/org-agenda.el" (19279 5151))
+;;;;;;  org-agenda) "org-agenda" "org/org-agenda.el" (19677 58077))
 ;;; Generated autoloads from org/org-agenda.el
 
 (autoload 'org-agenda "org-agenda" "\
@@ -18900,7 +18837,7 @@
 If CMD-KEY is a string of length 1, it is used as a key in
 `org-agenda-custom-commands' and triggers this command.  If it is a
 longer string it is used as a tags/todo match string.
-Paramters are alternating variable names and values that will be bound
+Parameters are alternating variable names and values that will be bound
 before running the agenda command.
 
 \(fn CMD-KEY &rest PARAMETERS)" nil (quote macro))
@@ -18910,7 +18847,7 @@
 If CMD-KEY is a string of length 1, it is used as a key in
 `org-agenda-custom-commands' and triggers this command.  If it is a
 longer string it is used as a tags/todo match string.
-Paramters are alternating variable names and values that will be bound
+Parameters are alternating variable names and values that will be bound
 before running the agenda command.
 
 The output gives a line for each selected agenda item.  Each
@@ -18972,9 +18909,7 @@
 \(fn &optional INCLUDE-ALL START-DAY NDAYS)" t nil)
 
 (autoload 'org-search-view "org-agenda" "\
-Show all entries that contain words or regular expressions.
-If the first character of the search string is an asterisks,
-search only the headlines.
+Show all entries that contain a phrase or words or regular expressions.
 
 With optional prefix argument TODO-ONLY, only consider entries that are
 TODO entries.  The argument STRING can be used to pass a default search
@@ -18982,28 +18917,37 @@
 user should get a chance to edit this string, with cursor at position
 EDIT-AT.
 
-The search string is broken into \"words\" by splitting at whitespace.
-Depending on the variable `org-agenda-search-view-search-words-only'
-and on whether the first character in the search string is \"+\" or \"-\",
-The string is then interpreted either as a substring with variable amounts
-of whitespace, or as a list or individual words that should be matched.
-
-The default is a substring match, where each space in the search string
-can expand to an arbitrary amount of whitespace, including newlines.
-
-If matching individual words, these words are then interpreted as a
-boolean expression with logical AND.  Words prefixed with a minus must
-not occur in the entry. Words without a prefix or prefixed with a plus
-must occur in the entry.  Matching is case-insensitive and the words
-are enclosed by word delimiters.
-
-Words enclosed by curly braces are interpreted as regular expressions
-that must or must not match in the entry.
-
-If the search string starts with an asterisk, search only in headlines.
-If (possibly after the leading star) the search string starts with an
-exclamation mark, this also means to look at TODO entries only, an effect
-that can also be achieved with a prefix argument.
+The search string can be viewed either as a phrase that should be found as
+is, or it can be broken into a number of snippets, each of which must match
+in a Boolean way to select an entry.  The default depends on the variable
+`org-agenda-search-view-always-boolean'.
+Even if this is turned off (the default) you can always switch to
+Boolean search dynamically by preceding the first word with  \"+\" or \"-\".
+
+The default is a direct search of the whole phrase, where each space in
+the search string can expand to an arbitrary amount of whitespace,
+including newlines.
+
+If using a Boolean search, the search string is split on whitespace and
+each snippet is searched separately, with logical AND to select an entry.
+Words prefixed with a minus must *not* occur in the entry.  Words without
+a prefix or prefixed with a plus must occur in the entry.  Matching is
+case-insensitive.  Words are enclosed by word delimiters (i.e. they must
+match whole words, not parts of a word) if
+`org-agenda-search-view-force-full-words' is set (default is nil).
+
+Boolean search snippets enclosed by curly braces are interpreted as
+regular expressions that must or (when preceded with \"-\") must not
+match in the entry.  Snippets enclosed into double quotes will be taken
+as a whole, to include whitespace.
+
+- If the search string starts with an asterisk, search only in headlines.
+- If (possibly after the leading star) the search string starts with an
+  exclamation mark, this also means to look at TODO entries only, an effect
+  that can also be achieved with a prefix argument.
+- If (possibly after star and exclamation mark) the search string starts
+  with a colon, this will mean that the (non-regexp) snippets of the
+  Boolean search must match as full words.
 
 This command searches the agenda files, and in addition the files listed
 in `org-agenda-text-search-extra-files'.
@@ -19011,7 +18955,7 @@
 \(fn &optional TODO-ONLY STRING EDIT-AT)" t nil)
 
 (autoload 'org-todo-list "org-agenda" "\
-Show all TODO entries from all agenda file in a single list.
+Show all (not done) TODO entries from all agenda file in a single list.
 The prefix arg can be used to select a specific TODO keyword and limit
 the list to these.  When using \\[universal-argument], you will be prompted
 for a keyword.  A numeric prefix directly selects the Nth keyword in
@@ -19030,7 +18974,6 @@
 Stuck projects are project that have no next actions.  For the definitions
 of what a project is and how to check if it stuck, customize the variable
 `org-stuck-projects'.
-MATCH is being ignored.
 
 \(fn &rest IGNORE)" t nil)
 
@@ -19039,27 +18982,8 @@
 This function can be used in a \"sexp\" diary entry in the Emacs calendar.
 It accesses org files and extracts information from those files to be
 listed in the diary.  The function accepts arguments specifying what
-items should be listed.  The following arguments are allowed:
-
-   :timestamp    List the headlines of items containing a date stamp or
-		 date range matching the selected date.  Deadlines will
-		 also be listed, on the expiration day.
-
-   :sexp         List entries resulting from diary-like sexps.
-
-   :deadline     List any deadlines past due, or due within
-		 `org-deadline-warning-days'.  The listing occurs only
-		 in the diary for *today*, not at any other date.  If
-		 an entry is marked DONE, it is no longer listed.
-
-   :scheduled    List all items which are scheduled for the given date.
-		 The diary for *today* also contains items which were
-		 scheduled earlier and are not yet marked DONE.
-
-   :todo         List all TODO items from the org-file.  This may be a
-		 long list - so this is not turned on by default.
-		 Like deadlines, these entries only show up in the
-		 diary for *today*, not at any other date.
+items should be listed.  For a list of arguments allowed here, see the
+variable `org-agenda-entry-types'.
 
 The call in the diary file should look like this:
 
@@ -19083,7 +19007,7 @@
 \(fn &rest ARGS)" nil nil)
 
 (autoload 'org-agenda-check-for-timestamp-as-reason-to-ignore-todo-item "org-agenda" "\
-Do we have a reason to ignore this todo entry because it has a time stamp?
+Do we have a reason to ignore this TODO entry because it has a time stamp?
 
 \(fn &optional END)" nil nil)
 
@@ -19119,7 +19043,7 @@
 
 ;;;### (autoloads (org-archive-subtree-default-with-confirmation
 ;;;;;;  org-archive-subtree-default) "org-archive" "org/org-archive.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org-archive.el
 
 (autoload 'org-archive-subtree-default "org-archive" "\
@@ -19137,10 +19061,32 @@
 ;;;***
 
 ;;;### (autoloads (org-export-as-ascii org-export-region-as-ascii
-;;;;;;  org-replace-region-by-ascii org-export-as-ascii-to-buffer)
-;;;;;;  "org-ascii" "org/org-ascii.el" (19279 5151))
+;;;;;;  org-replace-region-by-ascii org-export-as-ascii-to-buffer
+;;;;;;  org-export-as-utf8-to-buffer org-export-as-utf8 org-export-as-latin1-to-buffer
+;;;;;;  org-export-as-latin1) "org-ascii" "org/org-ascii.el" (19677
+;;;;;;  58077))
 ;;; Generated autoloads from org/org-ascii.el
 
+(autoload 'org-export-as-latin1 "org-ascii" "\
+Like `org-export-as-ascii', use latin1 encoding for special symbols.
+
+\(fn &rest ARGS)" t nil)
+
+(autoload 'org-export-as-latin1-to-buffer "org-ascii" "\
+Like `org-export-as-ascii-to-buffer', use latin1 encoding for symbols.
+
+\(fn &rest ARGS)" t nil)
+
+(autoload 'org-export-as-utf8 "org-ascii" "\
+Like `org-export-as-ascii', use use encoding for special symbols.
+
+\(fn &rest ARGS)" t nil)
+
+(autoload 'org-export-as-utf8-to-buffer "org-ascii" "\
+Like `org-export-as-ascii-to-buffer', use utf8 encoding for symbols.
+
+\(fn &rest ARGS)" t nil)
+
 (autoload 'org-export-as-ascii-to-buffer "org-ascii" "\
 Call `org-export-as-ascii` with output to a temporary buffer.
 No file is created.  The prefix ARG is passed through to `org-export-as-ascii'.
@@ -19191,8 +19137,8 @@
 
 ;;;***
 
-;;;### (autoloads (org-attach) "org-attach" "org/org-attach.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (org-attach) "org-attach" "org/org-attach.el" (19677
+;;;;;;  58077))
 ;;; Generated autoloads from org/org-attach.el
 
 (autoload 'org-attach "org-attach" "\
@@ -19204,7 +19150,7 @@
 ;;;***
 
 ;;;### (autoloads (org-bbdb-anniversaries) "org-bbdb" "org/org-bbdb.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org-bbdb.el
 
 (autoload 'org-bbdb-anniversaries "org-bbdb" "\
@@ -19214,8 +19160,46 @@
 
 ;;;***
 
+;;;### (autoloads (org-capture-import-remember-templates org-capture-insert-template-here
+;;;;;;  org-capture) "org-capture" "org/org-capture.el" (19677 58077))
+;;; Generated autoloads from org/org-capture.el
+
+(autoload 'org-capture "org-capture" "\
+Capture something.
+\\<org-capture-mode-map>
+This will let you select a template from `org-capture-templates', and then
+file the newly captured information.  The text is immediately inserted
+at the target location, and an indirect buffer is shown where you can
+edit it.  Pressing \\[org-capture-finalize] brings you back to the previous state
+of Emacs, so that you can continue your work.
+
+When called interactively with a \\[universal-argument] prefix argument GOTO, don't capture
+anything, just go to the file/headline where the selected template
+stores its notes.  With a double prefix argument \\[universal-argument] \\[universal-argument], go to the last note
+stored.
+
+When called with a `C-0' (zero) prefix, insert a template at point.
+
+Lisp programs can set KEYS to a string associated with a template in
+`org-capture-templates'.  In this case, interactive selection will be
+bypassed.
+
+\(fn &optional GOTO KEYS)" t nil)
+
+(autoload 'org-capture-insert-template-here "org-capture" "\
+Not documented
+
+\(fn)" nil nil)
+
+(autoload 'org-capture-import-remember-templates "org-capture" "\
+Set org-capture-templates to be similar to `org-remember-templates'.
+
+\(fn)" t nil)
+
+;;;***
+
 ;;;### (autoloads (org-clock-persistence-insinuate org-get-clocktable)
-;;;;;;  "org-clock" "org/org-clock.el" (19279 5151))
+;;;;;;  "org-clock" "org/org-clock.el" (19677 58077))
 ;;; Generated autoloads from org/org-clock.el
 
 (autoload 'org-get-clocktable "org-clock" "\
@@ -19226,16 +19210,30 @@
 \(fn &rest PROPS)" nil nil)
 
 (autoload 'org-clock-persistence-insinuate "org-clock" "\
-Set up hooks for clock persistence
-
-\(fn)" nil nil)
+Set up hooks for clock persistence.
+
+\(fn)" nil nil)
+
+;;;***
+
+;;;### (autoloads (org-datetree-find-date-create) "org-datetree"
+;;;;;;  "org/org-datetree.el" (19677 58077))
+;;; Generated autoloads from org/org-datetree.el
+
+(autoload 'org-datetree-find-date-create "org-datetree" "\
+Find or create an entry for DATE.
+If KEEP-RESTRICTION is non-nil, do not widen the buffer.
+When it is nil, the buffer will be widened to make sure an existing date
+tree can be found.
+
+\(fn DATE &optional KEEP-RESTRICTION)" nil nil)
 
 ;;;***
 
 ;;;### (autoloads (org-export-as-docbook org-export-as-docbook-pdf-and-open
 ;;;;;;  org-export-as-docbook-pdf org-export-region-as-docbook org-replace-region-by-docbook
 ;;;;;;  org-export-as-docbook-to-buffer org-export-as-docbook-batch)
-;;;;;;  "org-docbook" "org/org-docbook.el" (19279 5151))
+;;;;;;  "org-docbook" "org/org-docbook.el" (19677 58077))
 ;;; Generated autoloads from org/org-docbook.el
 
 (autoload 'org-export-as-docbook-batch "org-docbook" "\
@@ -19312,7 +19310,7 @@
 
 ;;;### (autoloads (org-insert-export-options-template org-export-as-org
 ;;;;;;  org-export-visible org-export) "org-exp" "org/org-exp.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org-exp.el
 
 (autoload 'org-export "org-exp" "\
@@ -19322,7 +19320,7 @@
 to a file.  For details see the docstring of `org-export-run-in-background'.
 
 The prefix argument ARG will be passed to the exporter.  However, if
-ARG is a double universal prefix `C-u C-u', that means to inverse the
+ARG is a double universal prefix \\[universal-argument] \\[universal-argument], that means to inverse the
 value of `org-export-run-in-background'.
 
 \(fn &optional ARG)" t nil)
@@ -19330,8 +19328,8 @@
 (autoload 'org-export-visible "org-exp" "\
 Create a copy of the visible part of the current buffer, and export it.
 The copy is created in a temporary buffer and removed after use.
-TYPE is the final key (as a string) that also select the export command in
-the `C-c C-e' export dispatcher.
+TYPE is the final key (as a string) that also selects the export command in
+the \\<org-mode-map>\\[org-export] export dispatcher.
 As a special case, if the you type SPC at the prompt, the temporary
 org-mode file will not be removed but presented to you so that you can
 continue to use it.  The prefix arg ARG is passed through to the exporting
@@ -19369,8 +19367,8 @@
 ;;;***
 
 ;;;### (autoloads (org-feed-show-raw-feed org-feed-goto-inbox org-feed-update
-;;;;;;  org-feed-update-all) "org-feed" "org/org-feed.el" (19279
-;;;;;;  5151))
+;;;;;;  org-feed-update-all) "org-feed" "org/org-feed.el" (19677
+;;;;;;  58077))
 ;;; Generated autoloads from org/org-feed.el
 
 (autoload 'org-feed-update-all "org-feed" "\
@@ -19398,7 +19396,7 @@
 ;;;***
 
 ;;;### (autoloads (org-footnote-normalize org-footnote-action) "org-footnote"
-;;;;;;  "org/org-footnote.el" (19279 5151))
+;;;;;;  "org/org-footnote.el" (19677 58077))
 ;;; Generated autoloads from org/org-footnote.el
 
 (autoload 'org-footnote-action "org-footnote" "\
@@ -19425,13 +19423,26 @@
 ;;;### (autoloads (org-freemind-to-org-mode org-freemind-from-org-sparse-tree
 ;;;;;;  org-freemind-from-org-mode org-freemind-from-org-mode-node
 ;;;;;;  org-freemind-show org-export-as-freemind) "org-freemind"
-;;;;;;  "org/org-freemind.el" (19323 49698))
+;;;;;;  "org/org-freemind.el" (19677 58077))
 ;;; Generated autoloads from org/org-freemind.el
 
 (autoload 'org-export-as-freemind "org-freemind" "\
-Not documented
-
-\(fn ARG &optional HIDDEN EXT-PLIST TO-BUFFER BODY-ONLY PUB-DIR)" t nil)
+Export the current buffer as a Freemind file.
+If there is an active region, export only the region.  HIDDEN is
+obsolete and does nothing.  EXT-PLIST is a property list with
+external parameters overriding org-mode's default settings, but
+still inferior to file-local settings.  When TO-BUFFER is
+non-nil, create a buffer with that name and export to that
+buffer.  If TO-BUFFER is the symbol `string', don't leave any
+buffer behind but just return the resulting HTML as a string.
+When BODY-ONLY is set, don't produce the file header and footer,
+simply return the content of the document (all top level
+sections).  When PUB-DIR is set, use this as the publishing
+directory.
+
+See `org-freemind-from-org-mode' for more information.
+
+\(fn &optional HIDDEN EXT-PLIST TO-BUFFER BODY-ONLY PUB-DIR)" t nil)
 
 (autoload 'org-freemind-show "org-freemind" "\
 Show file MM-FILE in Freemind.
@@ -19440,11 +19451,21 @@
 
 (autoload 'org-freemind-from-org-mode-node "org-freemind" "\
 Convert node at line NODE-LINE to the FreeMind file MM-FILE.
+See `org-freemind-from-org-mode' for more information.
 
 \(fn NODE-LINE MM-FILE)" t nil)
 
 (autoload 'org-freemind-from-org-mode "org-freemind" "\
 Convert the `org-mode' file ORG-FILE to the FreeMind file MM-FILE.
+All the nodes will be opened or closed in Freemind just as you
+have them in `org-mode'.
+
+Note that exporting to Freemind also gives you an alternative way
+to export from `org-mode' to html.  You can create a dynamic html
+version of the your org file, by first exporting to Freemind and
+then exporting from Freemind to html.  The 'As
+XHTML (JavaScript)' version in Freemind works very well (and you
+can use a CSS stylesheet to style it).
 
 \(fn ORG-FILE MM-FILE)" t nil)
 
@@ -19463,7 +19484,7 @@
 ;;;### (autoloads (org-export-htmlize-generate-css org-export-as-html
 ;;;;;;  org-export-region-as-html org-replace-region-by-html org-export-as-html-to-buffer
 ;;;;;;  org-export-as-html-batch org-export-as-html-and-open) "org-html"
-;;;;;;  "org/org-html.el" (19279 5151))
+;;;;;;  "org/org-html.el" (19677 58077))
 ;;; Generated autoloads from org/org-html.el
 
 (put 'org-export-html-style-include-default 'safe-local-variable 'booleanp)
@@ -19481,7 +19502,8 @@
 \(fn ARG)" t nil)
 
 (autoload 'org-export-as-html-batch "org-html" "\
-Call `org-export-as-html', may be used in batch processing as
+Call the function `org-export-as-html'.
+This function can be used in batch processing as:
 emacs   --batch
         --load=$HOME/lib/emacs/org.el
         --eval \"(setq org-export-headline-levels 2)\"
@@ -19556,7 +19578,7 @@
 
 ;;;### (autoloads (org-export-icalendar-combine-agenda-files org-export-icalendar-all-agenda-files
 ;;;;;;  org-export-icalendar-this-file) "org-icalendar" "org/org-icalendar.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org-icalendar.el
 
 (autoload 'org-export-icalendar-this-file "org-icalendar" "\
@@ -19567,7 +19589,7 @@
 \(fn)" t nil)
 
 (autoload 'org-export-icalendar-all-agenda-files "org-icalendar" "\
-Export all files in `org-agenda-files' to iCalendar .ics files.
+Export all files in the variable `org-agenda-files' to iCalendar .ics files.
 Each iCalendar file will be located in the same directory as the Org-mode
 file, but with extension `.ics'.
 
@@ -19581,9 +19603,10 @@
 
 ;;;***
 
-;;;### (autoloads (org-id-find-id-file org-id-find org-id-goto org-id-get-with-outline-drilling
-;;;;;;  org-id-get-with-outline-path-completion org-id-get org-id-copy
-;;;;;;  org-id-get-create) "org-id" "org/org-id.el" (19279 5151))
+;;;### (autoloads (org-id-store-link org-id-find-id-file org-id-find
+;;;;;;  org-id-goto org-id-get-with-outline-drilling org-id-get-with-outline-path-completion
+;;;;;;  org-id-get org-id-copy org-id-get-create) "org-id" "org/org-id.el"
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org-id.el
 
 (autoload 'org-id-get-create "org-id" "\
@@ -19644,10 +19667,15 @@
 
 \(fn ID)" nil nil)
 
+(autoload 'org-id-store-link "org-id" "\
+Store a link to the current entry, using its ID.
+
+\(fn)" t nil)
+
 ;;;***
 
 ;;;### (autoloads (org-indent-mode) "org-indent" "org/org-indent.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org-indent.el
 
 (autoload 'org-indent-mode "org-indent" "\
@@ -19662,7 +19690,7 @@
 ;;;***
 
 ;;;### (autoloads (org-irc-store-link) "org-irc" "org/org-irc.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org-irc.el
 
 (autoload 'org-irc-store-link "org-irc" "\
@@ -19675,7 +19703,7 @@
 ;;;### (autoloads (org-export-as-pdf-and-open org-export-as-pdf org-export-as-latex
 ;;;;;;  org-export-region-as-latex org-replace-region-by-latex org-export-as-latex-to-buffer
 ;;;;;;  org-export-as-latex-batch) "org-latex" "org/org-latex.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org-latex.el
 
 (autoload 'org-export-as-latex-batch "org-latex" "\
@@ -19736,8 +19764,8 @@
 buffer.  If TO-BUFFER is the symbol `string', don't leave any
 buffer behind but just return the resulting LaTeX as a string.
 When BODY-ONLY is set, don't produce the file header and footer,
-simply return the content of egin{document}...nd{document},
-without even the egin{document} and nd{document} commands.
+simply return the content of \\begin{document}...\\end{document},
+without even the \\begin{document} and \\end{document} commands.
 when PUB-DIR is set, use this as the publishing directory.
 
 \(fn ARG &optional HIDDEN EXT-PLIST TO-BUFFER BODY-ONLY PUB-DIR)" t nil)
@@ -19755,8 +19783,8 @@
 ;;;***
 
 ;;;### (autoloads (org-mobile-create-sumo-agenda org-mobile-pull
-;;;;;;  org-mobile-push) "org-mobile" "org/org-mobile.el" (19279
-;;;;;;  5151))
+;;;;;;  org-mobile-push) "org-mobile" "org/org-mobile.el" (19677
+;;;;;;  58077))
 ;;; Generated autoloads from org/org-mobile.el
 
 (autoload 'org-mobile-push "org-mobile" "\
@@ -19781,11 +19809,11 @@
 ;;;***
 
 ;;;### (autoloads (org-plot/gnuplot) "org-plot" "org/org-plot.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org-plot.el
 
 (autoload 'org-plot/gnuplot "org-plot" "\
-Plot table using gnuplot. Gnuplot options can be specified with PARAMS.
+Plot table using gnuplot.  Gnuplot options can be specified with PARAMS.
 If not given options will be taken from the +PLOT
 line directly before or after the table.
 
@@ -19795,7 +19823,7 @@
 
 ;;;### (autoloads (org-publish-current-project org-publish-current-file
 ;;;;;;  org-publish-all org-publish) "org-publish" "org/org-publish.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org-publish.el
 
 (defalias 'org-publish-project 'org-publish)
@@ -19829,7 +19857,7 @@
 
 ;;;### (autoloads (org-remember-handler org-remember org-remember-apply-template
 ;;;;;;  org-remember-annotation org-remember-insinuate) "org-remember"
-;;;;;;  "org/org-remember.el" (19279 5151))
+;;;;;;  "org/org-remember.el" (19677 58077))
 ;;; Generated autoloads from org/org-remember.el
 
 (autoload 'org-remember-insinuate "org-remember" "\
@@ -19857,9 +19885,9 @@
 If there is an active region, make sure remember uses it as initial content
 of the remember buffer.
 
-When called interactively with a `C-u' prefix argument GOTO, don't remember
+When called interactively with a \\[universal-argument] prefix argument GOTO, don't remember
 anything, just go to the file/headline where the selected template usually
-stores its notes.  With a double prefix arg `C-u C-u', go to the last
+stores its notes.  With a double prefix argument \\[universal-argument] \\[universal-argument], go to the last
 note stored by remember.
 
 Lisp programs can set ORG-FORCE-REMEMBER-TEMPLATE-CHAR to a character
@@ -19872,21 +19900,22 @@
 When the template has specified a file and a headline, the entry is filed
 there, or in the location defined by `org-default-notes-file' and
 `org-remember-default-headline'.
-
+\\<org-remember-mode-map>
 If no defaults have been defined, or if the current prefix argument
-is 1 (so you must use `C-1 C-c C-c' to exit remember), an interactive
+is 1 (using C-1 \\[org-remember-finalize] to exit remember), an interactive
 process is used to select the target location.
 
-When the prefix is 0 (i.e. when remember is exited with `C-0 C-c C-c'),
+When the prefix is 0 (i.e. when remember is exited with C-0 \\[org-remember-finalize]),
 the entry is filed to the same location as the previous note.
 
-When the prefix is 2 (i.e. when remember is exited with `C-2 C-c C-c'),
+When the prefix is 2 (i.e. when remember is exited with C-2 \\[org-remember-finalize]),
 the entry is filed as a subentry of the entry where the clock is
 currently running.
 
-When `C-u' has been used as prefix argument, the note is stored and emacs
-moves point to the new location of the note, so that editing can be
-continued there (similar to inserting \"%&\" into the template).
+When \\[universal-argument] has been used as prefix argument, the
+note is stored and Emacs moves point to the new location of the
+note, so that editing can be continued there (similar to
+inserting \"%&\" into the template).
 
 Before storing the note, the function ensures that the text has an
 org-mode-style headline, i.e. a first line that starts with
@@ -19904,7 +19933,7 @@
 ;;;***
 
 ;;;### (autoloads (org-table-to-lisp orgtbl-mode turn-on-orgtbl)
-;;;;;;  "org-table" "org/org-table.el" (19279 5151))
+;;;;;;  "org-table" "org/org-table.el" (19677 58077))
 ;;; Generated autoloads from org/org-table.el
 
 (autoload 'turn-on-orgtbl "org-table" "\
@@ -19927,9 +19956,36 @@
 
 ;;;***
 
+;;;### (autoloads (org-export-as-taskjuggler-and-open org-export-as-taskjuggler)
+;;;;;;  "org-taskjuggler" "org/org-taskjuggler.el" (19677 58077))
+;;; Generated autoloads from org/org-taskjuggler.el
+
+(autoload 'org-export-as-taskjuggler "org-taskjuggler" "\
+Export parts of the current buffer as a TaskJuggler file.
+The exporter looks for a tree with tag, property or todo that
+matches `org-export-taskjuggler-project-tag' and takes this as
+the tasks for this project. The first node of this tree defines
+the project properties such as project name and project period.
+If there is a tree with tag, property or todo that matches
+`org-export-taskjuggler-resource-tag' this three is taken as
+resources for the project. If no resources are specified, a
+default resource is created and allocated to the project. Also
+the taskjuggler project will be created with default reports as
+defined in `org-export-taskjuggler-default-reports'.
+
+\(fn)" t nil)
+
+(autoload 'org-export-as-taskjuggler-and-open "org-taskjuggler" "\
+Export the current buffer as a TaskJuggler file and open it
+with the TaskJuggler GUI.
+
+\(fn)" t nil)
+
+;;;***
+
 ;;;### (autoloads (org-timer-set-timer org-timer-item org-timer-change-times-in-region
 ;;;;;;  org-timer org-timer-start) "org-timer" "org/org-timer.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org-timer.el
 
 (autoload 'org-timer-start "org-timer" "\
@@ -19948,12 +20004,15 @@
 (autoload 'org-timer "org-timer" "\
 Insert a H:MM:SS string from the timer into the buffer.
 The first time this command is used, the timer is started.  When used with
-a `C-u' prefix, force restarting the timer.
-When used with a double prefix arg `C-u C-u', change all the timer string
+a \\[universal-argument] prefix, force restarting the timer.
+When used with a double prefix argument \\[universal-argument], change all the timer string
 in the region by a fixed amount.  This can be used to recalibrate a timer
 that was not started at the correct moment.
 
-\(fn &optional RESTART)" t nil)
+If NO-INSERT-P is non-nil, return the string instead of inserting
+it in the buffer.
+
+\(fn &optional RESTART NO-INSERT-P)" t nil)
 
 (autoload 'org-timer-change-times-in-region "org-timer" "\
 Change all h:mm:ss time in region by a DELTA.
@@ -19966,14 +20025,28 @@
 \(fn &optional ARG)" t nil)
 
 (autoload 'org-timer-set-timer "org-timer" "\
-Set a timer.
-
-\(fn MINUTES)" t nil)
+Prompt for a duration and set a timer.
+
+If `org-timer-default-timer' is not zero, suggest this value as
+the default duration for the timer.  If a timer is already set,
+prompt the user if she wants to replace it.
+
+Called with a numeric prefix argument, use this numeric value as
+the duration of the timer.
+
+Called with a `C-u' prefix arguments, use `org-timer-default-timer'
+without prompting the user for a duration.
+
+With two `C-u' prefix arguments, use `org-timer-default-timer'
+without prompting the user for a duration and automatically
+replace any running timer.
+
+\(fn &optional OPT)" t nil)
 
 ;;;***
 
 ;;;### (autoloads (org-export-as-xoxo) "org-xoxo" "org/org-xoxo.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from org/org-xoxo.el
 
 (autoload 'org-export-as-xoxo "org-xoxo" "\
@@ -19985,7 +20058,7 @@
 ;;;***
 
 ;;;### (autoloads (outline-minor-mode outline-mode) "outline" "outline.el"
-;;;;;;  (19365 25156))
+;;;;;;  (19623 4932))
 ;;; Generated autoloads from outline.el
 (put 'outline-regexp 'safe-local-variable 'string-or-null-p)
 
@@ -20042,7 +20115,72 @@
 
 ;;;***
 
-;;;### (autoloads (show-paren-mode) "paren" "paren.el" (19279 5148))
+;;;### (autoloads (list-packages describe-package package-initialize
+;;;;;;  package-install-file package-install-from-buffer package-install
+;;;;;;  package-enable-at-startup) "package" "emacs-lisp/package.el"
+;;;;;;  (19675 9114))
+;;; Generated autoloads from emacs-lisp/package.el
+
+(defvar package-enable-at-startup t "\
+Whether to activate installed packages when Emacs starts.
+If non-nil, packages are activated after reading the init file
+and before `after-init-hook'.  Activation is not done if
+`user-init-file' is nil (e.g. Emacs was started with \"-q\").
+
+Even if the value is nil, you can type \\[package-initialize] to
+activate the package system at any time.")
+
+(custom-autoload 'package-enable-at-startup "package" t)
+
+(autoload 'package-install "package" "\
+Install the package named NAME.
+Interactively, prompt for the package name.
+The package is found on one of the archives in `package-archives'.
+
+\(fn NAME)" t nil)
+
+(autoload 'package-install-from-buffer "package" "\
+Install a package from the current buffer.
+When called interactively, the current buffer is assumed to be a
+single .el file that follows the packaging guidelines; see info
+node `(elisp)Packaging'.
+
+When called from Lisp, PKG-INFO is a vector describing the
+information, of the type returned by `package-buffer-info'; and
+TYPE is the package type (either `single' or `tar').
+
+\(fn PKG-INFO TYPE)" t nil)
+
+(autoload 'package-install-file "package" "\
+Install a package from a file.
+The file can either be a tar file or an Emacs Lisp file.
+
+\(fn FILE)" t nil)
+
+(autoload 'package-initialize "package" "\
+Load Emacs Lisp packages, and activate them.
+The variable `package-load-list' controls which packages to load.
+If optional arg NO-ACTIVATE is non-nil, don't activate packages.
+
+\(fn &optional NO-ACTIVATE)" t nil)
+
+(autoload 'describe-package "package" "\
+Display the full documentation of PACKAGE (a symbol).
+
+\(fn PACKAGE)" t nil)
+
+(autoload 'list-packages "package" "\
+Display a list of packages.
+Fetches the updated list of packages before displaying.
+The list is displayed in a buffer named `*Packages*'.
+
+\(fn)" t nil)
+
+(defalias 'package-list-packages 'list-packages)
+
+;;;***
+
+;;;### (autoloads (show-paren-mode) "paren" "paren.el" (19649 27409))
 ;;; Generated autoloads from paren.el
 
 (defvar show-paren-mode nil "\
@@ -20067,7 +20205,7 @@
 ;;;***
 
 ;;;### (autoloads (parse-time-string) "parse-time" "calendar/parse-time.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19583 31640))
 ;;; Generated autoloads from calendar/parse-time.el
 (put 'parse-time-rules 'risky-local-variable t)
 
@@ -20080,8 +20218,8 @@
 
 ;;;***
 
-;;;### (autoloads (pascal-mode) "pascal" "progmodes/pascal.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (pascal-mode) "pascal" "progmodes/pascal.el" (19671
+;;;;;;  21337))
 ;;; Generated autoloads from progmodes/pascal.el
 
 (autoload 'pascal-mode "pascal" "\
@@ -20105,26 +20243,26 @@
 
 Variables controlling indentation/edit style:
 
- pascal-indent-level (default 3)
+ `pascal-indent-level' (default 3)
     Indentation of Pascal statements with respect to containing block.
- pascal-case-indent (default 2)
+ `pascal-case-indent' (default 2)
     Indentation for case statements.
- pascal-auto-newline (default nil)
+ `pascal-auto-newline' (default nil)
     Non-nil means automatically newline after semicolons and the punctuation
     mark after an end.
- pascal-indent-nested-functions (default t)
+ `pascal-indent-nested-functions' (default t)
     Non-nil means nested functions are indented.
- pascal-tab-always-indent (default t)
+ `pascal-tab-always-indent' (default t)
     Non-nil means TAB in Pascal mode should always reindent the current line,
     regardless of where in the line point is when the TAB command is used.
- pascal-auto-endcomments (default t)
+ `pascal-auto-endcomments' (default t)
     Non-nil means a comment { ... } is set after the ends which ends cases and
     functions. The name of the function or case will be set between the braces.
- pascal-auto-lineup (default t)
+ `pascal-auto-lineup' (default t)
     List of contexts where auto lineup of :'s or ='s should be done.
 
-See also the user variables pascal-type-keywords, pascal-start-keywords and
-pascal-separator-keywords.
+See also the user variables `pascal-type-keywords', `pascal-start-keywords' and
+`pascal-separator-keywords'.
 
 Turning on Pascal mode calls the value of the variable pascal-mode-hook with
 no args, if that value is non-nil.
@@ -20134,7 +20272,7 @@
 ;;;***
 
 ;;;### (autoloads (password-cache-expiry password-cache) "password-cache"
-;;;;;;  "password-cache.el" (19365 25156))
+;;;;;;  "password-cache.el" (19583 31640))
 ;;; Generated autoloads from password-cache.el
 
 (defvar password-cache t "\
@@ -20151,7 +20289,7 @@
 ;;;***
 
 ;;;### (autoloads (pc-bindings-mode) "pc-mode" "emulation/pc-mode.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from emulation/pc-mode.el
 
 (autoload 'pc-bindings-mode "pc-mode" "\
@@ -20169,7 +20307,7 @@
 ;;;***
 
 ;;;### (autoloads (pc-selection-mode) "pc-select" "emulation/pc-select.el"
-;;;;;;  (19356 10801))
+;;;;;;  (19611 13362))
 ;;; Generated autoloads from emulation/pc-select.el
 
 (defvar pc-selection-mode nil "\
@@ -20182,7 +20320,7 @@
 (custom-autoload 'pc-selection-mode "pc-select" nil)
 
 (autoload 'pc-selection-mode "pc-select" "\
-Change mark behavior to emulate Motif, MAC or MS-Windows cut and paste style.
+Change mark behavior to emulate Motif, Mac or MS-Windows cut and paste style.
 
 This mode enables Delete Selection mode and Transient Mark mode.
 
@@ -20235,8 +20373,65 @@
 
 ;;;***
 
-;;;### (autoloads (pcomplete/cvs) "pcmpl-cvs" "pcmpl-cvs.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (pcase-let pcase-let* pcase) "pcase" "emacs-lisp/pcase.el"
+;;;;;;  (19677 58077))
+;;; Generated autoloads from emacs-lisp/pcase.el
+
+(autoload 'pcase "pcase" "\
+Perform ML-style pattern matching on EXP.
+CASES is a list of elements of the form (UPATTERN CODE...).
+
+UPatterns can take the following forms:
+  _		matches anything.
+  SYMBOL	matches anything and binds it to SYMBOL.
+  (or UPAT...)	matches if any of the patterns matches.
+  (and UPAT...)	matches if all the patterns match.
+  `QPAT		matches if the QPattern QPAT matches.
+  (pred PRED)	matches if PRED applied to the object returns non-nil.
+  (guard BOOLEXP)	matches if BOOLEXP evaluates to non-nil.
+
+QPatterns can take the following forms:
+  (QPAT1 . QPAT2)	matches if QPAT1 matches the car and QPAT2 the cdr.
+  ,UPAT			matches if the UPattern UPAT matches.
+  STRING			matches if the object is `equal' to STRING.
+  ATOM			matches if the object is `eq' to ATOM.
+QPatterns for vectors are not implemented yet.
+
+PRED can take the form
+  FUNCTION	in which case it gets called with one argument.
+  (FUN ARG1 .. ARGN) in which case it gets called with N+1 arguments.
+A PRED of the form FUNCTION is equivalent to one of the form (FUNCTION).
+PRED patterns can refer to variables bound earlier in the pattern.
+E.g. you can match pairs where the cdr is larger than the car with a pattern
+like `(,a . ,(pred (< a))) or, with more checks:
+`(,(and a (pred numberp)) . ,(and (pred numberp) (pred (< a))))
+
+\(fn EXP &rest CASES)" nil (quote macro))
+
+(put 'pcase 'lisp-indent-function '1)
+
+(autoload 'pcase-let* "pcase" "\
+Like `let*' but where you can use `pcase' patterns for bindings.
+BODY should be an expression, and BINDINGS should be a list of bindings
+of the form (UPAT EXP).
+
+\(fn BINDINGS BODY)" nil (quote macro))
+
+(put 'pcase-let* 'lisp-indent-function '1)
+
+(autoload 'pcase-let "pcase" "\
+Like `let' but where you can use `pcase' patterns for bindings.
+BODY should be an expression, and BINDINGS should be a list of bindings
+of the form (UPAT EXP).
+
+\(fn BINDINGS BODY)" nil (quote macro))
+
+(put 'pcase-let 'lisp-indent-function '1)
+
+;;;***
+
+;;;### (autoloads (pcomplete/cvs) "pcmpl-cvs" "pcmpl-cvs.el" (19578
+;;;;;;  56905))
 ;;; Generated autoloads from pcmpl-cvs.el
 
 (autoload 'pcomplete/cvs "pcmpl-cvs" "\
@@ -20247,7 +20442,7 @@
 ;;;***
 
 ;;;### (autoloads (pcomplete/tar pcomplete/make pcomplete/bzip2 pcomplete/gzip)
-;;;;;;  "pcmpl-gnu" "pcmpl-gnu.el" (19279 5148))
+;;;;;;  "pcmpl-gnu" "pcmpl-gnu.el" (19578 56905))
 ;;; Generated autoloads from pcmpl-gnu.el
 
 (autoload 'pcomplete/gzip "pcmpl-gnu" "\
@@ -20275,7 +20470,7 @@
 ;;;***
 
 ;;;### (autoloads (pcomplete/mount pcomplete/umount pcomplete/kill)
-;;;;;;  "pcmpl-linux" "pcmpl-linux.el" (19279 5148))
+;;;;;;  "pcmpl-linux" "pcmpl-linux.el" (19578 56905))
 ;;; Generated autoloads from pcmpl-linux.el
 
 (autoload 'pcomplete/kill "pcmpl-linux" "\
@@ -20295,8 +20490,8 @@
 
 ;;;***
 
-;;;### (autoloads (pcomplete/rpm) "pcmpl-rpm" "pcmpl-rpm.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (pcomplete/rpm) "pcmpl-rpm" "pcmpl-rpm.el" (19578
+;;;;;;  56905))
 ;;; Generated autoloads from pcmpl-rpm.el
 
 (autoload 'pcomplete/rpm "pcmpl-rpm" "\
@@ -20308,7 +20503,7 @@
 
 ;;;### (autoloads (pcomplete/scp pcomplete/ssh pcomplete/chgrp pcomplete/chown
 ;;;;;;  pcomplete/which pcomplete/xargs pcomplete/rm pcomplete/rmdir
-;;;;;;  pcomplete/cd) "pcmpl-unix" "pcmpl-unix.el" (19282 55646))
+;;;;;;  pcomplete/cd) "pcmpl-unix" "pcmpl-unix.el" (19578 56905))
 ;;; Generated autoloads from pcmpl-unix.el
 
 (autoload 'pcomplete/cd "pcmpl-unix" "\
@@ -20365,8 +20560,8 @@
 
 ;;;### (autoloads (pcomplete-shell-setup pcomplete-comint-setup pcomplete-list
 ;;;;;;  pcomplete-help pcomplete-expand pcomplete-continue pcomplete-expand-and-complete
-;;;;;;  pcomplete-reverse pcomplete) "pcomplete" "pcomplete.el" (19279
-;;;;;;  5148))
+;;;;;;  pcomplete-reverse pcomplete) "pcomplete" "pcomplete.el" (19451
+;;;;;;  41962))
 ;;; Generated autoloads from pcomplete.el
 
 (autoload 'pcomplete "pcomplete" "\
@@ -20425,8 +20620,8 @@
 
 ;;;### (autoloads (cvs-dired-use-hook cvs-dired-action cvs-status
 ;;;;;;  cvs-update cvs-examine cvs-quickdir cvs-checkout) "pcvs"
-;;;;;;  "pcvs.el" (19279 5148))
-;;; Generated autoloads from pcvs.el
+;;;;;;  "vc/pcvs.el" (19474 38892))
+;;; Generated autoloads from vc/pcvs.el
 
 (autoload 'cvs-checkout "pcvs" "\
 Run a 'cvs checkout MODULES' in DIR.
@@ -20500,15 +20695,15 @@
 
 ;;;***
 
-;;;### (autoloads nil "pcvs-defs" "pcvs-defs.el" (19279 5148))
-;;; Generated autoloads from pcvs-defs.el
+;;;### (autoloads nil "pcvs-defs" "vc/pcvs-defs.el" (19578 56905))
+;;; Generated autoloads from vc/pcvs-defs.el
 
 (defvar cvs-global-menu (let ((m (make-sparse-keymap "PCL-CVS"))) (define-key m [status] `(menu-item ,(purecopy "Directory Status") cvs-status :help ,(purecopy "A more verbose status of a workarea"))) (define-key m [checkout] `(menu-item ,(purecopy "Checkout Module") cvs-checkout :help ,(purecopy "Check out a module from the repository"))) (define-key m [update] `(menu-item ,(purecopy "Update Directory") cvs-update :help ,(purecopy "Fetch updates from the repository"))) (define-key m [examine] `(menu-item ,(purecopy "Examine Directory") cvs-examine :help ,(purecopy "Examine the current state of a workarea"))) (fset 'cvs-global-menu m)))
 
 ;;;***
 
 ;;;### (autoloads (perl-mode) "perl-mode" "progmodes/perl-mode.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19669 58161))
 ;;; Generated autoloads from progmodes/perl-mode.el
 (put 'perl-indent-level 'safe-local-variable 'integerp)
 (put 'perl-continued-statement-offset 'safe-local-variable 'integerp)
@@ -20572,7 +20767,7 @@
 ;;;### (autoloads (pgg-snarf-keys pgg-snarf-keys-region pgg-insert-key
 ;;;;;;  pgg-verify pgg-verify-region pgg-sign pgg-sign-region pgg-decrypt
 ;;;;;;  pgg-decrypt-region pgg-encrypt pgg-encrypt-symmetric pgg-encrypt-symmetric-region
-;;;;;;  pgg-encrypt-region) "pgg" "pgg.el" (19279 5148))
+;;;;;;  pgg-encrypt-region) "pgg" "pgg.el" (19635 41857))
 ;;; Generated autoloads from pgg.el
 
 (autoload 'pgg-encrypt-region "pgg" "\
@@ -20706,7 +20901,7 @@
 ;;;***
 
 ;;;### (autoloads (pgg-gpg-symmetric-key-p) "pgg-gpg" "pgg-gpg.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19583 31640))
 ;;; Generated autoloads from pgg-gpg.el
 
 (autoload 'pgg-gpg-symmetric-key-p "pgg-gpg" "\
@@ -20717,7 +20912,7 @@
 ;;;***
 
 ;;;### (autoloads (picture-mode) "picture" "textmodes/picture.el"
-;;;;;;  (19356 10801))
+;;;;;;  (19686 22639))
 ;;; Generated autoloads from textmodes/picture.el
 
 (autoload 'picture-mode "picture" "\
@@ -20798,7 +20993,7 @@
 ;;;***
 
 ;;;### (autoloads (po-find-file-coding-system) "po" "textmodes/po.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from textmodes/po.el
 
 (autoload 'po-find-file-coding-system "po" "\
@@ -20809,7 +21004,7 @@
 
 ;;;***
 
-;;;### (autoloads (pong) "pong" "play/pong.el" (19279 5151))
+;;;### (autoloads (pong) "pong" "play/pong.el" (19379 23432))
 ;;; Generated autoloads from play/pong.el
 
 (autoload 'pong "pong" "\
@@ -20825,9 +21020,20 @@
 
 ;;;***
 
+;;;### (autoloads (pop3-movemail) "pop3" "gnus/pop3.el" (19624 62323))
+;;; Generated autoloads from gnus/pop3.el
+
+(autoload 'pop3-movemail "pop3" "\
+Transfer contents of a maildrop to the specified FILE.
+Use streaming commands.
+
+\(fn FILE)" nil nil)
+
+;;;***
+
 ;;;### (autoloads (pp-macroexpand-last-sexp pp-eval-last-sexp pp-macroexpand-expression
 ;;;;;;  pp-eval-expression pp pp-buffer pp-to-string) "pp" "emacs-lisp/pp.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from emacs-lisp/pp.el
 
 (autoload 'pp-to-string "pp" "\
@@ -20895,7 +21101,7 @@
 ;;;;;;  pr-ps-buffer-print pr-ps-buffer-using-ghostscript pr-ps-buffer-preview
 ;;;;;;  pr-ps-directory-ps-print pr-ps-directory-print pr-ps-directory-using-ghostscript
 ;;;;;;  pr-ps-directory-preview pr-interface) "printing" "printing.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19686 22639))
 ;;; Generated autoloads from printing.el
 
 (autoload 'pr-interface "printing" "\
@@ -21482,7 +21688,7 @@
 
 ;;;***
 
-;;;### (autoloads (proced) "proced" "proced.el" (19279 5148))
+;;;### (autoloads (proced) "proced" "proced.el" (19589 20829))
 ;;; Generated autoloads from proced.el
 
 (autoload 'proced "proced" "\
@@ -21498,7 +21704,7 @@
 ;;;***
 
 ;;;### (autoloads (switch-to-prolog prolog-mode) "prolog" "progmodes/prolog.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19671 21337))
 ;;; Generated autoloads from progmodes/prolog.el
 
 (autoload 'prolog-mode "prolog" "\
@@ -21521,8 +21727,8 @@
 
 ;;;***
 
-;;;### (autoloads (bdf-directory-list) "ps-bdf" "ps-bdf.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (bdf-directory-list) "ps-bdf" "ps-bdf.el" (19578
+;;;;;;  56905))
 ;;; Generated autoloads from ps-bdf.el
 
 (defvar bdf-directory-list (if (memq system-type '(ms-dos windows-nt)) (list (expand-file-name "fonts/bdf" installation-directory)) '("/usr/local/share/emacs/fonts/bdf")) "\
@@ -21533,8 +21739,8 @@
 
 ;;;***
 
-;;;### (autoloads (ps-mode) "ps-mode" "progmodes/ps-mode.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (ps-mode) "ps-mode" "progmodes/ps-mode.el" (19578
+;;;;;;  56905))
 ;;; Generated autoloads from progmodes/ps-mode.el
 
 (autoload 'ps-mode "ps-mode" "\
@@ -21585,8 +21791,8 @@
 ;;;;;;  ps-spool-region ps-spool-buffer-with-faces ps-spool-buffer
 ;;;;;;  ps-print-region-with-faces ps-print-region ps-print-buffer-with-faces
 ;;;;;;  ps-print-buffer ps-print-customize ps-print-color-p ps-paper-type
-;;;;;;  ps-page-dimensions-database) "ps-print" "ps-print.el" (19356
-;;;;;;  10801))
+;;;;;;  ps-page-dimensions-database) "ps-print" "ps-print.el" (19649
+;;;;;;  27409))
 ;;; Generated autoloads from ps-print.el
 
 (defvar ps-page-dimensions-database (purecopy (list (list 'a4 (/ (* 72 21.0) 2.54) (/ (* 72 29.7) 2.54) "A4") (list 'a3 (/ (* 72 29.7) 2.54) (/ (* 72 42.0) 2.54) "A3") (list 'letter (* 72 8.5) (* 72 11.0) "Letter") (list 'legal (* 72 8.5) (* 72 14.0) "Legal") (list 'letter-small (* 72 7.68) (* 72 10.16) "LetterSmall") (list 'tabloid (* 72 11.0) (* 72 17.0) "Tabloid") (list 'ledger (* 72 17.0) (* 72 11.0) "Ledger") (list 'statement (* 72 5.5) (* 72 8.5) "Statement") (list 'executive (* 72 7.5) (* 72 10.0) "Executive") (list 'a4small (* 72 7.47) (* 72 10.85) "A4Small") (list 'b4 (* 72 10.125) (* 72 14.33) "B4") (list 'b5 (* 72 7.16) (* 72 10.125) "B5") '(addresslarge 236.0 99.0 "AddressLarge") '(addresssmall 236.0 68.0 "AddressSmall") '(cuthanging13 90.0 222.0 "CutHanging13") '(cuthanging15 90.0 114.0 "CutHanging15") '(diskette 181.0 136.0 "Diskette") '(eurofilefolder 139.0 112.0 "EuropeanFilefolder") '(eurofoldernarrow 526.0 107.0 "EuroFolderNarrow") '(eurofolderwide 526.0 136.0 "EuroFolderWide") '(euronamebadge 189.0 108.0 "EuroNameBadge") '(euronamebadgelarge 223.0 136.0 "EuroNameBadgeLarge") '(filefolder 230.0 37.0 "FileFolder") '(jewelry 76.0 136.0 "Jewelry") '(mediabadge 180.0 136.0 "MediaBadge") '(multipurpose 126.0 68.0 "MultiPurpose") '(retaillabel 90.0 104.0 "RetailLabel") '(shipping 271.0 136.0 "Shipping") '(slide35mm 26.0 104.0 "Slide35mm") '(spine8mm 187.0 26.0 "Spine8mm") '(topcoated 425.19685 136.0 "TopCoatedPaper") '(topcoatedpaper 396.0 136.0 "TopcoatedPaper150") '(vhsface 205.0 127.0 "VHSFace") '(vhsspine 400.0 50.0 "VHSSpine") '(zipdisk 156.0 136.0 "ZipDisk"))) "\
@@ -21783,7 +21989,7 @@
 ;;;***
 
 ;;;### (autoloads (python-shell jython-mode python-mode run-python)
-;;;;;;  "python" "progmodes/python.el" (19338 9841))
+;;;;;;  "python" "progmodes/python.el" (19686 22639))
 ;;; Generated autoloads from progmodes/python.el
 
 (add-to-list 'interpreter-mode-alist (cons (purecopy "jython") 'jython-mode))
@@ -21869,7 +22075,7 @@
 process is started.  If you use this, you will probably want to ensure
 that the current arguments are retained (they will be included in the
 prompt).  This argument is ignored when this function is called
-programmatically, or when running in Emacs 19.34 or older.
+programmatically.
 
 Note: You can toggle between using the CPython interpreter and the
 JPython interpreter by hitting \\[python-toggle-shells].  This toggles
@@ -21899,7 +22105,7 @@
 ;;;***
 
 ;;;### (autoloads (quoted-printable-decode-region) "qp" "gnus/qp.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19583 31640))
 ;;; Generated autoloads from gnus/qp.el
 
 (autoload 'quoted-printable-decode-region "qp" "\
@@ -21922,7 +22128,7 @@
 ;;;;;;  quail-defrule quail-install-decode-map quail-install-map
 ;;;;;;  quail-define-rules quail-show-keyboard-layout quail-set-keyboard-layout
 ;;;;;;  quail-define-package quail-use-package quail-title) "quail"
-;;;;;;  "international/quail.el" (19279 5150))
+;;;;;;  "international/quail.el" (19496 32415))
 ;;; Generated autoloads from international/quail.el
 
 (autoload 'quail-title "quail" "\
@@ -22153,8 +22359,8 @@
 
 ;;;### (autoloads (quickurl-list quickurl-list-mode quickurl-edit-urls
 ;;;;;;  quickurl-browse-url-ask quickurl-browse-url quickurl-add-url
-;;;;;;  quickurl-ask quickurl) "quickurl" "net/quickurl.el" (19279
-;;;;;;  5151))
+;;;;;;  quickurl-ask quickurl) "quickurl" "net/quickurl.el" (19675
+;;;;;;  9114))
 ;;; Generated autoloads from net/quickurl.el
 
 (defconst quickurl-reread-hook-postfix "\n;; Local Variables:\n;; eval: (progn (require 'quickurl) (add-hook 'local-write-file-hooks (lambda () (quickurl-read) nil)))\n;; End:\n" "\
@@ -22226,7 +22432,7 @@
 ;;;***
 
 ;;;### (autoloads (rcirc-track-minor-mode rcirc-connect rcirc) "rcirc"
-;;;;;;  "net/rcirc.el" (19279 5151))
+;;;;;;  "net/rcirc.el" (19598 15988))
 ;;; Generated autoloads from net/rcirc.el
 
 (autoload 'rcirc "rcirc" "\
@@ -22243,7 +22449,7 @@
 (autoload 'rcirc-connect "rcirc" "\
 Not documented
 
-\(fn SERVER &optional PORT NICK USER-NAME FULL-NAME STARTUP-CHANNELS)" nil nil)
+\(fn SERVER &optional PORT NICK USER-NAME FULL-NAME STARTUP-CHANNELS PASSWORD)" nil nil)
 
 (defvar rcirc-track-minor-mode nil "\
 Non-nil if Rcirc-Track minor mode is enabled.
@@ -22261,8 +22467,8 @@
 
 ;;;***
 
-;;;### (autoloads (remote-compile) "rcompile" "net/rcompile.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (remote-compile) "rcompile" "net/rcompile.el" (19611
+;;;;;;  13362))
 ;;; Generated autoloads from net/rcompile.el
 
 (autoload 'remote-compile "rcompile" "\
@@ -22274,7 +22480,7 @@
 ;;;***
 
 ;;;### (autoloads (re-builder) "re-builder" "emacs-lisp/re-builder.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19535 27714))
 ;;; Generated autoloads from emacs-lisp/re-builder.el
 
 (defalias 'regexp-builder 're-builder)
@@ -22286,7 +22492,7 @@
 
 ;;;***
 
-;;;### (autoloads (recentf-mode) "recentf" "recentf.el" (19279 5148))
+;;;### (autoloads (recentf-mode) "recentf" "recentf.el" (19379 23432))
 ;;; Generated autoloads from recentf.el
 
 (defvar recentf-mode nil "\
@@ -22313,8 +22519,8 @@
 ;;;### (autoloads (clear-rectangle string-insert-rectangle string-rectangle
 ;;;;;;  delete-whitespace-rectangle open-rectangle insert-rectangle
 ;;;;;;  yank-rectangle kill-rectangle extract-rectangle delete-extract-rectangle
-;;;;;;  delete-rectangle move-to-column-force) "rect" "rect.el" (19279
-;;;;;;  5148))
+;;;;;;  delete-rectangle move-to-column-force) "rect" "rect.el" (19578
+;;;;;;  56905))
 ;;; Generated autoloads from rect.el
  (define-key ctl-x-r-map "c" 'clear-rectangle)
  (define-key ctl-x-r-map "k" 'kill-rectangle)
@@ -22448,8 +22654,8 @@
 
 ;;;***
 
-;;;### (autoloads (refill-mode) "refill" "textmodes/refill.el" (19279
-;;;;;;  5152))
+;;;### (autoloads (refill-mode) "refill" "textmodes/refill.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from textmodes/refill.el
 
 (autoload 'refill-mode "refill" "\
@@ -22465,7 +22671,7 @@
 ;;;***
 
 ;;;### (autoloads (reftex-reset-scanning-information reftex-mode
-;;;;;;  turn-on-reftex) "reftex" "textmodes/reftex.el" (19279 5152))
+;;;;;;  turn-on-reftex) "reftex" "textmodes/reftex.el" (19595 20656))
 ;;; Generated autoloads from textmodes/reftex.el
 
 (autoload 'turn-on-reftex "reftex" "\
@@ -22515,7 +22721,7 @@
 ;;;***
 
 ;;;### (autoloads (reftex-citation) "reftex-cite" "textmodes/reftex-cite.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19669 58161))
 ;;; Generated autoloads from textmodes/reftex-cite.el
 
 (autoload 'reftex-citation "reftex-cite" "\
@@ -22545,7 +22751,7 @@
 ;;;***
 
 ;;;### (autoloads (reftex-isearch-minor-mode) "reftex-global" "textmodes/reftex-global.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from textmodes/reftex-global.el
 
 (autoload 'reftex-isearch-minor-mode "reftex-global" "\
@@ -22562,7 +22768,7 @@
 ;;;***
 
 ;;;### (autoloads (reftex-index-phrases-mode) "reftex-index" "textmodes/reftex-index.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19665 17270))
 ;;; Generated autoloads from textmodes/reftex-index.el
 
 (autoload 'reftex-index-phrases-mode "reftex-index" "\
@@ -22595,7 +22801,7 @@
 ;;;***
 
 ;;;### (autoloads (reftex-all-document-files) "reftex-parse" "textmodes/reftex-parse.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19608 30156))
 ;;; Generated autoloads from textmodes/reftex-parse.el
 
 (autoload 'reftex-all-document-files "reftex-parse" "\
@@ -22607,8 +22813,8 @@
 
 ;;;***
 
-;;;### (autoloads nil "reftex-vars" "textmodes/reftex-vars.el" (19370
-;;;;;;  36541))
+;;;### (autoloads nil "reftex-vars" "textmodes/reftex-vars.el" (19578
+;;;;;;  56905))
 ;;; Generated autoloads from textmodes/reftex-vars.el
 (put 'reftex-vref-is-default 'safe-local-variable (lambda (x) (or (stringp x) (symbolp x))))
 (put 'reftex-fref-is-default 'safe-local-variable (lambda (x) (or (stringp x) (symbolp x))))
@@ -22618,7 +22824,7 @@
 ;;;***
 
 ;;;### (autoloads (regexp-opt-depth regexp-opt) "regexp-opt" "emacs-lisp/regexp-opt.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19645 32682))
 ;;; Generated autoloads from emacs-lisp/regexp-opt.el
 
 (autoload 'regexp-opt "regexp-opt" "\
@@ -22633,6 +22839,8 @@
 
 If PAREN is `words', then the resulting regexp is additionally surrounded
 by \\=\\< and \\>.
+If PAREN is `symbols', then the resulting regexp is additionally surrounded
+by \\=\\_< and \\_>.
 
 \(fn STRINGS &optional PAREN)" nil nil)
 
@@ -22647,7 +22855,7 @@
 
 ;;;### (autoloads (remember-diary-extract-entries remember-clipboard
 ;;;;;;  remember-other-frame remember) "remember" "textmodes/remember.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from textmodes/remember.el
 
 (autoload 'remember "remember" "\
@@ -22678,7 +22886,7 @@
 
 ;;;***
 
-;;;### (autoloads (repeat) "repeat" "repeat.el" (19279 5148))
+;;;### (autoloads (repeat) "repeat" "repeat.el" (19645 32682))
 ;;; Generated autoloads from repeat.el
 
 (autoload 'repeat "repeat" "\
@@ -22701,7 +22909,7 @@
 ;;;***
 
 ;;;### (autoloads (reporter-submit-bug-report) "reporter" "mail/reporter.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from mail/reporter.el
 
 (autoload 'reporter-submit-bug-report "reporter" "\
@@ -22733,7 +22941,7 @@
 ;;;***
 
 ;;;### (autoloads (reposition-window) "reposition" "reposition.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19669 58161))
 ;;; Generated autoloads from reposition.el
 
 (autoload 'reposition-window "reposition" "\
@@ -22760,7 +22968,7 @@
 ;;;***
 
 ;;;### (autoloads (global-reveal-mode reveal-mode) "reveal" "reveal.el"
-;;;;;;  (19356 10801))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from reveal.el
 
 (autoload 'reveal-mode "reveal" "\
@@ -22795,7 +23003,7 @@
 ;;;***
 
 ;;;### (autoloads (make-ring ring-p) "ring" "emacs-lisp/ring.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from emacs-lisp/ring.el
 
 (autoload 'ring-p "ring" "\
@@ -22810,7 +23018,7 @@
 
 ;;;***
 
-;;;### (autoloads (rlogin) "rlogin" "net/rlogin.el" (19279 5151))
+;;;### (autoloads (rlogin) "rlogin" "net/rlogin.el" (19611 13362))
 ;;; Generated autoloads from net/rlogin.el
  (add-hook 'same-window-regexps (purecopy "^\\*rlogin-.*\\*\\(\\|<[0-9]+>\\)"))
 
@@ -22860,8 +23068,8 @@
 ;;;;;;  rmail-secondary-file-directory rmail-primary-inbox-list rmail-highlighted-headers
 ;;;;;;  rmail-retry-ignored-headers rmail-displayed-headers rmail-ignored-headers
 ;;;;;;  rmail-dont-reply-to-names rmail-user-mail-address-regexp
-;;;;;;  rmail-movemail-variant-p) "rmail" "mail/rmail.el" (19370
-;;;;;;  36541))
+;;;;;;  rmail-movemail-variant-p) "rmail" "mail/rmail.el" (19638
+;;;;;;  63299))
 ;;; Generated autoloads from mail/rmail.el
 
 (autoload 'rmail-movemail-variant-p "rmail" "\
@@ -23055,7 +23263,7 @@
 ;;;***
 
 ;;;### (autoloads (rmail-output-body-to-file rmail-output-as-seen
-;;;;;;  rmail-output) "rmailout" "mail/rmailout.el" (19279 5150))
+;;;;;;  rmail-output) "rmailout" "mail/rmailout.el" (19578 56905))
 ;;; Generated autoloads from mail/rmailout.el
 (put 'rmail-output-file-alist 'risky-local-variable t)
 
@@ -23120,7 +23328,7 @@
 ;;;***
 
 ;;;### (autoloads (rng-c-load-schema) "rng-cmpct" "nxml/rng-cmpct.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from nxml/rng-cmpct.el
 
 (autoload 'rng-c-load-schema "rng-cmpct" "\
@@ -23132,7 +23340,7 @@
 ;;;***
 
 ;;;### (autoloads (rng-nxml-mode-init) "rng-nxml" "nxml/rng-nxml.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from nxml/rng-nxml.el
 
 (autoload 'rng-nxml-mode-init "rng-nxml" "\
@@ -23145,7 +23353,7 @@
 ;;;***
 
 ;;;### (autoloads (rng-validate-mode) "rng-valid" "nxml/rng-valid.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from nxml/rng-valid.el
 
 (autoload 'rng-validate-mode "rng-valid" "\
@@ -23175,8 +23383,8 @@
 
 ;;;***
 
-;;;### (autoloads (rng-xsd-compile) "rng-xsd" "nxml/rng-xsd.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (rng-xsd-compile) "rng-xsd" "nxml/rng-xsd.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from nxml/rng-xsd.el
 
 (put 'http://www\.w3\.org/2001/XMLSchema-datatypes 'rng-dt-compile 'rng-xsd-compile)
@@ -23204,7 +23412,7 @@
 ;;;***
 
 ;;;### (autoloads (robin-use-package robin-modify-package robin-define-package)
-;;;;;;  "robin" "international/robin.el" (19279 5150))
+;;;;;;  "robin" "international/robin.el" (19379 23432))
 ;;; Generated autoloads from international/robin.el
 
 (autoload 'robin-define-package "robin" "\
@@ -23237,7 +23445,7 @@
 ;;;***
 
 ;;;### (autoloads (toggle-rot13-mode rot13-other-window rot13-region
-;;;;;;  rot13-string rot13) "rot13" "rot13.el" (19279 5148))
+;;;;;;  rot13-string rot13) "rot13" "rot13.el" (19379 23432))
 ;;; Generated autoloads from rot13.el
 
 (autoload 'rot13 "rot13" "\
@@ -23275,7 +23483,7 @@
 ;;;***
 
 ;;;### (autoloads (rst-minor-mode rst-mode) "rst" "textmodes/rst.el"
-;;;;;;  (19365 25156))
+;;;;;;  (19686 22639))
 ;;; Generated autoloads from textmodes/rst.el
  (add-to-list 'auto-mode-alist (purecopy '("\\.re?st\\'" . rst-mode)))
 
@@ -23313,7 +23521,7 @@
 ;;;***
 
 ;;;### (autoloads (ruby-mode) "ruby-mode" "progmodes/ruby-mode.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19671 21337))
 ;;; Generated autoloads from progmodes/ruby-mode.el
 
 (autoload 'ruby-mode "ruby-mode" "\
@@ -23334,19 +23542,24 @@
 
 ;;;***
 
-;;;### (autoloads (ruler-mode) "ruler-mode" "ruler-mode.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (ruler-mode) "ruler-mode" "ruler-mode.el" (19500
+;;;;;;  25190))
 ;;; Generated autoloads from ruler-mode.el
 
+(defvar ruler-mode nil "\
+Non-nil if Ruler mode is enabled.
+Use the command `ruler-mode' to change this variable.")
+
 (autoload 'ruler-mode "ruler-mode" "\
-Display a ruler in the header line if ARG > 0.
-
-\(fn &optional ARG)" t nil)
-
-;;;***
-
-;;;### (autoloads (rx rx-to-string) "rx" "emacs-lisp/rx.el" (19279
-;;;;;;  5149))
+Toggle Ruler mode.
+In Ruler mode, Emacs displays a ruler in the header line.
+
+\(fn &optional ARG)" t nil)
+
+;;;***
+
+;;;### (autoloads (rx rx-to-string) "rx" "emacs-lisp/rx.el" (19589
+;;;;;;  20829))
 ;;; Generated autoloads from emacs-lisp/rx.el
 
 (autoload 'rx-to-string "rx" "\
@@ -23576,9 +23789,6 @@
      like `and', but makes the match accessible with `match-end',
      `match-beginning', and `match-string'.
 
-`(group SEXP1 SEXP2 ...)'
-     another name for `submatch'.
-
 `(or SEXP1 SEXP2 ...)'
 `(| SEXP1 SEXP2 ...)'
      matches anything that matches SEXP1 or SEXP2, etc.  If all
@@ -23655,14 +23865,16 @@
 
 ;;;***
 
-;;;### (autoloads (savehist-mode savehist-mode) "savehist" "savehist.el"
-;;;;;;  (19279 5148))
+;;;### (autoloads (savehist-mode) "savehist" "savehist.el" (19422
+;;;;;;  40643))
 ;;; Generated autoloads from savehist.el
 
 (defvar savehist-mode nil "\
-Mode for automatic saving of minibuffer history.
-Set this by calling the `savehist-mode' function or using the customize
-interface.")
+Non-nil if Savehist mode is enabled.
+See the command `savehist-mode' for a description of this minor mode.
+Setting this variable directly does not take effect;
+either customize it (see the info node `Easy Customization')
+or call the function `savehist-mode'.")
 
 (custom-autoload 'savehist-mode "savehist" nil)
 
@@ -23677,12 +23889,12 @@
 Calling it at any other time replaces your current minibuffer histories,
 which is probably undesirable.
 
-\(fn ARG)" t nil)
+\(fn &optional ARG)" t nil)
 
 ;;;***
 
 ;;;### (autoloads (dsssl-mode scheme-mode) "scheme" "progmodes/scheme.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19564 19367))
 ;;; Generated autoloads from progmodes/scheme.el
 
 (autoload 'scheme-mode "scheme" "\
@@ -23724,7 +23936,7 @@
 ;;;***
 
 ;;;### (autoloads (gnus-score-mode) "score-mode" "gnus/score-mode.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19583 31640))
 ;;; Generated autoloads from gnus/score-mode.el
 
 (autoload 'gnus-score-mode "score-mode" "\
@@ -23738,7 +23950,7 @@
 ;;;***
 
 ;;;### (autoloads (scroll-all-mode) "scroll-all" "scroll-all.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19433 51924))
 ;;; Generated autoloads from scroll-all.el
 
 (defvar scroll-all-mode nil "\
@@ -23761,7 +23973,7 @@
 ;;;***
 
 ;;;### (autoloads (scroll-lock-mode) "scroll-lock" "scroll-lock.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from scroll-lock.el
 
 (autoload 'scroll-lock-mode "scroll-lock" "\
@@ -23775,8 +23987,15 @@
 
 ;;;***
 
+;;;### (autoloads nil "secrets" "net/secrets.el" (19443 63936))
+;;; Generated autoloads from net/secrets.el
+(when (featurep 'dbusbind)
+ (autoload 'secrets-show-secrets "secrets" nil t))
+
+;;;***
+
 ;;;### (autoloads (semantic-mode semantic-default-submodes) "semantic"
-;;;;;;  "cedet/semantic.el" (19323 49698))
+;;;;;;  "cedet/semantic.el" (19612 3157))
 ;;; Generated autoloads from cedet/semantic.el
 
 (defvar semantic-default-submodes '(global-semantic-idle-scheduler-mode global-semanticdb-minor-mode) "\
@@ -23828,7 +24047,7 @@
 ;;;;;;  mail-alias-file mail-default-reply-to mail-archive-file-name
 ;;;;;;  mail-header-separator send-mail-function mail-interactive
 ;;;;;;  mail-self-blind mail-specify-envelope-from mail-from-style)
-;;;;;;  "sendmail" "mail/sendmail.el" (19338 9841))
+;;;;;;  "sendmail" "mail/sendmail.el" (19675 9114))
 ;;; Generated autoloads from mail/sendmail.el
 
 (defvar mail-from-style 'default "\
@@ -23957,7 +24176,7 @@
 
 (custom-autoload 'mail-citation-hook "sendmail" t)
 
-(defvar mail-citation-prefix-regexp (purecopy "\\([ 	]*\\(\\w\\|[_.]\\)+>+\\|[ 	]*[]>|}]\\)+") "\
+(defvar mail-citation-prefix-regexp (purecopy "\\([ 	]*\\(\\w\\|[_.]\\)+>+\\|[ 	]*[]>|]\\)+") "\
 Regular expression to match a citation prefix plus whitespace.
 It should match whatever sort of citation prefixes you want to handle,
 with whitespace before and after; it should also match just whitespace.
@@ -24063,6 +24282,7 @@
 of outgoing mails regardless of the current language environment.
 See also the function `select-message-coding-system'.")
  (add-hook 'same-window-buffer-names (purecopy "*mail*"))
+ (add-hook 'same-window-buffer-names (purecopy "*unsent mail*"))
 
 (autoload 'mail "sendmail" "\
 Edit a message to be sent.  Prefix arg means resume editing (don't erase).
@@ -24127,10 +24347,16 @@
 ;;;***
 
 ;;;### (autoloads (server-save-buffers-kill-terminal server-mode
-;;;;;;  server-force-delete server-start) "server" "server.el" (19279
-;;;;;;  5148))
+;;;;;;  server-force-delete server-start) "server" "server.el" (19686
+;;;;;;  22639))
 ;;; Generated autoloads from server.el
 
+(put 'server-host 'risky-local-variable t)
+
+(put 'server-port 'risky-local-variable t)
+
+(put 'server-auth-dir 'risky-local-variable t)
+
 (autoload 'server-start "server" "\
 Allow this Emacs process to be a server for client processes.
 This starts a server communications subprocess through which
@@ -24141,11 +24367,14 @@
 Optional argument LEAVE-DEAD (interactively, a prefix arg) means just
 kill any existing server communications subprocess.
 
-If a server is already running, the server is not started.
+If a server is already running, restart it.  If clients are
+running, ask the user for confirmation first, unless optional
+argument INHIBIT-PROMPT is non-nil.
+
 To force-start a server, do \\[server-force-delete] and then
 \\[server-start].
 
-\(fn &optional LEAVE-DEAD)" t nil)
+\(fn &optional LEAVE-DEAD INHIBIT-PROMPT)" t nil)
 
 (autoload 'server-force-delete "server" "\
 Unconditionally delete connection file for server NAME.
@@ -24182,7 +24411,7 @@
 
 ;;;***
 
-;;;### (autoloads (ses-mode) "ses" "ses.el" (19279 5148))
+;;;### (autoloads (ses-mode) "ses" "ses.el" (19379 23432))
 ;;; Generated autoloads from ses.el
 
 (autoload 'ses-mode "ses" "\
@@ -24201,7 +24430,7 @@
 ;;;***
 
 ;;;### (autoloads (html-mode sgml-mode) "sgml-mode" "textmodes/sgml-mode.el"
-;;;;;;  (19292 15232))
+;;;;;;  (19652 27168))
 ;;; Generated autoloads from textmodes/sgml-mode.el
 
 (autoload 'sgml-mode "sgml-mode" "\
@@ -24267,7 +24496,7 @@
 ;;;***
 
 ;;;### (autoloads (sh-mode) "sh-script" "progmodes/sh-script.el"
-;;;;;;  (19345 41626))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from progmodes/sh-script.el
 (put 'sh-shell 'safe-local-variable 'symbolp)
 
@@ -24331,7 +24560,7 @@
 
 ;;;***
 
-;;;### (autoloads (sha1) "sha1" "sha1.el" (19279 5148))
+;;;### (autoloads (sha1) "sha1" "sha1.el" (19583 31640))
 ;;; Generated autoloads from sha1.el
 
 (autoload 'sha1 "sha1" "\
@@ -24346,7 +24575,7 @@
 ;;;***
 
 ;;;### (autoloads (list-load-path-shadows) "shadow" "emacs-lisp/shadow.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19635 38402))
 ;;; Generated autoloads from emacs-lisp/shadow.el
 
 (autoload 'list-load-path-shadows "shadow" "\
@@ -24389,15 +24618,15 @@
 considered to shadow a later file XXX.el, and vice-versa.
 
 Shadowings are located by calling the (non-interactive) companion
-function, `find-emacs-lisp-shadows'.
+function, `load-path-shadows-find'.
 
 \(fn &optional STRINGP)" t nil)
 
 ;;;***
 
 ;;;### (autoloads (shadow-initialize shadow-define-regexp-group shadow-define-literal-group
-;;;;;;  shadow-define-cluster) "shadowfile" "shadowfile.el" (19279
-;;;;;;  5148))
+;;;;;;  shadow-define-cluster) "shadowfile" "shadowfile.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from shadowfile.el
 
 (autoload 'shadow-define-cluster "shadowfile" "\
@@ -24436,7 +24665,7 @@
 ;;;***
 
 ;;;### (autoloads (shell shell-dumb-shell-regexp) "shell" "shell.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19677 58077))
 ;;; Generated autoloads from shell.el
 
 (defvar shell-dumb-shell-regexp (purecopy "cmd\\(proxy\\)?\\.exe") "\
@@ -24485,8 +24714,19 @@
 
 ;;;***
 
+;;;### (autoloads (shr-insert-document) "shr" "gnus/shr.el" (19686
+;;;;;;  22639))
+;;; Generated autoloads from gnus/shr.el
+
+(autoload 'shr-insert-document "shr" "\
+Not documented
+
+\(fn DOM)" nil nil)
+
+;;;***
+
 ;;;### (autoloads (sieve-upload-and-bury sieve-upload sieve-manage)
-;;;;;;  "sieve" "gnus/sieve.el" (19279 5150))
+;;;;;;  "sieve" "gnus/sieve.el" (19628 41996))
 ;;; Generated autoloads from gnus/sieve.el
 
 (autoload 'sieve-manage "sieve" "\
@@ -24507,7 +24747,7 @@
 ;;;***
 
 ;;;### (autoloads (sieve-mode) "sieve-mode" "gnus/sieve-mode.el"
-;;;;;;  (19365 25156))
+;;;;;;  (19583 31640))
 ;;; Generated autoloads from gnus/sieve-mode.el
 
 (autoload 'sieve-mode "sieve-mode" "\
@@ -24522,8 +24762,8 @@
 
 ;;;***
 
-;;;### (autoloads (simula-mode) "simula" "progmodes/simula.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (simula-mode) "simula" "progmodes/simula.el" (19669
+;;;;;;  58161))
 ;;; Generated autoloads from progmodes/simula.el
 
 (autoload 'simula-mode "simula" "\
@@ -24572,7 +24812,7 @@
 ;;;***
 
 ;;;### (autoloads (skeleton-pair-insert-maybe skeleton-insert skeleton-proxy-new
-;;;;;;  define-skeleton) "skeleton" "skeleton.el" (19279 5148))
+;;;;;;  define-skeleton) "skeleton" "skeleton.el" (19677 58077))
 ;;; Generated autoloads from skeleton.el
 
 (defvar skeleton-filter-function 'identity "\
@@ -24682,8 +24922,8 @@
 ;;;***
 
 ;;;### (autoloads (smerge-start-session smerge-mode smerge-ediff)
-;;;;;;  "smerge-mode" "smerge-mode.el" (19279 5148))
-;;; Generated autoloads from smerge-mode.el
+;;;;;;  "smerge-mode" "vc/smerge-mode.el" (19677 58077))
+;;; Generated autoloads from vc/smerge-mode.el
 
 (autoload 'smerge-ediff "smerge-mode" "\
 Invoke ediff to resolve the conflicts.
@@ -24707,7 +24947,7 @@
 ;;;***
 
 ;;;### (autoloads (smiley-buffer smiley-region) "smiley" "gnus/smiley.el"
-;;;;;;  (19370 36541))
+;;;;;;  (19583 31640))
 ;;; Generated autoloads from gnus/smiley.el
 
 (autoload 'smiley-region "smiley" "\
@@ -24725,7 +24965,7 @@
 ;;;***
 
 ;;;### (autoloads (smtpmail-send-queued-mail smtpmail-send-it) "smtpmail"
-;;;;;;  "mail/smtpmail.el" (19279 5150))
+;;;;;;  "mail/smtpmail.el" (19379 23432))
 ;;; Generated autoloads from mail/smtpmail.el
 
 (autoload 'smtpmail-send-it "smtpmail" "\
@@ -24740,7 +24980,7 @@
 
 ;;;***
 
-;;;### (autoloads (snake) "snake" "play/snake.el" (19279 5151))
+;;;### (autoloads (snake) "snake" "play/snake.el" (19379 23432))
 ;;; Generated autoloads from play/snake.el
 
 (autoload 'snake "snake" "\
@@ -24764,7 +25004,7 @@
 ;;;***
 
 ;;;### (autoloads (snmpv2-mode snmp-mode) "snmp-mode" "net/snmp-mode.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from net/snmp-mode.el
 
 (autoload 'snmp-mode "snmp-mode" "\
@@ -24793,8 +25033,8 @@
 
 ;;;***
 
-;;;### (autoloads (sunrise-sunset) "solar" "calendar/solar.el" (19279
-;;;;;;  5149))
+;;;### (autoloads (sunrise-sunset) "solar" "calendar/solar.el" (19612
+;;;;;;  3157))
 ;;; Generated autoloads from calendar/solar.el
 
 (autoload 'sunrise-sunset "solar" "\
@@ -24809,8 +25049,8 @@
 
 ;;;***
 
-;;;### (autoloads (solitaire) "solitaire" "play/solitaire.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (solitaire) "solitaire" "play/solitaire.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from play/solitaire.el
 
 (autoload 'solitaire "solitaire" "\
@@ -24887,7 +25127,7 @@
 
 ;;;### (autoloads (reverse-region sort-columns sort-regexp-fields
 ;;;;;;  sort-fields sort-numeric-fields sort-pages sort-paragraphs
-;;;;;;  sort-lines sort-subr) "sort" "sort.el" (19279 5148))
+;;;;;;  sort-lines sort-subr) "sort" "sort.el" (19669 58161))
 ;;; Generated autoloads from sort.el
 (put 'sort-fold-case 'safe-local-variable 'booleanp)
 
@@ -25031,8 +25271,8 @@
 
 ;;;***
 
-;;;### (autoloads (spam-initialize) "spam" "gnus/spam.el" (19279
-;;;;;;  5150))
+;;;### (autoloads (spam-initialize) "spam" "gnus/spam.el" (19648
+;;;;;;  1980))
 ;;; Generated autoloads from gnus/spam.el
 
 (autoload 'spam-initialize "spam" "\
@@ -25048,7 +25288,7 @@
 
 ;;;### (autoloads (spam-report-deagentize spam-report-agentize spam-report-url-to-file
 ;;;;;;  spam-report-url-ping-mm-url spam-report-process-queue) "spam-report"
-;;;;;;  "gnus/spam-report.el" (19279 5150))
+;;;;;;  "gnus/spam-report.el" (19626 28928))
 ;;; Generated autoloads from gnus/spam-report.el
 
 (autoload 'spam-report-process-queue "spam-report" "\
@@ -25091,7 +25331,7 @@
 ;;;***
 
 ;;;### (autoloads (speedbar-get-focus speedbar-frame-mode) "speedbar"
-;;;;;;  "speedbar.el" (19279 5148))
+;;;;;;  "speedbar.el" (19686 22639))
 ;;; Generated autoloads from speedbar.el
 
 (defalias 'speedbar 'speedbar-frame-mode)
@@ -25116,7 +25356,7 @@
 ;;;***
 
 ;;;### (autoloads (spell-string spell-region spell-word spell-buffer)
-;;;;;;  "spell" "textmodes/spell.el" (19279 5152))
+;;;;;;  "spell" "textmodes/spell.el" (19611 13362))
 ;;; Generated autoloads from textmodes/spell.el
 
 (put 'spell-filter 'risky-local-variable t)
@@ -25160,8 +25400,8 @@
 
 ;;;***
 
-;;;### (autoloads (snarf-spooks spook) "spook" "play/spook.el" (19279
-;;;;;;  5151))
+;;;### (autoloads (snarf-spooks spook) "spook" "play/spook.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from play/spook.el
 
 (autoload 'spook "spook" "\
@@ -25178,15 +25418,15 @@
 
 ;;;### (autoloads (sql-linter sql-db2 sql-interbase sql-postgres
 ;;;;;;  sql-ms sql-ingres sql-solid sql-mysql sql-sqlite sql-informix
-;;;;;;  sql-sybase sql-oracle sql-product-interactive sql-mode sql-help
-;;;;;;  sql-add-product-keywords) "sql" "progmodes/sql.el" (19279
-;;;;;;  5151))
+;;;;;;  sql-sybase sql-oracle sql-product-interactive sql-connect
+;;;;;;  sql-mode sql-help sql-add-product-keywords) "sql" "progmodes/sql.el"
+;;;;;;  (19661 45226))
 ;;; Generated autoloads from progmodes/sql.el
 
 (autoload 'sql-add-product-keywords "sql" "\
 Add highlighting KEYWORDS for SQL PRODUCT.
 
-PRODUCT should be a symbol, the name of a sql product, such as
+PRODUCT should be a symbol, the name of a SQL product, such as
 `oracle'.  KEYWORDS should be a list; see the variable
 `font-lock-keywords'.  By default they are added at the beginning
 of the current highlighting list.  If optional argument APPEND is
@@ -25212,24 +25452,17 @@
 
 Use the following commands to start a specific SQL interpreter:
 
-    PostGres: \\[sql-postgres]
-    MySQL: \\[sql-mysql]
-    SQLite: \\[sql-sqlite]
+    \\\\FREE
 
 Other non-free SQL implementations are also supported:
 
-    Solid: \\[sql-solid]
-    Oracle: \\[sql-oracle]
-    Informix: \\[sql-informix]
-    Sybase: \\[sql-sybase]
-    Ingres: \\[sql-ingres]
-    Microsoft: \\[sql-ms]
-    DB2: \\[sql-db2]
-    Interbase: \\[sql-interbase]
-    Linter: \\[sql-linter]
+    \\\\NONFREE
 
 But we urge you to choose a free implementation instead of these.
 
+You can also use \\[sql-product-interactive] to invoke the
+interpreter for the current `sql-product'.
+
 Once you have the SQLi buffer, you can enter SQL statements in the
 buffer.  The output generated is appended to the buffer and a new prompt
 is generated.  See the In/Out menu in the SQLi buffer for some functions
@@ -25276,15 +25509,31 @@
 
 \(fn)" t nil)
 
+(autoload 'sql-connect "sql" "\
+Connect to an interactive session using CONNECTION settings.
+
+See `sql-connection-alist' to see how to define connections and
+their settings.
+
+The user will not be prompted for any login parameters if a value
+is specified in the connection settings.
+
+\(fn CONNECTION)" t nil)
+
 (autoload 'sql-product-interactive "sql" "\
-Run product interpreter as an inferior process.
+Run PRODUCT interpreter as an inferior process.
 
 If buffer `*SQL*' exists but no process is running, make a new process.
 If buffer exists and a process is running, just switch to buffer `*SQL*'.
 
+To specify the SQL product, prefix the call with
+\\[universal-argument].  To set the buffer name as well, prefix
+the call to \\[sql-product-interactive] with
+\\[universal-argument] \\[universal-argument].
+
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn &optional PRODUCT)" t nil)
+\(fn &optional PRODUCT NEW-NAME)" t nil)
 
 (autoload 'sql-oracle "sql" "\
 Run sqlplus by Oracle as an inferior process.
@@ -25298,9 +25547,14 @@
 defaults, if set.  Additional command line parameters can be stored in
 the list `sql-oracle-options'.
 
-The buffer is put in sql-interactive-mode, giving commands for sending
+The buffer is put in SQL interactive mode, giving commands for sending
 input.  See `sql-interactive-mode'.
 
+To set the buffer name directly, use \\[universal-argument]
+before \\[sql-oracle].  Once session has started,
+\\[sql-rename-buffer] can be called separately to rename the
+buffer.
+
 To specify a coding system for converting non-ASCII characters
 in the input and output to the process, use \\[universal-coding-system-argument]
 before \\[sql-oracle].  You can also specify this with \\[set-buffer-process-coding-system]
@@ -25310,10 +25564,10 @@
 
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn)" t nil)
+\(fn &optional BUFFER)" t nil)
 
 (autoload 'sql-sybase "sql" "\
-Run isql by SyBase as an inferior process.
+Run isql by Sybase as an inferior process.
 
 If buffer `*SQL*' exists but no process is running, make a new process.
 If buffer exists and a process is running, just switch to buffer
@@ -25324,9 +25578,14 @@
 `sql-database' as defaults, if set.  Additional command line parameters
 can be stored in the list `sql-sybase-options'.
 
-The buffer is put in sql-interactive-mode, giving commands for sending
+The buffer is put in SQL interactive mode, giving commands for sending
 input.  See `sql-interactive-mode'.
 
+To set the buffer name directly, use \\[universal-argument]
+before \\[sql-sybase].  Once session has started,
+\\[sql-rename-buffer] can be called separately to rename the
+buffer.
+
 To specify a coding system for converting non-ASCII characters
 in the input and output to the process, use \\[universal-coding-system-argument]
 before \\[sql-sybase].  You can also specify this with \\[set-buffer-process-coding-system]
@@ -25336,7 +25595,7 @@
 
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn)" t nil)
+\(fn &optional BUFFER)" t nil)
 
 (autoload 'sql-informix "sql" "\
 Run dbaccess by Informix as an inferior process.
@@ -25348,9 +25607,14 @@
 Interpreter used comes from variable `sql-informix-program'.  Login uses
 the variable `sql-database' as default, if set.
 
-The buffer is put in sql-interactive-mode, giving commands for sending
+The buffer is put in SQL interactive mode, giving commands for sending
 input.  See `sql-interactive-mode'.
 
+To set the buffer name directly, use \\[universal-argument]
+before \\[sql-informix].  Once session has started,
+\\[sql-rename-buffer] can be called separately to rename the
+buffer.
+
 To specify a coding system for converting non-ASCII characters
 in the input and output to the process, use \\[universal-coding-system-argument]
 before \\[sql-informix].  You can also specify this with \\[set-buffer-process-coding-system]
@@ -25360,7 +25624,7 @@
 
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn)" t nil)
+\(fn &optional BUFFER)" t nil)
 
 (autoload 'sql-sqlite "sql" "\
 Run sqlite as an inferior process.
@@ -25376,9 +25640,14 @@
 `sql-server' as defaults, if set.  Additional command line parameters
 can be stored in the list `sql-sqlite-options'.
 
-The buffer is put in sql-interactive-mode, giving commands for sending
+The buffer is put in SQL interactive mode, giving commands for sending
 input.  See `sql-interactive-mode'.
 
+To set the buffer name directly, use \\[universal-argument]
+before \\[sql-sqlite].  Once session has started,
+\\[sql-rename-buffer] can be called separately to rename the
+buffer.
+
 To specify a coding system for converting non-ASCII characters
 in the input and output to the process, use \\[universal-coding-system-argument]
 before \\[sql-sqlite].  You can also specify this with \\[set-buffer-process-coding-system]
@@ -25388,7 +25657,7 @@
 
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn)" t nil)
+\(fn &optional BUFFER)" t nil)
 
 (autoload 'sql-mysql "sql" "\
 Run mysql by TcX as an inferior process.
@@ -25404,9 +25673,14 @@
 `sql-server' as defaults, if set.  Additional command line parameters
 can be stored in the list `sql-mysql-options'.
 
-The buffer is put in sql-interactive-mode, giving commands for sending
+The buffer is put in SQL interactive mode, giving commands for sending
 input.  See `sql-interactive-mode'.
 
+To set the buffer name directly, use \\[universal-argument]
+before \\[sql-mysql].  Once session has started,
+\\[sql-rename-buffer] can be called separately to rename the
+buffer.
+
 To specify a coding system for converting non-ASCII characters
 in the input and output to the process, use \\[universal-coding-system-argument]
 before \\[sql-mysql].  You can also specify this with \\[set-buffer-process-coding-system]
@@ -25416,7 +25690,7 @@
 
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn)" t nil)
+\(fn &optional BUFFER)" t nil)
 
 (autoload 'sql-solid "sql" "\
 Run solsql by Solid as an inferior process.
@@ -25429,9 +25703,14 @@
 the variables `sql-user', `sql-password', and `sql-server' as
 defaults, if set.
 
-The buffer is put in sql-interactive-mode, giving commands for sending
+The buffer is put in SQL interactive mode, giving commands for sending
 input.  See `sql-interactive-mode'.
 
+To set the buffer name directly, use \\[universal-argument]
+before \\[sql-solid].  Once session has started,
+\\[sql-rename-buffer] can be called separately to rename the
+buffer.
+
 To specify a coding system for converting non-ASCII characters
 in the input and output to the process, use \\[universal-coding-system-argument]
 before \\[sql-solid].  You can also specify this with \\[set-buffer-process-coding-system]
@@ -25441,7 +25720,7 @@
 
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn)" t nil)
+\(fn &optional BUFFER)" t nil)
 
 (autoload 'sql-ingres "sql" "\
 Run sql by Ingres as an inferior process.
@@ -25453,9 +25732,14 @@
 Interpreter used comes from variable `sql-ingres-program'.  Login uses
 the variable `sql-database' as default, if set.
 
-The buffer is put in sql-interactive-mode, giving commands for sending
+The buffer is put in SQL interactive mode, giving commands for sending
 input.  See `sql-interactive-mode'.
 
+To set the buffer name directly, use \\[universal-argument]
+before \\[sql-ingres].  Once session has started,
+\\[sql-rename-buffer] can be called separately to rename the
+buffer.
+
 To specify a coding system for converting non-ASCII characters
 in the input and output to the process, use \\[universal-coding-system-argument]
 before \\[sql-ingres].  You can also specify this with \\[set-buffer-process-coding-system]
@@ -25465,7 +25749,7 @@
 
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn)" t nil)
+\(fn &optional BUFFER)" t nil)
 
 (autoload 'sql-ms "sql" "\
 Run osql by Microsoft as an inferior process.
@@ -25479,9 +25763,14 @@
 as defaults, if set.  Additional command line parameters can be stored
 in the list `sql-ms-options'.
 
-The buffer is put in sql-interactive-mode, giving commands for sending
+The buffer is put in SQL interactive mode, giving commands for sending
 input.  See `sql-interactive-mode'.
 
+To set the buffer name directly, use \\[universal-argument]
+before \\[sql-ms].  Once session has started,
+\\[sql-rename-buffer] can be called separately to rename the
+buffer.
+
 To specify a coding system for converting non-ASCII characters
 in the input and output to the process, use \\[universal-coding-system-argument]
 before \\[sql-ms].  You can also specify this with \\[set-buffer-process-coding-system]
@@ -25491,7 +25780,7 @@
 
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn)" t nil)
+\(fn &optional BUFFER)" t nil)
 
 (autoload 'sql-postgres "sql" "\
 Run psql by Postgres as an inferior process.
@@ -25505,9 +25794,14 @@
 Additional command line parameters can be stored in the list
 `sql-postgres-options'.
 
-The buffer is put in sql-interactive-mode, giving commands for sending
+The buffer is put in SQL interactive mode, giving commands for sending
 input.  See `sql-interactive-mode'.
 
+To set the buffer name directly, use \\[universal-argument]
+before \\[sql-postgres].  Once session has started,
+\\[sql-rename-buffer] can be called separately to rename the
+buffer.
+
 To specify a coding system for converting non-ASCII characters
 in the input and output to the process, use \\[universal-coding-system-argument]
 before \\[sql-postgres].  You can also specify this with \\[set-buffer-process-coding-system]
@@ -25522,7 +25816,7 @@
 
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn)" t nil)
+\(fn &optional BUFFER)" t nil)
 
 (autoload 'sql-interbase "sql" "\
 Run isql by Interbase as an inferior process.
@@ -25535,9 +25829,14 @@
 uses the variables `sql-user', `sql-password', and `sql-database' as
 defaults, if set.
 
-The buffer is put in sql-interactive-mode, giving commands for sending
+The buffer is put in SQL interactive mode, giving commands for sending
 input.  See `sql-interactive-mode'.
 
+To set the buffer name directly, use \\[universal-argument]
+before \\[sql-interbase].  Once session has started,
+\\[sql-rename-buffer] can be called separately to rename the
+buffer.
+
 To specify a coding system for converting non-ASCII characters
 in the input and output to the process, use \\[universal-coding-system-argument]
 before \\[sql-interbase].  You can also specify this with \\[set-buffer-process-coding-system]
@@ -25547,7 +25846,7 @@
 
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn)" t nil)
+\(fn &optional BUFFER)" t nil)
 
 (autoload 'sql-db2 "sql" "\
 Run db2 by IBM as an inferior process.
@@ -25559,7 +25858,7 @@
 Interpreter used comes from variable `sql-db2-program'.  There is not
 automatic login.
 
-The buffer is put in sql-interactive-mode, giving commands for sending
+The buffer is put in SQL interactive mode, giving commands for sending
 input.  See `sql-interactive-mode'.
 
 If you use \\[sql-accumulate-and-indent] to send multiline commands to
@@ -25567,6 +25866,11 @@
 `comint-input-sender' back to `comint-simple-send' by writing an after
 advice.  See the elisp manual for more information.
 
+To set the buffer name directly, use \\[universal-argument]
+before \\[sql-db2].  Once session has started,
+\\[sql-rename-buffer] can be called separately to rename the
+buffer.
+
 To specify a coding system for converting non-ASCII characters
 in the input and output to the process, use \\[universal-coding-system-argument]
 before \\[sql-db2].  You can also specify this with \\[set-buffer-process-coding-system]
@@ -25576,7 +25880,7 @@
 
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn)" t nil)
+\(fn &optional BUFFER)" t nil)
 
 (autoload 'sql-linter "sql" "\
 Run inl by RELEX as an inferior process.
@@ -25588,7 +25892,7 @@
 Interpreter used comes from variable `sql-linter-program' - usually `inl'.
 Login uses the variables `sql-user', `sql-password', `sql-database' and
 `sql-server' as defaults, if set.  Additional command line parameters
-can be stored in the list `sql-linter-options'. Run inl -h to get help on
+can be stored in the list `sql-linter-options'.  Run inl -h to get help on
 parameters.
 
 `sql-database' is used to set the LINTER_MBX environment variable for
@@ -25597,17 +25901,22 @@
 for this to work).  If `sql-password' is an empty string, inl will use
 an empty password.
 
-The buffer is put in sql-interactive-mode, giving commands for sending
+The buffer is put in SQL interactive mode, giving commands for sending
 input.  See `sql-interactive-mode'.
 
+To set the buffer name directly, use \\[universal-argument]
+before \\[sql-linter].  Once session has started,
+\\[sql-rename-buffer] can be called separately to rename the
+buffer.
+
 \(Type \\[describe-mode] in the SQL buffer for a list of commands.)
 
-\(fn)" t nil)
+\(fn &optional BUFFER)" t nil)
 
 ;;;***
 
 ;;;### (autoloads (srecode-template-mode) "srecode/srt-mode" "cedet/srecode/srt-mode.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from cedet/srecode/srt-mode.el
 
 (autoload 'srecode-template-mode "srecode/srt-mode" "\
@@ -25619,12 +25928,36 @@
 
 ;;;***
 
+;;;### (autoloads (starttls-open-stream) "starttls" "gnus/starttls.el"
+;;;;;;  (19613 16556))
+;;; Generated autoloads from gnus/starttls.el
+
+(autoload 'starttls-open-stream "starttls" "\
+Open a TLS connection for a port to a host.
+Returns a subprocess object to represent the connection.
+Input and output work as for subprocesses; `delete-process' closes it.
+Args are NAME BUFFER HOST PORT.
+NAME is name for process.  It is modified if necessary to make it unique.
+BUFFER is the buffer (or `buffer-name') to associate with the process.
+ Process output goes at end of that buffer, unless you specify
+ an output stream or filter function to handle the output.
+ BUFFER may be also nil, meaning that this process is not associated
+ with any buffer
+Third arg is name of the host to connect to, or its IP address.
+Fourth arg PORT is an integer specifying a port to connect to.
+If `starttls-use-gnutls' is nil, this may also be a service name, but
+GNUTLS requires a port number.
+
+\(fn NAME BUFFER HOST PORT)" nil nil)
+
+;;;***
+
 ;;;### (autoloads (strokes-compose-complex-stroke strokes-decode-buffer
 ;;;;;;  strokes-mode strokes-list-strokes strokes-load-user-strokes
 ;;;;;;  strokes-help strokes-describe-stroke strokes-do-complex-stroke
 ;;;;;;  strokes-do-stroke strokes-read-complex-stroke strokes-read-stroke
-;;;;;;  strokes-global-set-stroke) "strokes" "strokes.el" (19279
-;;;;;;  5148))
+;;;;;;  strokes-global-set-stroke) "strokes" "strokes.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from strokes.el
 
 (autoload 'strokes-global-set-stroke "strokes" "\
@@ -25734,7 +26067,7 @@
 ;;;***
 
 ;;;### (autoloads (studlify-buffer studlify-word studlify-region)
-;;;;;;  "studly" "play/studly.el" (19256 49605))
+;;;;;;  "studly" "play/studly.el" (19379 23432))
 ;;; Generated autoloads from play/studly.el
 
 (autoload 'studlify-region "studly" "\
@@ -25755,7 +26088,7 @@
 ;;;***
 
 ;;;### (autoloads (global-subword-mode subword-mode) "subword" "progmodes/subword.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19447 3689))
 ;;; Generated autoloads from progmodes/subword.el
 
 (autoload 'subword-mode "subword" "\
@@ -25803,7 +26136,7 @@
 ;;;***
 
 ;;;### (autoloads (sc-cite-original) "supercite" "mail/supercite.el"
-;;;;;;  (19365 25156))
+;;;;;;  (19425 7399))
 ;;; Generated autoloads from mail/supercite.el
 
 (autoload 'sc-cite-original "supercite" "\
@@ -25835,8 +26168,8 @@
 
 ;;;***
 
-;;;### (autoloads (gpm-mouse-mode) "t-mouse" "t-mouse.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (gpm-mouse-mode) "t-mouse" "t-mouse.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from t-mouse.el
 
 (define-obsolete-function-alias 't-mouse-mode 'gpm-mouse-mode "23.1")
@@ -25863,7 +26196,7 @@
 
 ;;;***
 
-;;;### (autoloads (tabify untabify) "tabify" "tabify.el" (19279 5148))
+;;;### (autoloads (tabify untabify) "tabify" "tabify.el" (19578 56905))
 ;;; Generated autoloads from tabify.el
 
 (autoload 'untabify "tabify" "\
@@ -25898,27 +26231,27 @@
 ;;;;;;  table-recognize table-insert-row-column table-insert-column
 ;;;;;;  table-insert-row table-insert table-point-left-cell-hook
 ;;;;;;  table-point-entered-cell-hook table-load-hook table-cell-map-hook)
-;;;;;;  "table" "textmodes/table.el" (19356 10801))
+;;;;;;  "table" "textmodes/table.el" (19669 58161))
 ;;; Generated autoloads from textmodes/table.el
 
 (defvar table-cell-map-hook nil "\
-*Normal hooks run when finishing construction of `table-cell-map'.
+Normal hooks run when finishing construction of `table-cell-map'.
 User can modify `table-cell-map' by adding custom functions here.")
 
 (custom-autoload 'table-cell-map-hook "table" t)
 
 (defvar table-load-hook nil "\
-*List of functions to be called after the table is first loaded.")
+List of functions to be called after the table is first loaded.")
 
 (custom-autoload 'table-load-hook "table" t)
 
 (defvar table-point-entered-cell-hook nil "\
-*List of functions to be called after point entered a table cell.")
+List of functions to be called after point entered a table cell.")
 
 (custom-autoload 'table-point-entered-cell-hook "table" t)
 
 (defvar table-point-left-cell-hook nil "\
-*List of functions to be called after point left a table cell.")
+List of functions to be called after point left a table cell.")
 
 (custom-autoload 'table-point-left-cell-hook "table" t)
 
@@ -26486,7 +26819,7 @@
 
 ;;;***
 
-;;;### (autoloads (talk talk-connect) "talk" "talk.el" (19279 5148))
+;;;### (autoloads (talk talk-connect) "talk" "talk.el" (19379 23432))
 ;;; Generated autoloads from talk.el
 
 (autoload 'talk-connect "talk" "\
@@ -26501,7 +26834,7 @@
 
 ;;;***
 
-;;;### (autoloads (tar-mode) "tar-mode" "tar-mode.el" (19279 5148))
+;;;### (autoloads (tar-mode) "tar-mode" "tar-mode.el" (19617 8027))
 ;;; Generated autoloads from tar-mode.el
 
 (autoload 'tar-mode "tar-mode" "\
@@ -26525,7 +26858,7 @@
 ;;;***
 
 ;;;### (autoloads (tcl-help-on-word inferior-tcl tcl-mode) "tcl"
-;;;;;;  "progmodes/tcl.el" (19279 5151))
+;;;;;;  "progmodes/tcl.el" (19675 9114))
 ;;; Generated autoloads from progmodes/tcl.el
 
 (autoload 'tcl-mode "tcl" "\
@@ -26576,7 +26909,7 @@
 
 ;;;***
 
-;;;### (autoloads (rsh telnet) "telnet" "net/telnet.el" (19279 5151))
+;;;### (autoloads (rsh telnet) "telnet" "net/telnet.el" (19635 52116))
 ;;; Generated autoloads from net/telnet.el
  (add-hook 'same-window-regexps (purecopy "\\*telnet-.*\\*\\(\\|<[0-9]+>\\)"))
 
@@ -26604,7 +26937,7 @@
 ;;;***
 
 ;;;### (autoloads (serial-term ansi-term term make-term) "term" "term.el"
-;;;;;;  (19292 15231))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from term.el
 
 (autoload 'make-term "term" "\
@@ -26646,8 +26979,8 @@
 
 ;;;***
 
-;;;### (autoloads (terminal-emulator) "terminal" "terminal.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (terminal-emulator) "terminal" "terminal.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from terminal.el
 
 (autoload 'terminal-emulator "terminal" "\
@@ -26684,7 +27017,7 @@
 ;;;***
 
 ;;;### (autoloads (testcover-this-defun) "testcover" "emacs-lisp/testcover.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from emacs-lisp/testcover.el
 
 (autoload 'testcover-this-defun "testcover" "\
@@ -26694,7 +27027,7 @@
 
 ;;;***
 
-;;;### (autoloads (tetris) "tetris" "play/tetris.el" (19279 5151))
+;;;### (autoloads (tetris) "tetris" "play/tetris.el" (19664 28584))
 ;;; Generated autoloads from play/tetris.el
 
 (autoload 'tetris "tetris" "\
@@ -26725,16 +27058,16 @@
 ;;;;;;  tex-start-commands tex-start-options slitex-run-command latex-run-command
 ;;;;;;  tex-run-command tex-offer-save tex-main-file tex-first-line-header-regexp
 ;;;;;;  tex-directory tex-shell-file-name) "tex-mode" "textmodes/tex-mode.el"
-;;;;;;  (19323 49698))
+;;;;;;  (19652 27168))
 ;;; Generated autoloads from textmodes/tex-mode.el
 
 (defvar tex-shell-file-name nil "\
-*If non-nil, the shell file name to run in the subshell used to run TeX.")
+If non-nil, the shell file name to run in the subshell used to run TeX.")
 
 (custom-autoload 'tex-shell-file-name "tex-mode" t)
 
 (defvar tex-directory (purecopy ".") "\
-*Directory in which temporary files are written.
+Directory in which temporary files are written.
 You can make this `/tmp' if your TEXINPUTS has no relative directories in it
 and you don't try to apply \\[tex-region] or \\[tex-buffer] when there are
 `\\input' commands with relative directories.")
@@ -26750,40 +27083,40 @@
 (custom-autoload 'tex-first-line-header-regexp "tex-mode" t)
 
 (defvar tex-main-file nil "\
-*The main TeX source file which includes this buffer's file.
+The main TeX source file which includes this buffer's file.
 The command `tex-file' runs TeX on the file specified by `tex-main-file'
 if the variable is non-nil.")
 
 (custom-autoload 'tex-main-file "tex-mode" t)
 
 (defvar tex-offer-save t "\
-*If non-nil, ask about saving modified buffers before \\[tex-file] is run.")
+If non-nil, ask about saving modified buffers before \\[tex-file] is run.")
 
 (custom-autoload 'tex-offer-save "tex-mode" t)
 
 (defvar tex-run-command (purecopy "tex") "\
-*Command used to run TeX subjob.
+Command used to run TeX subjob.
 TeX Mode sets `tex-command' to this string.
 See the documentation of that variable.")
 
 (custom-autoload 'tex-run-command "tex-mode" t)
 
 (defvar latex-run-command (purecopy "latex") "\
-*Command used to run LaTeX subjob.
+Command used to run LaTeX subjob.
 LaTeX Mode sets `tex-command' to this string.
 See the documentation of that variable.")
 
 (custom-autoload 'latex-run-command "tex-mode" t)
 
 (defvar slitex-run-command (purecopy "slitex") "\
-*Command used to run SliTeX subjob.
+Command used to run SliTeX subjob.
 SliTeX Mode sets `tex-command' to this string.
 See the documentation of that variable.")
 
 (custom-autoload 'slitex-run-command "tex-mode" t)
 
 (defvar tex-start-options (purecopy "") "\
-*TeX options to use when starting TeX.
+TeX options to use when starting TeX.
 These immediately precede the commands in `tex-start-commands'
 and the input file name, with no separating space and are not shell-quoted.
 If nil, TeX runs with no options.  See the documentation of `tex-command'.")
@@ -26791,34 +27124,34 @@
 (custom-autoload 'tex-start-options "tex-mode" t)
 
 (defvar tex-start-commands (purecopy "\\nonstopmode\\input") "\
-*TeX commands to use when starting TeX.
+TeX commands to use when starting TeX.
 They are shell-quoted and precede the input file name, with a separating space.
 If nil, no commands are used.  See the documentation of `tex-command'.")
 
 (custom-autoload 'tex-start-commands "tex-mode" t)
 
 (defvar latex-block-names nil "\
-*User defined LaTeX block names.
+User defined LaTeX block names.
 Combined with `latex-standard-block-names' for minibuffer completion.")
 
 (custom-autoload 'latex-block-names "tex-mode" t)
 
 (defvar tex-bibtex-command (purecopy "bibtex") "\
-*Command used by `tex-bibtex-file' to gather bibliographic data.
+Command used by `tex-bibtex-file' to gather bibliographic data.
 If this string contains an asterisk (`*'), that is replaced by the file name;
 otherwise, the file name, preceded by blank, is added at the end.")
 
 (custom-autoload 'tex-bibtex-command "tex-mode" t)
 
 (defvar tex-dvi-print-command (purecopy "lpr -d") "\
-*Command used by \\[tex-print] to print a .dvi file.
+Command used by \\[tex-print] to print a .dvi file.
 If this string contains an asterisk (`*'), that is replaced by the file name;
 otherwise, the file name, preceded by blank, is added at the end.")
 
 (custom-autoload 'tex-dvi-print-command "tex-mode" t)
 
 (defvar tex-alt-dvi-print-command (purecopy "lpr -d") "\
-*Command used by \\[tex-print] with a prefix arg to print a .dvi file.
+Command used by \\[tex-print] with a prefix arg to print a .dvi file.
 If this string contains an asterisk (`*'), that is replaced by the file name;
 otherwise, the file name, preceded by blank, is added at the end.
 
@@ -26835,7 +27168,7 @@
 (custom-autoload 'tex-alt-dvi-print-command "tex-mode" t)
 
 (defvar tex-dvi-view-command `(cond ((eq window-system 'x) ,(purecopy "xdvi")) ((eq window-system 'w32) ,(purecopy "yap")) (t ,(purecopy "dvi2tty * | cat -s"))) "\
-*Command used by \\[tex-view] to display a `.dvi' file.
+Command used by \\[tex-view] to display a `.dvi' file.
 If it is a string, that specifies the command directly.
 If this string contains an asterisk (`*'), that is replaced by the file name;
 otherwise, the file name, preceded by a space, is added at the end.
@@ -26845,13 +27178,13 @@
 (custom-autoload 'tex-dvi-view-command "tex-mode" t)
 
 (defvar tex-show-queue-command (purecopy "lpq") "\
-*Command used by \\[tex-show-print-queue] to show the print queue.
+Command used by \\[tex-show-print-queue] to show the print queue.
 Should show the queue(s) that \\[tex-print] puts jobs on.")
 
 (custom-autoload 'tex-show-queue-command "tex-mode" t)
 
 (defvar tex-default-mode 'latex-mode "\
-*Mode to enter for a new file that might be either TeX or LaTeX.
+Mode to enter for a new file that might be either TeX or LaTeX.
 This variable is used when it can't be determined whether the file
 is plain TeX or LaTeX or what because the file contains no commands.
 Normally set to either `plain-tex-mode' or `latex-mode'.")
@@ -26859,12 +27192,12 @@
 (custom-autoload 'tex-default-mode "tex-mode" t)
 
 (defvar tex-open-quote (purecopy "``") "\
-*String inserted by typing \\[tex-insert-quote] to open a quotation.")
+String inserted by typing \\[tex-insert-quote] to open a quotation.")
 
 (custom-autoload 'tex-open-quote "tex-mode" t)
 
 (defvar tex-close-quote (purecopy "''") "\
-*String inserted by typing \\[tex-insert-quote] to close a quotation.")
+String inserted by typing \\[tex-insert-quote] to close a quotation.")
 
 (custom-autoload 'tex-close-quote "tex-mode" t)
 
@@ -27027,7 +27360,7 @@
 ;;;***
 
 ;;;### (autoloads (texi2info texinfo-format-region texinfo-format-buffer)
-;;;;;;  "texinfmt" "textmodes/texinfmt.el" (19279 5152))
+;;;;;;  "texinfmt" "textmodes/texinfmt.el" (19675 9114))
 ;;; Generated autoloads from textmodes/texinfmt.el
 
 (autoload 'texinfo-format-buffer "texinfmt" "\
@@ -27067,7 +27400,7 @@
 ;;;***
 
 ;;;### (autoloads (texinfo-mode texinfo-close-quote texinfo-open-quote)
-;;;;;;  "texinfo" "textmodes/texinfo.el" (19279 5152))
+;;;;;;  "texinfo" "textmodes/texinfo.el" (19595 20656))
 ;;; Generated autoloads from textmodes/texinfo.el
 
 (defvar texinfo-open-quote (purecopy "``") "\
@@ -27153,7 +27486,7 @@
 
 ;;;### (autoloads (thai-composition-function thai-compose-buffer
 ;;;;;;  thai-compose-string thai-compose-region) "thai-util" "language/thai-util.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from language/thai-util.el
 
 (autoload 'thai-compose-region "thai-util" "\
@@ -27182,7 +27515,7 @@
 
 ;;;### (autoloads (list-at-point number-at-point symbol-at-point
 ;;;;;;  sexp-at-point thing-at-point bounds-of-thing-at-point forward-thing)
-;;;;;;  "thingatpt" "thingatpt.el" (19279 5148))
+;;;;;;  "thingatpt" "thingatpt.el" (19379 23432))
 ;;; Generated autoloads from thingatpt.el
 
 (autoload 'forward-thing "thingatpt" "\
@@ -27239,7 +27572,7 @@
 
 ;;;### (autoloads (thumbs-dired-setroot thumbs-dired-show thumbs-dired-show-marked
 ;;;;;;  thumbs-show-from-dir thumbs-find-thumb) "thumbs" "thumbs.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from thumbs.el
 
 (autoload 'thumbs-find-thumb "thumbs" "\
@@ -27277,8 +27610,8 @@
 ;;;;;;  tibetan-post-read-conversion tibetan-compose-buffer tibetan-decompose-buffer
 ;;;;;;  tibetan-decompose-string tibetan-decompose-region tibetan-compose-region
 ;;;;;;  tibetan-compose-string tibetan-transcription-to-tibetan tibetan-tibetan-to-transcription
-;;;;;;  tibetan-char-p) "tibet-util" "language/tibet-util.el" (19279
-;;;;;;  5150))
+;;;;;;  tibetan-char-p) "tibet-util" "language/tibet-util.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from language/tibet-util.el
 
 (autoload 'tibetan-char-p "tibet-util" "\
@@ -27352,7 +27685,7 @@
 ;;;***
 
 ;;;### (autoloads (tildify-buffer tildify-region) "tildify" "textmodes/tildify.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from textmodes/tildify.el
 
 (autoload 'tildify-region "tildify" "\
@@ -27377,11 +27710,11 @@
 
 ;;;### (autoloads (emacs-init-time emacs-uptime display-time-world
 ;;;;;;  display-time-mode display-time display-time-day-and-date)
-;;;;;;  "time" "time.el" (19279 5148))
+;;;;;;  "time" "time.el" (19623 14869))
 ;;; Generated autoloads from time.el
 
 (defvar display-time-day-and-date nil "\
-*Non-nil means \\[display-time] should display day and date as well as time.")
+Non-nil means \\[display-time] should display day and date as well as time.")
 
 (custom-autoload 'display-time-day-and-date "time" t)
 (put 'display-time-string 'risky-local-variable t)
@@ -27440,7 +27773,7 @@
 ;;;;;;  time-to-day-in-year date-leap-year-p days-between date-to-day
 ;;;;;;  time-add time-subtract time-since days-to-time time-less-p
 ;;;;;;  seconds-to-time date-to-time) "time-date" "calendar/time-date.el"
-;;;;;;  (19292 15231))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from calendar/time-date.el
 
 (autoload 'date-to-time "time-date" "\
@@ -27448,8 +27781,9 @@
 If DATE lacks timezone information, GMT is assumed.
 
 \(fn DATE)" nil nil)
-(if (and (fboundp 'float-time)
-        (subrp (symbol-function 'float-time)))
+(if (or (featurep 'emacs)
+       (and (fboundp 'float-time)
+            (subrp (symbol-function 'float-time))))
    (progn
      (defalias 'time-to-seconds 'float-time)
      (make-obsolete 'time-to-seconds 'float-time "21.1"))
@@ -27461,7 +27795,7 @@
 \(fn SECONDS)" nil nil)
 
 (autoload 'time-less-p "time-date" "\
-Say whether time value T1 is less than time value T2.
+Return non-nil if time value T1 is earlier than time value T2.
 
 \(fn T1 T2)" nil nil)
 
@@ -27553,7 +27887,7 @@
 ;;;***
 
 ;;;### (autoloads (time-stamp-toggle-active time-stamp) "time-stamp"
-;;;;;;  "time-stamp.el" (19279 5148))
+;;;;;;  "time-stamp.el" (19379 23432))
 ;;; Generated autoloads from time-stamp.el
 (put 'time-stamp-format 'safe-local-variable 'stringp)
 (put 'time-stamp-time-zone 'safe-local-variable 'string-or-null-p)
@@ -27597,7 +27931,7 @@
 ;;;;;;  timeclock-workday-remaining-string timeclock-reread-log timeclock-query-out
 ;;;;;;  timeclock-change timeclock-status-string timeclock-out timeclock-in
 ;;;;;;  timeclock-modeline-display) "timeclock" "calendar/timeclock.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from calendar/timeclock.el
 
 (autoload 'timeclock-modeline-display "timeclock" "\
@@ -27697,7 +28031,7 @@
 ;;;***
 
 ;;;### (autoloads (batch-titdic-convert titdic-convert) "titdic-cnv"
-;;;;;;  "international/titdic-cnv.el" (19279 5150))
+;;;;;;  "international/titdic-cnv.el" (19638 63299))
 ;;; Generated autoloads from international/titdic-cnv.el
 
 (autoload 'titdic-convert "titdic-cnv" "\
@@ -27720,7 +28054,7 @@
 ;;;***
 
 ;;;### (autoloads (tmm-prompt tmm-menubar-mouse tmm-menubar) "tmm"
-;;;;;;  "tmm.el" (19279 5148))
+;;;;;;  "tmm.el" (19404 27319))
 ;;; Generated autoloads from tmm.el
  (define-key global-map "\M-`" 'tmm-menubar)
  (define-key global-map [menu-bar mouse-1] 'tmm-menubar-mouse)
@@ -27760,7 +28094,7 @@
 
 ;;;### (autoloads (todo-show todo-cp todo-mode todo-print todo-top-priorities
 ;;;;;;  todo-insert-item todo-add-item-non-interactively todo-add-category)
-;;;;;;  "todo-mode" "calendar/todo-mode.el" (19279 5149))
+;;;;;;  "todo-mode" "calendar/todo-mode.el" (19398 25564))
 ;;; Generated autoloads from calendar/todo-mode.el
 
 (autoload 'todo-add-category "todo-mode" "\
@@ -27804,8 +28138,6 @@
 (autoload 'todo-mode "todo-mode" "\
 Major mode for editing TODO lists.
 
-\\{todo-mode-map}
-
 \(fn)" t nil)
 
 (autoload 'todo-cp "todo-mode" "\
@@ -27820,82 +28152,8 @@
 
 ;;;***
 
-;;;### (autoloads (tool-bar-local-item-from-menu tool-bar-add-item-from-menu
-;;;;;;  tool-bar-local-item tool-bar-add-item toggle-tool-bar-mode-from-frame)
-;;;;;;  "tool-bar" "tool-bar.el" (19279 5148))
-;;; Generated autoloads from tool-bar.el
-
-(autoload 'toggle-tool-bar-mode-from-frame "tool-bar" "\
-Toggle tool bar on or off, based on the status of the current frame.
-See `tool-bar-mode' for more information.
-
-\(fn &optional ARG)" t nil)
-
-(put 'tool-bar-mode 'standard-value '(t))
-
-(autoload 'tool-bar-add-item "tool-bar" "\
-Add an item to the tool bar.
-ICON names the image, DEF is the key definition and KEY is a symbol
-for the fake function key in the menu keymap.  Remaining arguments
-PROPS are additional items to add to the menu item specification.  See
-Info node `(elisp)Tool Bar'.  Items are added from left to right.
-
-ICON is the base name of a file containing the image to use.  The
-function will first try to use low-color/ICON.xpm if `display-color-cells'
-is less or equal to 256, then ICON.xpm, then ICON.pbm, and finally
-ICON.xbm, using `find-image'.
-
-Use this function only to make bindings in the global value of `tool-bar-map'.
-To define items in any other map, use `tool-bar-local-item'.
-
-\(fn ICON DEF KEY &rest PROPS)" nil nil)
-
-(autoload 'tool-bar-local-item "tool-bar" "\
-Add an item to the tool bar in map MAP.
-ICON names the image, DEF is the key definition and KEY is a symbol
-for the fake function key in the menu keymap.  Remaining arguments
-PROPS are additional items to add to the menu item specification.  See
-Info node `(elisp)Tool Bar'.  Items are added from left to right.
-
-ICON is the base name of a file containing the image to use.  The
-function will first try to use low-color/ICON.xpm if `display-color-cells'
-is less or equal to 256, then ICON.xpm, then ICON.pbm, and finally
-ICON.xbm, using `find-image'.
-
-\(fn ICON DEF KEY MAP &rest PROPS)" nil nil)
-
-(autoload 'tool-bar-add-item-from-menu "tool-bar" "\
-Define tool bar binding for COMMAND in keymap MAP using the given ICON.
-This makes a binding for COMMAND in `tool-bar-map', copying its
-binding from the menu bar in MAP (which defaults to `global-map'), but
-modifies the binding by adding an image specification for ICON.  It
-finds ICON just like `tool-bar-add-item'.  PROPS are additional
-properties to add to the binding.
-
-MAP must contain appropriate binding for `[menu-bar]' which holds a keymap.
-
-Use this function only to make bindings in the global value of `tool-bar-map'.
-To define items in any other map, use `tool-bar-local-item-from-menu'.
-
-\(fn COMMAND ICON &optional MAP &rest PROPS)" nil nil)
-
-(autoload 'tool-bar-local-item-from-menu "tool-bar" "\
-Define local tool bar binding for COMMAND using the given ICON.
-This makes a binding for COMMAND in IN-MAP, copying its binding from
-the menu bar in FROM-MAP (which defaults to `global-map'), but
-modifies the binding by adding an image specification for ICON.  It
-finds ICON just like `tool-bar-add-item'.  PROPS are additional
-properties to add to the binding.
-
-FROM-MAP must contain appropriate binding for `[menu-bar]' which
-holds a keymap.
-
-\(fn COMMAND ICON IN-MAP &optional FROM-MAP &rest PROPS)" nil nil)
-
-;;;***
-
 ;;;### (autoloads (tpu-edt-on tpu-edt-mode) "tpu-edt" "emulation/tpu-edt.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19675 12103))
 ;;; Generated autoloads from emulation/tpu-edt.el
 
 (defvar tpu-edt-mode nil "\
@@ -27922,7 +28180,7 @@
 ;;;***
 
 ;;;### (autoloads (tpu-mapper) "tpu-mapper" "emulation/tpu-mapper.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from emulation/tpu-mapper.el
 
 (autoload 'tpu-mapper "tpu-mapper" "\
@@ -27956,7 +28214,7 @@
 
 ;;;***
 
-;;;### (autoloads (tq-create) "tq" "emacs-lisp/tq.el" (19279 5149))
+;;;### (autoloads (tq-create) "tq" "emacs-lisp/tq.el" (19379 23432))
 ;;; Generated autoloads from emacs-lisp/tq.el
 
 (autoload 'tq-create "tq" "\
@@ -27970,7 +28228,7 @@
 ;;;***
 
 ;;;### (autoloads (trace-function-background trace-function trace-buffer)
-;;;;;;  "trace" "emacs-lisp/trace.el" (19370 36541))
+;;;;;;  "trace" "emacs-lisp/trace.el" (19379 23432))
 ;;; Generated autoloads from emacs-lisp/trace.el
 
 (defvar trace-buffer (purecopy "*trace-output*") "\
@@ -28007,7 +28265,7 @@
 ;;;### (autoloads (tramp-unload-tramp tramp-completion-handle-file-name-completion
 ;;;;;;  tramp-completion-handle-file-name-all-completions tramp-unload-file-name-handlers
 ;;;;;;  tramp-file-name-handler tramp-syntax tramp-mode) "tramp"
-;;;;;;  "net/tramp.el" (19370 36541))
+;;;;;;  "net/tramp.el" (19681 9924))
 ;;; Generated autoloads from net/tramp.el
 
 (defvar tramp-mode t "\
@@ -28027,10 +28285,12 @@
 
 (custom-autoload 'tramp-syntax "tramp" t)
 
-(defconst tramp-file-name-regexp-unified "\\`/\\([^[/:]+\\|[^/]+]\\):" "\
+(defconst tramp-file-name-regexp-unified (if (memq system-type '(cygwin windows-nt)) "\\`/\\([^[/:]\\{2,\\}\\|[^/]\\{2,\\}]\\):" "\\`/\\([^[/:]+\\|[^/]+]\\):") "\
 Value for `tramp-file-name-regexp' for unified remoting.
 Emacs (not XEmacs) uses a unified filename syntax for Ange-FTP and
-Tramp.  See `tramp-file-name-structure' for more explanations.")
+Tramp.  See `tramp-file-name-structure' for more explanations.
+
+On W32 systems, the volume letter must be ignored.")
 
 (defconst tramp-file-name-regexp-separate "\\`/\\[.*\\]" "\
 Value for `tramp-file-name-regexp' for separate remoting.
@@ -28044,7 +28304,7 @@
 (defconst tramp-file-name-regexp (cond ((equal tramp-syntax 'ftp) tramp-file-name-regexp-unified) ((equal tramp-syntax 'sep) tramp-file-name-regexp-separate) ((equal tramp-syntax 'url) tramp-file-name-regexp-url) (t (error "Wrong `tramp-syntax' defined"))) "\
 *Regular expression matching file names handled by Tramp.
 This regexp should match Tramp file names but no other file names.
-\(When tramp.el is loaded, this regular expression is prepended to
+When tramp.el is loaded, this regular expression is prepended to
 `file-name-handler-alist', and that is searched sequentially.  Thus,
 if the Tramp entry appears rather early in the `file-name-handler-alist'
 and is a bit too general, then some files might be considered Tramp
@@ -28062,10 +28322,12 @@
 Usually, it is just \"\\\\`/\".  On W32 systems, there might be a
 volume letter, which will be removed by `tramp-drop-volume-letter'.")
 
-(defconst tramp-completion-file-name-regexp-unified (concat tramp-root-regexp "[^/]*\\'") "\
+(defconst tramp-completion-file-name-regexp-unified (if (memq system-type '(cygwin windows-nt)) (concat tramp-root-regexp "[^/]\\{2,\\}\\'") (concat tramp-root-regexp "[^/]*\\'")) "\
 Value for `tramp-completion-file-name-regexp' for unified remoting.
 GNU Emacs uses a unified filename syntax for Tramp and Ange-FTP.
-See `tramp-file-name-structure' for more explanations.")
+See `tramp-file-name-structure' for more explanations.
+
+On W32 systems, the volume letter must be ignored.")
 
 (defconst tramp-completion-file-name-regexp-separate (concat tramp-root-regexp "\\([[][^]]*\\)?\\'") "\
 Value for `tramp-completion-file-name-regexp' for separate remoting.
@@ -28089,9 +28351,9 @@
 
 (defconst tramp-completion-file-name-handler-alist '((file-name-all-completions . tramp-completion-handle-file-name-all-completions) (file-name-completion . tramp-completion-handle-file-name-completion)) "\
 Alist of completion handler functions.
-Used for file names matching `tramp-file-name-regexp'. Operations not
-mentioned here will be handled by `tramp-file-name-handler-alist' or the
-normal Emacs functions.")
+Used for file names matching `tramp-file-name-regexp'. Operations
+not mentioned here will be handled by Tramp's file name handler
+functions, or the normal Emacs functions.")
 
 (defun tramp-run-real-handler (operation args) "\
 Invoke normal file name handler for OPERATION.
@@ -28111,10 +28373,11 @@
 
 (defun tramp-completion-file-name-handler (operation &rest args) "\
 Invoke Tramp file name completion handler.
-Falls back to normal file name handler if no Tramp file name handler exists." (let ((directory-sep-char 47) (fn (assoc operation tramp-completion-file-name-handler-alist))) (if (and fn tramp-mode (or (eq tramp-syntax (quote sep)) (featurep (quote tramp)) (and (boundp (quote partial-completion-mode)) partial-completion-mode) (featurep (quote ido)) (featurep (quote icicles)))) (save-match-data (apply (cdr fn) args)) (tramp-completion-run-real-handler operation args))))
+Falls back to normal file name handler if no Tramp file name handler exists." (let ((directory-sep-char 47) (fn (assoc operation tramp-completion-file-name-handler-alist))) (if (and fn tramp-mode (or (eq tramp-syntax (quote sep)) (featurep (quote tramp)) (and (boundp (quote partial-completion-mode)) (symbol-value (quote partial-completion-mode))) (featurep (quote ido)) (featurep (quote icicles)))) (save-match-data (apply (cdr fn) args)) (tramp-completion-run-real-handler operation args))))
 
 (defun tramp-register-file-name-handlers nil "\
 Add Tramp file name handlers to `file-name-handler-alist'." (let ((a1 (rassq (quote tramp-file-name-handler) file-name-handler-alist))) (setq file-name-handler-alist (delq a1 file-name-handler-alist))) (let ((a1 (rassq (quote tramp-completion-file-name-handler) file-name-handler-alist))) (setq file-name-handler-alist (delq a1 file-name-handler-alist))) (add-to-list (quote file-name-handler-alist) (cons tramp-file-name-regexp (quote tramp-file-name-handler))) (put (quote tramp-file-name-handler) (quote safe-magic) t) (add-to-list (quote file-name-handler-alist) (cons tramp-completion-file-name-regexp (quote tramp-completion-file-name-handler))) (put (quote tramp-completion-file-name-handler) (quote safe-magic) t) (dolist (fnh (quote (epa-file-handler jka-compr-handler))) (let ((entry (rassoc fnh file-name-handler-alist))) (when entry (setq file-name-handler-alist (cons entry (delete entry file-name-handler-alist)))))))
+
 (tramp-register-file-name-handlers)
 
 (autoload 'tramp-unload-file-name-handlers "tramp" "\
@@ -28140,7 +28403,7 @@
 ;;;***
 
 ;;;### (autoloads (tramp-ftp-enable-ange-ftp) "tramp-ftp" "net/tramp-ftp.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19598 20570))
 ;;; Generated autoloads from net/tramp-ftp.el
 
 (autoload 'tramp-ftp-enable-ange-ftp "tramp-ftp" "\
@@ -28150,8 +28413,8 @@
 
 ;;;***
 
-;;;### (autoloads (help-with-tutorial) "tutorial" "tutorial.el" (19279
-;;;;;;  5148))
+;;;### (autoloads (help-with-tutorial) "tutorial" "tutorial.el" (19578
+;;;;;;  56905))
 ;;; Generated autoloads from tutorial.el
 
 (autoload 'help-with-tutorial "tutorial" "\
@@ -28176,7 +28439,7 @@
 ;;;***
 
 ;;;### (autoloads (tai-viet-composition-function) "tv-util" "language/tv-util.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19520 54552))
 ;;; Generated autoloads from language/tv-util.el
 
 (autoload 'tai-viet-composition-function "tv-util" "\
@@ -28187,7 +28450,7 @@
 ;;;***
 
 ;;;### (autoloads (2C-split 2C-associate-buffer 2C-two-columns) "two-column"
-;;;;;;  "textmodes/two-column.el" (19279 5152))
+;;;;;;  "textmodes/two-column.el" (19611 13362))
 ;;; Generated autoloads from textmodes/two-column.el
  (autoload '2C-command "two-column" () t 'keymap)
  (global-set-key "\C-x6" '2C-command)
@@ -28238,7 +28501,7 @@
 ;;;;;;  type-break type-break-mode type-break-keystroke-threshold
 ;;;;;;  type-break-good-break-interval type-break-good-rest-interval
 ;;;;;;  type-break-interval type-break-mode) "type-break" "type-break.el"
-;;;;;;  (19279 5148))
+;;;;;;  (19669 58161))
 ;;; Generated autoloads from type-break.el
 
 (defvar type-break-mode nil "\
@@ -28420,7 +28683,7 @@
 
 ;;;***
 
-;;;### (autoloads (uce-reply-to-uce) "uce" "mail/uce.el" (19279 5150))
+;;;### (autoloads (uce-reply-to-uce) "uce" "mail/uce.el" (19379 23432))
 ;;; Generated autoloads from mail/uce.el
 
 (autoload 'uce-reply-to-uce "uce" "\
@@ -28438,7 +28701,7 @@
 ;;;;;;  ucs-normalize-NFKC-string ucs-normalize-NFKC-region ucs-normalize-NFKD-string
 ;;;;;;  ucs-normalize-NFKD-region ucs-normalize-NFC-string ucs-normalize-NFC-region
 ;;;;;;  ucs-normalize-NFD-string ucs-normalize-NFD-region) "ucs-normalize"
-;;;;;;  "international/ucs-normalize.el" (19279 5150))
+;;;;;;  "international/ucs-normalize.el" (19599 55780))
 ;;; Generated autoloads from international/ucs-normalize.el
 
 (autoload 'ucs-normalize-NFD-region "ucs-normalize" "\
@@ -28504,7 +28767,7 @@
 ;;;***
 
 ;;;### (autoloads (ununderline-region underline-region) "underline"
-;;;;;;  "textmodes/underline.el" (19279 5152))
+;;;;;;  "textmodes/underline.el" (19379 23432))
 ;;; Generated autoloads from textmodes/underline.el
 
 (autoload 'underline-region "underline" "\
@@ -28525,7 +28788,7 @@
 ;;;***
 
 ;;;### (autoloads (unrmail batch-unrmail) "unrmail" "mail/unrmail.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from mail/unrmail.el
 
 (autoload 'batch-unrmail "unrmail" "\
@@ -28544,8 +28807,8 @@
 
 ;;;***
 
-;;;### (autoloads (unsafep) "unsafep" "emacs-lisp/unsafep.el" (19279
-;;;;;;  5150))
+;;;### (autoloads (unsafep) "unsafep" "emacs-lisp/unsafep.el" (19645
+;;;;;;  32682))
 ;;; Generated autoloads from emacs-lisp/unsafep.el
 
 (autoload 'unsafep "unsafep" "\
@@ -28558,7 +28821,7 @@
 ;;;***
 
 ;;;### (autoloads (url-retrieve-synchronously url-retrieve) "url"
-;;;;;;  "url/url.el" (19365 25156))
+;;;;;;  "url/url.el" (19623 4932))
 ;;; Generated autoloads from url/url.el
 
 (autoload 'url-retrieve "url" "\
@@ -28585,7 +28848,9 @@
 request; dynamic binding of other variables doesn't necessarily
 take effect.
 
-\(fn URL CALLBACK &optional CBARGS)" nil nil)
+If SILENT, then don't message progress reports and the like.
+
+\(fn URL CALLBACK &optional CBARGS SILENT)" nil nil)
 
 (autoload 'url-retrieve-synchronously "url" "\
 Retrieve URL synchronously.
@@ -28598,7 +28863,7 @@
 ;;;***
 
 ;;;### (autoloads (url-register-auth-scheme url-get-authentication)
-;;;;;;  "url-auth" "url/url-auth.el" (19279 5152))
+;;;;;;  "url-auth" "url/url-auth.el" (19379 23432))
 ;;; Generated autoloads from url/url-auth.el
 
 (autoload 'url-get-authentication "url-auth" "\
@@ -28639,9 +28904,8 @@
 
 ;;;***
 
-;;;### (autoloads (url-cache-expired url-cache-extract url-is-cached
-;;;;;;  url-store-in-cache) "url-cache" "url/url-cache.el" (19279
-;;;;;;  5152))
+;;;### (autoloads (url-cache-extract url-is-cached url-store-in-cache)
+;;;;;;  "url-cache" "url/url-cache.el" (19625 7291))
 ;;; Generated autoloads from url/url-cache.el
 
 (autoload 'url-store-in-cache "url-cache" "\
@@ -28651,6 +28915,7 @@
 
 (autoload 'url-is-cached "url-cache" "\
 Return non-nil if the URL is cached.
+The actual return value is the last modification time of the cache file.
 
 \(fn URL)" nil nil)
 
@@ -28659,14 +28924,9 @@
 
 \(fn FNAM)" nil nil)
 
-(autoload 'url-cache-expired "url-cache" "\
-Return t if a cached file has expired.
-
-\(fn URL MOD)" nil nil)
-
-;;;***
-
-;;;### (autoloads (url-cid) "url-cid" "url/url-cid.el" (19279 5152))
+;;;***
+
+;;;### (autoloads (url-cid) "url-cid" "url/url-cid.el" (19379 23432))
 ;;; Generated autoloads from url/url-cid.el
 
 (autoload 'url-cid "url-cid" "\
@@ -28677,7 +28937,7 @@
 ;;;***
 
 ;;;### (autoloads (url-dav-vc-registered url-dav-supported-p) "url-dav"
-;;;;;;  "url/url-dav.el" (19279 5152))
+;;;;;;  "url/url-dav.el" (19379 23432))
 ;;; Generated autoloads from url/url-dav.el
 
 (autoload 'url-dav-supported-p "url-dav" "\
@@ -28692,8 +28952,8 @@
 
 ;;;***
 
-;;;### (autoloads (url-file) "url-file" "url/url-file.el" (19279
-;;;;;;  5152))
+;;;### (autoloads (url-file) "url-file" "url/url-file.el" (19686
+;;;;;;  22639))
 ;;; Generated autoloads from url/url-file.el
 
 (autoload 'url-file "url-file" "\
@@ -28704,7 +28964,7 @@
 ;;;***
 
 ;;;### (autoloads (url-open-stream url-gateway-nslookup-host) "url-gw"
-;;;;;;  "url/url-gw.el" (19279 5152))
+;;;;;;  "url/url-gw.el" (19639 32022))
 ;;; Generated autoloads from url/url-gw.el
 
 (autoload 'url-gateway-nslookup-host "url-gw" "\
@@ -28724,7 +28984,7 @@
 
 ;;;### (autoloads (url-insert-file-contents url-file-local-copy url-copy-file
 ;;;;;;  url-file-handler url-handler-mode) "url-handlers" "url/url-handlers.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from url/url-handlers.el
 
 (defvar url-handler-mode nil "\
@@ -28776,7 +29036,7 @@
 ;;;***
 
 ;;;### (autoloads (url-http-options url-http-file-attributes url-http-file-exists-p
-;;;;;;  url-http) "url-http" "url/url-http.el" (19372 27330))
+;;;;;;  url-http) "url-http" "url/url-http.el" (19629 52252))
 ;;; Generated autoloads from url/url-http.el
 
 (autoload 'url-http "url-http" "\
@@ -28842,7 +29102,7 @@
 
 ;;;***
 
-;;;### (autoloads (url-irc) "url-irc" "url/url-irc.el" (19279 5152))
+;;;### (autoloads (url-irc) "url-irc" "url/url-irc.el" (19595 20656))
 ;;; Generated autoloads from url/url-irc.el
 
 (autoload 'url-irc "url-irc" "\
@@ -28852,8 +29112,8 @@
 
 ;;;***
 
-;;;### (autoloads (url-ldap) "url-ldap" "url/url-ldap.el" (19279
-;;;;;;  5152))
+;;;### (autoloads (url-ldap) "url-ldap" "url/url-ldap.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from url/url-ldap.el
 
 (autoload 'url-ldap "url-ldap" "\
@@ -28867,7 +29127,7 @@
 ;;;***
 
 ;;;### (autoloads (url-mailto url-mail) "url-mailto" "url/url-mailto.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from url/url-mailto.el
 
 (autoload 'url-mail "url-mailto" "\
@@ -28883,7 +29143,7 @@
 ;;;***
 
 ;;;### (autoloads (url-data url-generic-emulator-loader url-info
-;;;;;;  url-man) "url-misc" "url/url-misc.el" (19279 5152))
+;;;;;;  url-man) "url-misc" "url/url-misc.el" (19379 23432))
 ;;; Generated autoloads from url/url-misc.el
 
 (autoload 'url-man "url-misc" "\
@@ -28915,7 +29175,7 @@
 ;;;***
 
 ;;;### (autoloads (url-snews url-news) "url-news" "url/url-news.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from url/url-news.el
 
 (autoload 'url-news "url-news" "\
@@ -28932,7 +29192,7 @@
 
 ;;;### (autoloads (url-ns-user-pref url-ns-prefs isInNet isResolvable
 ;;;;;;  dnsResolve dnsDomainIs isPlainHostName) "url-ns" "url/url-ns.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from url/url-ns.el
 
 (autoload 'isPlainHostName "url-ns" "\
@@ -28973,7 +29233,7 @@
 ;;;***
 
 ;;;### (autoloads (url-generic-parse-url url-recreate-url) "url-parse"
-;;;;;;  "url/url-parse.el" (19279 5152))
+;;;;;;  "url/url-parse.el" (19623 4932))
 ;;; Generated autoloads from url/url-parse.el
 
 (autoload 'url-recreate-url "url-parse" "\
@@ -28991,7 +29251,7 @@
 ;;;***
 
 ;;;### (autoloads (url-setup-privacy-info) "url-privacy" "url/url-privacy.el"
-;;;;;;  (19279 5152))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from url/url-privacy.el
 
 (autoload 'url-setup-privacy-info "url-privacy" "\
@@ -29007,11 +29267,11 @@
 ;;;;;;  url-pretty-length url-strip-leading-spaces url-eat-trailing-space
 ;;;;;;  url-get-normalized-date url-lazy-message url-normalize-url
 ;;;;;;  url-insert-entities-in-string url-parse-args url-debug url-debug)
-;;;;;;  "url-util" "url/url-util.el" (19292 15232))
+;;;;;;  "url-util" "url/url-util.el" (19625 7291))
 ;;; Generated autoloads from url/url-util.el
 
 (defvar url-debug nil "\
-*What types of debug messages from the URL library to show.
+What types of debug messages from the URL library to show.
 Debug messages are logged to the *URL-DEBUG* buffer.
 
 If t, all messages will be logged.
@@ -29143,7 +29403,7 @@
 ;;;***
 
 ;;;### (autoloads (ask-user-about-supersession-threat ask-user-about-lock)
-;;;;;;  "userlock" "userlock.el" (19279 5148))
+;;;;;;  "userlock" "userlock.el" (19379 23432))
 ;;; Generated autoloads from userlock.el
 
 (autoload 'ask-user-about-lock "userlock" "\
@@ -29173,7 +29433,7 @@
 
 ;;;### (autoloads (utf-7-imap-pre-write-conversion utf-7-pre-write-conversion
 ;;;;;;  utf-7-imap-post-read-conversion utf-7-post-read-conversion)
-;;;;;;  "utf-7" "international/utf-7.el" (19279 5150))
+;;;;;;  "utf-7" "international/utf-7.el" (19451 41962))
 ;;; Generated autoloads from international/utf-7.el
 
 (autoload 'utf-7-post-read-conversion "utf-7" "\
@@ -29198,9 +29458,19 @@
 
 ;;;***
 
+;;;### (autoloads (utf7-encode) "utf7" "gnus/utf7.el" (19618 61033))
+;;; Generated autoloads from gnus/utf7.el
+
+(autoload 'utf7-encode "utf7" "\
+Encode UTF-7 STRING.  Use IMAP modification if FOR-IMAP is non-nil.
+
+\(fn STRING &optional FOR-IMAP)" nil nil)
+
+;;;***
+
 ;;;### (autoloads (uudecode-decode-region uudecode-decode-region-internal
 ;;;;;;  uudecode-decode-region-external) "uudecode" "mail/uudecode.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19583 31640))
 ;;; Generated autoloads from mail/uudecode.el
 
 (autoload 'uudecode-decode-region-external "uudecode" "\
@@ -29226,12 +29496,12 @@
 
 ;;;### (autoloads (vc-branch-part vc-update-change-log vc-rename-file
 ;;;;;;  vc-delete-file vc-transfer-file vc-switch-backend vc-update
-;;;;;;  vc-rollback vc-revert vc-print-root-log vc-print-log vc-retrieve-tag
-;;;;;;  vc-create-tag vc-merge vc-insert-headers vc-revision-other-window
-;;;;;;  vc-root-diff vc-diff vc-version-diff vc-register vc-next-action
-;;;;;;  vc-before-checkin-hook vc-checkin-hook vc-checkout-hook)
-;;;;;;  "vc" "vc.el" (19370 36540))
-;;; Generated autoloads from vc.el
+;;;;;;  vc-rollback vc-revert vc-log-outgoing vc-log-incoming vc-print-root-log
+;;;;;;  vc-print-log vc-retrieve-tag vc-create-tag vc-merge vc-insert-headers
+;;;;;;  vc-revision-other-window vc-root-diff vc-diff vc-version-diff
+;;;;;;  vc-register vc-next-action vc-before-checkin-hook vc-checkin-hook
+;;;;;;  vc-checkout-hook) "vc" "vc/vc.el" (19677 58077))
+;;; Generated autoloads from vc/vc.el
 
 (defvar vc-checkout-hook nil "\
 Normal hook (list of functions) run after checking out a file.
@@ -29392,6 +29662,18 @@
 
 \(fn &optional LIMIT)" t nil)
 
+(autoload 'vc-log-incoming "vc" "\
+Show a log of changes that will be received with a pull operation from REMOTE-LOCATION.
+When called interactively with a prefix argument, prompt for REMOTE-LOCATION..
+
+\(fn &optional REMOTE-LOCATION)" t nil)
+
+(autoload 'vc-log-outgoing "vc" "\
+Show a log of changes that will be sent with a push operation to REMOTE-LOCATION.
+When called interactively with a prefix argument, prompt for REMOTE-LOCATION.
+
+\(fn &optional REMOTE-LOCATION)" t nil)
+
 (autoload 'vc-revert "vc" "\
 Revert working copies of the selected fileset to their repository contents.
 This asks for confirmation if the buffer contents are not identical
@@ -29445,7 +29727,7 @@
 \(fn FILE)" t nil)
 
 (autoload 'vc-rename-file "vc" "\
-Rename file OLD to NEW, and rename its master file likewise.
+Rename file OLD to NEW in both work area and repository.
 
 \(fn OLD NEW)" t nil)
 
@@ -29472,12 +29754,12 @@
 
 ;;;***
 
-;;;### (autoloads (vc-annotate) "vc-annotate" "vc-annotate.el" (19356
-;;;;;;  10801))
-;;; Generated autoloads from vc-annotate.el
+;;;### (autoloads (vc-annotate) "vc-annotate" "vc/vc-annotate.el"
+;;;;;;  (19578 56905))
+;;; Generated autoloads from vc/vc-annotate.el
 
 (autoload 'vc-annotate "vc-annotate" "\
-Display the edit history of the current file using colors.
+Display the edit history of the current FILE using colors.
 
 This command creates a buffer that shows, for each line of the current
 file, when it was last edited and by whom.  Additionally, colors are
@@ -29487,7 +29769,7 @@
 everything that is older than that is shown in blue.
 
 With a prefix argument, this command asks two questions in the
-minibuffer.  First, you may enter a revision number; then the buffer
+minibuffer.  First, you may enter a revision number REV; then the buffer
 displays and annotates that revision instead of the working revision
 \(type RET in the minibuffer to leave that default unchanged).  Then,
 you are prompted for the time span in days which the color range
@@ -29497,6 +29779,8 @@
 
 If MOVE-POINT-TO is given, move the point to that line.
 
+If VC-BK is given used that VC backend.
+
 Customization variables:
 
 `vc-annotate-menu-elements' customizes the menu elements of the
@@ -29504,12 +29788,12 @@
 `vc-annotate-very-old-color' define the mapping of time to colors.
 `vc-annotate-background' specifies the background color.
 
-\(fn FILE REV &optional DISPLAY-MODE BUF MOVE-POINT-TO)" t nil)
-
-;;;***
-
-;;;### (autoloads nil "vc-arch" "vc-arch.el" (19365 25156))
-;;; Generated autoloads from vc-arch.el
+\(fn FILE REV &optional DISPLAY-MODE BUF MOVE-POINT-TO VC-BK)" t nil)
+
+;;;***
+
+;;;### (autoloads nil "vc-arch" "vc/vc-arch.el" (19662 54456))
+;;; Generated autoloads from vc/vc-arch.el
  (defun vc-arch-registered (file)
   (if (vc-find-root file "{arch}/=tagging-method")
       (progn
@@ -29518,8 +29802,8 @@
 
 ;;;***
 
-;;;### (autoloads nil "vc-bzr" "vc-bzr.el" (19370 36540))
-;;; Generated autoloads from vc-bzr.el
+;;;### (autoloads nil "vc-bzr" "vc/vc-bzr.el" (19578 56905))
+;;; Generated autoloads from vc/vc-bzr.el
 
 (defconst vc-bzr-admin-dirname ".bzr" "\
 Name of the directory containing Bzr repository status files.")
@@ -29533,8 +29817,8 @@
 
 ;;;***
 
-;;;### (autoloads nil "vc-cvs" "vc-cvs.el" (19365 25156))
-;;; Generated autoloads from vc-cvs.el
+;;;### (autoloads nil "vc-cvs" "vc/vc-cvs.el" (19662 54456))
+;;; Generated autoloads from vc/vc-cvs.el
  (defun vc-cvs-registered (f)
   (when (file-readable-p (expand-file-name
  			  "CVS/Entries" (file-name-directory f)))
@@ -29543,8 +29827,8 @@
 
 ;;;***
 
-;;;### (autoloads (vc-dir) "vc-dir" "vc-dir.el" (19370 36540))
-;;; Generated autoloads from vc-dir.el
+;;;### (autoloads (vc-dir) "vc-dir" "vc/vc-dir.el" (19578 56905))
+;;; Generated autoloads from vc/vc-dir.el
 
 (autoload 'vc-dir "vc-dir" "\
 Show the VC status for \"interesting\" files in and below DIR.
@@ -29567,9 +29851,9 @@
 
 ;;;***
 
-;;;### (autoloads (vc-do-command) "vc-dispatcher" "vc-dispatcher.el"
-;;;;;;  (19374 2442))
-;;; Generated autoloads from vc-dispatcher.el
+;;;### (autoloads (vc-do-command) "vc-dispatcher" "vc/vc-dispatcher.el"
+;;;;;;  (19578 56905))
+;;; Generated autoloads from vc/vc-dispatcher.el
 
 (autoload 'vc-do-command "vc-dispatcher" "\
 Execute a slave command, notifying user and checking for errors.
@@ -29591,8 +29875,8 @@
 
 ;;;***
 
-;;;### (autoloads nil "vc-git" "vc-git.el" (19365 25156))
-;;; Generated autoloads from vc-git.el
+;;;### (autoloads nil "vc-git" "vc/vc-git.el" (19578 56905))
+;;; Generated autoloads from vc/vc-git.el
  (defun vc-git-registered (file)
   "Return non-nil if FILE is registered with git."
   (if (vc-find-root file ".git")       ; Short cut.
@@ -29602,8 +29886,8 @@
 
 ;;;***
 
-;;;### (autoloads nil "vc-hg" "vc-hg.el" (19370 36540))
-;;; Generated autoloads from vc-hg.el
+;;;### (autoloads nil "vc-hg" "vc/vc-hg.el" (19686 22639))
+;;; Generated autoloads from vc/vc-hg.el
  (defun vc-hg-registered (file)
   "Return non-nil if FILE is registered with hg."
   (if (vc-find-root file ".hg")       ; short cut
@@ -29613,8 +29897,8 @@
 
 ;;;***
 
-;;;### (autoloads nil "vc-mtn" "vc-mtn.el" (19365 25156))
-;;; Generated autoloads from vc-mtn.el
+;;;### (autoloads nil "vc-mtn" "vc/vc-mtn.el" (19675 9114))
+;;; Generated autoloads from vc/vc-mtn.el
 
 (defconst vc-mtn-admin-dir "_MTN")
 
@@ -29627,9 +29911,9 @@
 
 ;;;***
 
-;;;### (autoloads (vc-rcs-master-templates) "vc-rcs" "vc-rcs.el"
-;;;;;;  (19365 25156))
-;;; Generated autoloads from vc-rcs.el
+;;;### (autoloads (vc-rcs-master-templates) "vc-rcs" "vc/vc-rcs.el"
+;;;;;;  (19662 54456))
+;;; Generated autoloads from vc/vc-rcs.el
 
 (defvar vc-rcs-master-templates (purecopy '("%sRCS/%s,v" "%s%s,v" "%sRCS/%s")) "\
 Where to look for RCS master files.
@@ -29641,9 +29925,9 @@
 
 ;;;***
 
-;;;### (autoloads (vc-sccs-master-templates) "vc-sccs" "vc-sccs.el"
-;;;;;;  (19365 25156))
-;;; Generated autoloads from vc-sccs.el
+;;;### (autoloads (vc-sccs-master-templates) "vc-sccs" "vc/vc-sccs.el"
+;;;;;;  (19662 54456))
+;;; Generated autoloads from vc/vc-sccs.el
 
 (defvar vc-sccs-master-templates (purecopy '("%sSCCS/s.%s" "%ss.%s" vc-sccs-search-project-dir)) "\
 Where to look for SCCS master files.
@@ -29659,8 +29943,8 @@
 
 ;;;***
 
-;;;### (autoloads nil "vc-svn" "vc-svn.el" (19365 25156))
-;;; Generated autoloads from vc-svn.el
+;;;### (autoloads nil "vc-svn" "vc/vc-svn.el" (19630 58051))
+;;; Generated autoloads from vc/vc-svn.el
  (defun vc-svn-registered (f)
   (let ((admin-dir (cond ((and (eq system-type 'windows-nt)
                                (getenv "SVN_ASP_DOT_NET_HACK"))
@@ -29675,7 +29959,7 @@
 ;;;***
 
 ;;;### (autoloads (vera-mode) "vera-mode" "progmodes/vera-mode.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19669 58161))
 ;;; Generated autoloads from progmodes/vera-mode.el
  (add-to-list 'auto-mode-alist (cons (purecopy "\\.vr[hi]?\\'")  'vera-mode))
 
@@ -29733,7 +30017,7 @@
 ;;;***
 
 ;;;### (autoloads (verilog-mode) "verilog-mode" "progmodes/verilog-mode.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from progmodes/verilog-mode.el
 
 (autoload 'verilog-mode "verilog-mode" "\
@@ -29870,7 +30154,7 @@
 ;;;***
 
 ;;;### (autoloads (vhdl-mode) "vhdl-mode" "progmodes/vhdl-mode.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19675 9114))
 ;;; Generated autoloads from progmodes/vhdl-mode.el
 
 (autoload 'vhdl-mode "vhdl-mode" "\
@@ -30411,7 +30695,7 @@
 
 ;;;***
 
-;;;### (autoloads (vi-mode) "vi" "emulation/vi.el" (19256 49605))
+;;;### (autoloads (vi-mode) "vi" "emulation/vi.el" (19379 23432))
 ;;; Generated autoloads from emulation/vi.el
 
 (autoload 'vi-mode "vi" "\
@@ -30466,7 +30750,7 @@
 ;;;### (autoloads (viqr-pre-write-conversion viqr-post-read-conversion
 ;;;;;;  viet-encode-viqr-buffer viet-encode-viqr-region viet-decode-viqr-buffer
 ;;;;;;  viet-decode-viqr-region viet-encode-viscii-char) "viet-util"
-;;;;;;  "language/viet-util.el" (19279 5150))
+;;;;;;  "language/viet-util.el" (19379 23432))
 ;;; Generated autoloads from language/viet-util.el
 
 (autoload 'viet-encode-viscii-char "viet-util" "\
@@ -30514,7 +30798,7 @@
 ;;;;;;  view-mode view-buffer-other-frame view-buffer-other-window
 ;;;;;;  view-buffer view-file-other-frame view-file-other-window
 ;;;;;;  view-file kill-buffer-if-not-modified view-remove-frame-by-deleting)
-;;;;;;  "view" "view.el" (19356 10801))
+;;;;;;  "view" "view.el" (19422 40643))
 ;;; Generated autoloads from view.el
 
 (defvar view-remove-frame-by-deleting t "\
@@ -30760,8 +31044,8 @@
 
 ;;;***
 
-;;;### (autoloads (vip-mode vip-setup) "vip" "emulation/vip.el" (19279
-;;;;;;  5150))
+;;;### (autoloads (vip-mode vip-setup) "vip" "emulation/vip.el" (19611
+;;;;;;  13362))
 ;;; Generated autoloads from emulation/vip.el
 
 (autoload 'vip-setup "vip" "\
@@ -30777,7 +31061,7 @@
 ;;;***
 
 ;;;### (autoloads (viper-mode toggle-viper-mode) "viper" "emulation/viper.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19578 56905))
 ;;; Generated autoloads from emulation/viper.el
 
 (autoload 'toggle-viper-mode "viper" "\
@@ -30794,7 +31078,7 @@
 ;;;***
 
 ;;;### (autoloads (warn lwarn display-warning) "warnings" "emacs-lisp/warnings.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19606 36461))
 ;;; Generated autoloads from emacs-lisp/warnings.el
 
 (defvar warning-prefix-function nil "\
@@ -30884,7 +31168,7 @@
 ;;;***
 
 ;;;### (autoloads (wdired-change-to-wdired-mode) "wdired" "wdired.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from wdired.el
 
 (autoload 'wdired-change-to-wdired-mode "wdired" "\
@@ -30900,7 +31184,7 @@
 
 ;;;***
 
-;;;### (autoloads (webjump) "webjump" "net/webjump.el" (19279 5151))
+;;;### (autoloads (webjump) "webjump" "net/webjump.el" (19379 23432))
 ;;; Generated autoloads from net/webjump.el
 
 (autoload 'webjump "webjump" "\
@@ -30917,7 +31201,7 @@
 ;;;***
 
 ;;;### (autoloads (which-function-mode) "which-func" "progmodes/which-func.el"
-;;;;;;  (19279 5151))
+;;;;;;  (19551 10990))
 ;;; Generated autoloads from progmodes/which-func.el
  (put 'which-func-format 'risky-local-variable t)
  (put 'which-func-current 'risky-local-variable t)
@@ -30948,7 +31232,7 @@
 ;;;### (autoloads (whitespace-report-region whitespace-report whitespace-cleanup-region
 ;;;;;;  whitespace-cleanup global-whitespace-toggle-options whitespace-toggle-options
 ;;;;;;  global-whitespace-newline-mode global-whitespace-mode whitespace-newline-mode
-;;;;;;  whitespace-mode) "whitespace" "whitespace.el" (19356 10801))
+;;;;;;  whitespace-mode) "whitespace" "whitespace.el" (19575 52125))
 ;;; Generated autoloads from whitespace.el
 
 (autoload 'whitespace-mode "whitespace" "\
@@ -31038,6 +31322,7 @@
 
   CHAR	MEANING
   (VIA FACES)
+   f	toggle face visualization
    t	toggle TAB visualization
    s	toggle SPACE and HARD SPACE visualization
    r	toggle trailing blanks visualization
@@ -31066,6 +31351,7 @@
 Non-interactively, ARG should be a symbol or a list of symbols.
 The valid symbols are:
 
+   face			toggle face visualization
    tabs			toggle TAB visualization
    spaces		toggle SPACE and HARD SPACE visualization
    trailing		toggle trailing blanks visualization
@@ -31106,6 +31392,7 @@
 
   CHAR	MEANING
   (VIA FACES)
+   f	toggle face visualization
    t	toggle TAB visualization
    s	toggle SPACE and HARD SPACE visualization
    r	toggle trailing blanks visualization
@@ -31134,6 +31421,7 @@
 Non-interactively, ARG should be a symbol or a list of symbols.
 The valid symbols are:
 
+   face			toggle face visualization
    tabs			toggle TAB visualization
    spaces		toggle SPACE and HARD SPACE visualization
    trailing		toggle trailing blanks visualization
@@ -31347,7 +31635,7 @@
 ;;;***
 
 ;;;### (autoloads (widget-minor-mode widget-browse-other-window widget-browse
-;;;;;;  widget-browse-at) "wid-browse" "wid-browse.el" (19279 5149))
+;;;;;;  widget-browse-at) "wid-browse" "wid-browse.el" (19578 56905))
 ;;; Generated autoloads from wid-browse.el
 
 (autoload 'widget-browse-at "wid-browse" "\
@@ -31374,8 +31662,8 @@
 ;;;***
 
 ;;;### (autoloads (widget-setup widget-insert widget-delete widget-create
-;;;;;;  widget-prompt-value widgetp) "wid-edit" "wid-edit.el" (19356
-;;;;;;  10801))
+;;;;;;  widget-prompt-value widgetp) "wid-edit" "wid-edit.el" (19686
+;;;;;;  22639))
 ;;; Generated autoloads from wid-edit.el
 
 (autoload 'widgetp "wid-edit" "\
@@ -31418,8 +31706,8 @@
 ;;;***
 
 ;;;### (autoloads (windmove-default-keybindings windmove-down windmove-right
-;;;;;;  windmove-up windmove-left) "windmove" "windmove.el" (19279
-;;;;;;  5149))
+;;;;;;  windmove-up windmove-left) "windmove" "windmove.el" (19379
+;;;;;;  23432))
 ;;; Generated autoloads from windmove.el
 
 (autoload 'windmove-left "windmove" "\
@@ -31472,7 +31760,7 @@
 ;;;***
 
 ;;;### (autoloads (winner-mode winner-mode) "winner" "winner.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19379 23432))
 ;;; Generated autoloads from winner.el
 
 (defvar winner-mode nil "\
@@ -31490,8 +31778,8 @@
 
 ;;;***
 
-;;;### (autoloads (woman-find-file woman-dired-find-file woman woman-locale)
-;;;;;;  "woman" "woman.el" (19370 36540))
+;;;### (autoloads (woman-bookmark-jump woman-find-file woman-dired-find-file
+;;;;;;  woman woman-locale) "woman" "woman.el" (19669 58161))
 ;;; Generated autoloads from woman.el
 
 (defvar woman-locale nil "\
@@ -31532,10 +31820,15 @@
 
 \(fn FILE-NAME &optional REFORMAT)" t nil)
 
+(autoload 'woman-bookmark-jump "woman" "\
+Default bookmark handler for Woman buffers.
+
+\(fn BOOKMARK)" nil nil)
+
 ;;;***
 
 ;;;### (autoloads (wordstar-mode) "ws-mode" "emulation/ws-mode.el"
-;;;;;;  (19279 5150))
+;;;;;;  (19634 57717))
 ;;; Generated autoloads from emulation/ws-mode.el
 
 (autoload 'wordstar-mode "ws-mode" "\
@@ -31647,7 +31940,7 @@
 
 ;;;***
 
-;;;### (autoloads (xesam-search) "xesam" "net/xesam.el" (19356 10801))
+;;;### (autoloads (xesam-search) "xesam" "net/xesam.el" (19379 23432))
 ;;; Generated autoloads from net/xesam.el
 
 (autoload 'xesam-search "xesam" "\
@@ -31667,7 +31960,7 @@
 ;;;***
 
 ;;;### (autoloads (xml-parse-region xml-parse-file) "xml" "xml.el"
-;;;;;;  (19279 5149))
+;;;;;;  (19520 54552))
 ;;; Generated autoloads from xml.el
 
 (autoload 'xml-parse-file "xml" "\
@@ -31693,7 +31986,7 @@
 ;;;***
 
 ;;;### (autoloads (xmltok-get-declared-encoding-position) "xmltok"
-;;;;;;  "nxml/xmltok.el" (19279 5151))
+;;;;;;  "nxml/xmltok.el" (19379 23432))
 ;;; Generated autoloads from nxml/xmltok.el
 
 (autoload 'xmltok-get-declared-encoding-position "xmltok" "\
@@ -31711,8 +32004,8 @@
 
 ;;;***
 
-;;;### (autoloads (xterm-mouse-mode) "xt-mouse" "xt-mouse.el" (19279
-;;;;;;  5149))
+;;;### (autoloads (xterm-mouse-mode) "xt-mouse" "xt-mouse.el" (19520
+;;;;;;  54552))
 ;;; Generated autoloads from xt-mouse.el
 
 (defvar xterm-mouse-mode nil "\
@@ -31741,7 +32034,7 @@
 ;;;***
 
 ;;;### (autoloads (yenc-extract-filename yenc-decode-region) "yenc"
-;;;;;;  "gnus/yenc.el" (19279 5150))
+;;;;;;  "gnus/yenc.el" (19583 31640))
 ;;; Generated autoloads from gnus/yenc.el
 
 (autoload 'yenc-decode-region "yenc" "\
@@ -31757,7 +32050,7 @@
 ;;;***
 
 ;;;### (autoloads (psychoanalyze-pinhead apropos-zippy insert-zippyism
-;;;;;;  yow) "yow" "play/yow.el" (19279 5151))
+;;;;;;  yow) "yow" "play/yow.el" (19379 23432))
 ;;; Generated autoloads from play/yow.el
 
 (autoload 'yow "yow" "\
@@ -31783,7 +32076,7 @@
 
 ;;;***
 
-;;;### (autoloads (zone) "zone" "play/zone.el" (19279 5151))
+;;;### (autoloads (zone) "zone" "play/zone.el" (19520 54552))
 ;;; Generated autoloads from play/zone.el
 
 (autoload 'zone "zone" "\
@@ -31793,30 +32086,39 @@
 
 ;;;***
 
-;;;### (autoloads nil nil ("calc/calc-aent.el" "calc/calc-alg.el"
-;;;;;;  "calc/calc-arith.el" "calc/calc-bin.el" "calc/calc-comb.el"
-;;;;;;  "calc/calc-cplx.el" "calc/calc-embed.el" "calc/calc-ext.el"
-;;;;;;  "calc/calc-fin.el" "calc/calc-forms.el" "calc/calc-frac.el"
-;;;;;;  "calc/calc-funcs.el" "calc/calc-graph.el" "calc/calc-help.el"
-;;;;;;  "calc/calc-incom.el" "calc/calc-keypd.el" "calc/calc-lang.el"
-;;;;;;  "calc/calc-loaddefs.el" "calc/calc-macs.el" "calc/calc-map.el"
-;;;;;;  "calc/calc-math.el" "calc/calc-menu.el" "calc/calc-misc.el"
-;;;;;;  "calc/calc-mode.el" "calc/calc-mtx.el" "calc/calc-nlfit.el"
-;;;;;;  "calc/calc-poly.el" "calc/calc-prog.el" "calc/calc-rewr.el"
-;;;;;;  "calc/calc-rules.el" "calc/calc-sel.el" "calc/calc-stat.el"
-;;;;;;  "calc/calc-store.el" "calc/calc-stuff.el" "calc/calc-trail.el"
-;;;;;;  "calc/calc-undo.el" "calc/calc-units.el" "calc/calc-vec.el"
-;;;;;;  "calc/calc-yank.el" "calc/calcalg2.el" "calc/calcalg3.el"
-;;;;;;  "calc/calccomp.el" "calc/calcsel2.el" "calendar/cal-bahai.el"
-;;;;;;  "calendar/cal-coptic.el" "calendar/cal-french.el" "calendar/cal-html.el"
+;;;### (autoloads nil nil ("abbrevlist.el" "align.el" "allout.el"
+;;;;;;  "ansi-color.el" "apropos.el" "arc-mode.el" "array.el" "autoarg.el"
+;;;;;;  "autoinsert.el" "autorevert.el" "avoid.el" "battery.el" "bookmark.el"
+;;;;;;  "bs.el" "calc/calc-aent.el" "calc/calc-alg.el" "calc/calc-arith.el"
+;;;;;;  "calc/calc-bin.el" "calc/calc-comb.el" "calc/calc-cplx.el"
+;;;;;;  "calc/calc-embed.el" "calc/calc-ext.el" "calc/calc-fin.el"
+;;;;;;  "calc/calc-forms.el" "calc/calc-frac.el" "calc/calc-funcs.el"
+;;;;;;  "calc/calc-graph.el" "calc/calc-help.el" "calc/calc-incom.el"
+;;;;;;  "calc/calc-keypd.el" "calc/calc-lang.el" "calc/calc-macs.el"
+;;;;;;  "calc/calc-map.el" "calc/calc-math.el" "calc/calc-menu.el"
+;;;;;;  "calc/calc-misc.el" "calc/calc-mode.el" "calc/calc-mtx.el"
+;;;;;;  "calc/calc-nlfit.el" "calc/calc-poly.el" "calc/calc-prog.el"
+;;;;;;  "calc/calc-rewr.el" "calc/calc-rules.el" "calc/calc-sel.el"
+;;;;;;  "calc/calc-stat.el" "calc/calc-store.el" "calc/calc-stuff.el"
+;;;;;;  "calc/calc-trail.el" "calc/calc-undo.el" "calc/calc-units.el"
+;;;;;;  "calc/calc-vec.el" "calc/calc-yank.el" "calc/calc.el" "calc/calcalg2.el"
+;;;;;;  "calc/calcalg3.el" "calc/calccomp.el" "calc/calcsel2.el"
+;;;;;;  "calculator.el" "calendar/appt.el" "calendar/cal-bahai.el"
+;;;;;;  "calendar/cal-china.el" "calendar/cal-coptic.el" "calendar/cal-dst.el"
+;;;;;;  "calendar/cal-french.el" "calendar/cal-hebrew.el" "calendar/cal-html.el"
 ;;;;;;  "calendar/cal-islam.el" "calendar/cal-iso.el" "calendar/cal-julian.el"
 ;;;;;;  "calendar/cal-loaddefs.el" "calendar/cal-mayan.el" "calendar/cal-menu.el"
 ;;;;;;  "calendar/cal-move.el" "calendar/cal-persia.el" "calendar/cal-tex.el"
-;;;;;;  "calendar/cal-x.el" "calendar/diary-loaddefs.el" "calendar/hol-loaddefs.el"
-;;;;;;  "cdl.el" "cedet/cedet-cscope.el" "cedet/cedet-files.el" "cedet/cedet-global.el"
-;;;;;;  "cedet/cedet-idutils.el" "cedet/cedet.el" "cedet/ede/autoconf-edit.el"
-;;;;;;  "cedet/ede/cpp-root.el" "cedet/ede/dired.el" "cedet/ede/emacs.el"
-;;;;;;  "cedet/ede/files.el" "cedet/ede/linux.el" "cedet/ede/loaddefs.el"
+;;;;;;  "calendar/cal-x.el" "calendar/calendar.el" "calendar/diary-lib.el"
+;;;;;;  "calendar/diary-loaddefs.el" "calendar/hol-loaddefs.el" "calendar/holidays.el"
+;;;;;;  "calendar/icalendar.el" "calendar/lunar.el" "calendar/parse-time.el"
+;;;;;;  "calendar/solar.el" "calendar/time-date.el" "calendar/timeclock.el"
+;;;;;;  "calendar/todo-mode.el" "cdl.el" "cedet/cedet-cscope.el"
+;;;;;;  "cedet/cedet-files.el" "cedet/cedet-global.el" "cedet/cedet-idutils.el"
+;;;;;;  "cedet/cedet.el" "cedet/data-debug.el" "cedet/ede.el" "cedet/ede/auto.el"
+;;;;;;  "cedet/ede/autoconf-edit.el" "cedet/ede/base.el" "cedet/ede/cpp-root.el"
+;;;;;;  "cedet/ede/custom.el" "cedet/ede/dired.el" "cedet/ede/emacs.el"
+;;;;;;  "cedet/ede/files.el" "cedet/ede/generic.el" "cedet/ede/linux.el"
 ;;;;;;  "cedet/ede/locate.el" "cedet/ede/make.el" "cedet/ede/makefile-edit.el"
 ;;;;;;  "cedet/ede/pconf.el" "cedet/ede/pmake.el" "cedet/ede/proj-archive.el"
 ;;;;;;  "cedet/ede/proj-aux.el" "cedet/ede/proj-comp.el" "cedet/ede/proj-elisp.el"
@@ -31826,7 +32128,7 @@
 ;;;;;;  "cedet/ede/simple.el" "cedet/ede/source.el" "cedet/ede/speedbar.el"
 ;;;;;;  "cedet/ede/srecode.el" "cedet/ede/system.el" "cedet/ede/util.el"
 ;;;;;;  "cedet/inversion.el" "cedet/mode-local.el" "cedet/pulse.el"
-;;;;;;  "cedet/semantic/analyze.el" "cedet/semantic/analyze/complete.el"
+;;;;;;  "cedet/semantic.el" "cedet/semantic/analyze.el" "cedet/semantic/analyze/complete.el"
 ;;;;;;  "cedet/semantic/analyze/debug.el" "cedet/semantic/analyze/fcn.el"
 ;;;;;;  "cedet/semantic/analyze/refs.el" "cedet/semantic/bovine.el"
 ;;;;;;  "cedet/semantic/bovine/c-by.el" "cedet/semantic/bovine/c.el"
@@ -31846,13 +32148,13 @@
 ;;;;;;  "cedet/semantic/fw.el" "cedet/semantic/grammar-wy.el" "cedet/semantic/grammar.el"
 ;;;;;;  "cedet/semantic/html.el" "cedet/semantic/ia-sb.el" "cedet/semantic/ia.el"
 ;;;;;;  "cedet/semantic/idle.el" "cedet/semantic/imenu.el" "cedet/semantic/java.el"
-;;;;;;  "cedet/semantic/lex-spp.el" "cedet/semantic/lex.el" "cedet/semantic/loaddefs.el"
-;;;;;;  "cedet/semantic/mru-bookmark.el" "cedet/semantic/sb.el" "cedet/semantic/scope.el"
-;;;;;;  "cedet/semantic/senator.el" "cedet/semantic/sort.el" "cedet/semantic/symref.el"
-;;;;;;  "cedet/semantic/symref/cscope.el" "cedet/semantic/symref/filter.el"
-;;;;;;  "cedet/semantic/symref/global.el" "cedet/semantic/symref/grep.el"
-;;;;;;  "cedet/semantic/symref/idutils.el" "cedet/semantic/symref/list.el"
-;;;;;;  "cedet/semantic/tag-file.el" "cedet/semantic/tag-ls.el" "cedet/semantic/tag-write.el"
+;;;;;;  "cedet/semantic/lex-spp.el" "cedet/semantic/lex.el" "cedet/semantic/mru-bookmark.el"
+;;;;;;  "cedet/semantic/sb.el" "cedet/semantic/scope.el" "cedet/semantic/senator.el"
+;;;;;;  "cedet/semantic/sort.el" "cedet/semantic/symref.el" "cedet/semantic/symref/cscope.el"
+;;;;;;  "cedet/semantic/symref/filter.el" "cedet/semantic/symref/global.el"
+;;;;;;  "cedet/semantic/symref/grep.el" "cedet/semantic/symref/idutils.el"
+;;;;;;  "cedet/semantic/symref/list.el" "cedet/semantic/tag-file.el"
+;;;;;;  "cedet/semantic/tag-ls.el" "cedet/semantic/tag-write.el"
 ;;;;;;  "cedet/semantic/tag.el" "cedet/semantic/texi.el" "cedet/semantic/util-modes.el"
 ;;;;;;  "cedet/semantic/util.el" "cedet/semantic/wisent.el" "cedet/semantic/wisent/comp.el"
 ;;;;;;  "cedet/semantic/wisent/java-tags.el" "cedet/semantic/wisent/javascript.el"
@@ -31864,134 +32166,298 @@
 ;;;;;;  "cedet/srecode/el.el" "cedet/srecode/expandproto.el" "cedet/srecode/extract.el"
 ;;;;;;  "cedet/srecode/fields.el" "cedet/srecode/filters.el" "cedet/srecode/find.el"
 ;;;;;;  "cedet/srecode/getset.el" "cedet/srecode/insert.el" "cedet/srecode/java.el"
-;;;;;;  "cedet/srecode/loaddefs.el" "cedet/srecode/map.el" "cedet/srecode/mode.el"
-;;;;;;  "cedet/srecode/semantic.el" "cedet/srecode/srt-wy.el" "cedet/srecode/srt.el"
+;;;;;;  "cedet/srecode/map.el" "cedet/srecode/mode.el" "cedet/srecode/semantic.el"
+;;;;;;  "cedet/srecode/srt-mode.el" "cedet/srecode/srt-wy.el" "cedet/srecode/srt.el"
 ;;;;;;  "cedet/srecode/table.el" "cedet/srecode/template.el" "cedet/srecode/texi.el"
-;;;;;;  "cus-dep.el" "cus-load.el" "dframe.el" "dired-aux.el" "dired-x.el"
-;;;;;;  "dos-fns.el" "dos-vars.el" "dos-w32.el" "ediff-diff.el" "ediff-init.el"
-;;;;;;  "ediff-merg.el" "ediff-ptch.el" "ediff-vers.el" "ediff-wind.el"
-;;;;;;  "electric.el" "emacs-lisp/assoc.el" "emacs-lisp/authors.el"
-;;;;;;  "emacs-lisp/avl-tree.el" "emacs-lisp/bindat.el" "emacs-lisp/byte-opt.el"
-;;;;;;  "emacs-lisp/chart.el" "emacs-lisp/cl-compat.el" "emacs-lisp/cl-extra.el"
-;;;;;;  "emacs-lisp/cl-loaddefs.el" "emacs-lisp/cl-macs.el" "emacs-lisp/cl-seq.el"
-;;;;;;  "emacs-lisp/cl-specs.el" "emacs-lisp/cust-print.el" "emacs-lisp/eieio-base.el"
-;;;;;;  "emacs-lisp/eieio-comp.el" "emacs-lisp/eieio-custom.el" "emacs-lisp/eieio-datadebug.el"
+;;;;;;  "chistory.el" "cmuscheme.el" "comint.el" "completion.el"
+;;;;;;  "cus-dep.el" "cus-edit.el" "cus-theme.el" "dabbrev.el" "delim-col.el"
+;;;;;;  "delsel.el" "descr-text.el" "desktop.el" "dframe.el" "dired-aux.el"
+;;;;;;  "dired-x.el" "dired.el" "dirtrack.el" "doc-view.el" "dos-fns.el"
+;;;;;;  "dos-vars.el" "double.el" "dynamic-setting.el" "ebuff-menu.el"
+;;;;;;  "echistory.el" "edmacro.el" "ehelp.el" "electric.el" "elide-head.el"
+;;;;;;  "emacs-lisp/advice.el" "emacs-lisp/assoc.el" "emacs-lisp/authors.el"
+;;;;;;  "emacs-lisp/autoload.el" "emacs-lisp/avl-tree.el" "emacs-lisp/benchmark.el"
+;;;;;;  "emacs-lisp/bindat.el" "emacs-lisp/byte-opt.el" "emacs-lisp/bytecomp.el"
+;;;;;;  "emacs-lisp/chart.el" "emacs-lisp/check-declare.el" "emacs-lisp/checkdoc.el"
+;;;;;;  "emacs-lisp/cl-extra.el" "emacs-lisp/cl-indent.el" "emacs-lisp/cl-loaddefs.el"
+;;;;;;  "emacs-lisp/cl-macs.el" "emacs-lisp/cl-seq.el" "emacs-lisp/cl-specs.el"
+;;;;;;  "emacs-lisp/cl.el" "emacs-lisp/copyright.el" "emacs-lisp/crm.el"
+;;;;;;  "emacs-lisp/cust-print.el" "emacs-lisp/debug.el" "emacs-lisp/derived.el"
+;;;;;;  "emacs-lisp/disass.el" "emacs-lisp/easy-mmode.el" "emacs-lisp/easymenu.el"
+;;;;;;  "emacs-lisp/edebug.el" "emacs-lisp/eieio-base.el" "emacs-lisp/eieio-comp.el"
+;;;;;;  "emacs-lisp/eieio-custom.el" "emacs-lisp/eieio-datadebug.el"
 ;;;;;;  "emacs-lisp/eieio-opt.el" "emacs-lisp/eieio-speedbar.el"
-;;;;;;  "emacs-lisp/eieio.el" "emacs-lisp/find-gc.el" "emacs-lisp/gulp.el"
-;;;;;;  "emacs-lisp/lisp-mnt.el" "emacs-lisp/lmenu.el" "emacs-lisp/regi.el"
-;;;;;;  "emacs-lisp/sregex.el" "emacs-lisp/tcover-ses.el" "emacs-lisp/tcover-unsafep.el"
-;;;;;;  "emacs-lock.el" "emulation/cua-gmrk.el" "emulation/cua-rect.el"
-;;;;;;  "emulation/edt-lk201.el" "emulation/edt-mapper.el" "emulation/edt-pc.el"
-;;;;;;  "emulation/edt-vt100.el" "emulation/tpu-extras.el" "emulation/viper-cmd.el"
+;;;;;;  "emacs-lisp/eieio.el" "emacs-lisp/eldoc.el" "emacs-lisp/elint.el"
+;;;;;;  "emacs-lisp/elp.el" "emacs-lisp/ewoc.el" "emacs-lisp/find-func.el"
+;;;;;;  "emacs-lisp/find-gc.el" "emacs-lisp/generic.el" "emacs-lisp/gulp.el"
+;;;;;;  "emacs-lisp/helper.el" "emacs-lisp/lisp-mnt.el" "emacs-lisp/macroexp.el"
+;;;;;;  "emacs-lisp/package-x.el" "emacs-lisp/package.el" "emacs-lisp/pcase.el"
+;;;;;;  "emacs-lisp/pp.el" "emacs-lisp/re-builder.el" "emacs-lisp/regexp-opt.el"
+;;;;;;  "emacs-lisp/regi.el" "emacs-lisp/ring.el" "emacs-lisp/rx.el"
+;;;;;;  "emacs-lisp/shadow.el" "emacs-lisp/smie.el" "emacs-lisp/sregex.el"
+;;;;;;  "emacs-lisp/tcover-ses.el" "emacs-lisp/tcover-unsafep.el"
+;;;;;;  "emacs-lisp/testcover.el" "emacs-lisp/tq.el" "emacs-lisp/trace.el"
+;;;;;;  "emacs-lisp/unsafep.el" "emacs-lisp/warnings.el" "emacs-lock.el"
+;;;;;;  "emulation/crisp.el" "emulation/cua-base.el" "emulation/cua-gmrk.el"
+;;;;;;  "emulation/cua-rect.el" "emulation/edt-lk201.el" "emulation/edt-mapper.el"
+;;;;;;  "emulation/edt-pc.el" "emulation/edt-vt100.el" "emulation/edt.el"
+;;;;;;  "emulation/keypad.el" "emulation/pc-mode.el" "emulation/pc-select.el"
+;;;;;;  "emulation/tpu-edt.el" "emulation/tpu-extras.el" "emulation/tpu-mapper.el"
+;;;;;;  "emulation/vi.el" "emulation/vip.el" "emulation/viper-cmd.el"
 ;;;;;;  "emulation/viper-ex.el" "emulation/viper-init.el" "emulation/viper-keym.el"
 ;;;;;;  "emulation/viper-macs.el" "emulation/viper-mous.el" "emulation/viper-util.el"
-;;;;;;  "erc/erc-backend.el" "erc/erc-goodies.el" "erc/erc-ibuffer.el"
-;;;;;;  "erc/erc-lang.el" "eshell/em-alias.el" "eshell/em-banner.el"
-;;;;;;  "eshell/em-basic.el" "eshell/em-cmpl.el" "eshell/em-dirs.el"
-;;;;;;  "eshell/em-glob.el" "eshell/em-hist.el" "eshell/em-ls.el"
-;;;;;;  "eshell/em-pred.el" "eshell/em-prompt.el" "eshell/em-rebind.el"
-;;;;;;  "eshell/em-script.el" "eshell/em-smart.el" "eshell/em-term.el"
-;;;;;;  "eshell/em-unix.el" "eshell/em-xtra.el" "eshell/esh-arg.el"
-;;;;;;  "eshell/esh-cmd.el" "eshell/esh-ext.el" "eshell/esh-groups.el"
-;;;;;;  "eshell/esh-io.el" "eshell/esh-module.el" "eshell/esh-opt.el"
-;;;;;;  "eshell/esh-proc.el" "eshell/esh-util.el" "eshell/esh-var.el"
-;;;;;;  "ezimage.el" "finder-inf.el" "foldout.el" "font-setting.el"
-;;;;;;  "format-spec.el" "forms-d2.el" "forms-pass.el" "fringe.el"
-;;;;;;  "generic-x.el" "gnus/auth-source.el" "gnus/compface.el" "gnus/gnus-async.el"
-;;;;;;  "gnus/gnus-bcklg.el" "gnus/gnus-cite.el" "gnus/gnus-cus.el"
-;;;;;;  "gnus/gnus-demon.el" "gnus/gnus-dup.el" "gnus/gnus-eform.el"
-;;;;;;  "gnus/gnus-ems.el" "gnus/gnus-int.el" "gnus/gnus-logic.el"
-;;;;;;  "gnus/gnus-mh.el" "gnus/gnus-salt.el" "gnus/gnus-score.el"
-;;;;;;  "gnus/gnus-setup.el" "gnus/gnus-srvr.el" "gnus/gnus-sum.el"
-;;;;;;  "gnus/gnus-topic.el" "gnus/gnus-undo.el" "gnus/gnus-util.el"
-;;;;;;  "gnus/gnus-uu.el" "gnus/gnus-vm.el" "gnus/ietf-drums.el"
-;;;;;;  "gnus/legacy-gnus-agent.el" "gnus/mail-parse.el" "gnus/mail-prsvr.el"
-;;;;;;  "gnus/mail-source.el" "gnus/mailcap.el" "gnus/messcompat.el"
+;;;;;;  "emulation/viper.el" "emulation/ws-mode.el" "epa-dired.el"
+;;;;;;  "epa-file.el" "epa-mail.el" "epa.el" "epg-config.el" "epg.el"
+;;;;;;  "erc/erc-autoaway.el" "erc/erc-backend.el" "erc/erc-button.el"
+;;;;;;  "erc/erc-capab.el" "erc/erc-compat.el" "erc/erc-dcc.el" "erc/erc-ezbounce.el"
+;;;;;;  "erc/erc-fill.el" "erc/erc-goodies.el" "erc/erc-hecomplete.el"
+;;;;;;  "erc/erc-ibuffer.el" "erc/erc-identd.el" "erc/erc-imenu.el"
+;;;;;;  "erc/erc-join.el" "erc/erc-lang.el" "erc/erc-list.el" "erc/erc-log.el"
+;;;;;;  "erc/erc-match.el" "erc/erc-menu.el" "erc/erc-netsplit.el"
+;;;;;;  "erc/erc-networks.el" "erc/erc-notify.el" "erc/erc-page.el"
+;;;;;;  "erc/erc-pcomplete.el" "erc/erc-replace.el" "erc/erc-ring.el"
+;;;;;;  "erc/erc-services.el" "erc/erc-sound.el" "erc/erc-speedbar.el"
+;;;;;;  "erc/erc-spelling.el" "erc/erc-stamp.el" "erc/erc-track.el"
+;;;;;;  "erc/erc-truncate.el" "erc/erc-xdcc.el" "erc/erc.el" "eshell/em-alias.el"
+;;;;;;  "eshell/em-banner.el" "eshell/em-basic.el" "eshell/em-cmpl.el"
+;;;;;;  "eshell/em-dirs.el" "eshell/em-glob.el" "eshell/em-hist.el"
+;;;;;;  "eshell/em-ls.el" "eshell/em-pred.el" "eshell/em-prompt.el"
+;;;;;;  "eshell/em-rebind.el" "eshell/em-script.el" "eshell/em-smart.el"
+;;;;;;  "eshell/em-term.el" "eshell/em-unix.el" "eshell/em-xtra.el"
+;;;;;;  "eshell/esh-arg.el" "eshell/esh-cmd.el" "eshell/esh-ext.el"
+;;;;;;  "eshell/esh-io.el" "eshell/esh-mode.el" "eshell/esh-module.el"
+;;;;;;  "eshell/esh-opt.el" "eshell/esh-proc.el" "eshell/esh-test.el"
+;;;;;;  "eshell/esh-util.el" "eshell/esh-var.el" "eshell/eshell.el"
+;;;;;;  "expand.el" "ezimage.el" "face-remap.el" "ffap.el" "filecache.el"
+;;;;;;  "files-x.el" "filesets.el" "find-cmd.el" "find-dired.el"
+;;;;;;  "find-file.el" "find-lisp.el" "finder.el" "flow-ctrl.el"
+;;;;;;  "foldout.el" "follow.el" "format-spec.el" "forms-d2.el" "forms-pass.el"
+;;;;;;  "forms.el" "generic-x.el" "gnus/auth-source.el" "gnus/canlock.el"
+;;;;;;  "gnus/compface.el" "gnus/deuglify.el" "gnus/ecomplete.el"
+;;;;;;  "gnus/flow-fill.el" "gnus/gmm-utils.el" "gnus/gnus-agent.el"
+;;;;;;  "gnus/gnus-art.el" "gnus/gnus-async.el" "gnus/gnus-bcklg.el"
+;;;;;;  "gnus/gnus-bookmark.el" "gnus/gnus-cache.el" "gnus/gnus-cite.el"
+;;;;;;  "gnus/gnus-cus.el" "gnus/gnus-delay.el" "gnus/gnus-demon.el"
+;;;;;;  "gnus/gnus-diary.el" "gnus/gnus-dired.el" "gnus/gnus-draft.el"
+;;;;;;  "gnus/gnus-dup.el" "gnus/gnus-eform.el" "gnus/gnus-ems.el"
+;;;;;;  "gnus/gnus-fun.el" "gnus/gnus-gravatar.el" "gnus/gnus-group.el"
+;;;;;;  "gnus/gnus-html.el" "gnus/gnus-int.el" "gnus/gnus-kill.el"
+;;;;;;  "gnus/gnus-logic.el" "gnus/gnus-mh.el" "gnus/gnus-ml.el"
+;;;;;;  "gnus/gnus-mlspl.el" "gnus/gnus-msg.el" "gnus/gnus-picon.el"
+;;;;;;  "gnus/gnus-range.el" "gnus/gnus-registry.el" "gnus/gnus-salt.el"
+;;;;;;  "gnus/gnus-score.el" "gnus/gnus-setup.el" "gnus/gnus-sieve.el"
+;;;;;;  "gnus/gnus-spec.el" "gnus/gnus-srvr.el" "gnus/gnus-start.el"
+;;;;;;  "gnus/gnus-sum.el" "gnus/gnus-sync.el" "gnus/gnus-topic.el"
+;;;;;;  "gnus/gnus-undo.el" "gnus/gnus-util.el" "gnus/gnus-uu.el"
+;;;;;;  "gnus/gnus-vm.el" "gnus/gnus-win.el" "gnus/gnus.el" "gnus/gravatar.el"
+;;;;;;  "gnus/html2text.el" "gnus/ietf-drums.el" "gnus/legacy-gnus-agent.el"
+;;;;;;  "gnus/mail-parse.el" "gnus/mail-prsvr.el" "gnus/mail-source.el"
+;;;;;;  "gnus/mailcap.el" "gnus/message.el" "gnus/messcompat.el"
 ;;;;;;  "gnus/mm-bodies.el" "gnus/mm-decode.el" "gnus/mm-encode.el"
-;;;;;;  "gnus/mm-util.el" "gnus/mm-view.el" "gnus/mml-sec.el" "gnus/mml-smime.el"
-;;;;;;  "gnus/mml.el" "gnus/nnagent.el" "gnus/nnbabyl.el" "gnus/nndb.el"
-;;;;;;  "gnus/nndir.el" "gnus/nndraft.el" "gnus/nneething.el" "gnus/nngateway.el"
-;;;;;;  "gnus/nnheader.el" "gnus/nnimap.el" "gnus/nnir.el" "gnus/nnlistserv.el"
+;;;;;;  "gnus/mm-extern.el" "gnus/mm-partial.el" "gnus/mm-url.el"
+;;;;;;  "gnus/mm-util.el" "gnus/mm-uu.el" "gnus/mm-view.el" "gnus/mml-sec.el"
+;;;;;;  "gnus/mml-smime.el" "gnus/mml.el" "gnus/mml1991.el" "gnus/mml2015.el"
+;;;;;;  "gnus/nnagent.el" "gnus/nnbabyl.el" "gnus/nndiary.el" "gnus/nndir.el"
+;;;;;;  "gnus/nndoc.el" "gnus/nndraft.el" "gnus/nneething.el" "gnus/nnfolder.el"
+;;;;;;  "gnus/nngateway.el" "gnus/nnheader.el" "gnus/nnimap.el" "gnus/nnir.el"
 ;;;;;;  "gnus/nnmail.el" "gnus/nnmaildir.el" "gnus/nnmairix.el" "gnus/nnmbox.el"
-;;;;;;  "gnus/nnmh.el" "gnus/nnnil.el" "gnus/nnoo.el" "gnus/nnrss.el"
-;;;;;;  "gnus/nnslashdot.el" "gnus/nnspool.el" "gnus/nntp.el" "gnus/nnultimate.el"
-;;;;;;  "gnus/nnvirtual.el" "gnus/nnwarchive.el" "gnus/nnweb.el"
-;;;;;;  "gnus/nnwfm.el" "gnus/pop3.el" "gnus/rfc1843.el" "gnus/rfc2045.el"
-;;;;;;  "gnus/rfc2047.el" "gnus/rfc2104.el" "gnus/rfc2231.el" "gnus/sieve-manage.el"
-;;;;;;  "gnus/smime.el" "gnus/spam-stat.el" "gnus/spam-wash.el" "gnus/starttls.el"
-;;;;;;  "gnus/utf7.el" "gnus/webmail.el" "hex-util.el" "hfy-cmap.el"
-;;;;;;  "htmlfontify.el" "ibuf-ext.el" "international/charprop.el"
-;;;;;;  "international/cp51932.el" "international/eucjp-ms.el" "international/fontset.el"
-;;;;;;  "international/iso-ascii.el" "international/ja-dic-cnv.el"
-;;;;;;  "international/ja-dic-utl.el" "international/ogonek.el" "international/uni-bidi.el"
-;;;;;;  "international/uni-category.el" "international/uni-combining.el"
-;;;;;;  "international/uni-comment.el" "international/uni-decimal.el"
-;;;;;;  "international/uni-decomposition.el" "international/uni-digit.el"
-;;;;;;  "international/uni-lowercase.el" "international/uni-mirrored.el"
-;;;;;;  "international/uni-name.el" "international/uni-numeric.el"
-;;;;;;  "international/uni-old-name.el" "international/uni-titlecase.el"
-;;;;;;  "international/uni-uppercase.el" "json.el" "kermit.el" "language/hanja-util.el"
-;;;;;;  "language/thai-word.el" "ldefs-boot.el" "mail/blessmail.el"
-;;;;;;  "mail/mailheader.el" "mail/mailpost.el" "mail/mspools.el"
-;;;;;;  "mail/rfc2368.el" "mail/rfc822.el" "mail/rmail-spam-filter.el"
+;;;;;;  "gnus/nnmh.el" "gnus/nnml.el" "gnus/nnnil.el" "gnus/nnoo.el"
+;;;;;;  "gnus/nnregistry.el" "gnus/nnrss.el" "gnus/nnspool.el" "gnus/nntp.el"
+;;;;;;  "gnus/nnvirtual.el" "gnus/nnweb.el" "gnus/pop3.el" "gnus/qp.el"
+;;;;;;  "gnus/rfc1843.el" "gnus/rfc2045.el" "gnus/rfc2047.el" "gnus/rfc2104.el"
+;;;;;;  "gnus/rfc2231.el" "gnus/score-mode.el" "gnus/shr.el" "gnus/sieve-manage.el"
+;;;;;;  "gnus/sieve-mode.el" "gnus/sieve.el" "gnus/smiley.el" "gnus/smime.el"
+;;;;;;  "gnus/spam-report.el" "gnus/spam-stat.el" "gnus/spam-wash.el"
+;;;;;;  "gnus/spam.el" "gnus/starttls.el" "gnus/utf7.el" "gnus/yenc.el"
+;;;;;;  "gs.el" "help-at-pt.el" "help-fns.el" "help-macro.el" "help-mode.el"
+;;;;;;  "hex-util.el" "hexl.el" "hfy-cmap.el" "hi-lock.el" "hilit-chg.el"
+;;;;;;  "hippie-exp.el" "hl-line.el" "htmlfontify.el" "ibuf-ext.el"
+;;;;;;  "ibuf-macs.el" "ibuffer.el" "icomplete.el" "ido.el" "ielm.el"
+;;;;;;  "iimage.el" "image-dired.el" "image-file.el" "image-mode.el"
+;;;;;;  "imenu.el" "info-look.el" "info-xref.el" "info.el" "informat.el"
+;;;;;;  "international/ccl.el" "international/cp51932.el" "international/eucjp-ms.el"
+;;;;;;  "international/isearch-x.el" "international/iso-ascii.el"
+;;;;;;  "international/iso-cvt.el" "international/iso-transl.el"
+;;;;;;  "international/ja-dic-cnv.el" "international/ja-dic-utl.el"
+;;;;;;  "international/kinsoku.el" "international/kkc.el" "international/latexenc.el"
+;;;;;;  "international/latin1-disp.el" "international/mule-diag.el"
+;;;;;;  "international/mule-util.el" "international/ogonek.el" "international/quail.el"
+;;;;;;  "international/robin.el" "international/titdic-cnv.el" "international/ucs-normalize.el"
+;;;;;;  "international/uni-bidi.el" "international/uni-category.el"
+;;;;;;  "international/uni-combining.el" "international/uni-comment.el"
+;;;;;;  "international/uni-decimal.el" "international/uni-decomposition.el"
+;;;;;;  "international/uni-digit.el" "international/uni-lowercase.el"
+;;;;;;  "international/uni-mirrored.el" "international/uni-name.el"
+;;;;;;  "international/uni-numeric.el" "international/uni-old-name.el"
+;;;;;;  "international/uni-titlecase.el" "international/uni-uppercase.el"
+;;;;;;  "international/utf-7.el" "isearchb.el" "iswitchb.el" "jka-compr.el"
+;;;;;;  "json.el" "kermit.el" "kmacro.el" "language/china-util.el"
+;;;;;;  "language/cyril-util.el" "language/ethio-util.el" "language/hanja-util.el"
+;;;;;;  "language/ind-util.el" "language/japan-util.el" "language/korea-util.el"
+;;;;;;  "language/lao-util.el" "language/thai-util.el" "language/thai-word.el"
+;;;;;;  "language/tibet-util.el" "language/tv-util.el" "language/viet-util.el"
+;;;;;;  "ldefs-boot.el" "ledit.el" "linum.el" "loadhist.el" "locate.el"
+;;;;;;  "longlines.el" "lpr.el" "macros.el" "mail/binhex.el" "mail/blessmail.el"
+;;;;;;  "mail/emacsbug.el" "mail/feedmail.el" "mail/footnote.el"
+;;;;;;  "mail/hashcash.el" "mail/mail-extr.el" "mail/mail-hist.el"
+;;;;;;  "mail/mail-utils.el" "mail/mailabbrev.el" "mail/mailalias.el"
+;;;;;;  "mail/mailclient.el" "mail/mailheader.el" "mail/mailpost.el"
+;;;;;;  "mail/metamail.el" "mail/mspools.el" "mail/reporter.el" "mail/rfc2368.el"
+;;;;;;  "mail/rfc822.el" "mail/rmail-spam-filter.el" "mail/rmail.el"
 ;;;;;;  "mail/rmailedit.el" "mail/rmailkwd.el" "mail/rmailmm.el"
-;;;;;;  "mail/rmailmsc.el" "mail/rmailsort.el" "mail/rmailsum.el"
-;;;;;;  "mail/undigest.el" "md4.el" "mh-e/mh-acros.el" "mh-e/mh-alias.el"
-;;;;;;  "mh-e/mh-buffers.el" "mh-e/mh-compat.el" "mh-e/mh-funcs.el"
-;;;;;;  "mh-e/mh-gnus.el" "mh-e/mh-identity.el" "mh-e/mh-inc.el"
-;;;;;;  "mh-e/mh-junk.el" "mh-e/mh-letter.el" "mh-e/mh-limit.el"
+;;;;;;  "mail/rmailmsc.el" "mail/rmailout.el" "mail/rmailsort.el"
+;;;;;;  "mail/rmailsum.el" "mail/sendmail.el" "mail/smtpmail.el"
+;;;;;;  "mail/supercite.el" "mail/uce.el" "mail/undigest.el" "mail/unrmail.el"
+;;;;;;  "mail/uudecode.el" "makesum.el" "man.el" "master.el" "mb-depth.el"
+;;;;;;  "md4.el" "mh-e/mh-acros.el" "mh-e/mh-alias.el" "mh-e/mh-buffers.el"
+;;;;;;  "mh-e/mh-comp.el" "mh-e/mh-compat.el" "mh-e/mh-e.el" "mh-e/mh-folder.el"
+;;;;;;  "mh-e/mh-funcs.el" "mh-e/mh-gnus.el" "mh-e/mh-identity.el"
+;;;;;;  "mh-e/mh-inc.el" "mh-e/mh-junk.el" "mh-e/mh-letter.el" "mh-e/mh-limit.el"
 ;;;;;;  "mh-e/mh-loaddefs.el" "mh-e/mh-mime.el" "mh-e/mh-print.el"
 ;;;;;;  "mh-e/mh-scan.el" "mh-e/mh-search.el" "mh-e/mh-seq.el" "mh-e/mh-show.el"
 ;;;;;;  "mh-e/mh-speed.el" "mh-e/mh-thread.el" "mh-e/mh-tool-bar.el"
-;;;;;;  "mh-e/mh-utils.el" "mh-e/mh-xface.el" "mouse-copy.el" "mouse.el"
-;;;;;;  "mwheel.el" "net/dns.el" "net/eudc-vars.el" "net/eudcb-bbdb.el"
+;;;;;;  "mh-e/mh-utils.el" "mh-e/mh-xface.el" "midnight.el" "minibuf-eldef.el"
+;;;;;;  "misc.el" "misearch.el" "mouse-copy.el" "mouse-drag.el" "mouse-sel.el"
+;;;;;;  "mpc.el" "msb.el" "net/ange-ftp.el" "net/browse-url.el" "net/dbus.el"
+;;;;;;  "net/dig.el" "net/dns.el" "net/eudc-bob.el" "net/eudc-export.el"
+;;;;;;  "net/eudc-hotlist.el" "net/eudc-vars.el" "net/eudc.el" "net/eudcb-bbdb.el"
 ;;;;;;  "net/eudcb-ldap.el" "net/eudcb-mab.el" "net/eudcb-ph.el"
-;;;;;;  "net/hmac-def.el" "net/hmac-md5.el" "net/imap-hash.el" "net/imap.el"
-;;;;;;  "net/ldap.el" "net/mairix.el" "net/netrc.el" "net/newsticker.el"
-;;;;;;  "net/ntlm.el" "net/sasl-cram.el" "net/sasl-digest.el" "net/sasl-ntlm.el"
-;;;;;;  "net/sasl.el" "net/secrets.el" "net/socks.el" "net/tls.el"
-;;;;;;  "net/tramp-cache.el" "net/tramp-cmds.el" "net/tramp-compat.el"
-;;;;;;  "net/tramp-fish.el" "net/tramp-gvfs.el" "net/tramp-gw.el"
-;;;;;;  "net/tramp-imap.el" "net/tramp-smb.el" "net/tramp-uu.el"
-;;;;;;  "net/trampver.el" "net/zeroconf.el" "nxml/nxml-enc.el" "nxml/nxml-maint.el"
+;;;;;;  "net/gnutls.el" "net/goto-addr.el" "net/hmac-def.el" "net/hmac-md5.el"
+;;;;;;  "net/imap-hash.el" "net/imap.el" "net/ldap.el" "net/mairix.el"
+;;;;;;  "net/net-utils.el" "net/netrc.el" "net/newst-backend.el"
+;;;;;;  "net/newst-plainview.el" "net/newst-reader.el" "net/newst-ticker.el"
+;;;;;;  "net/newst-treeview.el" "net/newsticker.el" "net/ntlm.el"
+;;;;;;  "net/quickurl.el" "net/rcirc.el" "net/rcompile.el" "net/rlogin.el"
+;;;;;;  "net/sasl-cram.el" "net/sasl-digest.el" "net/sasl-ntlm.el"
+;;;;;;  "net/sasl.el" "net/secrets.el" "net/snmp-mode.el" "net/socks.el"
+;;;;;;  "net/telnet.el" "net/tls.el" "net/tramp-cache.el" "net/tramp-cmds.el"
+;;;;;;  "net/tramp-compat.el" "net/tramp-ftp.el" "net/tramp-gvfs.el"
+;;;;;;  "net/tramp-gw.el" "net/tramp-imap.el" "net/tramp-loaddefs.el"
+;;;;;;  "net/tramp-sh.el" "net/tramp-smb.el" "net/tramp-uu.el" "net/tramp.el"
+;;;;;;  "net/trampver.el" "net/webjump.el" "net/xesam.el" "net/zeroconf.el"
+;;;;;;  "newcomment.el" "notifications.el" "novice.el" "nxml/nxml-enc.el"
+;;;;;;  "nxml/nxml-glyph.el" "nxml/nxml-maint.el" "nxml/nxml-mode.el"
 ;;;;;;  "nxml/nxml-ns.el" "nxml/nxml-outln.el" "nxml/nxml-parse.el"
-;;;;;;  "nxml/nxml-rap.el" "nxml/nxml-util.el" "nxml/rng-dt.el" "nxml/rng-loc.el"
-;;;;;;  "nxml/rng-maint.el" "nxml/rng-match.el" "nxml/rng-parse.el"
+;;;;;;  "nxml/nxml-rap.el" "nxml/nxml-uchnm.el" "nxml/nxml-util.el"
+;;;;;;  "nxml/rng-cmpct.el" "nxml/rng-dt.el" "nxml/rng-loc.el" "nxml/rng-maint.el"
+;;;;;;  "nxml/rng-match.el" "nxml/rng-nxml.el" "nxml/rng-parse.el"
 ;;;;;;  "nxml/rng-pttrn.el" "nxml/rng-uri.el" "nxml/rng-util.el"
-;;;;;;  "nxml/xsd-regexp.el" "org/org-bibtex.el" "org/org-colview.el"
-;;;;;;  "org/org-compat.el" "org/org-crypt.el" "org/org-datetree.el"
-;;;;;;  "org/org-exp-blocks.el" "org/org-faces.el" "org/org-gnus.el"
-;;;;;;  "org/org-habit.el" "org/org-info.el" "org/org-inlinetask.el"
-;;;;;;  "org/org-install.el" "org/org-jsinfo.el" "org/org-list.el"
-;;;;;;  "org/org-mac-message.el" "org/org-macs.el" "org/org-mew.el"
-;;;;;;  "org/org-mhe.el" "org/org-mouse.el" "org/org-protocol.el"
-;;;;;;  "org/org-rmail.el" "org/org-src.el" "org/org-vm.el" "org/org-w3m.el"
-;;;;;;  "org/org-wl.el" "patcomp.el" "pcvs-info.el" "pcvs-parse.el"
-;;;;;;  "pcvs-util.el" "pgg-def.el" "pgg-parse.el" "pgg-pgp.el" "pgg-pgp5.el"
-;;;;;;  "play/gamegrid.el" "play/gametree.el" "play/meese.el" "progmodes/ada-prj.el"
-;;;;;;  "progmodes/cc-align.el" "progmodes/cc-awk.el" "progmodes/cc-bytecomp.el"
-;;;;;;  "progmodes/cc-cmds.el" "progmodes/cc-defs.el" "progmodes/cc-fonts.el"
-;;;;;;  "progmodes/cc-langs.el" "progmodes/cc-menus.el" "progmodes/ebnf-abn.el"
+;;;;;;  "nxml/rng-valid.el" "nxml/rng-xsd.el" "nxml/xmltok.el" "nxml/xsd-regexp.el"
+;;;;;;  "org/ob-C.el" "org/ob-R.el" "org/ob-asymptote.el" "org/ob-calc.el"
+;;;;;;  "org/ob-clojure.el" "org/ob-comint.el" "org/ob-css.el" "org/ob-ditaa.el"
+;;;;;;  "org/ob-dot.el" "org/ob-emacs-lisp.el" "org/ob-eval.el" "org/ob-exp.el"
+;;;;;;  "org/ob-gnuplot.el" "org/ob-haskell.el" "org/ob-js.el" "org/ob-keys.el"
+;;;;;;  "org/ob-latex.el" "org/ob-ledger.el" "org/ob-lisp.el" "org/ob-lob.el"
+;;;;;;  "org/ob-matlab.el" "org/ob-mscgen.el" "org/ob-ocaml.el" "org/ob-octave.el"
+;;;;;;  "org/ob-org.el" "org/ob-perl.el" "org/ob-plantuml.el" "org/ob-python.el"
+;;;;;;  "org/ob-ref.el" "org/ob-ruby.el" "org/ob-sass.el" "org/ob-scheme.el"
+;;;;;;  "org/ob-screen.el" "org/ob-sh.el" "org/ob-sql.el" "org/ob-sqlite.el"
+;;;;;;  "org/ob-table.el" "org/ob-tangle.el" "org/ob.el" "org/org-agenda.el"
+;;;;;;  "org/org-archive.el" "org/org-ascii.el" "org/org-attach.el"
+;;;;;;  "org/org-bbdb.el" "org/org-beamer.el" "org/org-bibtex.el"
+;;;;;;  "org/org-capture.el" "org/org-clock.el" "org/org-colview.el"
+;;;;;;  "org/org-compat.el" "org/org-crypt.el" "org/org-ctags.el"
+;;;;;;  "org/org-datetree.el" "org/org-docbook.el" "org/org-docview.el"
+;;;;;;  "org/org-entities.el" "org/org-exp-blocks.el" "org/org-exp.el"
+;;;;;;  "org/org-faces.el" "org/org-feed.el" "org/org-footnote.el"
+;;;;;;  "org/org-freemind.el" "org/org-gnus.el" "org/org-habit.el"
+;;;;;;  "org/org-html.el" "org/org-icalendar.el" "org/org-id.el"
+;;;;;;  "org/org-indent.el" "org/org-info.el" "org/org-inlinetask.el"
+;;;;;;  "org/org-install.el" "org/org-irc.el" "org/org-jsinfo.el"
+;;;;;;  "org/org-latex.el" "org/org-list.el" "org/org-mac-message.el"
+;;;;;;  "org/org-macs.el" "org/org-mew.el" "org/org-mhe.el" "org/org-mks.el"
+;;;;;;  "org/org-mobile.el" "org/org-mouse.el" "org/org-plot.el"
+;;;;;;  "org/org-protocol.el" "org/org-publish.el" "org/org-remember.el"
+;;;;;;  "org/org-rmail.el" "org/org-src.el" "org/org-table.el" "org/org-taskjuggler.el"
+;;;;;;  "org/org-timer.el" "org/org-vm.el" "org/org-w3m.el" "org/org-wl.el"
+;;;;;;  "org/org-xoxo.el" "org/org.el" "outline.el" "paren.el" "password-cache.el"
+;;;;;;  "patcomp.el" "pcmpl-cvs.el" "pcmpl-gnu.el" "pcmpl-linux.el"
+;;;;;;  "pcmpl-rpm.el" "pcmpl-unix.el" "pcomplete.el" "pgg-def.el"
+;;;;;;  "pgg-gpg.el" "pgg-parse.el" "pgg-pgp.el" "pgg-pgp5.el" "pgg.el"
+;;;;;;  "play/5x5.el" "play/animate.el" "play/blackbox.el" "play/bruce.el"
+;;;;;;  "play/bubbles.el" "play/cookie1.el" "play/decipher.el" "play/dissociate.el"
+;;;;;;  "play/doctor.el" "play/dunnet.el" "play/fortune.el" "play/gamegrid.el"
+;;;;;;  "play/gametree.el" "play/gomoku.el" "play/handwrite.el" "play/hanoi.el"
+;;;;;;  "play/landmark.el" "play/life.el" "play/meese.el" "play/morse.el"
+;;;;;;  "play/mpuz.el" "play/pong.el" "play/snake.el" "play/solitaire.el"
+;;;;;;  "play/spook.el" "play/studly.el" "play/tetris.el" "play/yow.el"
+;;;;;;  "play/zone.el" "printing.el" "proced.el" "progmodes/ada-mode.el"
+;;;;;;  "progmodes/ada-prj.el" "progmodes/ada-stmt.el" "progmodes/ada-xref.el"
+;;;;;;  "progmodes/antlr-mode.el" "progmodes/asm-mode.el" "progmodes/autoconf.el"
+;;;;;;  "progmodes/bug-reference.el" "progmodes/cap-words.el" "progmodes/cc-align.el"
+;;;;;;  "progmodes/cc-awk.el" "progmodes/cc-bytecomp.el" "progmodes/cc-cmds.el"
+;;;;;;  "progmodes/cc-compat.el" "progmodes/cc-defs.el" "progmodes/cc-engine.el"
+;;;;;;  "progmodes/cc-fonts.el" "progmodes/cc-langs.el" "progmodes/cc-menus.el"
+;;;;;;  "progmodes/cc-mode.el" "progmodes/cc-styles.el" "progmodes/cc-vars.el"
+;;;;;;  "progmodes/cfengine.el" "progmodes/cmacexp.el" "progmodes/compile.el"
+;;;;;;  "progmodes/cperl-mode.el" "progmodes/cpp.el" "progmodes/cwarn.el"
+;;;;;;  "progmodes/dcl-mode.el" "progmodes/delphi.el" "progmodes/ebnf-abn.el"
 ;;;;;;  "progmodes/ebnf-bnf.el" "progmodes/ebnf-dtd.el" "progmodes/ebnf-ebx.el"
 ;;;;;;  "progmodes/ebnf-iso.el" "progmodes/ebnf-otz.el" "progmodes/ebnf-yac.el"
-;;;;;;  "progmodes/idlw-complete-structtag.el" "progmodes/idlw-help.el"
-;;;;;;  "progmodes/idlw-toolbar.el" "progmodes/mantemp.el" "progmodes/xscheme.el"
-;;;;;;  "ps-def.el" "ps-mule.el" "ps-samp.el" "saveplace.el" "sb-image.el"
-;;;;;;  "scroll-bar.el" "select.el" "soundex.el" "subdirs.el" "tempo.el"
-;;;;;;  "textmodes/bib-mode.el" "textmodes/makeinfo.el" "textmodes/page-ext.el"
-;;;;;;  "textmodes/refbib.el" "textmodes/refer.el" "textmodes/reftex-auc.el"
-;;;;;;  "textmodes/reftex-dcr.el" "textmodes/reftex-ref.el" "textmodes/reftex-sel.el"
-;;;;;;  "textmodes/reftex-toc.el" "textmodes/texnfo-upd.el" "timezone.el"
-;;;;;;  "tooltip.el" "tree-widget.el" "uniquify.el" "url/url-about.el"
-;;;;;;  "url/url-cookie.el" "url/url-dired.el" "url/url-expand.el"
-;;;;;;  "url/url-ftp.el" "url/url-history.el" "url/url-imap.el" "url/url-methods.el"
-;;;;;;  "url/url-nfs.el" "url/url-proxy.el" "url/url-vars.el" "vc-dav.el"
-;;;;;;  "vcursor.el" "vt-control.el" "vt100-led.el" "w32-fns.el"
-;;;;;;  "w32-vars.el" "x-dnd.el") (19375 51700 955763))
-
-;;;***
-
-(provide 'loaddefs)
+;;;;;;  "progmodes/ebnf2ps.el" "progmodes/ebrowse.el" "progmodes/etags.el"
+;;;;;;  "progmodes/executable.el" "progmodes/f90.el" "progmodes/flymake.el"
+;;;;;;  "progmodes/fortran.el" "progmodes/gdb-mi.el" "progmodes/glasses.el"
+;;;;;;  "progmodes/grep.el" "progmodes/gud.el" "progmodes/hideif.el"
+;;;;;;  "progmodes/hideshow.el" "progmodes/icon.el" "progmodes/idlw-complete-structtag.el"
+;;;;;;  "progmodes/idlw-help.el" "progmodes/idlw-shell.el" "progmodes/idlw-toolbar.el"
+;;;;;;  "progmodes/idlwave.el" "progmodes/inf-lisp.el" "progmodes/js.el"
+;;;;;;  "progmodes/ld-script.el" "progmodes/m4-mode.el" "progmodes/make-mode.el"
+;;;;;;  "progmodes/mantemp.el" "progmodes/meta-mode.el" "progmodes/mixal-mode.el"
+;;;;;;  "progmodes/modula2.el" "progmodes/octave-inf.el" "progmodes/octave-mod.el"
+;;;;;;  "progmodes/pascal.el" "progmodes/perl-mode.el" "progmodes/prolog.el"
+;;;;;;  "progmodes/ps-mode.el" "progmodes/python.el" "progmodes/ruby-mode.el"
+;;;;;;  "progmodes/scheme.el" "progmodes/sh-script.el" "progmodes/simula.el"
+;;;;;;  "progmodes/sql.el" "progmodes/subword.el" "progmodes/tcl.el"
+;;;;;;  "progmodes/vera-mode.el" "progmodes/verilog-mode.el" "progmodes/vhdl-mode.el"
+;;;;;;  "progmodes/which-func.el" "progmodes/xscheme.el" "ps-bdf.el"
+;;;;;;  "ps-def.el" "ps-mule.el" "ps-print.el" "ps-samp.el" "recentf.el"
+;;;;;;  "rect.el" "repeat.el" "reposition.el" "reveal.el" "rot13.el"
+;;;;;;  "ruler-mode.el" "savehist.el" "saveplace.el" "sb-image.el"
+;;;;;;  "scroll-all.el" "scroll-lock.el" "server.el" "ses.el" "sha1.el"
+;;;;;;  "shadowfile.el" "shell.el" "skeleton.el" "sort.el" "soundex.el"
+;;;;;;  "speedbar.el" "strokes.el" "subdirs.el" "t-mouse.el" "tabify.el"
+;;;;;;  "talk.el" "tar-mode.el" "tempo.el" "term.el" "terminal.el"
+;;;;;;  "textmodes/artist.el" "textmodes/bib-mode.el" "textmodes/bibtex-style.el"
+;;;;;;  "textmodes/bibtex.el" "textmodes/conf-mode.el" "textmodes/css-mode.el"
+;;;;;;  "textmodes/dns-mode.el" "textmodes/enriched.el" "textmodes/flyspell.el"
+;;;;;;  "textmodes/ispell.el" "textmodes/makeinfo.el" "textmodes/nroff-mode.el"
+;;;;;;  "textmodes/page-ext.el" "textmodes/picture.el" "textmodes/po.el"
+;;;;;;  "textmodes/refbib.el" "textmodes/refer.el" "textmodes/refill.el"
+;;;;;;  "textmodes/reftex-auc.el" "textmodes/reftex-cite.el" "textmodes/reftex-dcr.el"
+;;;;;;  "textmodes/reftex-global.el" "textmodes/reftex-index.el"
+;;;;;;  "textmodes/reftex-parse.el" "textmodes/reftex-ref.el" "textmodes/reftex-sel.el"
+;;;;;;  "textmodes/reftex-toc.el" "textmodes/reftex-vars.el" "textmodes/reftex.el"
+;;;;;;  "textmodes/remember.el" "textmodes/rst.el" "textmodes/sgml-mode.el"
+;;;;;;  "textmodes/spell.el" "textmodes/table.el" "textmodes/tex-mode.el"
+;;;;;;  "textmodes/texinfmt.el" "textmodes/texinfo.el" "textmodes/texnfo-upd.el"
+;;;;;;  "textmodes/tildify.el" "textmodes/two-column.el" "textmodes/underline.el"
+;;;;;;  "thingatpt.el" "thumbs.el" "time-stamp.el" "time.el" "timezone.el"
+;;;;;;  "tmm.el" "tree-widget.el" "tutorial.el" "type-break.el" "uniquify.el"
+;;;;;;  "url/url-about.el" "url/url-auth.el" "url/url-cache.el" "url/url-cid.el"
+;;;;;;  "url/url-cookie.el" "url/url-dav.el" "url/url-dired.el" "url/url-expand.el"
+;;;;;;  "url/url-file.el" "url/url-ftp.el" "url/url-gw.el" "url/url-handlers.el"
+;;;;;;  "url/url-history.el" "url/url-http.el" "url/url-imap.el"
+;;;;;;  "url/url-irc.el" "url/url-ldap.el" "url/url-mailto.el" "url/url-methods.el"
+;;;;;;  "url/url-misc.el" "url/url-news.el" "url/url-nfs.el" "url/url-ns.el"
+;;;;;;  "url/url-parse.el" "url/url-privacy.el" "url/url-proxy.el"
+;;;;;;  "url/url-util.el" "url/url-vars.el" "url/url.el" "userlock.el"
+;;;;;;  "vc/add-log.el" "vc/compare-w.el" "vc/cvs-status.el" "vc/diff-mode.el"
+;;;;;;  "vc/diff.el" "vc/ediff-diff.el" "vc/ediff-help.el" "vc/ediff-init.el"
+;;;;;;  "vc/ediff-merg.el" "vc/ediff-mult.el" "vc/ediff-ptch.el"
+;;;;;;  "vc/ediff-util.el" "vc/ediff-vers.el" "vc/ediff-wind.el"
+;;;;;;  "vc/ediff.el" "vc/emerge.el" "vc/log-edit.el" "vc/log-view.el"
+;;;;;;  "vc/pcvs-defs.el" "vc/pcvs-info.el" "vc/pcvs-parse.el" "vc/pcvs-util.el"
+;;;;;;  "vc/pcvs.el" "vc/smerge-mode.el" "vc/vc-annotate.el" "vc/vc-arch.el"
+;;;;;;  "vc/vc-bzr.el" "vc/vc-cvs.el" "vc/vc-dav.el" "vc/vc-dir.el"
+;;;;;;  "vc/vc-dispatcher.el" "vc/vc-git.el" "vc/vc-hg.el" "vc/vc-mtn.el"
+;;;;;;  "vc/vc-rcs.el" "vc/vc-sccs.el" "vc/vc-svn.el" "vc/vc.el"
+;;;;;;  "vcursor.el" "view.el" "vt-control.el" "vt100-led.el" "wdired.el"
+;;;;;;  "whitespace.el" "wid-browse.el" "wid-edit.el" "windmove.el"
+;;;;;;  "winner.el" "woman.el" "x-dnd.el" "xml.el" "xt-mouse.el")
+;;;;;;  (19686 22873 697000))
+
+;;;***
+
 ;; Local Variables:
 ;; version-control: never
 ;; no-byte-compile: t
--- a/lisp/ls-lisp.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/ls-lisp.el	Sat Nov 20 13:45:14 2010 +0200
@@ -103,10 +103,16 @@
 	   (ls-lisp-set-options)))
   :group 'ls-lisp)
 
+;; Only made an obsolete alias in 23.3.  Before that, the initial
+;; value was set according to:
+;;  (or (memq ls-lisp-emulation '(MS-Windows MacOS))
+;;      (and (boundp 'ls-lisp-dired-ignore-case) ls-lisp-dired-ignore-case))
+;; Which isn't the right thing to do.
+(define-obsolete-variable-alias 'ls-lisp-dired-ignore-case
+  'ls-lisp-ignore-case "21.1")
+
 (defcustom ls-lisp-ignore-case
-  ;; Name change for consistency with other option names.
-  (or (memq ls-lisp-emulation '(MS-Windows MacOS))
-      (and (boundp 'ls-lisp-dired-ignore-case) ls-lisp-dired-ignore-case))
+  (memq ls-lisp-emulation '(MS-Windows MacOS))
   "Non-nil causes ls-lisp alphabetic sorting to ignore case."
   :set-after '(ls-lisp-emulation)
   :type 'boolean
--- a/lisp/mail/emacsbug.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/mail/emacsbug.el	Sat Nov 20 13:45:14 2010 +0200
@@ -58,6 +58,9 @@
 
 ;; User options end here.
 
+(defvar report-emacs-bug-tracker-url "http://debbugs.gnu.org/cgi/"
+  "Base URL of the GNU bugtracker.
+Used for querying duplicates and linking to existing bugs.")
 
 (defvar report-emacs-bug-orig-text nil
   "The automatically-created initial text of the bug report.")
@@ -120,7 +123,6 @@
 			 (concat "mailto:" to))
 	(error "Subject, To or body not found")))))
 
-
 ;;;###autoload
 (defun report-emacs-bug (topic &optional recent-keys)
   "Report a bug in GNU Emacs.
@@ -375,6 +377,85 @@
                                           'field 'emacsbug-prompt))
         (delete-region pos (field-end (1+ pos)))))))
 
+
+;; Querying the bug database
+
+(defun report-emacs-bug-create-existing-bugs-buffer (bugs)
+  (switch-to-buffer (get-buffer-create "*Existing Emacs Bugs*"))
+  (setq buffer-read-only t)
+  (let ((inhibit-read-only t))
+    (erase-buffer)
+    (make-local-variable 'bug-alist)
+    (setq bug-alist bugs)
+    (make-local-variable 'bug-choice-widget)
+    (widget-insert (propertize "Already known bugs:\n\n" 'face 'bold))
+    (if bugs
+	(setq bug-choice-widget
+	      (apply 'widget-create 'radio-button-choice
+		     :value (car (first bugs))
+		     (let (items)
+		       (dolist (bug bugs)
+			 (push (list
+				'url-link
+				:format (concat "Bug#" (number-to-string (third bug))
+						": " (second bug) "\n    %[%v%]\n")
+				;; FIXME: Why is only the link of the
+				;; active item clickable?
+				(first bug))
+			       items))
+		       (nreverse items))))
+      (widget-insert "No bugs maching your keywords found.\n"))
+    (widget-insert "\n")
+    (widget-create 'push-button
+		   :notify (lambda (&rest ignore)
+			     ;; TODO: Do something!
+			     (message "Reporting new bug!"))
+		   "Report new bug")
+    (when bugs
+      (widget-insert " ")
+      (widget-create 'push-button
+		     :notify (lambda (&rest ignore)
+			       (let ((val (widget-value bug-choice-widget)))
+				 ;; TODO: Do something!
+				 (message "Appending to bug %s!"
+					  (third (assoc val bug-alist)))))
+		     "Append to chosen bug"))
+    (widget-insert " ")
+    (widget-create 'push-button
+		   :notify (lambda (&rest ignore)
+			     (kill-buffer))
+		   "Quit reporting bug")
+    (widget-insert "\n"))
+  (use-local-map widget-keymap)
+  (widget-setup)
+  (goto-char (point-min)))
+
+(defun report-emacs-bug-parse-query-results (status)
+  (goto-char (point-min))
+  (let (buglist)
+    (while (re-search-forward "<a href=\"bugreport\\.cgi\\?bug=\\([[:digit:]]+\\)\">\\([^<]+\\)</a>" nil t)
+      (let ((number (match-string 1))
+	    (subject (match-string 2)))
+	(when (not (string-match "^#" subject))
+	  (push (list
+		 ;; first the bug URL
+		 (concat report-emacs-bug-tracker-url
+			 "bugreport.cgi?bug=" number)
+		 ;; then the subject and number
+		 subject (string-to-number number))
+		buglist))))
+    (report-emacs-bug-create-existing-bugs-buffer (nreverse buglist))))
+
+(defun report-emacs-bug-query-existing-bugs (keywords)
+  "Query for KEYWORDS at `report-emacs-bug-tracker-url', and return the result.
+The result is an alist with items of the form (URL SUBJECT NO)."
+  (interactive "sBug keywords: ")
+  (url-retrieve (concat report-emacs-bug-tracker-url
+			"pkgreport.cgi?include=subject%3A"
+			(replace-regexp-in-string "[[:space:]]+" "+" keywords)
+			";package=emacs")
+		'report-emacs-bug-parse-query-results))
+
 (provide 'emacsbug)
 
 ;;; emacsbug.el ends here
--- a/lisp/minibuffer.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/minibuffer.el	Sat Nov 20 13:45:14 2010 +0200
@@ -530,6 +530,9 @@
 (make-variable-buffer-local 'completion-all-sorted-completions)
 (defvar completion-cycling nil)
 
+(defvar completion-fail-discreetly nil
+  "If non-nil, stay quiet when there  is no match.")
+
 (defun completion--do-completion (&optional try-completion-function)
   "Do the completion and return a summary of what happened.
 M = completion was performed, the text was Modified.
@@ -558,7 +561,9 @@
     (cond
      ((null comp)
       (minibuffer-hide-completions)
-      (ding) (minibuffer-message "No match") (minibuffer--bitset nil nil nil))
+      (unless completion-fail-discreetly
+        (ding) (minibuffer-message "No match"))
+      (minibuffer--bitset nil nil nil))
      ((eq t comp)
       (minibuffer-hide-completions)
       (goto-char (field-end))
--- a/lisp/mouse-sel.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/mouse-sel.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,4 +1,4 @@
-;;; mouse-sel.el --- multi-click selection support for Emacs 19
+;;; mouse-sel.el --- multi-click selection support
 
 ;; Copyright (C) 1993, 1994, 1995, 2001, 2002, 2003, 2004, 2005, 2006,
 ;;   2007, 2008, 2009, 2010  Free Software Foundation, Inc.
--- a/lisp/net/tramp-cmds.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/net/tramp-cmds.el	Sat Nov 20 13:45:14 2010 +0200
@@ -298,8 +298,7 @@
 	(setq buffer-read-only nil)
 	(goto-char (point-min))
 	(while (not (eobp))
-	  (if (re-search-forward
-	       tramp-buf-regexp (tramp-compat-line-end-position) t)
+	  (if (re-search-forward tramp-buf-regexp (point-at-eol) t)
 	      (forward-line 1)
 	    (forward-line 0)
 	    (let ((start (point)))
@@ -372,5 +371,4 @@
 ;;   ordinary variable that gets its initial value from
 ;;   tramp-default-user-alist and then is added to.  (Pete Forman)
 
-;; arch-tag: 190d4c33-76bb-4e99-8b6f-71741f23d98c
 ;;; tramp-cmds.el ends here
--- a/lisp/net/tramp-compat.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/net/tramp-compat.el	Sat Nov 20 13:45:14 2010 +0200
@@ -199,29 +199,6 @@
   (ignore-errors
     (tramp-compat-funcall 'font-lock-add-keywords mode keywords how)))
 
-;; FIXME is this really necessary?  Eg Emacs has both l-b-p and p-at-b
-;; since at least 21.1.
-(defsubst tramp-compat-line-beginning-position ()
-  "Return point at beginning of line (compat function).
-Calls `line-beginning-position' or `point-at-bol' if defined, else
-own implementation."
-  (cond
-   ((fboundp 'line-beginning-position)
-    (tramp-compat-funcall 'line-beginning-position))
-   ((fboundp 'point-at-bol) (tramp-compat-funcall 'point-at-bol))
-   (t (save-excursion (beginning-of-line) (point)))))
-
-;; FIXME is this really necessary?  Eg Emacs has both l-e-p and p-at-e
-;; since at least 21.1.
-(defsubst tramp-compat-line-end-position ()
-  "Return point at end of line (compat function).
-Calls `line-end-position' or `point-at-eol' if defined, else
-own implementation."
-  (cond
-   ((fboundp 'line-end-position) (tramp-compat-funcall 'line-end-position))
-   ((fboundp 'point-at-eol) (tramp-compat-funcall 'point-at-eol))
-   (t (save-excursion (end-of-line) (point)))))
-
 (defsubst tramp-compat-temporary-file-directory ()
   "Return name of directory for temporary files (compat function).
 For Emacs, this is the variable `temporary-file-directory', for XEmacs
--- a/lisp/net/tramp-sh.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/net/tramp-sh.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1189,8 +1189,7 @@
         ;; if symlink, find out file name pointed to
         (when symlinkp
           (search-forward "-> ")
-          (setq res-symlink-target
-                (buffer-substring (point) (tramp-compat-line-end-position))))
+          (setq res-symlink-target (buffer-substring (point) (point-at-eol))))
         ;; return data gathered
         (list
          ;; 0. t for directory, string (name linked to) for symbolic
@@ -1438,7 +1437,7 @@
 		       (tramp-shell-quote-argument localname))))
 	  (with-current-buffer (tramp-get-connection-buffer v)
 	    (goto-char (point-min))
-	    (when (re-search-forward regexp (tramp-compat-line-end-position) t)
+	    (when (re-search-forward regexp (point-at-eol) t)
 	      (setq context (list (match-string 1) (match-string 2)
 				  (match-string 3) (match-string 4))))))
 	;; Return the context.
@@ -1746,8 +1745,7 @@
                    (tramp-error
                     v 'file-error
                     "tramp-sh-handle-file-name-all-completions: %s"
-                    (buffer-substring
-                     (point) (tramp-compat-line-end-position))))
+                    (buffer-substring (point) (point-at-eol))))
                ;; For peace of mind, if buffer doesn't end in `fail'
                ;; then it should end in `ok'.  If neither are in the
                ;; buffer something went seriously wrong on the remote
@@ -1760,9 +1758,7 @@
                   (tramp-shell-quote-argument localname) (buffer-string))))
 
              (while (zerop (forward-line -1))
-               (push (buffer-substring
-                      (point) (tramp-compat-line-end-position))
-                     result)))
+               (push (buffer-substring (point) (point-at-eol)) result)))
 
            ;; Because the remote op went through OK we know the
            ;; directory we `cd'-ed to exists
@@ -2524,7 +2520,7 @@
 	  (forward-line -1))
 	(when (looking-at "//DIRED//\\s-+")
 	  (let ((databeg (match-end 0))
-		(end (tramp-compat-line-end-position)))
+		(end (point-at-eol)))
 	    ;; Now read the numeric positions of file names.
 	    (goto-char databeg)
 	    (while (< (point) end)
@@ -2534,7 +2530,7 @@
 		    ;; End is followed by \n or by " -> ".
 		    (put-text-property start end 'dired-filename t))))))
 	;; Remove trailing lines.
-	(goto-char (tramp-compat-line-beginning-position))
+	(goto-char (point-at-bol))
 	(while (looking-at "//")
 	  (forward-line 1)
 	  (delete-region (match-beginning 0) (point)))
@@ -2593,8 +2589,7 @@
 		   v (format "cd %s; pwd" (tramp-shell-quote-argument uname)))
 		  (with-current-buffer (tramp-get-buffer v)
 		    (goto-char (point-min))
-		    (buffer-substring
-		     (point) (tramp-compat-line-end-position)))))
+		    (buffer-substring (point) (point-at-eol)))))
 	  (setq localname (concat uname fname))))
       ;; There might be a double slash, for example when "~/"
       ;; expands to "/".  Remove this.
@@ -3496,8 +3491,7 @@
 	(when (search-backward "tramp_executable " nil t)
 	  (skip-chars-forward "^ ")
 	  (skip-chars-forward " ")
-	  (setq result (buffer-substring
-			(point) (tramp-compat-line-end-position)))))
+	  (setq result (buffer-substring (point) (point-at-eol)))))
     result)))
 
 (defun tramp-set-remote-path (vec)
@@ -3647,7 +3641,7 @@
     ;; the single quotes makes it work under `rc', too.  We also unset
     ;; the variable $ENV because that is read by some sh
     ;; implementations (eg, bash when called as sh) on startup; this
-    ;; way, we avoid the startup file clobbering $PS1.  $PROMP_COMMAND
+    ;; way, we avoid the startup file clobbering $PS1.  $PROMPT_COMMAND
     ;; is another way to set the prompt in /bin/bash, it must be
     ;; discarded as well.
     (tramp-open-shell
@@ -3858,7 +3852,11 @@
 with the encoded or decoded results, respectively.")
 
 (defconst tramp-remote-coding-commands
-  '((b64 "base64" "base64 -d")
+  '((b64 "base64" "base64 -d -i")
+    ;; "-i" is more robust with older base64 from GNU coreutils.
+    ;; However, I don't know whether all base64 versions do supports
+    ;; this option.
+    (b64 "base64" "base64 -d")
     (b64 "mimencode -b" "mimencode -u -b")
     (b64 "mmencode -b" "mmencode -u -b")
     (b64 "recode data..base64" "recode base64..data")
@@ -4360,8 +4358,8 @@
       (tramp-set-connection-property p "check-remote-echo" t)
       (setq command (format "%s%s%s" tramp-echo-mark command tramp-echo-mark)))
     (when (string-match "<<'EOF'" command)
-      ;; Unset $PS1 when using here documents, in order not to get
-      ;; several prompts.
+      ;; Unset $PS1 when using here documents, in order to avoid
+      ;; multiple prompts.
       (setq command (concat "(PS1= ; " command "\n)")))
     ;; Send the command.
     (tramp-message vec 6 "%s" command)
@@ -4387,8 +4385,7 @@
 	    ;; A simple-minded busybox has sent " ^H" sequences.
 	    ;; Delete them.
 	    (goto-char (point-min))
-	    (when (re-search-forward
-		   "^\\(.\b\\)+$" (tramp-compat-line-end-position) t)
+	    (when (re-search-forward "^\\(.\b\\)+$" (point-at-eol) t)
 	      (forward-line 1)
 	      (delete-region (point-min) (point)))
 	    ;; Delete the prompt.
@@ -4450,7 +4447,7 @@
     (condition-case nil
 	(prog1 (read (current-buffer))
 	  ;; Error handling.
-	  (when (re-search-forward "\\S-" (tramp-compat-line-end-position) t)
+	  (when (re-search-forward "\\S-" (point-at-eol) t)
 	    (error nil)))
       (error (tramp-error
 	      vec 'file-error
@@ -5042,5 +5039,6 @@
 ;;   rsync.
 ;; * Try telnet+curl as new method.  It might be useful for busybox,
 ;;   without built-in uuencode/uudecode.
+;; * Try ssh+netcat as out-of-band method.
 
 ;;; tramp-sh.el ends here
--- a/lisp/net/tramp-smb.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/net/tramp-smb.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1079,7 +1079,7 @@
 Result is the list (LOCALNAME MODE SIZE MTIME)."
 ;; We are called from `tramp-smb-get-file-entries', which sets the
 ;; current buffer.
-  (let ((line (buffer-substring (point) (tramp-compat-line-end-position)))
+  (let ((line (buffer-substring (point) (point-at-eol)))
 	localname mode size month day hour min sec year mtime)
 
     (if (not share)
@@ -1177,8 +1177,7 @@
 		(member
 		 "pathnames"
 		 (split-string
-		  (buffer-substring
-		   (point) (tramp-compat-line-end-position)) nil t)))))))))
+		  (buffer-substring (point) (point-at-eol)) nil t)))))))))
 
 (defun tramp-smb-get-stat-capability (vec)
   "Check, whether the SMB server supports the STAT command."
@@ -1396,5 +1395,4 @@
 ;;   regular again.
 ;; * Make it multi-hop capable.
 
-;; arch-tag: fcc9dbec-7503-4d73-b638-3c8aa59575f5
 ;;; tramp-smb.el ends here
--- a/lisp/net/tramp.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/net/tramp.el	Sat Nov 20 13:45:14 2010 +0200
@@ -2352,7 +2352,7 @@
 	  (concat
 	   "^\\(" tramp-host-regexp "\\)"
 	   "\\([ \t]+" "\\(" tramp-user-regexp "\\)" "\\)?")))
-     (narrow-to-region (point) (tramp-compat-line-end-position))
+     (narrow-to-region (point) (point-at-eol))
      (when (re-search-forward regexp nil t)
        (setq result (append (list (match-string 3) (match-string 1)))))
      (widen)
@@ -2379,7 +2379,7 @@
 User is always nil."
    (let ((result)
 	 (regexp (concat "^\\(" tramp-host-regexp "\\)")))
-     (narrow-to-region (point) (tramp-compat-line-end-position))
+     (narrow-to-region (point) (point-at-eol))
      (when (re-search-forward regexp nil t)
        (setq result (list nil (match-string 1))))
      (widen)
@@ -2408,7 +2408,7 @@
 User is always nil."
    (let ((result)
 	 (regexp (concat "^[ \t]*Host[ \t]+" "\\(" tramp-host-regexp "\\)")))
-     (narrow-to-region (point) (tramp-compat-line-end-position))
+     (narrow-to-region (point) (point-at-eol))
      (when (re-search-forward regexp nil t)
        (setq result (list nil (match-string 1))))
      (widen)
@@ -2469,7 +2469,7 @@
    (let ((result)
 	 (regexp
 	  (concat "^\\(" tramp-ipv6-regexp "\\|" tramp-host-regexp "\\)")))
-     (narrow-to-region (point) (tramp-compat-line-end-position))
+     (narrow-to-region (point) (point-at-eol))
      (when (re-search-forward regexp nil t)
        (setq result (list nil (match-string 1))))
      (widen)
@@ -2504,7 +2504,7 @@
 Host is always \"localhost\"."
    (let ((result)
 	 (regexp (concat "^\\(" tramp-user-regexp "\\):")))
-     (narrow-to-region (point) (tramp-compat-line-end-position))
+     (narrow-to-region (point) (point-at-eol))
      (when (re-search-forward regexp nil t)
        (setq result (list (match-string 1) "localhost")))
      (widen)
@@ -2534,7 +2534,7 @@
 	  (concat
 	   "^[ \t]*machine[ \t]+" "\\(" tramp-host-regexp "\\)"
 	   "\\([ \t]+login[ \t]+" "\\(" tramp-user-regexp "\\)" "\\)?")))
-     (narrow-to-region (point) (tramp-compat-line-end-position))
+     (narrow-to-region (point) (point-at-eol))
      (when (re-search-forward regexp nil t)
        (setq result (list (match-string 3) (match-string 1))))
      (widen)
@@ -2560,7 +2560,7 @@
 User is always nil."
    (let ((result)
 	 (regexp (concat (regexp-quote registry) "\\\\\\(.+\\)")))
-     (narrow-to-region (point) (tramp-compat-line-end-position))
+     (narrow-to-region (point) (point-at-eol))
      (when (re-search-forward regexp nil t)
        (setq result (list nil (match-string 1))))
      (widen)
@@ -3662,7 +3662,6 @@
 ;;   expects English?  Or just to set LC_MESSAGES to "C" if Tramp
 ;;   expects only English messages?  (Juri Linkov)
 ;; * Make shadowfile.el grok Tramp filenames.  (Bug#4526, Bug#4846)
-;; * Load ~/.emacs_SHELLNAME on the remote host for `shell'.
 ;; * I was wondering it it would be possible to use tramp even if I'm
 ;;   actually using sshfs.  But when I launch a command I would like
 ;;   to get it executed on the remote machine where the files really
@@ -3674,7 +3673,6 @@
 ;; Functions for file-name-handler-alist:
 ;; diff-latest-backup-file -- in diff.el
 
-;; arch-tag: 3a21a994-182b-48fa-b0cd-c1d9fede424a
 ;;; tramp.el ends here
 
 ;; Local Variables:
--- a/lisp/novice.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/novice.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,7 +1,7 @@
 ;;; novice.el --- handling of disabled commands ("novice mode") for Emacs
 
-;; Copyright (C) 1985, 1986, 1987, 1994, 2001, 2002, 2003, 2004,
-;;   2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+;; Copyright (C) 1985, 1986, 1987, 1994, 2001, 2002, 2003, 2004, 2005,
+;;   2006, 2007, 2008, 2009, 2010  Free Software Foundation, Inc.
 
 ;; Maintainer: FSF
 ;; Keywords: internal, help
@@ -110,9 +110,9 @@
 		 (not (string= "" user-init-file))
 		 (y-or-n-p "Enable command for future editing sessions also? "))
 	  (enable-command cmd)
-	(put cmd 'disabled nil)))
-     (?n nil)
-     (t (call-interactively cmd)))))
+	(put cmd 'disabled nil))))
+    (or (char-equal char ?n)
+        (call-interactively cmd))))
 
 (defun en/disable-command (command disable)
   (unless (commandp command)
@@ -169,5 +169,4 @@
 
 (provide 'novice)
 
-;; arch-tag: f83c0f96-497e-4db6-a430-8703716c6dd9
 ;;; novice.el ends here
--- a/lisp/org/ChangeLog	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ChangeLog	Sat Nov 20 13:45:14 2010 +0200
@@ -1,5 +1,8 @@
 2010-11-12  Carsten Dominik  <carsten.dominik@gmail.com>
 
+	* org-capture.el (org-capture-templates): Remove autoload from
+	defcustom.
+
 	* ob-lisp.el (slime): Don't expect slime to be present.
 
 2010-11-11  Dan Davison  <dandavison7@gmail.com>
--- a/lisp/org/ob-R.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-R.el	Sat Nov 20 13:45:14 2010 +0200
@@ -2,7 +2,8 @@
 
 ;; Copyright (C) 2009, 2010  Free Software Foundation, Inc.
 
-;; Author: Eric Schulte, Dan Davison
+;; Author: Eric Schulte
+;;	Dan Davison
 ;; Keywords: literate programming, reproducible research, R, statistics
 ;; Homepage: http://orgmode.org
 ;; Version: 7.3
--- a/lisp/org/ob-calc.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-calc.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,6 +1,6 @@
 ;;; ob-calc.el --- org-babel functions for calc code evaluation
 
-;; Copyright (C) 2010  Free Software Foundation, Inc
+;; Copyright (C) 2010  Free Software Foundation, Inc.
 
 ;; Author: Eric Schulte
 ;; Keywords: literate programming, reproducible research
--- a/lisp/org/ob-emacs-lisp.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-emacs-lisp.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,6 +1,6 @@
 ;;; ob-emacs-lisp.el --- org-babel functions for emacs-lisp code evaluation
 
-;; Copyright (C) 2009, 2010  Free Software Foundation, Inc
+;; Copyright (C) 2009, 2010  Free Software Foundation, Inc.
 
 ;; Author: Eric Schulte
 ;; Keywords: literate programming, reproducible research
--- a/lisp/org/ob-js.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-js.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,28 +1,26 @@
 ;;; ob-js.el --- org-babel functions for Javascript
 
-;; Copyright (C) 2010 Free Software Foundation
+;; Copyright (C) 2010 Free Software Foundation, Inc.
 
 ;; Author: Eric Schulte
 ;; Keywords: literate programming, reproducible research, js
 ;; Homepage: http://orgmode.org
 ;; Version: 7.3
 
-;;; License:
+;; This file is part of GNU Emacs.
 
-;; This program is free software; you can redistribute it and/or modify
+;; GNU Emacs is free software: you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 3, or (at your option)
-;; any later version.
-;;
-;; This program is distributed in the hope that it will be useful,
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ;; GNU General Public License for more details.
-;;
+
 ;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 ;;; Commentary:
 
@@ -35,7 +33,7 @@
 
 ;; - a non-browser javascript engine such as node.js http://nodejs.org/
 ;;   or mozrepl http://wiki.github.com/bard/mozrepl/
-;; 
+;;
 ;; - for session based evaluation mozrepl and moz.el are required see
 ;;   http://wiki.github.com/bard/mozrepl/emacs-integration for
 ;;   configuration instructions
--- a/lisp/org/ob-lisp.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-lisp.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,28 +1,27 @@
 ;;; ob-lisp.el --- org-babel functions for Common Lisp
 
-;; Copyright (C) 2010 Free Software Foundation
+;; Copyright (C) 2010  Free Software Foundation, Inc.
 
-;; Author: David T. O'Toole <dto@gnu.org>, Eric Schulte
+;; Author: David T. O'Toole <dto@gnu.org>
+;;	Eric Schulte
 ;; Keywords: literate programming, reproducible research, lisp
 ;; Homepage: http://orgmode.org
 ;; Version: 7.3
 
-;;; License:
+;; This file is part of GNU Emacs.
 
-;; This program is free software; you can redistribute it and/or modify
+;; GNU Emacs is free software: you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 3, or (at your option)
-;; any later version.
-;;
-;; This program is distributed in the hope that it will be useful,
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ;; GNU General Public License for more details.
-;;
+
 ;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 ;;; Commentary:
 
--- a/lisp/org/ob-lob.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-lob.el	Sat Nov 20 13:45:14 2010 +0200
@@ -2,7 +2,8 @@
 
 ;; Copyright (C) 2009, 2010  Free Software Foundation, Inc.
 
-;; Author: Eric Schulte, Dan Davison
+;; Author: Eric Schulte
+;;	Dan Davison
 ;; Keywords: literate programming, reproducible research
 ;; Homepage: http://orgmode.org
 ;; Version: 7.3
@@ -25,7 +26,7 @@
 ;;; Commentary:
 
 ;; See the online documentation for more information
-;; 
+;;
 ;;   http://orgmode.org/worg/org-contrib/babel/
 
 ;;; Code:
@@ -92,13 +93,13 @@
       (beginning-of-line 1)
       (if (looking-at org-babel-lob-one-liner-regexp)
           (append
-	   (mapcar #'org-babel-clean-text-properties 
+	   (mapcar #'org-babel-clean-text-properties
 		   (list
 		    (format "%s(%s)%s"
 			    (match-string 2) (match-string 3) (match-string 4))
 		    (match-string 5)))
 	   (list (length (match-string 1))))))))
-  
+
 (defun org-babel-lob-execute (info)
   "Execute the lob call specified by INFO."
   (let ((params (org-babel-process-params
--- a/lisp/org/ob-perl.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-perl.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,8 +1,9 @@
 ;;; ob-perl.el --- org-babel functions for perl evaluation
 
-;; Copyright (C) 2009, 2010  Free Software Foundation
+;; Copyright (C) 2009, 2010  Free Software Foundation, Inc.
 
-;; Author: Dan Davison, Eric Schulte
+;; Author: Dan Davison
+;;	Eric Schulte
 ;; Keywords: literate programming, reproducible research
 ;; Homepage: http://orgmode.org
 ;; Version: 7.3
--- a/lisp/org/ob-python.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-python.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,8 +1,9 @@
 ;;; ob-python.el --- org-babel functions for python evaluation
 
-;; Copyright (C) 2009, 2010  Free Software Foundation
+;; Copyright (C) 2009, 2010  Free Software Foundation, Inc.
 
-;; Author: Eric Schulte, Dan Davison
+;; Author: Eric Schulte
+;;	Dan Davison
 ;; Keywords: literate programming, reproducible research
 ;; Homepage: http://orgmode.org
 ;; Version: 7.3
--- a/lisp/org/ob-ref.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-ref.el	Sat Nov 20 13:45:14 2010 +0200
@@ -2,7 +2,8 @@
 
 ;; Copyright (C) 2009, 2010  Free Software Foundation, Inc.
 
-;; Author: Eric Schulte, Dan Davison
+;; Author: Eric Schulte
+;;	Dan Davison
 ;; Keywords: literate programming, reproducible research
 ;; Homepage: http://orgmode.org
 ;; Version: 7.3
--- a/lisp/org/ob-ruby.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-ruby.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,6 +1,6 @@
 ;;; ob-ruby.el --- org-babel functions for ruby evaluation
 
-;; Copyright (C) 2009, 2010  Free Software Foundation
+;; Copyright (C) 2009, 2010  Free Software Foundation, Inc.
 
 ;; Author: Eric Schulte
 ;; Keywords: literate programming, reproducible research
@@ -29,10 +29,10 @@
 ;;; Requirements:
 
 ;; - ruby and irb executables :: http://www.ruby-lang.org/
-;; 
+;;
 ;; - ruby-mode :: Can be installed through ELPA, or from
 ;;   http://github.com/eschulte/rinari/raw/master/util/ruby-mode.el
-;;   
+;;
 ;; - inf-ruby mode :: Can be installed through ELPA, or from
 ;;   http://github.com/eschulte/rinari/raw/master/util/inf-ruby.el
 
--- a/lisp/org/ob-scheme.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-scheme.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,28 +1,26 @@
 ;;; ob-scheme.el --- org-babel functions for Scheme
 
-;; Copyright (C) 2010 Free Software Foundation
+;; Copyright (C) 2010 Free Software Foundation, Inc.
 
 ;; Author: Eric Schulte
 ;; Keywords: literate programming, reproducible research, scheme
 ;; Homepage: http://orgmode.org
 ;; Version: 7.3
 
-;;; License:
+;; This file is part of GNU Emacs.
 
-;; This program is free software; you can redistribute it and/or modify
+;; GNU Emacs is free software: you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 3, or (at your option)
-;; any later version.
-;;
-;; This program is distributed in the hope that it will be useful,
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ;; GNU General Public License for more details.
-;;
+
 ;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 ;;; Commentary:
 
@@ -35,7 +33,7 @@
 
 ;; - a working scheme implementation
 ;;   (e.g. guile http://www.gnu.org/software/guile/guile.html)
-;;   
+;;
 ;; - for session based evaluation cmuscheme.el is required which is
 ;;   included in Emacs
 
--- a/lisp/org/ob-screen.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-screen.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,6 +1,6 @@
 ;;; ob-screen.el --- org-babel support for interactive terminal
 
-;; Copyright (C) 2009, 2010  Free Software Foundation
+;; Copyright (C) 2009, 2010  Free Software Foundation, Inc.
 
 ;; Author: Benjamin Andresen
 ;; Keywords: literate programming, interactive shell
--- a/lisp/org/ob-sqlite.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob-sqlite.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,6 +1,6 @@
 ;;; ob-sqlite.el --- org-babel functions for sqlite database interaction
 
-;; Copyright (C) 2010  Free Software Foundation
+;; Copyright (C) 2010  Free Software Foundation, Inc.
 
 ;; Author: Eric Schulte
 ;; Keywords: literate programming, reproducible research
--- a/lisp/org/ob.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/ob.el	Sat Nov 20 13:45:14 2010 +0200
@@ -2,7 +2,8 @@
 
 ;; Copyright (C) 2009, 2010  Free Software Foundation, Inc.
 
-;; Author: Eric Schulte, Dan Davison
+;; Author: Eric Schulte
+;;	Dan Davison
 ;; Keywords: literate programming, reproducible research
 ;; Homepage: http://orgmode.org
 ;; Version: 7.3
--- a/lisp/org/org-capture.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/org-capture.el	Sat Nov 20 13:45:14 2010 +0200
@@ -76,7 +76,6 @@
   :tag "Org Capture"
   :group 'org)
 
-;;;###autoload
 (defcustom org-capture-templates nil
   "Templates for the creation of new entries.
 
--- a/lisp/org/org-mouse.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/org/org-mouse.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1,6 +1,7 @@
 ;;; org-mouse.el --- Better mouse support for org-mode
 
-;; Copyright (C) 2006, 2007, 2008, 2009, 2010 Free Software Foundation
+;; Copyright (C) 2006, 2007, 2008, 2009, 2010
+;;   Free Software Foundation, Inc.
 ;;
 ;; Author: Piotr Zielinski <piotr dot zielinski at gmail dot com>
 ;; Maintainer: Carsten Dominik <carsten at orgmode dot org>
--- a/lisp/printing.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/printing.el	Sat Nov 20 13:45:14 2010 +0200
@@ -3438,12 +3438,7 @@
 
 (defun pr-menu-bind ()
   "Install `printing' menu in the menubar.
-
-On Emacs 20, it replaces the Tools/Print menu by Tools/Printing menu.
-
-On Emacs 21 and 22, it replaces the File/Print* menu entries by File/Print
-menu.
-
+This replaces the File/Print* menu entries with a File/Print sub-menu.
 Calls `pr-update-menus' to adjust menus."
   (interactive)
   (pr-global-menubar pr-menu-spec)
@@ -6670,5 +6665,4 @@
 (provide 'printing)
 
 
-;; arch-tag: 9ce9ac3f-0f60-4370-900b-1943215d9d18
 ;;; printing.el ends here
--- a/lisp/progmodes/grep.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/progmodes/grep.el	Sat Nov 20 13:45:14 2010 +0200
@@ -348,7 +348,11 @@
     ;; produces them
     ;; ("^\\(.+?\\)\\(:[ \t]*\\)\\([0-9]+\\)\\2\\(?:\\([0-9]+\\)\\(?:-\\([0-9]+\\)\\)?\\2\\)?"
     ;;  1 3 (4 . 5))
-    ("^\\(\\(.+?\\):\\([0-9]+\\):\\).*?\
+    ;; Note that we want to use as tight a regexp as we can to try and
+    ;; handle weird file names (with colons in them) as well as possible.
+    ;; E.g. we use [1-9][0-9]* rather than [0-9]+ so as to accept ":034:" in
+    ;; file names.
+    ("^\\(\\(.+?\\):\\([1-9][0-9]*\\):\\).*?\
 \\(\033\\[01;31m\\(?:\033\\[K\\)?\\)\\(.*?\\)\\(\033\\[[0-9]*m\\)"
      2 3
      ;; Calculate column positions (beg . end) of first grep match on a line
@@ -357,7 +361,7 @@
         (- (match-beginning 4) (match-end 1)))
       .
       (lambda () (- (match-end 5) (match-end 1)
-		    (- (match-end 4) (match-beginning 4)))))
+               (- (match-end 4) (match-beginning 4)))))
      nil 1)
     ("^Binary file \\(.+\\) matches$" 1 nil nil 0 1))
   "Regexp used to match grep hits.  See `compilation-error-regexp-alist'.")
--- a/lisp/progmodes/octave-mod.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/progmodes/octave-mod.el	Sat Nov 20 13:45:14 2010 +0200
@@ -212,9 +212,6 @@
 (defvar octave-mode-map
   (let ((map (make-sparse-keymap)))
     (define-key map "`" 'octave-abbrev-start)
-    (define-key map ";" 'octave-electric-semi)
-    (define-key map " " 'octave-electric-space)
-    (define-key map "\n" 'octave-reindent-then-newline-and-indent)
     (define-key map "\e\n" 'octave-indent-new-comment-line)
     (define-key map "\M-\C-q" 'octave-indent-defun)
     (define-key map "\C-c\C-b" 'octave-submit-bug-report)
@@ -319,16 +316,6 @@
     table)
   "Syntax table in use in `octave-mode' buffers.")
 
-(defcustom octave-auto-indent nil
-  "Non-nil means indent line after a semicolon or space in Octave mode."
-  :type 'boolean
-  :group 'octave)
-
-(defcustom octave-auto-newline nil
-  "Non-nil means automatically newline after a semicolon in Octave mode."
-  :type 'boolean
-  :group 'octave)
-
 (defcustom octave-blink-matching-block t
   "Control the blinking of matching Octave block keywords.
 Non-nil means show matching begin of block when inserting a space,
@@ -536,7 +523,7 @@
        ;; (if (smie-parent-p "switch") 4)
        0))))
 
-(defvar electric-indent-chars)
+(defvar electric-layout-rules)
 
 ;;;###autoload
 (define-derived-mode octave-mode prog-mode "Octave"
@@ -567,14 +554,6 @@
 Variables you can use to customize Octave mode
 ==============================================
 
-`octave-auto-indent'
-  Non-nil means indent current line after a semicolon or space.
-  Default is nil.
-
-`octave-auto-newline'
-  Non-nil means auto-insert a newline and indent after a semicolon.
-  Default is nil.
-
 `octave-blink-matching-block'
   Non-nil means show matching begin of block when inserting a space,
   newline or semicolon after an else or end keyword.  Default is t.
@@ -636,6 +615,9 @@
 
   (set (make-local-variable 'electric-indent-chars)
        (cons ?\; electric-indent-chars))
+  ;; IIUC matlab-mode takes the opposite approach: it makes RET insert
+  ;; a ";" at those places where it's correct (i.e. outside of parens).
+  (set (make-local-variable 'electric-layout-rules) '((?\; . after)))
 
   (set (make-local-variable 'comment-start) octave-comment-start)
   (set (make-local-variable 'comment-end) "")
@@ -736,7 +718,7 @@
     (error "Cannot split a code line inside a string"))
    (t
     (insert (concat " " octave-continuation-string))
-    (octave-reindent-then-newline-and-indent))))
+    (reindent-then-newline-and-indent))))
 
 (defun octave-indent-defun ()
   "Properly indent the Octave function which contains point."
@@ -1017,45 +999,6 @@
   (apply 'completion-in-region (octave-completion-at-point-function)))
 
 ;;; Electric characters && friends
-(defun octave-reindent-then-newline-and-indent ()
-  "Reindent current Octave line, insert newline, and indent the new line.
-If Abbrev mode is on, expand abbrevs first."
-  ;; FIXME: None of this is Octave-specific.
-  (interactive)
-  (reindent-then-newline-and-indent))
-
-(defun octave-electric-semi ()
-  "Insert a semicolon in Octave mode.
-Maybe expand abbrevs and blink matching block open keywords.
-Reindent the line if `octave-auto-indent' is non-nil.
-Insert a newline if `octave-auto-newline' is non-nil."
-  (interactive)
-  (setq last-command-event ?\;)
-  (if (not (octave-not-in-string-or-comment-p))
-      (self-insert-command 1)
-    (if octave-auto-indent
-	(indent-according-to-mode))
-    (self-insert-command 1)
-    (if octave-auto-newline
-	(newline-and-indent))))
-
-(defun octave-electric-space ()
-  "Insert a space in Octave mode.
-Maybe expand abbrevs and blink matching block open keywords.
-Reindent the line if `octave-auto-indent' is non-nil."
-  (interactive)
-  (setq last-command-event ? )
-  (if (and octave-auto-indent
-	   (not (octave-not-in-string-or-comment-p)))
-      (progn
-	(indent-according-to-mode)
-	(self-insert-command 1))
-    (if (and octave-auto-indent
-	     (save-excursion
-	       (skip-syntax-backward " ")
-	       (not (bolp))))
-	(indent-according-to-mode))
-    (self-insert-command 1)))
 
 (defun octave-abbrev-start ()
   "Start entering an Octave abbreviation.
@@ -1213,8 +1156,6 @@
     octave-maintainer-address
     (concat "Emacs version " emacs-version)
     (list
-     'octave-auto-indent
-     'octave-auto-newline
      'octave-blink-matching-block
      'octave-block-offset
      'octave-comment-char
--- a/lisp/progmodes/python.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/progmodes/python.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1586,6 +1586,11 @@
     (with-current-buffer
 	(let* ((cmdlist
 		(append (python-args-to-list cmd)
+                        ;; It's easy for the user to cause the process to be
+			;; started without realizing it (e.g. to perform
+			;; completion); for this reason loading files from the
+			;; current directory is a security risk.  See
+			;; http://article.gmane.org/gmane.emacs.devel/103569
 			'("-i" "-c" "import sys; sys.path.remove('')")))
 	       (path (getenv "PYTHONPATH"))
 	       (process-environment	; to import emacs.py
@@ -2802,7 +2807,7 @@
 process is started.  If you use this, you will probably want to ensure
 that the current arguments are retained (they will be included in the
 prompt).  This argument is ignored when this function is called
-programmatically, or when running in Emacs 19.34 or older.
+programmatically.
 
 Note: You can toggle between using the CPython interpreter and the
 JPython interpreter by hitting \\[python-toggle-shells].  This toggles
--- a/lisp/server.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/server.el	Sat Nov 20 13:45:14 2010 +0200
@@ -609,7 +609,7 @@
 (defun server-force-stop ()
   "Kill all connections to the current server.
 This function is meant to be called from `kill-emacs-hook'."
-  (server-start nil t))
+  (server-start t t))
 
 ;;;###autoload
 (defun server-force-delete (&optional name)
--- a/lisp/shell.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/shell.el	Sat Nov 20 13:45:14 2010 +0200
@@ -472,6 +472,10 @@
       (when (string-equal shell "bash")
         (add-hook 'comint-output-filter-functions
                   'shell-filter-ctrl-a-ctrl-b nil t)))
+    (when shell-dir-cookie-re
+      ;; Watch for magic cookies in the output to track the current dir.
+      (add-hook 'comint-output-filter-functions
+		'shell-dir-cookie-watcher nil t))
     (comint-read-input-ring t)))
 
 (defun shell-filter-ctrl-a-ctrl-b (string)
@@ -619,6 +623,31 @@
 ;; replace it with a process filter that watches for and strips out
 ;; these messages.
 
+(defcustom shell-dir-cookie-re nil
+  "Regexp matching your prompt, including some part of the current directory.
+If your prompt includes the current directory or the last few elements of it,
+set this to a pattern that matches your prompt and whose subgroup 1 matches
+the directory part of it.
+This is used by `shell-dir-cookie-watcher' to try and use this info
+to track your current directory.  It can be used instead of or in addition
+to `dirtrack-mode'."
+  :type '(choice (const nil) regexp))
+
+(defun shell-dir-cookie-watcher (text)
+  ;; This is fragile: the TEXT could be split into several chunks and we'd
+  ;; miss it.  Oh well.  It's a best effort anyway.  I'd expect that it's
+  ;; rather unusual to have the prompt split into several packets, but
+  ;; I'm sure Murphy will prove me wrong.
+  (when (and shell-dir-cookie-re (string-match shell-dir-cookie-re text))
+    (let ((dir (match-string 1 text)))
+      (cond
+       ((file-name-absolute-p dir) (shell-cd dir))
+       ;; Let's try and see if it seems to be up or down from where we were.
+       ((string-match "\\`\\(.*\\)\\(?:/.*\\)?\n\\(.*/\\)\\1\\(?:/.*\\)?\\'"
+		      (setq text (concat dir "\n" default-directory)))
+	(shell-cd (concat (match-string 2 text) dir)))))))
+	
+
 (defun shell-directory-tracker (str)
   "Tracks cd, pushd and popd commands issued to the shell.
 This function is called on each input passed to the shell.
--- a/lisp/simple.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/simple.el	Sat Nov 20 13:45:14 2010 +0200
@@ -512,7 +512,7 @@
   (interactive "*p")
   (let* ((do-fill-prefix (and fill-prefix (bolp)))
 	 (do-left-margin (and (bolp) (> (current-left-margin) 0)))
-	 (loc (point))
+	 (loc (point-marker))
 	 ;; Don't expand an abbrev before point.
 	 (abbrev-mode nil))
     (newline n)
@@ -973,6 +973,21 @@
 	(re-search-forward "[\n\C-m]" nil 'end (1- line))
       (forward-line (1- line)))))
 
+(defun count-words-region (start end)
+  "Print the number of words in the region.
+When called interactively, the word count is printed in echo area."
+  (interactive "r")
+  (let ((count 0))
+    (save-excursion
+      (save-restriction
+        (narrow-to-region start end)
+        (goto-char (point-min))
+        (while (forward-word 1)
+          (setq count (1+ count)))))
+    (if (interactive-p)
+        (message "Region has %d words" count))
+    count))
+
 (defun count-lines-region (start end)
   "Print number of lines and characters in the region."
   (interactive "r")
@@ -2975,11 +2990,6 @@
 Optional second argument REPLACE non-nil means that STRING will replace
 the front of the kill ring, rather than being added to the list.
 
-Optional third arguments YANK-HANDLER controls how the STRING is later
-inserted into a buffer; see `insert-for-yank' for details.
-When a yank handler is specified, STRING must be non-empty (the yank
-handler, if non-nil, is stored as a `yank-handler' text property on STRING).
-
 When `save-interprogram-paste-before-kill' and `interprogram-paste-function'
 are non-nil, saves the interprogram paste string(s) into `kill-ring' before
 STRING.
@@ -3019,22 +3029,19 @@
   (setq kill-ring-yank-pointer kill-ring)
   (if interprogram-cut-function
       (funcall interprogram-cut-function string)))
+(set-advertised-calling-convention
+ 'kill-new '(string &optional replace) "23.3")
 
 (defun kill-append (string before-p &optional yank-handler)
   "Append STRING to the end of the latest kill in the kill ring.
 If BEFORE-P is non-nil, prepend STRING to the kill.
-Optional third argument YANK-HANDLER, if non-nil, specifies the
-yank-handler text property to be set on the combined kill ring
-string.  If the specified yank-handler arg differs from the
-yank-handler property of the latest kill string, this function
-adds the combined string to the kill ring as a new element,
-instead of replacing the last kill with it.
 If `interprogram-cut-function' is set, pass the resulting kill to it."
   (let* ((cur (car kill-ring)))
     (kill-new (if before-p (concat string cur) (concat cur string))
 	      (or (= (length cur) 0)
 		  (equal yank-handler (get-text-property 0 'yank-handler cur)))
 	      yank-handler)))
+(set-advertised-calling-convention 'kill-append '(string before-p) "23.3")
 
 (defcustom yank-pop-change-selection nil
   "If non-nil, rotating the kill ring changes the window system selection."
@@ -3115,11 +3122,7 @@
 Any command that calls this function is a \"kill command\".
 If the previous command was also a kill command,
 the text killed this time appends to the text killed last time
-to make one entry in the kill ring.
-
-In Lisp code, optional third arg YANK-HANDLER, if non-nil,
-specifies the yank-handler text property to be set on the killed
-text.  See `insert-for-yank'."
+to make one entry in the kill ring."
   ;; Pass point first, then mark, because the order matters
   ;; when calling kill-append.
   (interactive (list (point) (mark)))
@@ -3151,6 +3154,7 @@
        (barf-if-buffer-read-only)
        ;; If the buffer isn't read-only, the text is.
        (signal 'text-read-only (list (current-buffer)))))))
+(set-advertised-calling-convention 'kill-region '(beg end) "23.3")
 
 ;; copy-region-as-kill no longer sets this-command, because it's confusing
 ;; to get two copies of the text when the user accidentally types M-w and
--- a/lisp/skeleton.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/skeleton.el	Sat Nov 20 13:45:14 2010 +0200
@@ -299,7 +299,10 @@
 	(eolp (eolp)))
     ;; since Emacs doesn't show main window's cursor, do something noticeable
     (or eolp
-	(open-line 1))
+        ;; We used open-line before, but that can do a lot more than we want,
+	;; since it runs self-insert-command.  E.g. it may remove spaces
+	;; before point.
+        (save-excursion (insert "\n")))
     (unwind-protect
 	(setq prompt (if (stringp prompt)
 			 (read-string (format prompt skeleton-subprompt)
@@ -352,6 +355,16 @@
       (signal 'quit 'recursive)
     recursive))
 
+(defun skeleton-newline ()
+  (if (or (eq (point) skeleton-point)
+          (eq (point) (car skeleton-positions)))
+      ;; If point is recorded, avoid `newline' since it may do things like
+      ;; strip trailing spaces, and since recorded points are commonly placed
+      ;; right after a trailing space, calling `newline' can destroy the
+      ;; position and renders the recorded position incorrect.
+      (insert "\n")
+    (newline)))
+
 (defun skeleton-internal-1 (element &optional literal recursive)
   (cond
    ((or (integerp element) (stringp element))
@@ -379,13 +392,13 @@
 	(if pos (indent-according-to-mode)))
        (skeleton-newline-indent-rigidly
 	(let ((pt (point)))
-	  (newline)
+	  (skeleton-newline)
 	  (indent-to (save-excursion
 		       (goto-char pt)
 		       (if pos (indent-according-to-mode))
 		       (current-indentation)))))
        (t (if pos (reindent-then-newline-and-indent)
-	    (newline)
+	    (skeleton-newline)
 	    (indent-according-to-mode))))))
    ((eq element '>)
     (if (and skeleton-regions (eq (nth 1 skeleton-il) '_))
--- a/lisp/speedbar.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/speedbar.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1692,8 +1692,7 @@
     (speedbar-enable-update)))
 
 (defun speedbar-toggle-images ()
-  "Toggle use of images in the speedbar frame.
-Images are not available in Emacs 20 or earlier."
+  "Toggle use of images in the speedbar frame."
   (interactive)
   (setq speedbar-use-images (not speedbar-use-images))
   (speedbar-refresh))
--- a/lisp/startup.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/startup.el	Sat Nov 20 13:45:14 2010 +0200
@@ -885,14 +885,15 @@
 
   ;; Under X, this creates the X frame and deletes the terminal frame.
   (unless (daemonp)
-    ;; Enable or disable the tool-bar and menu-bar.
-    ;; While we're at it, set `no-blinking-cursor' too.
+
+    ;; If X resources are available, use them to initialize the values
+    ;; of `tool-bar-mode' and `menu-bar-mode', as well as the value of
+    ;; `no-blinking-cursor' and the `cursor' face.
     (cond
      ((or noninteractive emacs-basic-display)
       (setq menu-bar-mode nil
 	    tool-bar-mode nil
 	    no-blinking-cursor t))
-     ;; Check X resources if available.
      ((memq initial-window-system '(x w32 ns))
       (let ((no-vals  '("no" "off" "false" "0")))
 	(if (member (x-get-resource "menuBar" "MenuBar") no-vals)
@@ -901,7 +902,13 @@
 	    (setq tool-bar-mode nil))
 	(if (member (x-get-resource "cursorBlink" "CursorBlink")
 		    no-vals)
-	    (setq no-blinking-cursor t)))))
+	    (setq no-blinking-cursor t)))
+      ;; If the cursorColor X resource exists, alter the `cursor' face
+      ;; spec, but mark it as changed outside of Customize.
+      (let ((color (x-get-resource "cursorColor" "CursorColor")))
+	(when color
+	  (face-spec-set 'cursor `((t (:background ,color))))
+	  (put 'cursor 'face-modified t)))))
     (frame-initialize))
 
   (when (fboundp 'x-create-frame)
--- a/lisp/subr.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/subr.el	Sat Nov 20 13:45:14 2010 +0200
@@ -954,7 +954,8 @@
 	      ((null spacing)
 	       (setq spacing 0)))
 	(cons (/ (car pair) (frame-char-width frame))
-	      (/ (cdr pair) (+ (frame-char-height frame) spacing))))))))
+	      (- (/ (cdr pair) (+ (frame-char-height frame) spacing))
+		 (if (null header-line-format) 0 1))))))))
 
 (defun posn-actual-col-row (position)
   "Return the actual column and row in POSITION, measured in characters.
--- a/lisp/textmodes/flyspell.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/textmodes/flyspell.el	Sat Nov 20 13:45:14 2010 +0200
@@ -380,7 +380,8 @@
 
 (defun flyspell-generic-progmode-verify ()
   "Used for `flyspell-generic-check-word-predicate' in programming modes."
-  (let ((f (get-text-property (point) 'face)))
+  ;; (point) is next char after the word. Must check one char before.
+  (let ((f (get-text-property (- (point) 1) 'face)))
     (memq f flyspell-prog-text-faces)))
 
 ;;;###autoload
--- a/lisp/textmodes/picture.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/textmodes/picture.el	Sat Nov 20 13:45:14 2010 +0200
@@ -226,16 +226,30 @@
   (picture-motion (- arg)))
 
 (defun picture-mouse-set-point (event)
-  "Move point to the position clicked on, making whitespace if necessary."
+  "Move point to the position of EVENT, making whitespace if necessary."
   (interactive "e")
-  (let* ((pos (posn-col-row (event-start event)))
-	 (x (car pos))
-	 (y (cdr pos))
-	 (current-row (count-lines (window-start) (line-beginning-position))))
-    (unless (equal x (current-column))
-      (picture-forward-column (- x (current-column))))
-    (unless (equal y current-row)
-      (picture-move-down (- y current-row)))))
+  (let ((position (event-start event)))
+    (unless (posn-area position) ; Ignore EVENT unless in text area
+      (let* ((window (posn-window position))
+	     (frame  (if (framep window) window (window-frame window)))
+	     (pair   (posn-x-y position))
+	     (start-pos (window-start window))
+	     (start-pair (posn-x-y (posn-at-point start-pos)))
+	     (dx (- (car pair) (car start-pair)))
+	     (dy (- (cdr pair) (cdr start-pair)))
+	     (char-ht (frame-char-height frame))
+	     (spacing (when (display-graphic-p frame)
+			(or (with-current-buffer (window-buffer window)
+			      line-spacing)
+			    (frame-parameter frame 'line-spacing))))
+	     rows cols)
+	(cond ((floatp spacing)
+	       (setq spacing (truncate (* spacing char-ht))))
+	      ((null spacing)
+	       (setq spacing 0)))
+	(goto-char start-pos)
+	(picture-move-down      (/ dy (+ char-ht spacing)))
+	(picture-forward-column (/ dx (frame-char-width frame)))))))
 
 
 ;; Picture insertion and deletion.
--- a/lisp/textmodes/reftex-ref.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/textmodes/reftex-ref.el	Sat Nov 20 13:45:14 2010 +0200
@@ -831,7 +831,12 @@
   (let* ((wcfg (current-window-configuration))
          (docstruct (symbol-value reftex-docstruct-symbol))
          (label (completing-read "Label: " docstruct
-                                 (lambda (x) (stringp (car x))) t))
+                                 (lambda (x) (stringp (car x))) t
+				 ;; If point is inside a \ref{} or
+				 ;; \pageref{}, use that as initial
+				 ;; input.
+				 (when (looking-back "\\\\\\(?:page\\)?ref{[-a-zA-Z0-9_*.:]*")
+				   (reftex-this-word "-a-zA-Z0-9_*.:"))))
          (selection (assoc label docstruct))
          (where (progn
                   (reftex-show-label-location selection t nil 'stay)
--- a/lisp/textmodes/rst.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/textmodes/rst.el	Sat Nov 20 13:45:14 2010 +0200
@@ -698,12 +698,10 @@
 requested decoration."
 
   (interactive)
-  (let (marker
+      (end-of-line)
+  (let ((marker (point-marker))
         len)
 
-      (end-of-line)
-      (setq marker (point-marker))
-
       ;; Fixup whitespace at the beginning and end of the line
       (if (or (null indent) (eq style 'simple))
           (setq indent 0))
@@ -789,7 +787,7 @@
 just finds all of them in a file.  You can then invoke another
 function to remove redundancies and inconsistencies."
 
-  (let (positions
+  (let ((positions ())
         (curline 1))
     ;; Iterate over all the section titles/decorations in the file.
     (save-excursion
@@ -870,7 +868,7 @@
 A point can be specified to go to the given location before
 extracting the decoration."
 
-  (let (char style indent)
+  (let (char style)
     (save-excursion
       (if point (goto-char point))
       (beginning-of-line)
@@ -879,10 +877,10 @@
                          (forward-line -1)
                          (rst-line-homogeneous-nodent-p)))
 
-                (under (save-excursion
-                         (forward-line +1)
-                         (rst-line-homogeneous-nodent-p)))
-                )
+                 (under (save-excursion
+                          (forward-line +1)
+                          (rst-line-homogeneous-nodent-p)))
+                 )
 
             ;; Check that the line above the overline is not part of a title
             ;; above it.
@@ -910,15 +908,11 @@
              ;; Both overline and underline.
              (t
               (setq char under
-                    style 'over-and-under))
-             )
-            )
-        )
-      ;; Find indentation.
-      (setq indent (save-excursion (back-to-indentation) (current-column)))
-      )
-    ;; Return values.
-    (list char style indent)))
+                    style 'over-and-under)))))
+      ;; Return values.
+      (list char style
+            ;; Find indentation.
+            (save-excursion (back-to-indentation) (current-column))))))
 
 
 (defun rst-get-decorations-around (&optional alldecos)
@@ -1041,7 +1035,7 @@
   (interactive)
 
   (let* (;; Save our original position on the current line.
-	 (origpt (set-marker (make-marker) (point)))
+	 (origpt (point-marker))
 
 	 ;; Parse the positive and negative prefix arguments.
          (reverse-direction
@@ -1395,32 +1389,28 @@
     ;; Create a list of markers for all the decorations which are found within
     ;; the region.
     (save-excursion
-      (let (m line)
+      (let (line)
         (while (and cur (< (setq line (caar cur)) region-end-line))
-          (setq m (make-marker))
           (goto-char (point-min))
           (forward-line (1- line))
-          (push (list (set-marker m (point)) (cdar cur)) marker-list)
+          (push (list (point-marker) (cdar cur)) marker-list)
           (setq cur (cdr cur)) ))
 
       ;; Apply modifications.
-      (let (nextdeco)
-        (dolist (p marker-list)
-          ;; Go to the decoration to promote.
-          (goto-char (car p))
-
-          ;; Rotate the next decoration.
-          (setq nextdeco (rst-get-next-decoration
-                          (cadr p) hier suggestion demote))
-
-          ;; Update the decoration.
-          (apply 'rst-update-section nextdeco)
-
-          ;; Clear marker to avoid slowing down the editing after we're done.
-          (set-marker (car p) nil)
-          ))
+      (dolist (p marker-list)
+        ;; Go to the decoration to promote.
+        (goto-char (car p))
+
+        ;; Update the decoration.
+        (apply 'rst-update-section
+               ;; Rotate the next decoration.
+               (rst-get-next-decoration
+                (cadr p) hier suggestion demote))
+
+        ;; Clear marker to avoid slowing down the editing after we're done.
+        (set-marker (car p) nil))
       (setq deactivate-mark nil)
-    )))
+      )))
 
 
 
@@ -1463,11 +1453,10 @@
 	   (levels-and-markers (mapcar
 				(lambda (deco)
 				  (cons (rst-position (cdr deco) hier)
-					(let ((m (make-marker)))
+					(progn
 					  (goto-char (point-min))
 					  (forward-line (1- (car deco)))
-					  (set-marker m (point))
-					  m)))
+                                          (point-marker))))
 				alldecos))
 	   )
       (dolist (lm levels-and-markers)
@@ -1511,7 +1500,7 @@
   "Find all the positions of prefixes in region between BEG and END.
 This is used to find bullets and enumerated list items.  PFX-RE
 is a regular expression for matching the lines with items."
-  (let (pfx)
+  (let ((pfx ()))
     (save-excursion
       (goto-char beg)
       (while (< (point) end)
@@ -1635,10 +1624,9 @@
                       (forward-line (1- (car deco)))
                       (list (gethash (cons (cadr deco) (caddr deco)) levels)
                             (rst-get-stripped-line)
-                            (let ((m (make-marker)))
+                            (progn
                               (beginning-of-line 1)
-                              (set-marker m (point)))
-                            ))
+                              (point-marker))))
                     alldecos)))
 
     (let ((lcontnr (cons nil lines)))
@@ -2057,11 +2045,11 @@
   "In `rst-toc' mode, go to the occurrence whose line you click on.
 EVENT is the input event."
   (interactive "e")
-  (let (pos)
+  (let ((pos
     (with-current-buffer (window-buffer (posn-window (event-end event)))
       (save-excursion
         (goto-char (posn-point (event-end event)))
-        (setq pos (rst-toc-mode-find-section))))
+             (rst-toc-mode-find-section)))))
     (pop-to-buffer (marker-buffer pos))
     (goto-char pos)
     (recenter 5)))
@@ -2306,8 +2294,8 @@
 
 (defun rst-shift-region-guts (find-next-fun offset-fun)
   "(See `rst-shift-region-right' for a description)."
-  (let* ((mbeg (set-marker (make-marker) (region-beginning)))
-	 (mend (set-marker (make-marker) (region-end)))
+  (let* ((mbeg (copy-marker (region-beginning)))
+	 (mend (copy-marker (region-end)))
 	 (tabs (rst-compute-bullet-tabs mbeg))
 	 (leftmostcol (rst-find-leftmost-column (region-beginning) (region-end)))
 	 )
@@ -2386,8 +2374,8 @@
 indentation is removed, up to the leftmost character in the
 region, and automatic filling is disabled."
   (interactive "P")
-  (let ((mbeg (set-marker (make-marker) (region-beginning)))
-	(mend (set-marker (make-marker) (region-end)))
+  (let ((mbeg (copy-marker (region-beginning)))
+	(mend (copy-marker (region-end)))
 	(leftmostcol (rst-find-leftmost-column
 		      (region-beginning) (region-end)))
 	(rst-shift-fill-region
@@ -2421,8 +2409,7 @@
 of each paragraph only."
   `(save-excursion
     (let ((leftcol (rst-find-leftmost-column ,beg ,end))
-	  (endm (set-marker (make-marker) ,end))
-	  )
+	  (endm (copy-marker ,end)))
 
       (do* (;; Iterate lines
 	    (l (progn (goto-char ,beg) (back-to-indentation))
@@ -2460,8 +2447,7 @@
 
   `(save-excursion
      (let ((,leftmost (rst-find-leftmost-column ,beg ,end))
-	   (endm (set-marker (make-marker) ,end))
-	   )
+	   (endm (copy-marker ,end)))
 
       (do* (;; Iterate lines
 	    (l (progn (goto-char ,beg) (back-to-indentation))
@@ -2538,9 +2524,7 @@
   (let* (;; Find items and convert the positions to markers.
 	 (items (mapcar
 		 (lambda (x)
-		   (cons (let ((m (make-marker)))
-			   (set-marker m (car x))
-			   m)
+		   (cons (copy-marker (car x))
 			 (cdr x)))
 		 (rst-find-pfx-in-region beg end rst-re-items)))
 	 (count 1)
--- a/lisp/url/ChangeLog	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/url/ChangeLog	Sat Nov 20 13:45:14 2010 +0200
@@ -1,3 +1,8 @@
+2010-11-16  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+	* url-file.el (url-file-build-filename): Avoid interpreting
+	file:/foo:/bar URLs via tramp.
+
 2010-10-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
 	* url-gw.el (url-open-stream): Use open-gnutls-stream if it exists.
--- a/lisp/url/url-file.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/url/url-file.el	Sat Nov 20 13:45:14 2010 +0200
@@ -103,12 +103,19 @@
 		     (format "%s#%d" host port))
 		 host))
 	 (file (url-unhex-string (url-filename url)))
-	 (filename (if (or user (not (url-file-host-is-local-p host)))
-		       (concat "/" (or user "anonymous") "@" site ":" file)
-		     (if (and (memq system-type '(ms-dos windows-nt))
-			      (string-match "^/[a-zA-Z]:/" file))
-			 (substring file 1)
-		       file)))
+	 (filename (cond
+		    ;; ftp: URL.
+		    ((or user (not (url-file-host-is-local-p host)))
+		     (concat "/" (or user "anonymous") "@" site ":" file))
+		    ;; file: URL on Windows.
+		    ((and (string-match "\\`/[a-zA-Z]:/" file)
+			  (memq system-type '(ms-dos windows-nt)))
+		     (substring file 1))
+		    ;; file: URL with a file:/bar:/foo-like spec.
+		    ((string-match "\\`/[^/]+:/" file)
+		     (concat "/:" file))
+		    (t
+		     file)))
 	 pos-index)
 
     (and user pass
--- a/lisp/vc/smerge-mode.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/vc/smerge-mode.el	Sat Nov 20 13:45:14 2010 +0200
@@ -1009,6 +1009,10 @@
   (setq part (cond ((null (match-end 2)) 2)
                    ((eq (match-end 1) (match-end 3)) 1)
                    ((integerp part) part)
+                   ;; If one of the parts is empty, any refinement using
+                   ;; it will be trivial and uninteresting.
+                   ((eq (match-end 1) (match-beginning 1)) 1)
+                   ((eq (match-end 3) (match-beginning 3)) 3)
                    (t 2)))
   (let ((n1 (if (eq part 1) 2 1))
         (n2 (if (eq part 3) 2 3)))
--- a/lisp/vc/vc-hg.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/vc/vc-hg.el	Sat Nov 20 13:45:14 2010 +0200
@@ -134,6 +134,10 @@
   :version "23.1"
   :group 'vc)
 
+(defcustom vc-hg-program "hg"
+  "Name of the Mercurial executable (excluding any arguments)."
+  :type 'string
+  :group 'vc)
 
 ;;; Properties of the backend
 
@@ -174,7 +178,7 @@
 			     (append (list "TERM=dumb" "LANGUAGE=C")
 				     process-environment)))
 			(process-file
-			 "hg" nil t nil
+			 vc-hg-program nil t nil
 			 "--config" "alias.status=status"
 			 "--config" "defaults.status="
 			 "status" "-A" (file-relative-name file)))
@@ -212,7 +216,7 @@
 		      (let ((process-environment avoid-local-env))
 			;; Ignore all errors.
 			(process-file
-			 "hg" nil t nil
+			 vc-hg-program nil t nil
 			 "--config" "alias.parents=parents"
 			 "--config" "defaults.parents="
 			 "parents" "--template" "{rev}" (file-relative-name file)))
@@ -227,7 +231,7 @@
 	    (condition-case nil
 		(let ((process-environment avoid-local-env))
 		  (process-file
-		   "hg" nil nil nil
+		   vc-hg-program nil nil nil
 		   ;; We use "log" here, if there's a faster command
 		   ;; that returns true for an 'added file and false
 		   ;; for an 'unregistered one, we could use that.
@@ -620,7 +624,7 @@
   "A wrapper around `vc-do-command' for use in vc-hg.el.
 The difference to vc-do-command is that this function always invokes `hg',
 and that it passes `vc-hg-global-switches' to it before FLAGS."
-  (apply 'vc-do-command (or buffer "*vc*") okstatus "hg" file-or-list
+  (apply 'vc-do-command (or buffer "*vc*") okstatus vc-hg-program file-or-list
          (if (stringp vc-hg-global-switches)
              (cons vc-hg-global-switches flags)
            (append vc-hg-global-switches
--- a/lisp/vc/vc.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/vc/vc.el	Sat Nov 20 13:45:14 2010 +0200
@@ -920,7 +920,8 @@
   (cond ((derived-mode-p 'vc-dir-mode)   vc-dir-backend)
 	((derived-mode-p 'log-view-mode) log-view-vc-backend)
 	((derived-mode-p 'diff-mode)     diff-vc-backend)
-	((derived-mode-p 'dired-mode)
+        ;; Maybe we could even use comint-mode rather than shell-mode?
+	((derived-mode-p 'dired-mode 'shell-mode 'compilation-mode)
 	 (vc-responsible-backend default-directory))
 	(vc-mode (vc-backend buffer-file-name))))
 
@@ -986,7 +987,7 @@
   (let ((backend (vc-responsible-backend default-directory)))
     (unless backend (error "Directory not under VC"))
     (list backend
-       (dired-map-over-marks (dired-get-filename nil t) nil))))
+          (dired-map-over-marks (dired-get-filename nil t) nil))))
 
 (defun vc-ensure-vc-buffer ()
   "Make sure that the current buffer visits a version-controlled file."
--- a/lisp/wid-edit.el	Sat Nov 20 13:24:28 2010 +0200
+++ b/lisp/wid-edit.el	Sat Nov 20 13:45:14 2010 +0200
@@ -316,9 +316,8 @@
 
 (defvar widget-field-use-before-change t
   "Non-nil means use `before-change-functions' to track editable fields.
-This enables the use of undo, but doesn't work on Emacs 19.34 and earlier.
-Using before hooks also means that the :notify function can't know the
-new value.")
+This enables the use of undo.  Using before hooks also means that
+the :notify function can't know the new value.")
 
 (defun widget-specify-field (widget from to)
   "Specify editable button for WIDGET between FROM and TO."
@@ -1053,7 +1052,7 @@
 
 (defvar widget-use-overlay-change t
   "If non-nil, use overlay change functions to tab around in the buffer.
-This is much faster, but doesn't work reliably on Emacs 19.34.")
+This is much faster.")
 
 (defun widget-move (arg)
   "Move point to the ARG next field or button.
@@ -3782,5 +3781,4 @@
 
 (provide 'wid-edit)
 
-;; arch-tag: a076e75e-18a1-4b46-8be5-3f317bcbc707
 ;;; wid-edit.el ends here
--- a/nt/INSTALL	Sat Nov 20 13:24:28 2010 +0200
+++ b/nt/INSTALL	Sat Nov 20 13:45:14 2010 +0200
@@ -105,9 +105,9 @@
   since v1.3.3, include the MinGW headers and libraries as an integral
   part).
 
-  Note that building Emacs with Visual Studio 2005 (VC++ 8.0) is not
-  supported at this time, due to changes introduced by Microsoft into
-  the libraries shipped with the compiler.
+  Note that building Emacs with Visual Studio 2005 (VC++ 8.0) and
+  later is not supported at this time, due to changes introduced by
+  Microsoft into the libraries shipped with the compiler.
 
   The rest of this file assumes you have a working development
   environment.  If you just installed  such an environment, try
--- a/src/.gdbinit	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/.gdbinit	Sat Nov 20 13:45:14 2010 +0200
@@ -494,14 +494,30 @@
   end
   # COMPOSITE_GLYPH
   if ($g->type == 1)
-    printf "COMP[%d (%d..%d)]", $g->u.cmp.id, $g->u.cmp.from, $g->u.cmp.to
+    printf "COMP[%d (%d..%d)]", $g->u.cmp.id, $g->slice.cmp.from, $g->slice.cmp.to
+  end
+  # GLYPHLESS_GLYPH
+  if ($g->type == 2)
+    printf "GLYPHLESS["
+    if ($g->u.glyphless.method == 0)
+      printf "THIN]"
+    end
+    if ($g->u.glyphless.method == 1)
+      printf "EMPTY]"
+    end
+    if ($g->u.glyphless.method == 2)
+      printf "ACRO]"
+    end
+    if ($g->u.glyphless.method == 3)
+      printf "HEX]"
+    end
   end
   # IMAGE_GLYPH
-  if ($g->type == 2)
+  if ($g->type == 3)
     printf "IMAGE[%d]", $g->u.img_id
   end
   # STRETCH_GLYPH
-  if ($g->type == 3)
+  if ($g->type == 4)
     printf "STRETCH[%d+%d]", $g->u.stretch.height, $g->u.stretch.ascent
   end
   xgettype ($g->object)
@@ -544,8 +560,8 @@
   if ($g->right_box_line_p)
     printf " ]"
   end
-  if ($g->slice.x || $g->slice.y || $g->slice.width || $g->slice.height)
-    printf " slice=%d,%d,%d,%d" ,$g->slice.x, $g->slice.y, $g->slice.width, $g->slice.height
+  if ($g->slice.img.x || $g->slice.img.y || $g->slice.img.width || $g->slice.img.height)
+    printf " slice=%d,%d,%d,%d" ,$g->slice.img.x, $g->slice.img.y, $g->slice.img.width, $g->slice.img.height
   end
   printf "\n"
 end
--- a/src/ChangeLog	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/ChangeLog	Sat Nov 20 13:45:14 2010 +0200
@@ -3,6 +3,271 @@
 	* msdos.c (dos_rawgetc): Use gen_help_event, instead of doing the
 	same in-line.
 
+2010-11-20  Andreas Schwab  <schwab@linux-m68k.org>
+
+	* xfaces.c (lookup_face): Make static.
+	* dispnew.c (copy_row_except_pointers): Likewise.
+	* syntax.c (dec_bytepos): Likewise.
+	(inc_bytepos): Remove.
+	* dispextern.h (lookup_face): Remove declaration.
+
+2010-11-19  Eli Zaretskii  <eliz@gnu.org>
+
+	* xdisp.c (set_cursor_from_row): Display cursor after all the
+	glyphs that come from an overlay.  Don't overstep the last glyph
+	when skipping glyphs from an overlay.  (Bug#6687)
+
+2010-11-18  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* alloc.c (refill_memory_reserve): Move declaration ...
+	* lisp.h (refill_memory_reserve): ... here.
+
+	* strftime.c (_strftime_copytm): Add declaration.
+
+	* callproc.c (syms_of_callproc): Use intern_c_string.
+
+	Move declarations from .c files to .h files.
+	* process.c (timers_run):
+	* minibuf.c (quit_char):
+	* lread.c (read_emacs_mule_char):
+	* keyboard.c (minibuf_level, message_enable_multibyte)
+	(pending_malloc_warning):
+	* insdel.c (Vselect_active_regions, Vsaved_region_selection)
+	(Qonly): Remove declarations.
+	* lisp.h (pending_malloc_warning, Vsaved_region_selection)
+	(Vselect_active_regions):
+	* keyboard.h (timers_run):  Add declarations.
+
+	* strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r)
+	(tm_diff): Convert definitions to standard C.
+	(extra_args_spec_iso): Remove, unused.
+
+2010-11-18  Jan Djärv  <jan.h.d@swipnet.se>
+
+	* xsettings.c (init_gconf): Check HAVE_G_TYPE_INIT.
+
+	* config.in (HAVE_G_TYPE_INIT): New symbol.
+
+2010-11-18  Eli Zaretskii  <eliz@gnu.org>
+
+	* lread.c (Fload): Mention `load-in-progress' and
+	`load-file-name'.  (Bug#7346)
+
+	* keyboard.c (kbd_buffer_nr_stored): Define only ifdef subprocesses.
+	(kbd_buffer_store_event_hold, kbd_buffer_get_event)
+	(tty_read_avail_input): Call kbd_buffer_nr_stored only ifdef
+	subprocesses.  Use buffer_free only ifdef subprocesses.
+
+	* process.c (init_process) [subprocesses]: Init kbd_is_on_hold in
+	the subprocesses version, not in the non-subprocesses one.
+
+	* Makefile.in: Don't use ## comment, it breaks the MSDOS build.
+
+2010-11-17  Eli Zaretskii  <eliz@gnu.org>
+
+	* xdisp.c (set_cursor_from_row): Fix cursor positioning in empty
+	lines on text-mode terminals.  (bug#7417)
+
+2010-11-17  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* xterm.c (get_current_wm_state): Rename from get_current_vm_state.
+	(do_ewmh_fullscreen, x_handle_net_wm_state): Update callers.
+
+2010-11-17  Kenichi Handa  <handa@m17n.org>
+
+	* coding.c (Fset_terminal_coding_system_internal): Fix previous
+	change (set charset-ID list instead of charset-symbol list).
+
+2010-11-16  Chong Yidong  <cyd@stupidchicken.com>
+
+	* keyboard.c (make_lispy_position): For text area clicks, record Y
+	pixel position relative to the text area, excluding header line.
+	Also change X and Y to Lisp_Objects, not pointers; don't return
+	coordinate values via pointers.  Pass ON_TEXT_AREA coordinate to
+	buffer_posn_from_coords counting from the start of the text area.
+	(Fposn_at_x_y, make_lispy_event): Callers changed.
+
+	* window.c (coordinates_in_window): Change X and Y to ints rather
+	than pointers; don't return coordinates via pointers.
+	(struct check_window_data): Change X and Y from pointers to ints.
+	(window_from_coordinates): Remove args WX and WY; don't return
+	coordinates via pointers.
+	(Fcoordinates_in_window_p, window_from_coordinates):
+	(check_window_containing, Fwindow_at): Callers changed.
+	(window_relative_x_coord): New function.
+
+	* window.h (window_from_coordinates, window_relative_x_coord):
+	Update prototypes.
+
+	* dispnew.c (buffer_posn_from_coords): Assume that X counts from
+	the start of the text area.
+
+	* xdisp.c (remember_mouse_glyph): Change window_from_coordinates
+	call.  Use window_relative_x_coord.
+	(note_mouse_highlight): Change window_from_coordinates call.
+
+	* w32term.c (w32_read_socket):
+	* msdos.c (dos_rawgetc):
+	* xterm.c (handle_one_xevent): Likewise.
+
+2010-11-16  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* strftime.c (LOCALE_PARAM_DECL): Update for standard C.
+	(LOCALE_PARAM, LOCALE_PARAM_PROTO): Remove, unused.
+	(memcpy_lowcase, so_week_days, extra_args_spec, emacs_strftimeu):
+	Convert definitions to standard C.
+	* regex.c: Do not include <stdlib.h>, config.h does it.
+	Include unistd.h.
+	(xrealloc, init_syntax_once, re_match, regcomp, regexec)
+	(regerror, regfree): Convert definitions to standard C.
+	* mktime.c (my_mktime_localtime_r, ydhms_tm_diff, ranged_convert)
+	(__mktime_internal): Convert definitions to standard C.
+
+2010-11-15  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* w32proc.c:
+	* w32inevt.c:
+	* w32heap.c:
+	* w32.c: Remove config.h include guards.
+
+	* callproc.c (child_setup): Reorder code to simplify #ifdefs.
+	No code changes.
+
+	* process.c: Include <sys/ioctl.h> unconditionally,
+	keyboard.c already does it.
+
+	* keyboard.c (pending_malloc_warning): Add const to match
+	definition in alloc.c.
+	(Fset_input_interrupt_mode): Simplify #ifdefs.
+
+2010-11-15  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	Clean up systty.h macros.
+	* systty.h (EMACS_GET_TTY_PGRP, EMACS_SET_TTY_PGRP, EMACS_GET_TTY)
+	(EMACS_SET_TTY): Remove unneeded abstraction, instead inline the
+	definition in all uses.
+	(EMACS_TTY_TABS_OK): Remove, it has a single user.
+	* sysdep.c (discard_tty_input, child_setup_tty)
+	(init_sys_modes, tabs_safe_p, reset_sys_modes):
+	* emacs.c (shut_down_emacs):
+	* callproc.c (child_setup):
+	* term.c (dissociate_if_controlling_tty): Inline removed macros.
+
+	* data.c (sign_extend_temp, sign_extend_lisp_int): Remove, unused.
+
+2010-11-14  Chong Yidong  <cyd@stupidchicken.com>
+
+	* w32fns.c (Fx_create_frame):
+	* nsfns.m (Fx_create_frame): Don't check for the cursorColor
+	resource here; it's now done at startup.
+
+2010-11-14  Jan Djärv  <jan.h.d@swipnet.se>
+
+	* xterm.c (set_wm_state): Add Qnil to final cons.
+
+	* xselect.c (x_send_client_event): Remove unused variables cons and
+	size.
+
+2010-11-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+	* keyboard.c (modify_event_symbol) : Add const to array elements of
+	arg NAME_TABLE.
+	(lispy_accent_keys, lispy_function_keys, lispy_multimedia_keys)
+	(lispy_kana_keys, iso_lispy_function_keys, lispy_wheel_names)
+	(lispy_wheel_names, lispy_drag_n_drop_names, modifier_names):
+	Add const to array elements.
+	(scroll_bar_parts): Make static.  Fix position of const.
+
+	* w32fns.c (lispy_function_keys): Add const to extern.
+
+	* w32inevt.c (lispy_function_keys): Likewise.
+
+2010-11-14  Chong Yidong  <cyd@stupidchicken.com>
+
+	* xfns.c (Fx_create_frame): Don't check for the cursorColor
+	resource here; it's now done at startup.
+
+2010-11-13  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* xmenu.c: Make it clear that ../lwlib/lwlib.h is only needed for Motif.
+
+	Fix compilation on Solaris.
+	* sysdep.c: Do not #include <term.h>.
+	(tputs): Add declaration, similar to what cm.c does.  (Bug#7178)
+
+	* s/ms-w32.h (HAVE_TERMIOS_H): Do not undef, not used anymore.
+
+2010-11-13  Jan Djärv  <jan.h.d@swipnet.se>
+
+	* xterm.c (set_wm_state): Don't put Atom in cons, call
+	make_fixnum_or_float on them first.
+	(x_term_init): Initialize Xatom_net_supporting_wm_check and
+	Xatom_net_supported correctly.
+
+	* xselect.c (x_send_client_event): Move CHECK_STRING ...
+	(Fx_send_client_event): to here.
+
+2010-11-13  Martin Rudalics  <rudalics@gmx.at>
+
+	* window.c (Fwindow_use_time): New function.
+
+2010-11-13  Eli Zaretskii  <eliz@gnu.org>
+
+	* xdisp.c (set_cursor_from_row): Fix cursor positioning on
+	zero-width characters.
+
+	* .gdbinit (pgx): Adapt to latest changes in `struct glyph'.
+
+	* w32term.c (x_draw_glyphless_glyph_string_foreground): Draw the
+	box before drawing the glyphs inside it.
+
+	* xdisp.c (syms_of_xdisp) <glyphless-char-display>: Doc fix.
+
+	* dispextern.h (enum glyphless_display_method): Rename
+	GLYPHLESS_DISPLAY_HEXA_CODE to GLYPHLESS_DISPLAY_HEX_CODE.  All
+	users changed.
+
+	* term.c (append_glyphless_glyph, produce_glyphless_glyph): Fix
+	comments.
+	(produce_glyphless_glyph): Enclose "U+nnnn" and "empty box"
+	whitespace in "[]", to simulate a box.  Don't use uninitialized
+	variable `width'.
+
+2010-11-11  Julien Danjou  <julien@danjou.info>
+
+	* xsettings.c (init_xsettings): Use already fetch atoms.
+
+	* xsmfns.c (create_client_leader_window): Use SM_CLIENT_ID atom
+	from dpyinfo.
+
+	* xselect.c (Fx_send_client_event): Split and create
+	x_send_client_event.
+
+	* lisp.h: Do not EXFUN Fx_send_client_event.
+
+	* xterm.c (x_set_frame_alpha): Use _NET_WM_WINDOW_OPACITY atom
+	from dpyinfo.
+	(wm_supports): Use atoms from dpyinfo.
+	(do_ewmh_fullscreen): Use atoms from dpyinfo.
+	(x_ewmh_activate_frame): Use atoms from dpyinfo.
+	(xembed_set_info): Use atoms from dpyinfo.
+	(x_term_init): Fetch _XEMBED_INFO, _NET_SUPPORTED,
+	_NET_SUPPORTING_WM_CHECK, _NET_WM_WINDOW_OPACITY and
+	_NET_ACTIVE_WINDOW, XSETTINGS  atoms.
+	Get all atoms in one round-trip.
+	(set_wm_state): Use x_send_client_event rather than
+	Fx_send_client_event, using Atom directly.
+	(x_ewmh_activate_frame): Ditto.
+	(x_set_sticky): Pass atoms to set_wm_state.
+	(do_ewmh_fullscreen): Ditto.
+
+
+	* xterm.h (x_display_info): Add Xatom_net_supported,
+	Xatom_net_supporting_wm_check, Xatom_net_active_window,
+	Xatom_net_wm_window_opacity, Xatom_XEMBED_INFO, SM_CLIENT_ID.
+
+	* xfns.c (Fx_show_tip): Fix typo in docstring.
+
 2010-11-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 
 	* cmds.c (Fself_insert_command): Don't call XFASTINT without checking
@@ -58,8 +323,8 @@
 
 	* xfns.c (set_machine_and_pid_properties): Let X set WM_CLIENT_MACHINE.
 
-	* xdisp.c (note_mode_line_or_margin_highlight): Initialize
-	Cursor to No_Cursor for HAVE_WINDOW_SYSTEM also.
+	* xdisp.c (note_mode_line_or_margin_highlight):
+	Initialize Cursor to No_Cursor for HAVE_WINDOW_SYSTEM also.
 
 2010-11-06  Eli Zaretskii  <eliz@gnu.org>
 
--- a/src/alloc.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/alloc.c	Sat Nov 20 13:45:14 2010 +0200
@@ -351,7 +351,6 @@
 
 static POINTER_TYPE *lisp_align_malloc (size_t, enum mem_type);
 static POINTER_TYPE *lisp_malloc (size_t, enum mem_type);
-void refill_memory_reserve (void);
 
 
 #if GC_MARK_STACK || defined GC_MALLOC_CHECK
--- a/src/callproc.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/callproc.c	Sat Nov 20 13:45:14 2010 +0200
@@ -1154,6 +1154,14 @@
 #ifdef WINDOWSNT
   prepare_standard_handles (in, out, err, handles);
   set_process_dir (SDATA (current_dir));
+  /* Spawn the child.  (See ntproc.c:Spawnve).  */
+  cpid = spawnve (_P_NOWAIT, new_argv[0], new_argv, env);
+  reset_standard_handles (in, out, err, handles);
+  if (cpid == -1)
+    /* An error occurred while trying to spawn the process.  */
+    report_file_error ("Spawning child process", Qnil);
+  return cpid;
+
 #else  /* not WINDOWSNT */
   /* Make sure that in, out, and err are not actually already in
      descriptors zero, one, or two; this could happen if Emacs is
@@ -1192,36 +1200,17 @@
     emacs_close (out);
   if (err != in && err != out)
     emacs_close (err);
-#endif /* not MSDOS */
-#endif /* not WINDOWSNT */
 
 #if defined(USG)
 #ifndef SETPGRP_RELEASES_CTTY
   setpgrp ();			/* No arguments but equivalent in this case */
 #endif
-#else
+#else /* not USG */
   setpgrp (pid, pid);
-#endif /* USG */
+#endif /* not USG */
 
-#ifdef MSDOS
-  pid = run_msdos_command (new_argv, pwd_var + 4, in, out, err, env);
-  xfree (pwd_var);
-  if (pid == -1)
-    /* An error occurred while trying to run the subprocess.  */
-    report_file_error ("Spawning child process", Qnil);
-  return pid;
-#else  /* not MSDOS */
-#ifdef WINDOWSNT
-  /* Spawn the child.  (See ntproc.c:Spawnve).  */
-  cpid = spawnve (_P_NOWAIT, new_argv[0], new_argv, env);
-  reset_standard_handles (in, out, err, handles);
-  if (cpid == -1)
-    /* An error occurred while trying to spawn the process.  */
-    report_file_error ("Spawning child process", Qnil);
-  return cpid;
-#else /* not WINDOWSNT */
   /* setpgrp_of_tty is incorrect here; it uses input_fd.  */
-  EMACS_SET_TTY_PGRP (0, &pid);
+  tcsetpgrp (0, pid);
 
   /* execvp does not accept an environment arg so the only way
      to pass this environment is to set environ.  Our caller
@@ -1233,8 +1222,16 @@
   emacs_write (1, new_argv[0], strlen (new_argv[0]));
   emacs_write (1, "\n", 1);
   _exit (1);
-#endif /* not WINDOWSNT */
-#endif /* not MSDOS */
+
+#else /* MSDOS */
+  pid = run_msdos_command (new_argv, pwd_var + 4, in, out, err, env);
+  xfree (pwd_var);
+  if (pid == -1)
+    /* An error occurred while trying to run the subprocess.  */
+    report_file_error ("Spawning child process", Qnil);
+  return pid;
+#endif  /* MSDOS */
+#endif  /* not WINDOWSNT */
 }
 
 #ifndef WINDOWSNT
@@ -1519,7 +1516,7 @@
 syms_of_callproc (void)
 {
 #ifdef DOS_NT
-  Qbuffer_file_type = intern ("buffer-file-type");
+  Qbuffer_file_type = intern_c_string ("buffer-file-type");
   staticpro (&Qbuffer_file_type);
 #endif /* DOS_NT */
 
@@ -1609,5 +1606,3 @@
   defsubr (&Scall_process_region);
 }
 
-/* arch-tag: 769b8045-1df7-4d2b-8968-e3fb49017f95
-   (do not change this comment) */
--- a/src/coding.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/coding.c	Sat Nov 20 13:45:14 2010 +0200
@@ -9310,7 +9310,7 @@
   if (terminal_coding->common_flags & CODING_REQUIRE_ENCODING_MASK)
     term->charset_list = coding_charset_list (terminal_coding);
   else
-    term->charset_list = Fcons (Qascii, Qnil);
+    term->charset_list = Fcons (make_number (charset_ascii), Qnil);
   return Qnil;
 }
 
--- a/src/config.in	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/config.in	Sat Nov 20 13:45:14 2010 +0200
@@ -294,6 +294,9 @@
 /* Define to 1 if you have the `gtk_widget_set_has_window' function. */
 #undef HAVE_GTK_WIDGET_SET_HAS_WINDOW
 
+/* Define to 1 if you have the `g_type_init' function. */
+#undef HAVE_G_TYPE_INIT
+
 /* Define to 1 if netdb.h declares h_errno. */
 #undef HAVE_H_ERRNO
 
@@ -687,9 +690,6 @@
 /* Define to 1 if you have the <sys/systeminfo.h> header file. */
 #undef HAVE_SYS_SYSTEMINFO_H
 
-/* Define to 1 if you have the <sys/timeb.h> header file. */
-#undef HAVE_SYS_TIMEB_H
-
 /* Define to 1 if you have the <sys/time.h> header file. */
 #undef HAVE_SYS_TIME_H
 
@@ -711,9 +711,6 @@
 /* Define to 1 if you have the <sys/_mbstate_t.h> header file. */
 #undef HAVE_SYS__MBSTATE_T_H
 
-/* Define to 1 if you have the <termios.h> header file. */
-#undef HAVE_TERMIOS_H
-
 /* Define to 1 if you have the <term.h> header file. */
 #undef HAVE_TERM_H
 
--- a/src/data.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/data.c	Sat Nov 20 13:45:14 2010 +0200
@@ -135,21 +135,6 @@
   xsignal3 (Qargs_out_of_range, a1, a2, a3);
 }
 
-/* On some machines, XINT needs a temporary location.
-   Here it is, in case it is needed.  */
-
-int sign_extend_temp;
-
-/* On a few machines, XINT can only be done by calling this.  */
-
-int
-sign_extend_lisp_int (EMACS_INT num)
-{
-  if (num & (((EMACS_INT) 1) << (VALBITS - 1)))
-    return num | (((EMACS_INT) (-1)) << VALBITS);
-  else
-    return num & ((((EMACS_INT) 1) << VALBITS) - 1);
-}
 
 /* Data type predicates */
 
--- a/src/dispextern.h	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/dispextern.h	Sat Nov 20 13:45:14 2010 +0200
@@ -371,12 +371,11 @@
      displaying.  The member `pixel_width' above is set to 1.  */
   unsigned padding_p : 1;
 
-  /* 1 means the actual glyph is not available, draw a box instead.
-     This can happen when a font couldn't be loaded, or a character
-     doesn't have a glyph in a font.  */
+  /* 1 means the actual glyph is not available, draw using `struct
+     glyphless' below instead.  This can happen when a font couldn't
+     be loaded, or a character doesn't have a glyph in a font.  */
   unsigned glyph_not_available_p : 1;
 
- 
   /* Non-zero means don't display cursor here.  */
   unsigned avoid_cursor_p : 1;
 
@@ -1997,14 +1996,15 @@
 
 enum glyphless_display_method
   {
-    /* Display a thin (1-pixel width) space.  */
+    /* Display a thin (1-pixel width) space.  On a TTY, display a
+       1-character width space.  */
     GLYPHLESS_DISPLAY_THIN_SPACE,
     /* Display an empty box of proper width.  */
     GLYPHLESS_DISPLAY_EMPTY_BOX,
     /* Display an acronym string in a box.  */
     GLYPHLESS_DISPLAY_ACRONYM,
-    /* Display a hexadecimal character code in a box.  */
-    GLYPHLESS_DISPLAY_HEXA_CODE
+    /* Display the hexadecimal code of the character in a box.  */
+    GLYPHLESS_DISPLAY_HEX_CODE
   };
 
 struct it_slice
@@ -3175,7 +3175,6 @@
 int ascii_face_of_lisp_face (struct frame *, int);
 void prepare_face_for_display (struct frame *, struct face *);
 int xstrcasecmp (const unsigned char *, const unsigned char *);
-int lookup_face (struct frame *, Lisp_Object *);
 int lookup_named_face (struct frame *, Lisp_Object, int);
 int lookup_basic_face (struct frame *, int);
 int smaller_face (struct frame *, int, int);
--- a/src/dispnew.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/dispnew.c	Sat Nov 20 13:45:14 2010 +0200
@@ -1180,7 +1180,7 @@
 /* Copy glyph row structure FROM to glyph row structure TO, except
    that glyph pointers in the structures are left unchanged.  */
 
-INLINE void
+static INLINE void
 copy_row_except_pointers (struct glyph_row *to, struct glyph_row *from)
 {
   struct glyph *pointers[1 + LAST_AREA];
@@ -5393,7 +5393,7 @@
   BYTEPOS (startp) = min (ZV_BYTE, max (BEGV_BYTE, BYTEPOS (startp)));
   start_display (&it, w, startp);
 
-  x0 = *x - WINDOW_LEFT_MARGIN_WIDTH (w);
+  x0 = *x;
 
   /* First, move to the beginning of the row corresponding to *Y.  We
      need to be in that row to get the correct value of base paragraph
--- a/src/emacs.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/emacs.c	Sat Nov 20 13:45:14 2010 +0200
@@ -2053,10 +2053,8 @@
 #ifndef DOS_NT
   {
     int pgrp = EMACS_GETPGRP (0);
-
-    int tpgrp;
-    if (EMACS_GET_TTY_PGRP (0, &tpgrp) != -1
-	&& tpgrp == pgrp)
+    int tpgrp = tcgetpgrp (0);
+    if ((tpgrp != -1) && tpgrp == pgrp)
       {
 	reset_all_sys_modes ();
 	if (sig && sig != SIGTERM)
--- a/src/insdel.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/insdel.c	Sat Nov 20 13:45:14 2010 +0200
@@ -73,9 +73,6 @@
 Lisp_Object combine_after_change_buffer;
 
 Lisp_Object Qinhibit_modification_hooks;
-
-extern Lisp_Object Vselect_active_regions, Vsaved_region_selection, Qonly;
-
 
 /* Check all markers in the current buffer, looking for something invalid.  */
 
@@ -2395,5 +2392,3 @@
   defsubr (&Scombine_after_change_execute);
 }
 
-/* arch-tag: 9b34b886-47d7-465e-a234-299af411b23d
-   (do not change this comment) */
--- a/src/keyboard.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/keyboard.c	Sat Nov 20 13:45:14 2010 +0200
@@ -144,10 +144,6 @@
 static int before_command_key_count;
 static int before_command_echo_length;
 
-extern int minbuf_level;
-
-extern int message_enable_multibyte;
-
 /* If non-nil, the function that implements the display of help.
    It's called with one argument, the help string to display.  */
 
@@ -431,8 +427,6 @@
 /* Nonzero if input is available.  */
 int input_pending;
 
-extern char *pending_malloc_warning;
-
 /* Circular buffer for pre-read keyboard input.  */
 
 static struct input_event kbd_buffer[KBD_BUFFER_SIZE];
@@ -620,7 +614,7 @@
                                         unsigned long);
 #endif
 static Lisp_Object modify_event_symbol (EMACS_INT, unsigned, Lisp_Object,
-                                        Lisp_Object, const char **,
+                                        Lisp_Object, const char *const *,
                                         Lisp_Object *, unsigned);
 static Lisp_Object make_lispy_switch_frame (Lisp_Object);
 static void save_getcjmp (jmp_buf);
@@ -3601,6 +3595,7 @@
     return FRAME_KBOARD (XFRAME (frame));
 }
 
+#ifdef subprocesses
 /* Return the number of slots occupied in kbd_buffer.  */
 
 static int
@@ -3613,6 +3608,7 @@
        : ((kbd_buffer + KBD_BUFFER_SIZE) - kbd_fetch_ptr
           + (kbd_store_ptr - kbd_buffer)));
 }
+#endif	/* subprocesses */
 
 Lisp_Object Vthrow_on_input;
 
@@ -3734,6 +3730,7 @@
     {
       *kbd_store_ptr = *event;
       ++kbd_store_ptr;
+#ifdef subprocesses
       if (kbd_buffer_nr_stored () > KBD_BUFFER_SIZE/2 && ! kbd_on_hold_p ())
         {
           /* Don't read keyboard input until we have processed kbd_buffer.
@@ -3745,6 +3742,7 @@
 #endif
           stop_polling ();
         }
+#endif	/* subprocesses */
     }
 
   /* If we're inside while-no-input, and this event qualifies
@@ -3905,6 +3903,7 @@
   register int c;
   Lisp_Object obj;
 
+#ifdef subprocesses
   if (kbd_on_hold_p () && kbd_buffer_nr_stored () < KBD_BUFFER_SIZE/4)
     {
       /* Start reading input again, we have processed enough so we can
@@ -3916,6 +3915,7 @@
 #endif /* SIGIO */
       start_polling ();
     }
+#endif	/* subprocesses */
 
   if (noninteractive
       /* In case we are running as a daemon, only do this before
@@ -4752,7 +4752,7 @@
 /* This is a list of Lisp names for special "accent" characters.
    It parallels lispy_accent_codes.  */
 
-static const char *lispy_accent_keys[] =
+static const char *const lispy_accent_keys[] =
 {
   "dead-circumflex",
   "dead-grave",
@@ -4779,7 +4779,7 @@
 #ifdef HAVE_NTGUI
 #define FUNCTION_KEY_OFFSET 0x0
 
-char const *lispy_function_keys[] =
+const char *const lispy_function_keys[] =
   {
     0,                /* 0                      */
 
@@ -4973,7 +4973,7 @@
 
 /* Some of these duplicate the "Media keys" on newer keyboards,
    but they are delivered to the application in a different way.  */
-static const char *lispy_multimedia_keys[] =
+static const char *const lispy_multimedia_keys[] =
   {
     0,
     "browser-back",
@@ -5037,7 +5037,7 @@
    the XK_kana_A case below.  */
 #if 0
 #ifdef XK_kana_A
-static const char *lispy_kana_keys[] =
+static const char *const lispy_kana_keys[] =
   {
     /* X Keysym value */
     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,	/* 0x400 .. 0x40f */
@@ -5076,7 +5076,7 @@
 
 /* You'll notice that this table is arranged to be conveniently
    indexed by X Windows keysym values.  */
-static const char *lispy_function_keys[] =
+static const char *const lispy_function_keys[] =
   {
     /* X Keysym value */
 
@@ -5162,7 +5162,7 @@
 /* ISO 9995 Function and Modifier Keys; the first byte is 0xFE.  */
 #define ISO_FUNCTION_KEY_OFFSET 0xfe00
 
-static const char *iso_lispy_function_keys[] =
+static const char *const iso_lispy_function_keys[] =
   {
     0, 0, 0, 0, 0, 0, 0, 0,	/* 0xfe00 */
     0, 0, 0, 0, 0, 0, 0, 0,	/* 0xfe08 */
@@ -5185,14 +5185,14 @@
 
 Lisp_Object Vlispy_mouse_stem;
 
-static const char *lispy_wheel_names[] =
+static const char *const lispy_wheel_names[] =
 {
   "wheel-up", "wheel-down", "wheel-left", "wheel-right"
 };
 
 /* drag-n-drop events are generated when a set of selected files are
    dragged from another application and dropped onto an Emacs window.  */
-static const char *lispy_drag_n_drop_names[] =
+static const char *const lispy_drag_n_drop_names[] =
 {
   "drag-n-drop"
 };
@@ -5203,7 +5203,7 @@
 Lisp_Object Qtop, Qratio;
 
 /* An array of scroll bar parts, indexed by an enum scroll_bar_part value.  */
-const Lisp_Object *scroll_bar_parts[] = {
+static Lisp_Object *const scroll_bar_parts[] = {
   &Qabove_handle, &Qhandle, &Qbelow_handle,
   &Qup, &Qdown, &Qtop, &Qbottom, &Qend_scroll, &Qratio
 };
@@ -5243,24 +5243,22 @@
 
 int double_click_count;
 
-/* Return position of a mouse click or wheel event */
+/* X and Y are frame-relative coordinates for a click or wheel event.
+   Return a Lisp-style event list.  */
 
 static Lisp_Object
-make_lispy_position (struct frame *f, Lisp_Object *x, Lisp_Object *y,
+make_lispy_position (struct frame *f, Lisp_Object x, Lisp_Object y,
 		     unsigned long time)
 {
-  Lisp_Object window;
   enum window_part part;
   Lisp_Object posn = Qnil;
   Lisp_Object extra_info = Qnil;
-  int wx, wy;
-
-  /* Set `window' to the window under frame pixel coordinates (x,y)  */
-  if (f)
-    window = window_from_coordinates (f, XINT (*x), XINT (*y),
-				      &part, &wx, &wy, 0);
-  else
-    window = Qnil;
+  /* Coordinate pixel positions to return.  */
+  int xret = 0, yret = 0;
+  /* The window under frame pixel coordinates (x,y)  */
+  Lisp_Object window = f
+    ? window_from_coordinates (f, XINT (x), XINT (y), &part, 0)
+    : Qnil;
 
   if (WINDOWP (window))
     {
@@ -5268,102 +5266,113 @@
       struct window *w = XWINDOW (window);
       Lisp_Object string_info = Qnil;
       EMACS_INT textpos = -1;
-      int rx = -1, ry = -1;
-      int dx = -1, dy = -1;
+      int col = -1, row = -1;
+      int dx  = -1, dy  = -1;
       int width = -1, height = -1;
       Lisp_Object object = Qnil;
 
-      /* Set event coordinates to window-relative coordinates
-	 for constructing the Lisp event below.  */
-      XSETINT (*x, wx);
-      XSETINT (*y, wy);
-
+      /* Pixel coordinates relative to the window corner.  */
+      int wx = XINT (x) - WINDOW_LEFT_EDGE_X (w);
+      int wy = XINT (y) - WINDOW_TOP_EDGE_Y (w);
+
+      /* For text area clicks, return X, Y relative to the corner of
+	 this text area.  Note that dX, dY etc are set below, by
+	 buffer_posn_from_coords.  */
       if (part == ON_TEXT)
 	{
-	  wx += WINDOW_LEFT_MARGIN_WIDTH (w);
-	}
+	  xret = XINT (x) - window_box_left (w, TEXT_AREA);
+	  yret = wy - WINDOW_HEADER_LINE_HEIGHT (w);
+	}
+      /* For mode line and header line clicks, return X relative to
+	 the left window edge; ignore Y.  Use mode_line_string to look
+	 for a string on the click position.  */
       else if (part == ON_MODE_LINE || part == ON_HEADER_LINE)
 	{
-	  /* Mode line or header line.  Look for a string under
-	     the mouse that may have a `local-map' property.  */
 	  Lisp_Object string;
 	  EMACS_INT charpos;
 
-	  posn = part == ON_MODE_LINE ? Qmode_line : Qheader_line;
-	  rx = wx, ry = wy;
-	  string = mode_line_string (w, part, &rx, &ry, &charpos,
+	  posn = (part == ON_MODE_LINE) ? Qmode_line : Qheader_line;
+	  /* Note that mode_line_string takes COL, ROW as pixels and
+	     converts them to characters.  */
+	  col = wx;
+	  row = wy;
+	  string = mode_line_string (w, part, &col, &row, &charpos,
 				     &object, &dx, &dy, &width, &height);
 	  if (STRINGP (string))
 	    string_info = Fcons (string, make_number (charpos));
-	  if (w == XWINDOW (selected_window)
-	      && current_buffer == XBUFFER (w->buffer))
-	    textpos = PT;
-	  else
-	    textpos = XMARKER (w->pointm)->charpos;
-	}
-      else if (part == ON_VERTICAL_BORDER)
-	{
-	  posn = Qvertical_line;
-	  wx = -1;
-	  dx = 0;
-	  width = 1;
-	}
+	  textpos = (w == XWINDOW (selected_window)
+		     && current_buffer == XBUFFER (w->buffer))
+	    ? PT : XMARKER (w->pointm)->charpos;
+
+	  xret = wx;
+	}
+      /* For fringes and margins, Y is relative to the area's (and the
+	 window's) top edge, while X is meaningless.  */
       else if (part == ON_LEFT_MARGIN || part == ON_RIGHT_MARGIN)
 	{
 	  Lisp_Object string;
 	  EMACS_INT charpos;
 
 	  posn = (part == ON_LEFT_MARGIN) ? Qleft_margin : Qright_margin;
-	  rx = wx, ry = wy;
-	  string = marginal_area_string (w, part, &rx, &ry, &charpos,
+	  col = wx;
+	  row = wy;
+	  string = marginal_area_string (w, part, &col, &row, &charpos,
 					 &object, &dx, &dy, &width, &height);
 	  if (STRINGP (string))
 	    string_info = Fcons (string, make_number (charpos));
-	  if (part == ON_LEFT_MARGIN)
-	    wx = 0;
-	  else
-	    wx = window_box_right_offset (w, TEXT_AREA) - 1;
+	  yret = wy - WINDOW_HEADER_LINE_HEIGHT (w);
 	}
       else if (part == ON_LEFT_FRINGE)
 	{
 	  posn = Qleft_fringe;
-	  rx = 0;
-	  dx = wx;
-	  wx = (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w)
-		? 0
-		: window_box_width (w, LEFT_MARGIN_AREA));
-	  dx -= wx;
+	  col = 0;
+	  dx = wx
+	    - (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w)
+	       ? 0 : window_box_width (w, LEFT_MARGIN_AREA));
+	  dy = yret = wy - WINDOW_HEADER_LINE_HEIGHT (w);
 	}
       else if (part == ON_RIGHT_FRINGE)
 	{
 	  posn = Qright_fringe;
-	  rx = 0;
-	  dx = wx;
-	  wx = (window_box_width (w, LEFT_MARGIN_AREA)
-		+ window_box_width (w, TEXT_AREA)
-		+ (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w)
-		   ? window_box_width (w, RIGHT_MARGIN_AREA)
-		   : 0));
-	  dx -= wx;
-	}
-      else
-	{
-	  /* Note: We have no special posn for part == ON_SCROLL_BAR.  */
-	  wx = max (WINDOW_LEFT_MARGIN_WIDTH (w), wx);
-	}
-
+	  col = 0;
+	  dx = wx
+	    - window_box_width (w, LEFT_MARGIN_AREA)
+	    - window_box_width (w, TEXT_AREA)
+	    - (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w)
+	       ? window_box_width (w, RIGHT_MARGIN_AREA)
+	       : 0);
+	  dy = yret = wy - WINDOW_HEADER_LINE_HEIGHT (w);
+	}
+      else if (part == ON_VERTICAL_BORDER)
+	{
+	  posn = Qvertical_line;
+	  width = 1;
+	  dx = 0;
+	  dy = yret = wy;
+	}
+      /* Nothing special for part == ON_SCROLL_BAR.  */
+
+      /* For clicks in the text area, fringes, or margins, call
+	 buffer_posn_from_coords to extract TEXTPOS, the buffer
+	 position nearest to the click.  */
       if (textpos < 0)
 	{
 	  Lisp_Object string2, object2 = Qnil;
 	  struct display_pos p;
 	  int dx2, dy2;
 	  int width2, height2;
-	  string2 = buffer_posn_from_coords (w, &wx, &wy, &p,
+	  /* The pixel X coordinate passed to buffer_posn_from_coords
+	     is the X coordinate relative to the text area for
+	     text-area clicks, zero otherwise.  */
+	  int x2 = (part == ON_TEXT) ? xret : 0;
+	  int y2 = wy;
+
+	  string2 = buffer_posn_from_coords (w, &x2, &y2, &p,
 					     &object2, &dx2, &dy2,
 					     &width2, &height2);
 	  textpos = CHARPOS (p.pos);
-	  if (rx < 0) rx = wx;
-	  if (ry < 0) ry = wy;
+	  if (col < 0) col = x2;
+	  if (row < 0) row = y2;
 	  if (dx < 0) dx = dx2;
 	  if (dy < 0) dy = dy2;
 	  if (width < 0) width = width2;
@@ -5394,34 +5403,27 @@
 #endif
 
       /* Object info */
-      extra_info = Fcons (object,
-			  Fcons (Fcons (make_number (dx),
-					make_number (dy)),
-				 Fcons (Fcons (make_number (width),
-					       make_number (height)),
-					Qnil)));
+      extra_info
+	= list3 (object,
+		 Fcons (make_number (dx), make_number (dy)),
+		 Fcons (make_number (width), make_number (height)));
 
       /* String info */
       extra_info = Fcons (string_info,
 			  Fcons (make_number (textpos),
-				 Fcons (Fcons (make_number (rx),
-					       make_number (ry)),
+				 Fcons (Fcons (make_number (col),
+					       make_number (row)),
 					extra_info)));
     }
   else if (f != 0)
-    {
-      XSETFRAME (window, f);
-    }
+    XSETFRAME (window, f);
   else
-    {
-      window = Qnil;
-      XSETFASTINT (*x, 0);
-      XSETFASTINT (*y, 0);
-    }
+    window = Qnil;
 
   return Fcons (window,
 		Fcons (posn,
-		       Fcons (Fcons (*x, *y),
+		       Fcons (Fcons (make_number (xret),
+				     make_number (yret)),
 			      Fcons (make_number (time),
 				     extra_info))));
 }
@@ -5610,14 +5612,6 @@
 		int hpos;
 		int i;
 
-#if 0
-		/* Activate the menu bar on the down event.  If the
-		   up event comes in before the menu code can deal with it,
-		   just ignore it.  */
-		if (! (event->modifiers & down_modifier))
-		  return Qnil;
-#endif
-
 		/* Find the menu bar item under `column'.  */
 		item = Qnil;
 		items = FRAME_MENU_BAR_ITEMS (f);
@@ -5649,7 +5643,7 @@
 	      }
 #endif /* not USE_X_TOOLKIT && not USE_GTK && not HAVE_NS */
 
-	    position = make_lispy_position (f, &event->x, &event->y,
+	    position = make_lispy_position (f, event->x, event->y,
 					    event->timestamp);
 	  }
 #ifndef USE_TOOLKIT_SCROLL_BARS
@@ -5749,23 +5743,21 @@
 	      return Qnil;
 
 	    event->modifiers &= ~up_modifier;
-#if 0 /* Formerly we treated an up with no down as a click event.  */
-	    if (!CONSP (start_pos))
-	      event->modifiers |= click_modifier;
-	    else
-#endif
+
 	      {
-		Lisp_Object down;
+		Lisp_Object new_down, down;
 		EMACS_INT xdiff = double_click_fuzz, ydiff = double_click_fuzz;
 
 		/* The third element of every position
 		   should be the (x,y) pair.  */
 		down = Fcar (Fcdr (Fcdr (start_pos)));
+		new_down = Fcar (Fcdr (Fcdr (position)));
+
 		if (CONSP (down)
 		    && INTEGERP (XCAR (down)) && INTEGERP (XCDR (down)))
 		  {
-		    xdiff = XINT (event->x) - XINT (XCAR (down));
-		    ydiff = XINT (event->y) - XINT (XCDR (down));
+		    xdiff = XINT (XCAR (new_down)) - XINT (XCAR (down));
+		    ydiff = XINT (XCDR (new_down)) - XINT (XCDR (down));
 		  }
 
 		if (ignore_mouse_drag_p)
@@ -5848,7 +5840,7 @@
 	if (! FRAME_LIVE_P (f))
 	  return Qnil;
 
-	position = make_lispy_position (f, &event->x, &event->y,
+	position = make_lispy_position (f, event->x, event->y,
 					event->timestamp);
 
 	/* Set double or triple modifiers to indicate the wheel speed.  */
@@ -5868,10 +5860,8 @@
 	  else
 	    abort ();
 
-	  if (FRAME_WINDOW_P (f))
-	    fuzz = double_click_fuzz;
-	  else
-	    fuzz = double_click_fuzz / 8;
+	  fuzz = FRAME_WINDOW_P (f)
+	    ? double_click_fuzz : double_click_fuzz / 8;
 
 	  if (event->modifiers & up_modifier)
 	    {
@@ -6009,7 +5999,7 @@
 	if (! FRAME_LIVE_P (f))
 	  return Qnil;
 
-	position = make_lispy_position (f, &event->x, &event->y,
+	position = make_lispy_position (f, event->x, event->y,
 					event->timestamp);
 
 	head = modify_event_symbol (0, event->modifiers,
@@ -6092,8 +6082,8 @@
 	start_pos_ptr = &AREF (button_down_location, button);
 	start_pos = *start_pos_ptr;
 
-	position = make_lispy_position (f, &event->x, &event->y,
-					    event->timestamp);
+	position = make_lispy_position (f, event->x, event->y,
+					event->timestamp);
 
  	if (event->modifiers & down_modifier)
 	  *start_pos_ptr = Fcopy_alist (position);
@@ -6152,25 +6142,19 @@
 
       part_sym = *scroll_bar_parts[(int) part];
       return Fcons (Qscroll_bar_movement,
-		    (Fcons (Fcons (bar_window,
-				   Fcons (Qvertical_scroll_bar,
-					  Fcons (Fcons (x, y),
-						 Fcons (make_number (time),
-							Fcons (part_sym,
-							       Qnil))))),
-			    Qnil)));
-    }
-
+		    Fcons (list5 (bar_window,
+				  Qvertical_scroll_bar,
+				  Fcons (x, y),
+				  make_number (time),
+				  part_sym),
+			   Qnil));
+    }
   /* Or is it an ordinary mouse movement?  */
   else
     {
       Lisp_Object position;
-
-      position = make_lispy_position (frame, &x, &y, time);
-
-      return Fcons (Qmouse_movement,
-		    Fcons (position,
-			   Qnil));
+      position = make_lispy_position (frame, x, y, time);
+      return list2 (Qmouse_movement, position);
     }
 }
 
@@ -6351,7 +6335,7 @@
 }
 
 
-static const char *modifier_names[] =
+static const char *const modifier_names[] =
 {
   "up", "down", "drag", "click", "double", "triple", 0, 0,
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -6571,7 +6555,7 @@
 
 static Lisp_Object
 modify_event_symbol (EMACS_INT symbol_num, unsigned int modifiers, Lisp_Object symbol_kind,
-		     Lisp_Object name_alist_or_stem, const char **name_table,
+		     Lisp_Object name_alist_or_stem, const char *const *name_table,
 		     Lisp_Object *symbol_table, unsigned int table_size)
 {
   Lisp_Object value;
@@ -7074,10 +7058,12 @@
   int n_to_read, i;
   struct tty_display_info *tty = terminal->display_info.tty;
   int nread = 0;
+#ifdef subprocesses
   int buffer_free = KBD_BUFFER_SIZE - kbd_buffer_nr_stored () - 1;
 
   if (kbd_on_hold_p () || buffer_free <= 0)
     return 0;
+#endif	/* subprocesses */
 
   if (!terminal->name)		/* Don't read from a dead terminal. */
     return 0;
@@ -7159,9 +7145,11 @@
 #endif
 #endif
 
+#ifdef subprocesses
   /* Don't read more than we can store.  */
   if (n_to_read > buffer_free)
     n_to_read = buffer_free;
+#endif	/* subprocesses */
 
   /* Now read; for one reason or another, this will not block.
      NREAD is set to the number of chars read.  */
@@ -11100,10 +11088,10 @@
 #ifndef DOS_NT
       /* this causes startup screen to be restored and messes with the mouse */
       reset_all_sys_modes ();
-#endif
       interrupt_input = new_interrupt_input;
-#ifndef DOS_NT
       init_all_sys_modes ();
+#else
+      interrupt_input = new_interrupt_input;
 #endif
 
 #ifdef POLL_FOR_INPUT
@@ -11327,7 +11315,7 @@
 
   CHECK_LIVE_FRAME (frame_or_window);
 
-  return make_lispy_position (XFRAME (frame_or_window), &x, &y, 0);
+  return make_lispy_position (XFRAME (frame_or_window), x, y, 0);
 }
 
 DEFUN ("posn-at-point", Fposn_at_point, Sposn_at_point, 0, 2, 0,
@@ -12440,5 +12428,3 @@
   }
 }
 
-/* arch-tag: 774e34d7-6d31-42f3-8397-e079a4e4c9ca
-   (do not change this comment) */
--- a/src/keyboard.h	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/keyboard.h	Sat Nov 20 13:45:14 2010 +0200
@@ -490,6 +490,8 @@
 
 extern int quit_char;
 
+extern int timers_run;
+
 extern int parse_menu_item (Lisp_Object, int);
 
 extern void echo_now (void);
@@ -534,5 +536,3 @@
                                  struct input_event *);
 extern EMACS_TIME timer_check (int);
 
-/* arch-tag: 769cbade-1ba9-4950-b886-db265b061aa3
-   (do not change this comment) */
--- a/src/lisp.h	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/lisp.h	Sat Nov 20 13:45:14 2010 +0200
@@ -2736,6 +2736,8 @@
 extern void buffer_memory_full (void) NO_RETURN;
 extern int survives_gc_p (Lisp_Object);
 extern void mark_object (Lisp_Object);
+extern void refill_memory_reserve (void);
+extern const char *pending_malloc_warning;
 extern Lisp_Object Vpurify_flag;
 extern Lisp_Object Vmemory_full;
 extern Lisp_Object *stack_base;
@@ -3233,6 +3235,8 @@
 extern Lisp_Object Qabove_handle, Qhandle, Qbelow_handle;
 extern Lisp_Object Qup, Qdown, Qbottom, Qend_scroll;
 extern Lisp_Object Qtop, Qratio;
+extern Lisp_Object Vsaved_region_selection;
+extern Lisp_Object Vselect_active_regions;
 extern Lisp_Object Vtty_erase_char, Vhelp_form, Vtop_level;
 extern Lisp_Object Vthrow_on_input;
 extern int input_pending;
@@ -3600,7 +3604,6 @@
 extern void syms_of_xsmfns (void);
 
 /* Defined in xselect.c */
-EXFUN (Fx_send_client_event, 6);
 extern void syms_of_xselect (void);
 
 /* Defined in xterm.c */
--- a/src/lread.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/lread.c	Sat Nov 20 13:45:14 2010 +0200
@@ -552,8 +552,6 @@
    encoded in `emacs-mule' and the first byte is already read in
    C.  */
 
-extern char emacs_mule_bytes[256];
-
 static int
 read_emacs_mule_char (int c, int (*readbyte) (int, Lisp_Object), Lisp_Object readcharfun)
 {
@@ -966,6 +964,10 @@
 `require' calls, in an element of `load-history' whose
 car is the file name loaded.  See `load-history'.
 
+While the file is in the process of being loaded, the variable
+`load-in-progress' is non-nil and the variable `load-file-name'
+is bound to the file's name.
+
 Return t if the file exists and loads successfully.  */)
   (Lisp_Object file, Lisp_Object noerror, Lisp_Object nomessage, Lisp_Object nosuffix, Lisp_Object must_suffix)
 {
--- a/src/minibuf.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/minibuf.c	Sat Nov 20 13:45:14 2010 +0200
@@ -36,8 +36,6 @@
 #include "keymap.h"
 #include "termhooks.h"
 
-extern int quit_char;
-
 /* List of buffers for use as minibuffers.
    The first element of the list is used for the outermost minibuffer
    invocation, the next element is used for a recursive minibuffer
@@ -2242,5 +2240,3 @@
   defsubr (&Scompleting_read);
 }
 
-/* arch-tag: 8f69b601-fba3-484c-a6dd-ceaee54a7a73
-   (do not change this comment) */
--- a/src/mktime.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/mktime.c	Sat Nov 20 13:45:14 2010 +0200
@@ -110,9 +110,7 @@
    localtime to localtime_r, since many localtime_r implementations
    are buggy.  */
 static struct tm *
-my_mktime_localtime_r (t, tp)
-     const time_t *t;
-     struct tm *tp;
+my_mktime_localtime_r (const time_t *t,  struct tm *tp)
 {
   struct tm *l = localtime (t);
   if (! l)
@@ -130,9 +128,7 @@
    If TP is null, return a nonzero value.
    If overflow occurs, yield the low order bits of the correct answer.  */
 static time_t
-ydhms_tm_diff (year, yday, hour, min, sec, tp)
-     int year, yday, hour, min, sec;
-     const struct tm *tp;
+ydhms_tm_diff (int year, int yday, int hour, int min, int sec, const struct tm *tp)
 {
   if (!tp)
     return 1;
@@ -163,14 +159,8 @@
    If *T is out of range for conversion, adjust it so that
    it is the nearest in-range value and then convert that.  */
 static struct tm *
-ranged_convert (convert, t, tp)
-#ifdef PROTOTYPES
-     struct tm *(*convert) (const time_t *, struct tm *);
-#else
-     struct tm *(*convert)();
-#endif
-     time_t *t;
-     struct tm *tp;
+ranged_convert (struct tm *(*convert) (const time_t *, struct tm *),
+		time_t *t, struct tm *tp)
 {
   struct tm *r;
 
@@ -217,14 +207,8 @@
    compared to what the result would be for UTC without leap seconds.
    If *OFFSET's guess is correct, only one CONVERT call is needed.  */
 time_t
-__mktime_internal (tp, convert, offset)
-     struct tm *tp;
-#ifdef PROTOTYPES
-     struct tm *(*convert) (const time_t *, struct tm *);
-#else
-     struct tm *(*convert)();
-#endif
-     time_t *offset;
+__mktime_internal (struct tm *tp, struct tm *(*convert) (const time_t *, struct tm *),
+		   time_t *offset)
 {
   time_t t, dt, t0, t1, t2;
   struct tm tm;
@@ -558,5 +542,3 @@
 End:
 */
 
-/* arch-tag: 9456752f-7ddd-47cb-8286-fa807b1355ae
-   (do not change this comment) */
--- a/src/msdos.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/msdos.c	Sat Nov 20 13:45:14 2010 +0200
@@ -2698,7 +2698,7 @@
 	      mouse_window = window_from_coordinates (SELECTED_FRAME(),
 						      mouse_last_x,
 						      mouse_last_y,
-						      0, 0, 0, 0);
+						      0, 0);
 	      /* A window will be selected only when it is not
 		 selected now, and the last mouse movement event was
 		 not in it.  A minibuffer window will be selected iff
--- a/src/nsfns.m	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/nsfns.m	Sat Nov 20 13:45:14 2010 +0200
@@ -1224,8 +1224,6 @@
                       "foreground", "Foreground", RES_TYPE_STRING);
   x_default_parameter (f, parms, Qbackground_color, build_string ("White"),
                       "background", "Background", RES_TYPE_STRING);
-  x_default_parameter (f, parms, Qcursor_color, build_string ("grey"),
-                      "cursorColor", "CursorColor", RES_TYPE_STRING);
   /* FIXME: not suppported yet in Nextstep */
   x_default_parameter (f, parms, Qline_spacing, Qnil,
 		       "lineSpacing", "LineSpacing", RES_TYPE_NUMBER);
--- a/src/process.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/process.c	Sat Nov 20 13:45:14 2010 +0200
@@ -56,12 +56,10 @@
 #endif
 #endif
 
-#if defined(HAVE_SYS_IOCTL_H)
 #include <sys/ioctl.h>
 #if defined(HAVE_NET_IF_H)
 #include <net/if.h>
 #endif /* HAVE_NET_IF_H */
-#endif /* HAVE_SYS_IOCTL_H */
 
 #ifdef NEED_BSDTTY
 #include <bsdtty.h>
@@ -115,8 +113,6 @@
 #include "nsterm.h"
 #endif
 
-extern int timers_run;
-
 Lisp_Object Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname, Qtpgid;
 Lisp_Object Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcstime;
 Lisp_Object Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs;
@@ -7746,5 +7742,3 @@
   defsubr (&Sprocess_attributes);
 }
 
-/* arch-tag: 3706c011-7b9a-4117-bd4f-59e7f701a4c4
-   (do not change this comment) */
--- a/src/regex.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/regex.c	Sat Nov 20 13:45:14 2010 +0200
@@ -196,18 +196,14 @@
    even if config.h says that we can.  */
 # undef REL_ALLOC
 
-# if defined STDC_HEADERS || defined _LIBC
-#  include <stdlib.h>
-# else
-char *malloc ();
-char *realloc ();
+# ifdef HAVE_UNISTD_H
+#  include <unistd.h>
 # endif
 
 /* When used in Emacs's lib-src, we need xmalloc and xrealloc. */
 
 void *
-xmalloc (size)
-     size_t size;
+xmalloc (size_t size)
 {
   register void *val;
   val = (void *) malloc (size);
@@ -220,9 +216,7 @@
 }
 
 void *
-xrealloc (block, size)
-     void *block;
-     size_t size;
+xrealloc (void *block, size_t size)
 {
   register void *val;
   /* We must call malloc explicitly when BLOCK is 0, since some
@@ -435,7 +429,7 @@
 static char re_syntax_table[CHAR_SET_SIZE];
 
 static void
-init_syntax_once ()
+init_syntax_once (void)
 {
    register int c;
    static int done = 0;
@@ -4978,11 +4972,8 @@
 /* re_match is like re_match_2 except it takes only a single string.  */
 
 int
-re_match (bufp, string, size, pos, regs)
-     struct re_pattern_buffer *bufp;
-     const char *string;
-     int size, pos;
-     struct re_registers *regs;
+re_match (struct re_pattern_buffer *bufp, const char *string,
+	  int size, int pos, struct re_registers *regs)
 {
   int result = re_match_2_internal (bufp, NULL, 0, (re_char*) string, size,
 				    pos, regs, size);
@@ -6534,10 +6525,8 @@
    the return codes and their meanings.)  */
 
 int
-regcomp (preg, pattern, cflags)
-    regex_t *__restrict preg;
-    const char *__restrict pattern;
-    int cflags;
+regcomp (regex_t *__restrict preg, const char *__restrict pattern,
+	 int cflags)
 {
   reg_errcode_t ret;
   reg_syntax_t syntax
@@ -6619,12 +6608,8 @@
    We return 0 if we find a match and REG_NOMATCH if not.  */
 
 int
-regexec (preg, string, nmatch, pmatch, eflags)
-    const regex_t *__restrict preg;
-    const char *__restrict string;
-    size_t nmatch;
-    regmatch_t pmatch[__restrict_arr];
-    int eflags;
+regexec (const regex_t *__restrict preg, const char *__restrict string,
+	 size_t nmatch, regmatch_t pmatch[__restrict_arr], int eflags)
 {
   int ret;
   struct re_registers regs;
@@ -6696,11 +6681,7 @@
    error with msvc8 compiler.  */
 
 size_t
-regerror (err_code, preg, errbuf, errbuf_size)
-    int err_code;
-    const regex_t *preg;
-    char *errbuf;
-    size_t errbuf_size;
+regerror (int err_code, const regex_t *preg, char *errbuf, size_t errbuf_size)
 {
   const char *msg;
   size_t msg_size;
@@ -6736,8 +6717,7 @@
 /* Free dynamically allocated space used by PREG.  */
 
 void
-regfree (preg)
-    regex_t *preg;
+regfree (regex_t *preg)
 {
   free (preg->buffer);
   preg->buffer = NULL;
@@ -6756,5 +6736,3 @@
 
 #endif /* not emacs  */
 
-/* arch-tag: 4ffd68ba-2a9e-435b-a21a-018990f9eeb2
-   (do not change this comment) */
--- a/src/s/ms-w32.h	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/s/ms-w32.h	Sat Nov 20 13:45:14 2010 +0200
@@ -112,7 +112,6 @@
 #undef  HAVE_UTIME_H
 #undef  HAVE_LINUX_VERSION_H
 #undef  HAVE_SYS_SYSTEMINFO_H
-#undef  HAVE_TERMIOS_H
 #define HAVE_LIMITS_H 1
 #define HAVE_STRING_H 1
 #define HAVE_STDLIB_H 1
--- a/src/strftime.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/strftime.c	Sat Nov 20 13:45:14 2010 +0200
@@ -179,11 +179,8 @@
    Similarly for localtime_r.  */
 
 # if ! HAVE_TM_GMTOFF
-static struct tm *my_strftime_gmtime_r (const time_t *, struct tm *);
 static struct tm *
-my_strftime_gmtime_r (t, tp)
-     const time_t *t;
-     struct tm *tp;
+my_strftime_gmtime_r (const time_t *t, struct tm *tp)
 {
   struct tm *l = gmtime (t);
   if (! l)
@@ -192,11 +189,8 @@
   return tp;
 }
 
-static struct tm *my_strftime_localtime_r (const time_t *, struct tm *);
 static struct tm *
-my_strftime_localtime_r (t, tp)
-     const time_t *t;
-     struct tm *tp;
+my_strftime_localtime_r (const time_t *t, struct tm *tp)
 {
   struct tm *l = localtime (t);
   if (! l)
@@ -318,14 +312,10 @@
 # undef _NL_CURRENT
 # define _NL_CURRENT(category, item) \
   (current->values[_NL_ITEM_INDEX (item)].string)
-# define LOCALE_PARAM , loc
 # define LOCALE_ARG , loc
-# define LOCALE_PARAM_DECL  __locale_t loc;
-# define LOCALE_PARAM_PROTO , __locale_t loc
+# define LOCALE_PARAM_DECL , __locale_t loc
 # define HELPER_LOCALE_ARG  , current
 #else
-# define LOCALE_PARAM
-# define LOCALE_PARAM_PROTO
 # define LOCALE_ARG
 # define LOCALE_PARAM_DECL
 # ifdef _LIBC
@@ -363,30 +353,16 @@
    more reliable way to accept other sets of digits.  */
 #define ISDIGIT(Ch) ((unsigned int) (Ch) - L_('0') <= 9)
 
-static CHAR_T *memcpy_lowcase (CHAR_T *dest, const CHAR_T *src,
-                               size_t len LOCALE_PARAM_PROTO);
-
 static CHAR_T *
-memcpy_lowcase (dest, src, len LOCALE_PARAM)
-     CHAR_T *dest;
-     const CHAR_T *src;
-     size_t len;
-     LOCALE_PARAM_DECL
+memcpy_lowcase (CHAR_T *dest, const CHAR_T *src, size_t len LOCALE_PARAM_DECL)
 {
   while (len-- > 0)
     dest[len] = TOLOWER ((UCHAR_T) src[len], loc);
   return dest;
 }
 
-static CHAR_T *memcpy_uppcase (CHAR_T *dest, const CHAR_T *src,
-                               size_t len LOCALE_PARAM_PROTO);
-
 static CHAR_T *
-memcpy_uppcase (dest, src, len LOCALE_PARAM)
-     CHAR_T *dest;
-     const CHAR_T *src;
-     size_t len;
-     LOCALE_PARAM_DECL
+memcpy_uppcase (CHAR_T *dest, const CHAR_T *src, size_t len LOCALE_PARAM_DECL)
 {
   while (len-- > 0)
     dest[len] = TOUPPER ((UCHAR_T) src[len], loc);
@@ -398,11 +374,8 @@
 /* Yield the difference between *A and *B,
    measured in seconds, ignoring leap seconds.  */
 # define tm_diff ftime_tm_diff
-static int tm_diff (const struct tm *, const struct tm *);
 static int
-tm_diff (a, b)
-     const struct tm *a;
-     const struct tm *b;
+tm_diff (const struct tm *a, const struct tm *b)
 {
   /* Compute intervening leap days correctly even if year is negative.
      Take care to avoid int overflow in leap day calculations,
@@ -437,9 +410,7 @@
 __inline__
 #endif
 static int
-iso_week_days (yday, wday)
-     int yday;
-     int wday;
+iso_week_days (int yday, int wday)
 {
   /* Add enough to the first operand of % to make it nonnegative.  */
   int big_enough_multiple_of_7 = (-YDAY_MINIMUM / 7 + 2) * 7;
@@ -470,8 +441,7 @@
 
 #ifdef my_strftime
 # define extra_args , ut, ns
-# define extra_args_spec int ut; int ns;
-# define extra_args_spec_iso , int ut, int ns
+# define extra_args_spec , int ut, int ns
 #else
 # ifdef COMPILE_WIDE
 #  define my_strftime wcsftime
@@ -482,7 +452,6 @@
 # endif
 # define extra_args
 # define extra_args_spec
-# define extra_args_spec_iso
 /* We don't have this information in general.  */
 # define ut 0
 # define ns 0
@@ -491,15 +460,12 @@
 #if !defined _LIBC && !defined(WINDOWSNT) && HAVE_TZNAME && HAVE_TZSET
   /* Solaris 2.5 tzset sometimes modifies the storage returned by localtime.
      Work around this bug by copying *tp before it might be munged.  */
-  size_t _strftime_copytm (char *, size_t, const char *,
-                           const struct tm * extra_args_spec_iso);
   size_t
-  my_strftime (s, maxsize, format, tp extra_args)
-      CHAR_T *s;
-      size_t maxsize;
-      const CHAR_T *format;
-      const struct tm *tp;
-      extra_args_spec
+  _strftime_copytm (CHAR_T *s, size_t maxsize, const CHAR_T *format,
+		    const struct tm *tp extra_args_spec LOCALE_PARAM_DECL);
+  size_t
+  my_strftime (CHAR_T *s, size_t maxsize, const CHAR_T *format,
+	       const struct tm *tp extra_args_spec)
   {
     struct tm tmcopy;
     tmcopy = *tp;
@@ -517,13 +483,8 @@
    anywhere, so to determine how many characters would be
    written, use NULL for S and (size_t) UINT_MAX for MAXSIZE.  */
 size_t
-my_strftime (s, maxsize, format, tp extra_args LOCALE_PARAM)
-      CHAR_T *s;
-      size_t maxsize;
-      const CHAR_T *format;
-      const struct tm *tp;
-      extra_args_spec
-      LOCALE_PARAM_DECL
+my_strftime (CHAR_T *s, size_t maxsize, const CHAR_T *format,
+	     const struct tm *tp extra_args_spec LOCALE_PARAM_DECL)
 {
 #if defined _LIBC && defined USE_IN_EXTENDED_LOCALE_MODEL
   struct locale_data *const current = loc->__locales[LC_TIME];
@@ -1474,16 +1435,10 @@
 /* For Emacs we have a separate interface which corresponds to the normal
    strftime function plus the ut argument, but without the ns argument.  */
 size_t
-emacs_strftimeu (s, maxsize, format, tp, ut)
-      char *s;
-      size_t maxsize;
-      const char *format;
-      const struct tm *tp;
-      int ut;
+emacs_strftimeu (char *s, size_t maxsize, const char *format,
+		 const struct tm *tp, int ut)
 {
   return my_strftime (s, maxsize, format, tp, ut, 0);
 }
 #endif
 
-/* arch-tag: 662bc9c4-f8e2-41b6-bf96-b8346d0ce0d8
-   (do not change this comment) */
--- a/src/syntax.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/syntax.c	Sat Nov 20 13:45:14 2010 +0200
@@ -371,23 +371,10 @@
   return quoted;
 }
 
-/* Return the bytepos one character after BYTEPOS.
-   We assume that BYTEPOS is not at the end of the buffer.  */
-
-INLINE EMACS_INT
-inc_bytepos (EMACS_INT bytepos)
-{
-  if (NILP (current_buffer->enable_multibyte_characters))
-    return bytepos + 1;
-
-  INC_POS (bytepos);
-  return bytepos;
-}
-
 /* Return the bytepos one character before BYTEPOS.
    We assume that BYTEPOS is not at the start of the buffer.  */
 
-INLINE EMACS_INT
+static INLINE EMACS_INT
 dec_bytepos (EMACS_INT bytepos)
 {
   if (NILP (current_buffer->enable_multibyte_characters))
--- a/src/sysdep.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/sysdep.c	Sat Nov 20 13:45:14 2010 +0200
@@ -90,12 +90,6 @@
 #include "dispextern.h"
 #include "process.h"
 #include "cm.h"  /* for reset_sys_modes */
-#ifdef HAVE_TERM_H
-/* Include this last.  If it is ncurses header file, it adds a lot of
-   defines that interfere with stuff in other headers.  Someone responsible
-   for ncurses messed up bigtime.  See bug#6812.  */
-#include <term.h>
-#endif
 
 #ifdef WINDOWSNT
 #include <direct.h>
@@ -123,6 +117,9 @@
 #endif
 #endif
 
+/* Declare here, including term.h is problematic on some systems.  */
+extern void tputs (const char *, int, int (*)(int));
+
 static const int baud_convert[] =
   {
     0, 50, 75, 110, 135, 150, 200, 300, 600, 1200,
@@ -232,8 +229,8 @@
       {
         if (tty->input)         /* Is the device suspended? */
           {
-            EMACS_GET_TTY (fileno (tty->input), &buf);
-            EMACS_SET_TTY (fileno (tty->input), &buf, 0);
+            emacs_get_tty (fileno (tty->input), &buf);
+            emacs_set_tty (fileno (tty->input), &buf, 0);
           }
       }
   }
@@ -369,7 +366,7 @@
 #ifndef WINDOWSNT
   struct emacs_tty s;
 
-  EMACS_GET_TTY (out, &s);
+  emacs_get_tty (out, &s);
   s.main.c_oflag |= OPOST;	/* Enable output postprocessing */
   s.main.c_oflag &= ~ONLCR;	/* Disable map of NL to CR-NL on output */
 #ifdef NLDLY
@@ -447,7 +444,7 @@
   s.main.c_cc[VTIME] = 0;
 #endif
 
-  EMACS_SET_TTY (out, &s, 0);
+  emacs_set_tty (out, &s, 0);
 #endif /* not WINDOWSNT */
 }
 #endif	/* not MSDOS */
@@ -859,7 +856,7 @@
   if (! tty_out->old_tty)
     tty_out->old_tty = (struct emacs_tty *) xmalloc (sizeof (struct emacs_tty));
 
-  EMACS_GET_TTY (fileno (tty_out->input), tty_out->old_tty);
+  emacs_get_tty (fileno (tty_out->input), tty_out->old_tty);
 
   tty = *tty_out->old_tty;
 
@@ -1005,7 +1002,7 @@
   dos_ttraw (tty_out);
 #endif
 
-  EMACS_SET_TTY (fileno (tty_out->input), &tty, 0);
+  emacs_set_tty (fileno (tty_out->input), &tty, 0);
 
   /* This code added to insure that, if flow-control is not to be used,
      we have an unlocked terminal at the start. */
@@ -1097,8 +1094,16 @@
 {
   struct emacs_tty etty;
 
-  EMACS_GET_TTY (fd, &etty);
-  return EMACS_TTY_TABS_OK (&etty);
+  emacs_get_tty (fd, &etty);
+#ifndef DOS_NT
+#ifdef TABDLY
+  return ((etty.main.c_oflag & TABDLY) != TAB3);
+#else /* not TABDLY */
+  return 1;
+#endif /* not TABDLY */
+#else /* DOS_NT */
+  return 0;
+#endif /* DOS_NT */
 }
 
 /* Get terminal size from system.
@@ -1260,7 +1265,7 @@
 #endif /* F_SETFL */
 
   if (tty_out->old_tty)
-    while (EMACS_SET_TTY (fileno (tty_out->input),
+    while (emacs_set_tty (fileno (tty_out->input),
                           tty_out->old_tty, 0) < 0 && errno == EINTR)
       ;
 
@@ -3071,6 +3076,3 @@
 
 #endif	/* !defined (WINDOWSNT) */
 
-
-/* arch-tag: edb43589-4e09-4544-b325-978b5b121dcf
-   (do not change this comment) */
--- a/src/systty.h	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/systty.h	Sat Nov 20 13:45:14 2010 +0200
@@ -86,17 +86,6 @@
 
 /* Manipulate a terminal's current process group.  */
 
-/* EMACS_GET_TTY_PGRP(int FD, int *PGID) sets *PGID the terminal FD's
-   current process group.  Return -1 if there is an error.
-
-   EMACS_SET_TTY_PGRP(int FD, int *PGID) sets the terminal FD's
-   current process group to *PGID.  Return -1 if there is an error.  */
-
-#ifndef DOS_NT
-#define EMACS_GET_TTY_PGRP(fd, pgid) (*(pgid) = tcgetpgrp ((fd)))
-#define EMACS_SET_TTY_PGRP(fd, pgid) (tcsetpgrp ((fd), *(pgid)))
-#endif /* not DOS_NT */
-
 /* EMACS_GETPGRP (arg) returns the process group of the process.  */
 
 #if defined (GETPGRP_VOID)
@@ -112,21 +101,7 @@
    state, for example a struct tchars, a struct sgttyb, a struct
    tchars, a struct ltchars, and a struct pagechars, struct
    emacs_tty should contain an element for each parameter struct
-   that Emacs may change.
-
-   EMACS_GET_TTY (int FD, struct emacs_tty *P) stores the parameters
-   of the tty on FD in *P.  Return zero if all's well, or -1 if we ran
-   into an error we couldn't deal with.
-
-   EMACS_SET_TTY (int FD, struct emacs_tty *P, int flushp)
-   sets the parameters of the tty on FD according to the contents of
-   *P.  If flushp is non-zero, we discard queued input to be
-   written before making the change.
-   Return 0 if all went well, and -1 if anything failed.
-
-   EMACS_TTY_TABS_OK (struct emacs_tty *P) is false if the kernel
-   expands tabs to spaces upon output; in that case, there is no
-   advantage to using tabs over spaces.  */
+   that Emacs may change.  */
 
 
 /* For each tty parameter structure that Emacs might want to save and restore,
@@ -145,31 +120,6 @@
 #endif /* DOS_NT */
 };
 
-/* Define EMACS_GET_TTY and EMACS_SET_TTY,
-   the macros for reading and setting parts of `struct emacs_tty'.
-
-   These got pretty unmanageable (huge macros are hard to debug), and
-   finally needed some code which couldn't be done as part of an
-   expression, so we moved them out to their own functions in sysdep.c.  */
-#define EMACS_GET_TTY(fd, p)        (emacs_get_tty ((fd), (p)))
-#define EMACS_SET_TTY(fd, p, waitp) (emacs_set_tty ((fd), (p), (waitp)))
 extern int emacs_get_tty (int, struct emacs_tty *);
 extern int emacs_set_tty (int, struct emacs_tty *, int);
 
-
-/* Define EMACS_TTY_TABS_OK.  */
-
-#ifndef DOS_NT
-
-#ifdef TABDLY
-#define EMACS_TTY_TABS_OK(p) (((p)->main.c_oflag & TABDLY) != TAB3)
-#else /* not TABDLY */
-#define EMACS_TTY_TABS_OK(p) 1
-#endif /* not TABDLY */
-
-#else /* DOS_NT */
-#define EMACS_TTY_TABS_OK(p) 0
-#endif /* DOS_NT */
-
-/* arch-tag: cf4b90bc-be41-401c-be98-40619178a712
-   (do not change this comment) */
--- a/src/term.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/term.c	Sat Nov 20 13:45:14 2010 +0200
@@ -1850,9 +1850,9 @@
 
 
 /* Append a glyph for a glyphless character to IT->glyph_row.  FACE_ID
-   is a face ID to be used for the glyph.  What actually appended are
-   glyphs of type CHAR_GLYPH of which characters are in STR
-   (it->nglyphs bytes).  */
+   is a face ID to be used for the glyph.  What is actually appended
+   are glyphs of type CHAR_GLYPH whose characters are in STR (which
+   comes from it->nglyphs bytes).  */
 
 static void
 append_glyphless_glyph (struct it *it, int face_id, char *str)
@@ -1923,7 +1923,7 @@
 /* Produce glyphs for a glyphless character for iterator IT.
    IT->glyphless_method specifies which method to use for displaying
    the character.  See the description of enum
-   glyphless_display_method in dispextern.h for the detail.
+   glyphless_display_method in dispextern.h for the details.
 
    FOR_NO_FONT is nonzero if and only if this is for a character that
    is not supproted by the coding system of the terminal.  ACRONYM, if
@@ -1935,11 +1935,11 @@
 produce_glyphless_glyph (struct it *it, int for_no_font, Lisp_Object acronym)
 {
   int face_id;
-  int width, len;
-  char buf[9], *str = "    ";
+  int len;
+  char buf[11], *str = "    ";
 
   /* Get a face ID for the glyph by utilizing a cache (the same way as
-     doen for `escape-glyph' in get_next_display_element).  */
+     done for `escape-glyph' in get_next_display_element).  */
   if (it->f == last_glyphless_glyph_frame
       && it->face_id == last_glyphless_glyph_face_id)
     {
@@ -1956,8 +1956,8 @@
 
   if (it->glyphless_method == GLYPHLESS_DISPLAY_THIN_SPACE)
     {
-      /* As there's no way to produce a thin space, we produce
-	 a space of canonical width..  */
+      /* As there's no way to produce a thin space, we produce a space
+	 of canonical width.  */
       len = 1;
     }
   else if (it->glyphless_method == GLYPHLESS_DISPLAY_EMPTY_BOX)
@@ -1965,8 +1965,11 @@
       len = CHAR_WIDTH (it->c);
       if (len == 0)
 	len = 1;
-      else if (width > 4)
+      else if (len > 4)
 	len = 4;
+      sprintf (buf, "[%.*s]", len, str);
+      len += 2;
+      str = buf;
     }
   else
     {
@@ -1983,11 +1986,11 @@
 	}
       else
 	{
-	  xassert (it->glyphless_method == GLYPHLESS_DISPLAY_HEXA_CODE);
-	  len = (it->c < 0x100 ? sprintf (buf, "U+%02X", it->c)
-		 : it->c < 0x10000 ? sprintf (buf, "U+%04X", it->c)
-		 : it->c <= MAX_UNICODE_CHAR ? sprintf (buf, "U+%06X", it->c)
-		 : sprintf (buf, "E+%06X", it->c));
+	  xassert (it->glyphless_method == GLYPHLESS_DISPLAY_HEX_CODE);
+	  len = (it->c < 0x100 ? sprintf (buf, "[U+%02X]", it->c)
+		 : it->c < 0x10000 ? sprintf (buf, "[U+%04X]", it->c)
+		 : it->c <= MAX_UNICODE_CHAR ? sprintf (buf, "[U+%06X]", it->c)
+		 : sprintf (buf, "[E+%06X]", it->c));
 	}
       str = buf;
     }
@@ -3084,8 +3087,7 @@
 dissociate_if_controlling_tty (int fd)
 {
 #ifndef DOS_NT
-  int pgid;
-  EMACS_GET_TTY_PGRP (fd, &pgid); /* If tcgetpgrp succeeds, fd is the ctty. */
+  int pgid = tcgetpgrp (fd); /* If tcgetpgrp succeeds, fd is the ctty. */
   if (pgid != -1)
     {
 #if defined (USG5)
@@ -3829,7 +3831,3 @@
   encode_terminal_dst = NULL;
 }
 
-
-
-/* arch-tag: 498e7449-6f2e-45e2-91dd-b7d4ca488193
-   (do not change this comment) */
--- a/src/w32.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/w32.c	Sat Nov 20 13:45:14 2010 +0200
@@ -38,9 +38,7 @@
 
 /* must include CRT headers *before* config.h */
 
-#ifdef HAVE_CONFIG_H
 #include <config.h>
-#endif
 
 #undef access
 #undef chdir
@@ -6086,5 +6084,3 @@
 
 /* end of w32.c */
 
-/* arch-tag: 90442dd3-37be-482b-b272-ac752e3049f1
-   (do not change this comment) */
--- a/src/w32fns.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/w32fns.c	Sat Nov 20 13:45:14 2010 +0200
@@ -82,7 +82,7 @@
 
 extern int quit_char;
 
-extern char *lispy_function_keys[];
+extern const char *const lispy_function_keys[];
 
 /* The colormap for converting color names to RGB values */
 Lisp_Object Vw32_color_map;
@@ -4345,8 +4345,6 @@
 		       "background", "Background", RES_TYPE_STRING);
   x_default_parameter (f, parameters, Qmouse_color, build_string ("black"),
 		       "pointerColor", "Foreground", RES_TYPE_STRING);
-  x_default_parameter (f, parameters, Qcursor_color, build_string ("black"),
-		       "cursorColor", "Foreground", RES_TYPE_STRING);
   x_default_parameter (f, parameters, Qborder_color, build_string ("black"),
 		       "borderColor", "BorderColor", RES_TYPE_STRING);
   x_default_parameter (f, parameters, Qscreen_gamma, Qnil,
--- a/src/w32heap.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/w32heap.c	Sat Nov 20 13:45:14 2010 +0200
@@ -21,10 +21,7 @@
    Geoff Voelker (voelker@cs.washington.edu)			     7-29-94
 */
 
-#ifdef HAVE_CONFIG_H
 #include <config.h>
-#endif
-
 #include <stdio.h>
 #include <setjmp.h>
 
@@ -301,5 +298,3 @@
 
 #endif
 
-/* arch-tag: 9a6a9860-040d-422d-8905-450dd535cd9c
-   (do not change this comment) */
--- a/src/w32inevt.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/w32inevt.c	Sat Nov 20 13:45:14 2010 +0200
@@ -23,10 +23,7 @@
 */
 
 
-#ifdef HAVE_CONFIG_H
 #include <config.h>
-#endif
-
 #include <stdio.h>
 #include <windows.h>
 #include <setjmp.h>
@@ -282,7 +279,7 @@
 }
 
 
-extern char *lispy_function_keys[];
+extern const char *const lispy_function_keys[];
 
 static int faked_key = 0;
 
@@ -784,5 +781,3 @@
   return ret;
 }
 
-/* arch-tag: 0bcb39b7-d085-4b85-9070-6750e8c03047
-   (do not change this comment) */
--- a/src/w32proc.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/w32proc.c	Sat Nov 20 13:45:14 2010 +0200
@@ -32,10 +32,7 @@
 #include <setjmp.h>
 
 /* must include CRT headers *before* config.h */
-
-#ifdef HAVE_CONFIG_H
 #include <config.h>
-#endif
 
 #undef signal
 #undef wait
@@ -2370,7 +2367,5 @@
   staticpro (&Vw32_valid_locale_ids);
   staticpro (&Vw32_valid_codepages);
 }
-/* end of ntproc.c */
+/* end of w32proc.c */
 
-/* arch-tag: 23d3a34c-06d2-48a1-833b-ac7609aa5250
-   (do not change this comment) */
--- a/src/w32term.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/w32term.c	Sat Nov 20 13:45:14 2010 +0200
@@ -1440,7 +1440,7 @@
 		str = (char *) SDATA (acronym);
 	    }
 	}
-      else if (glyph->u.glyphless.method == GLYPHLESS_DISPLAY_HEXA_CODE)
+      else if (glyph->u.glyphless.method == GLYPHLESS_DISPLAY_HEX_CODE)
 	{
 	  sprintf ((char *) buf, "%0*X",
 		   glyph->u.glyphless.ch < 0x10000 ? 4 : 6,
@@ -1448,6 +1448,11 @@
 	  str = buf;
 	}
 
+      if (glyph->u.glyphless.method != GLYPHLESS_DISPLAY_THIN_SPACE)
+	w32_draw_rectangle (s->hdc, s->gc,
+			    x, s->ybase - glyph->ascent,
+			    glyph->pixel_width - 1,
+			    glyph->ascent + glyph->descent - 1);
       if (str)
 	{
 	  struct font *font = s->font;
@@ -1456,7 +1461,7 @@
 	  HFONT old_font;
 
 	  old_font = SelectObject (s->hdc, FONT_HANDLE (font));
-	  /* It is assured that all LEN characters in STR is ASCII.  */
+	  /* It is certain that all LEN characters in STR are ASCII.  */
 	  for (j = 0; j < len; j++)
 	    {
 	      code = font->driver->encode_char (font, str[j]);
@@ -1472,11 +1477,6 @@
 			      with_background);
 	  SelectObject (s->hdc, old_font);
 	}
-      if (glyph->u.glyphless.method != GLYPHLESS_DISPLAY_THIN_SPACE)
-	w32_draw_rectangle (s->hdc, s->gc,
-			    x, s->ybase - glyph->ascent,
-			    glyph->pixel_width - 1,
-			    glyph->ascent + glyph->descent - 1);
       x += glyph->pixel_width;
    }
 }
@@ -4317,7 +4317,7 @@
 		  int x = LOWORD (msg.msg.lParam);
 		  int y = HIWORD (msg.msg.lParam);
 
-		  window = window_from_coordinates (f, x, y, 0, 0, 0, 0);
+		  window = window_from_coordinates (f, x, y, 0, 0);
 
 		  /* Window will be selected only when it is not
 		     selected now and last mouse movement event was
@@ -4396,7 +4396,7 @@
 		    int x = XFASTINT (inev.x);
 		    int y = XFASTINT (inev.y);
 
-                    window = window_from_coordinates (f, x, y, 0, 0, 0, 1);
+                    window = window_from_coordinates (f, x, y, 0, 1);
 
                     if (EQ (window, f->tool_bar_window))
                       {
--- a/src/window.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/window.c	Sat Nov 20 13:45:14 2010 +0200
@@ -755,32 +755,26 @@
 			     - WINDOW_MODE_LINE_HEIGHT (w) + add_y));
 }
 
-/* Test if the character at column *X, row *Y is within window W.
+/* Test if the character at column X, row Y is within window W.
    If it is not, return ON_NOTHING;
-   if it is in the window's text area,
-      set *x and *y to its location relative to the upper left corner
-         of the window, and
-      return ON_TEXT;
+   if it is in the window's text area, return ON_TEXT;
    if it is on the window's modeline, return ON_MODE_LINE;
    if it is on the border between the window and its right sibling,
       return ON_VERTICAL_BORDER.
-   if it is on a scroll bar,
-      return ON_SCROLL_BAR.
+   if it is on a scroll bar, return ON_SCROLL_BAR.
    if it is on the window's top line, return ON_HEADER_LINE;
    if it is in left or right fringe of the window,
-      return ON_LEFT_FRINGE or ON_RIGHT_FRINGE, and convert *X and *Y
-      to window-relative coordinates;
+      return ON_LEFT_FRINGE or ON_RIGHT_FRINGE;
    if it is in the marginal area to the left/right of the window,
-      return ON_LEFT_MARGIN or ON_RIGHT_MARGIN, and convert *X and *Y
-      to window-relative coordinates.
+      return ON_LEFT_MARGIN or ON_RIGHT_MARGIN.
 
    X and Y are frame relative pixel coordinates.  */
 
 static enum window_part
-coordinates_in_window (register struct window *w, register int *x, register int *y)
+coordinates_in_window (register struct window *w, int x, int y)
 {
   struct frame *f = XFRAME (WINDOW_FRAME (w));
-  int left_x, right_x, top_y, bottom_y;
+  int left_x, right_x;
   enum window_part part;
   int ux = FRAME_COLUMN_WIDTH (f);
   int x0 = WINDOW_LEFT_EDGE_X (w);
@@ -789,6 +783,12 @@
      (Between mode lines for instance.  */
   int grabbable_width = ux;
   int lmargin_width, rmargin_width, text_left, text_right;
+  int top_y = WINDOW_TOP_EDGE_Y (w);
+  int bottom_y = WINDOW_BOTTOM_EDGE_Y (w);
+
+  /* Outside any interesting row?  */
+  if (y < top_y || y >= bottom_y)
+    return ON_NOTHING;
 
   /* In what's below, we subtract 1 when computing right_x because we
      want the rightmost pixel, which is given by left_pixel+width-1.  */
@@ -796,21 +796,13 @@
     {
       left_x = 0;
       right_x = WINDOW_TOTAL_WIDTH (w) - 1;
-      top_y = WINDOW_TOP_EDGE_Y (w);
-      bottom_y = WINDOW_BOTTOM_EDGE_Y (w);
     }
   else
     {
       left_x = WINDOW_BOX_LEFT_EDGE_X (w);
       right_x = WINDOW_BOX_RIGHT_EDGE_X (w) - 1;
-      top_y = WINDOW_TOP_EDGE_Y (w);
-      bottom_y = WINDOW_BOTTOM_EDGE_Y (w);
     }
 
-  /* Outside any interesting row?  */
-  if (*y < top_y || *y >= bottom_y)
-    return ON_NOTHING;
-
   /* On the mode line or header line?  If it's near the start of
      the mode or header line of window that's has a horizontal
      sibling, say it's on the vertical line.  That's to be able
@@ -818,7 +810,7 @@
      scroll bars.  */
 
   if (WINDOW_WANTS_MODELINE_P (w)
-      && *y >= bottom_y - CURRENT_MODE_LINE_HEIGHT (w))
+      && y >= bottom_y - CURRENT_MODE_LINE_HEIGHT (w))
     {
       part = ON_MODE_LINE;
 
@@ -827,60 +819,37 @@
 	 between mode lines of horizontally adjacent mode lines
 	 as the vertical border.  If scroll bars on the left,
 	 return the right window.  */
-      if (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT (w)
-	  || WINDOW_RIGHTMOST_P (w))
-	{
-	  if (!WINDOW_LEFTMOST_P (w) && eabs (*x - x0) < grabbable_width)
-	    {
-	      /* Convert X and Y to window relative coordinates.
-		 Vertical border is at the left edge of window.  */
-	      *x = max (0, *x - x0);
-	      *y -= top_y;
-	      return ON_VERTICAL_BORDER;
-	    }
-	}
-      else
-	{
-	  /* Make sure we're not at the rightmost position of a
-	     mode-/header-line and there's yet another window on
-	     the right.  (Bug#1372)  */
-	  if ((WINDOW_RIGHTMOST_P (w) || *x < x1)
-	      && eabs (*x - x1) < grabbable_width)
-	    {
-	      /* Convert X and Y to window relative coordinates.
-		 Vertical border is at the right edge of window.  */
-	      *x = min (x1, *x) - x0;
-	      *y -= top_y;
-	      return ON_VERTICAL_BORDER;
-	    }
-	}
-
-      if (*x < x0 || *x >= x1)
+      if ((WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT (w)
+	   || WINDOW_RIGHTMOST_P (w))
+	  && !WINDOW_LEFTMOST_P (w)
+	  && eabs (x - x0) < grabbable_width)
+	return ON_VERTICAL_BORDER;
+
+      /* Make sure we're not at the rightmost position of a
+	 mode-/header-line and there's yet another window on the
+	 right.  (Bug#1372)  */
+      else if ((WINDOW_RIGHTMOST_P (w) || x < x1)
+	       && eabs (x - x1) < grabbable_width)
+	return ON_VERTICAL_BORDER;
+
+      if (x < x0 || x >= x1)
 	return ON_NOTHING;
 
-      /* Convert X and Y to window relative coordinates.
-	 Mode line starts at left edge of window.  */
-      *x -= x0;
-      *y -= top_y;
       return part;
     }
 
   if (WINDOW_WANTS_HEADER_LINE_P (w)
-      && *y < top_y + CURRENT_HEADER_LINE_HEIGHT (w))
+      && y < top_y + CURRENT_HEADER_LINE_HEIGHT (w))
     {
       part = ON_HEADER_LINE;
       goto header_vertical_border_check;
     }
 
-  if (*x < x0 || *x >= x1)
-    return ON_NOTHING;
+  if (x < x0 || x >= x1) return ON_NOTHING;
 
   /* Outside any interesting column?  */
-  if (*x < left_x || *x > right_x)
-    {
-      *y -= top_y;
-      return ON_SCROLL_BAR;
-    }
+  if (x < left_x || x > right_x)
+    return ON_SCROLL_BAR;
 
   lmargin_width = window_box_width (w, LEFT_MARGIN_AREA);
   rmargin_width = window_box_width (w, RIGHT_MARGIN_AREA);
@@ -893,77 +862,79 @@
       if (!w->pseudo_window_p
 	  && !WINDOW_HAS_VERTICAL_SCROLL_BAR (w)
 	  && !WINDOW_RIGHTMOST_P (w)
-	  && (eabs (*x - right_x) < grabbable_width))
-	{
-	  /* Convert X and Y to window relative coordinates.
-	     Vertical border is at the right edge of window.  */
-	  *x = min (right_x, *x) - left_x;
-	  *y -= top_y;
-	  return ON_VERTICAL_BORDER;
-	}
+	  && (eabs (x - right_x) < grabbable_width))
+	return ON_VERTICAL_BORDER;
     }
-  else
-    {
-      /* Need to say "*x > right_x" rather than >=, since on character
-	 terminals, the vertical line's x coordinate is right_x.  */
-      if (!w->pseudo_window_p
-	  && !WINDOW_RIGHTMOST_P (w)
-	  && *x > right_x - ux)
-	{
-	  /* On the border on the right side of the window?  Assume that
-	     this area begins at RIGHT_X minus a canonical char width.  */
-	  *x = min (right_x, *x) - left_x;
-	  *y -= top_y;
-	  return ON_VERTICAL_BORDER;
-	}
-    }
-
-  if (*x < text_left)
+  /* Need to say "x > right_x" rather than >=, since on character
+     terminals, the vertical line's x coordinate is right_x.  */
+  else if (!w->pseudo_window_p
+	   && !WINDOW_RIGHTMOST_P (w)
+	   && x > right_x - ux)
+    return ON_VERTICAL_BORDER;
+
+  if (x < text_left)
     {
       if (lmargin_width > 0
 	  && (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w)
-	      ? (*x >= left_x + WINDOW_LEFT_FRINGE_WIDTH (w))
-	      : (*x < left_x + lmargin_width)))
-	{
-	  *x -= left_x;
-	  if (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w))
-	    *x -= WINDOW_LEFT_FRINGE_WIDTH (w);
-	  *y -= top_y;
-	  return ON_LEFT_MARGIN;
-	}
-
-      /* Convert X and Y to window-relative pixel coordinates.  */
-      *x -= left_x;
-      *y -= top_y;
+	      ? (x >= left_x + WINDOW_LEFT_FRINGE_WIDTH (w))
+	      : (x < left_x + lmargin_width)))
+	return ON_LEFT_MARGIN;
+
       return ON_LEFT_FRINGE;
     }
 
-  if (*x >= text_right)
+  if (x >= text_right)
     {
       if (rmargin_width > 0
 	  && (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w)
-	      ? (*x < right_x - WINDOW_RIGHT_FRINGE_WIDTH (w))
-	      : (*x >= right_x - rmargin_width)))
-	{
-	  *x -= right_x - rmargin_width;
-	  if (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w))
-	    *x += WINDOW_RIGHT_FRINGE_WIDTH (w);
-	  *y -= top_y;
-	  return ON_RIGHT_MARGIN;
-	}
-
-      /* Convert X and Y to window-relative pixel coordinates.  */
-      *x -= left_x + WINDOW_LEFT_FRINGE_WIDTH (w);
-      *y -= top_y;
+	      ? (x < right_x - WINDOW_RIGHT_FRINGE_WIDTH (w))
+	      : (x >= right_x - rmargin_width)))
+	return ON_RIGHT_MARGIN;
+
       return ON_RIGHT_FRINGE;
     }
 
   /* Everything special ruled out - must be on text area */
-  *x -= text_left;
-  *y -= top_y;
   return ON_TEXT;
 }
 
+/* Take X is the frame-relative pixel x-coordinate, and return the
+   x-coordinate relative to part PART of window W. */
+int
+window_relative_x_coord (struct window *w, enum window_part part, int x)
+{
+  int left_x = (w->pseudo_window_p) ? 0 : WINDOW_BOX_LEFT_EDGE_X (w);
+
+  switch (part)
+    {
+    case ON_TEXT:
+      return x - window_box_left (w, TEXT_AREA);
+
+    case ON_LEFT_FRINGE:
+      return x - left_x;
+
+    case ON_RIGHT_FRINGE:
+      return x - left_x - WINDOW_LEFT_FRINGE_WIDTH (w);
+
+    case ON_LEFT_MARGIN:
+      return (x - left_x
+	      - ((WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w))
+		 ? WINDOW_LEFT_FRINGE_WIDTH (w) : 0));
+
+    case ON_RIGHT_MARGIN:
+      return (x + 1
+	      - ((w->pseudo_window_p)
+		 ? WINDOW_TOTAL_WIDTH (w)
+		 : WINDOW_BOX_RIGHT_EDGE_X (w))
+	      + window_box_width (w, RIGHT_MARGIN_AREA)
+	      + ((WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w))
+		 ? WINDOW_RIGHT_FRINGE_WIDTH (w) : 0));
+    }
+
+  /* ON_SCROLL_BAR, ON_NOTHING, and ON_VERTICAL_BORDER:  */
+  return 0;
+}
+
 
 DEFUN ("coordinates-in-window-p", Fcoordinates_in_window_p,
        Scoordinates_in_window_p, 2, 2, 0,
@@ -1000,14 +971,16 @@
   x = FRAME_PIXEL_X_FROM_CANON_X (f, lx) + FRAME_INTERNAL_BORDER_WIDTH (f);
   y = FRAME_PIXEL_Y_FROM_CANON_Y (f, ly) + FRAME_INTERNAL_BORDER_WIDTH (f);
 
-  switch (coordinates_in_window (w, &x, &y))
+  switch (coordinates_in_window (w, x, y))
     {
     case ON_NOTHING:
       return Qnil;
 
     case ON_TEXT:
-      /* X and Y are now window relative pixel coordinates.  Convert
-	 them to canonical char units before returning them.  */
+      /* Convert X and Y to window relative pixel coordinates, and
+	 return the canonical char units.  */
+      x -= window_box_left (w, TEXT_AREA);
+      y -= WINDOW_TOP_EDGE_Y (w);
       return Fcons (FRAME_CANON_X_FROM_PIXEL_X (f, x),
 		    FRAME_CANON_Y_FROM_PIXEL_Y (f, y));
 
@@ -1054,7 +1027,7 @@
 struct check_window_data
 {
   Lisp_Object *window;
-  int *x, *y;
+  int x, y;
   enum window_part *part;
 };
 
@@ -1081,8 +1054,7 @@
    return it as a Lisp_Object.
 
    If X, Y is on one of the window's special `window_part' elements,
-   set *PART to the id of that element, and return X and Y converted
-   to window relative coordinates in WX and WY.
+   set *PART to the id of that element.
 
    If there is no window under X, Y return nil and leave *PART
    unmodified.  TOOL_BAR_P non-zero means detect tool-bar windows.
@@ -1097,7 +1069,8 @@
    case.  */
 
 Lisp_Object
-window_from_coordinates (struct frame *f, int x, int y, enum window_part *part, int *wx, int *wy, int tool_bar_p)
+window_from_coordinates (struct frame *f, int x, int y,
+			 enum window_part *part, int tool_bar_p)
 {
   Lisp_Object window;
   struct check_window_data cw;
@@ -1107,7 +1080,7 @@
     part = &dummy;
 
   window = Qnil;
-  cw.window = &window, cw.x = &x, cw.y = &y; cw.part = part;
+  cw.window = &window, cw.x = x, cw.y = y; cw.part = part;
   foreach_window (f, check_window_containing, &cw);
 
   /* If not found above, see if it's in the tool bar window, if a tool
@@ -1116,16 +1089,13 @@
       && tool_bar_p
       && WINDOWP (f->tool_bar_window)
       && WINDOW_TOTAL_LINES (XWINDOW (f->tool_bar_window)) > 0
-      && (coordinates_in_window (XWINDOW (f->tool_bar_window), &x, &y)
+      && (coordinates_in_window (XWINDOW (f->tool_bar_window), x, y)
 	  != ON_NOTHING))
     {
       *part = ON_TEXT;
       window = f->tool_bar_window;
     }
 
-  if (wx) *wx = x;
-  if (wy) *wy = y;
-
   return window;
 }
 
@@ -1152,7 +1122,7 @@
 				   + FRAME_INTERNAL_BORDER_WIDTH (f)),
 				  (FRAME_PIXEL_Y_FROM_CANON_Y (f, y)
 				   + FRAME_INTERNAL_BORDER_WIDTH (f)),
-				  0, 0, 0, 0);
+				  0, 0);
 }
 
 DEFUN ("window-point", Fwindow_point, Swindow_point, 0, 1, 0,
@@ -2420,6 +2390,16 @@
   window_loop (CHECK_ALL_WINDOWS, Qnil, 1, Qt);
 }
 
+DEFUN ("window-use-time", Fwindow_use_time, Swindow_use_time, 0, 1, 0,
+       doc: /* Return WINDOW's use time.
+WINDOW defaults to the selected window.  The window with the highest use
+time is the most recently selected one.  The window with the lowest use
+time is the least recently selected one.  */)
+  (Lisp_Object window)
+{
+  return decode_window (window)->use_time;
+}
+
 DEFUN ("get-lru-window", Fget_lru_window, Sget_lru_window, 0, 2, 0,
        doc: /* Return the window least recently selected or used for display.
 \(LRU means Least Recently Used.)
--- a/src/window.h	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/window.h	Sat Nov 20 13:45:14 2010 +0200
@@ -788,8 +788,7 @@
 extern Lisp_Object make_window (void);
 extern void delete_window (Lisp_Object);
 extern Lisp_Object window_from_coordinates (struct frame *, int, int,
-                                            enum window_part *,
-                                            int *, int*, int);
+                                            enum window_part *, int);
 EXFUN (Fwindow_dedicated_p, 1);
 extern int window_height (Lisp_Object);
 extern int window_width (Lisp_Object);
@@ -804,6 +803,7 @@
                             void *);
 extern void grow_mini_window (struct window *, int);
 extern void shrink_mini_window (struct window *);
+extern int window_relative_x_coord (struct window *, enum window_part, int);
 
 void run_window_configuration_change_hook (struct frame *f);
 
--- a/src/xdisp.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/xdisp.c	Sat Nov 20 13:45:14 2010 +0200
@@ -971,7 +971,7 @@
 Lisp_Object Qglyphless_char_display;
 
 /* Method symbols for Vglyphless_char_display.  */
-static Lisp_Object Qhexa_code, Qempty_box, Qthin_space, Qzero_width;
+static Lisp_Object Qhex_code, Qempty_box, Qthin_space, Qzero_width;
 
 /* Default pixel width of `thin-space' display method.  */
 #define THIN_SPACE_WIDTH 1
@@ -2218,7 +2218,7 @@
      frame pixel coordinates X/Y on frame F.  */
 
   if (!f->glyphs_initialized_p
-      || (window = window_from_coordinates (f, gx, gy, &part, &x, &y, 0),
+      || (window = window_from_coordinates (f, gx, gy, &part, 0),
 	  NILP (window)))
     {
       width = FRAME_SMALLEST_CHAR_WIDTH (f);
@@ -2230,6 +2230,9 @@
   width = WINDOW_FRAME_COLUMN_WIDTH (w);
   height = WINDOW_FRAME_LINE_HEIGHT (w);
 
+  x = window_relative_x_coord (w, part, gx);
+  y = gy - WINDOW_TOP_EDGE_Y (w);
+
   r = MATRIX_FIRST_TEXT_ROW (w->current_matrix);
   end_row = MATRIX_BOTTOM_TEXT_ROW (w->current_matrix, w);
 
@@ -5813,8 +5816,8 @@
     it->glyphless_method = GLYPHLESS_DISPLAY_THIN_SPACE;
   else if (EQ (glyphless_method, Qempty_box))
     it->glyphless_method = GLYPHLESS_DISPLAY_EMPTY_BOX;
-  else if (EQ (glyphless_method, Qhexa_code))
-    it->glyphless_method = GLYPHLESS_DISPLAY_HEXA_CODE;
+  else if (EQ (glyphless_method, Qhex_code))
+    it->glyphless_method = GLYPHLESS_DISPLAY_HEX_CODE;
   else if (STRINGP (glyphless_method))
     it->glyphless_method = GLYPHLESS_DISPLAY_ACRONYM;
   else
@@ -12836,6 +12839,15 @@
 	&& BUFFERP (glyph->object) && glyph->charpos == pt_old)
       && bpos_covered < pt_old)
     {
+      /* An empty line has a single glyph whose OBJECT is zero and
+	 whose CHARPOS is the position of a newline on that line.
+	 Note that on a TTY, there are more glyphs after that, which
+	 were produced by extend_face_to_end_of_line, but their
+	 CHARPOS is zero or negative.  */
+      int empty_line_p =
+	(row->reversed_p ? glyph > glyphs_end : glyph < glyphs_end)
+	&& INTEGERP (glyph->object) && glyph->charpos > 0;
+
       if (row->ends_in_ellipsis_p && pos_after == last_pos)
 	{
 	  EMACS_INT ellipsis_pos;
@@ -12871,10 +12883,11 @@
 	       || (row->truncated_on_left_p && pt_old < bpos_min)
 	       || (row->truncated_on_right_p && pt_old > bpos_max)
 	       /* Zero-width characters produce no glyphs.  */
-	       || ((row->reversed_p
-		    ? glyph_after > glyphs_end
-		    : glyph_after < glyphs_end)
-		   && eabs (glyph_after - glyph_before) == 1))
+	       || (!string_seen
+		   && !empty_line_p
+		   && (row->reversed_p
+		       ? glyph_after > glyphs_end
+		       : glyph_after < glyphs_end)))
 	{
 	  cursor = glyph_after;
 	  x = -1;
@@ -12928,7 +12941,8 @@
 			     cursor on that character's glyph.  */
 			  EMACS_INT strpos = glyph->charpos;
 
-			  cursor = glyph;
+			  if (tem)
+			    cursor = glyph;
 			  for (glyph += incr;
 			       (row->reversed_p ? glyph > stop : glyph < stop)
 				 && EQ (glyph->object, str);
@@ -12945,7 +12959,7 @@
 				  cursor = glyph;
 				  break;
 				}
-			      if (glyph->charpos < strpos)
+			      if (tem && glyph->charpos < strpos)
 				{
 				  strpos = glyph->charpos;
 				  cursor = glyph;
@@ -12960,10 +12974,9 @@
 		    }
 		  /* This string is not what we want; skip all of the
 		     glyphs that came from it.  */
-		  do
+		  while ((row->reversed_p ? glyph > stop : glyph < stop)
+			 && EQ (glyph->object, str))
 		    glyph += incr;
-		  while ((row->reversed_p ? glyph > stop : glyph < stop)
-			 && EQ (glyph->object, str));
 		}
 	      else
 		glyph += incr;
@@ -22292,7 +22305,7 @@
    and only if this is for a character for which no font was found.
 
    If the display method (it->glyphless_method) is
-   GLYPHLESS_DISPLAY_ACRONYM or GLYPHLESS_DISPLAY_HEXA_CODE, LEN is a
+   GLYPHLESS_DISPLAY_ACRONYM or GLYPHLESS_DISPLAY_HEX_CODE, LEN is a
    length of the acronym or the hexadecimal string, UPPER_XOFF and
    UPPER_YOFF are pixel offsets for the upper part of the string,
    LOWER_XOFF and LOWER_YOFF are for the lower part.
@@ -22441,7 +22454,7 @@
 	}
       else
 	{
-	  xassert (it->glyphless_method == GLYPHLESS_DISPLAY_HEXA_CODE);
+	  xassert (it->glyphless_method == GLYPHLESS_DISPLAY_HEX_CODE);
 	  sprintf (buf, "%0*X", it->c < 0x10000 ? 4 : 6, it->c);
 	  str = buf;
 	}
@@ -25383,7 +25396,7 @@
     }
 
   /* Which window is that in?  */
-  window = window_from_coordinates (f, x, y, &part, 0, 0, 1);
+  window = window_from_coordinates (f, x, y, &part, 1);
 
   /* If we were displaying active text in another window, clear that.
      Also clear if we move out of text area in same window.  */
@@ -27057,7 +27070,7 @@
   hourglass_shown_p = 0;
 
   DEFSYM (Qglyphless_char, "glyphless-char");
-  DEFSYM (Qhexa_code, "hexa-code");
+  DEFSYM (Qhex_code, "hex-code");
   DEFSYM (Qempty_box, "empty-box");
   DEFSYM (Qthin_space, "thin-space");
   DEFSYM (Qzero_width, "zero-width");
@@ -27073,13 +27086,13 @@
 	       doc: /* Char-table to control displaying of glyphless characters.
 Each element, if non-nil, is an ASCII acronym string (displayed in a box)
 or one of these symbols:
-  hexa-code: display with hexadecimal character code in a box
-  empty-box: display with an empty box
-  thin-space: display with 1-pixel width space
+  hex-code:   display the hexadecimal code of a character in a box
+  empty-box:  display as an empty box
+  thin-space: display as 1-pixel width space
   zero-width: don't display
 
 It has one extra slot to control the display of a character for which
-no font is found.  The value of the slot is `hexa-code' or `empty-box'.
+no font is found.  The value of the slot is `hex-code' or `empty-box'.
 The default is `empty-box'.  */);
   Vglyphless_char_display = Fmake_char_table (Qglyphless_char_display, Qnil);
   Fset_char_table_extra_slot (Vglyphless_char_display, make_number (0),
--- a/src/xfaces.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/xfaces.c	Sat Nov 20 13:45:14 2010 +0200
@@ -4540,7 +4540,7 @@
    Value is the ID of the face found.  If no suitable face is found,
    realize a new one.  */
 
-INLINE int
+static INLINE int
 lookup_face (struct frame *f, Lisp_Object *attr)
 {
   struct face_cache *cache = FRAME_FACE_CACHE (f);
--- a/src/xfns.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/xfns.c	Sat Nov 20 13:45:14 2010 +0200
@@ -3367,8 +3367,6 @@
 		       "background", "Background", RES_TYPE_STRING);
   x_default_parameter (f, parms, Qmouse_color, build_string ("black"),
 		       "pointerColor", "Foreground", RES_TYPE_STRING);
-  x_default_parameter (f, parms, Qcursor_color, build_string ("black"),
-		       "cursorColor", "Foreground", RES_TYPE_STRING);
   x_default_parameter (f, parms, Qborder_color, build_string ("black"),
 		       "borderColor", "BorderColor", RES_TYPE_STRING);
   x_default_parameter (f, parms, Qscreen_gamma, Qnil,
@@ -5021,7 +5019,7 @@
 Automatically hide the tooltip after TIMEOUT seconds.  TIMEOUT nil
 means use the default timeout of 5 seconds.
 
-If the list of frame parameters PARAMS contains a `left' parameters,
+If the list of frame parameters PARMS contains a `left' parameters,
 the tooltip is displayed at that x-position.  Otherwise it is
 displayed at the mouse position, with offset DX added (default is 5 if
 DX isn't specified).  Likewise for the y-position; if a `top' frame
--- a/src/xmenu.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/xmenu.c	Sat Nov 20 13:45:14 2010 +0200
@@ -89,7 +89,9 @@
 #include <X11/Xaw/Paned.h>
 #endif /* HAVE_XAW3D */
 #endif /* USE_LUCID */
+#ifdef USE_MOTIF
 #include "../lwlib/lwlib.h"
+#endif
 #else /* not USE_X_TOOLKIT */
 #ifndef USE_GTK
 #include "../oldXMenu/XMenu.h"
@@ -2581,5 +2583,3 @@
 #endif
 }
 
-/* arch-tag: 92ea573c-398e-496e-ac73-2436f7d63242
-   (do not change this comment) */
--- a/src/xselect.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/xselect.c	Sat Nov 20 13:45:14 2010 +0200
@@ -2527,14 +2527,26 @@
   (Lisp_Object display, Lisp_Object dest, Lisp_Object from, Lisp_Object message_type, Lisp_Object format, Lisp_Object values)
 {
   struct x_display_info *dpyinfo = check_x_display_info (display);
+
+  CHECK_STRING (message_type);
+  x_send_client_event(display, dest, from,
+                      XInternAtom (dpyinfo->display,
+                                   SDATA (message_type),
+                                   False),
+                      format, values);
+
+  return Qnil;
+}
+
+void
+x_send_client_event (Lisp_Object display, Lisp_Object dest, Lisp_Object from, Atom message_type, Lisp_Object format, Lisp_Object values)
+{
+  struct x_display_info *dpyinfo = check_x_display_info (display);
   Window wdest;
   XEvent event;
-  Lisp_Object cons;
-  int size;
   struct frame *f = check_x_frame (from);
   int to_root;
 
-  CHECK_STRING (message_type);
   CHECK_NUMBER (format);
   CHECK_CONS (values);
 
@@ -2579,13 +2591,9 @@
   if (wdest == 0) wdest = dpyinfo->root_window;
   to_root = wdest == dpyinfo->root_window;
 
-  for (cons = values, size = 0; CONSP (cons); cons = XCDR (cons), ++size)
-    ;
-
   BLOCK_INPUT;
 
-  event.xclient.message_type
-    = XInternAtom (dpyinfo->display, SDATA (message_type), False);
+  event.xclient.message_type = message_type;
   event.xclient.display = dpyinfo->display;
 
   /* Some clients (metacity for example) expects sending window to be here
@@ -2610,8 +2618,6 @@
   }
   x_uncatch_errors ();
   UNBLOCK_INPUT;
-
-  return Qnil;
 }
 
 
--- a/src/xsettings.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/xsettings.c	Sat Nov 20 13:45:14 2010 +0200
@@ -627,7 +627,9 @@
 #if defined (HAVE_GCONF) && defined (HAVE_XFT)
   char *s;
 
+#ifdef HAVE_G_TYPE_INIT
   g_type_init ();
+#endif
   gconf_client = gconf_client_get_default ();
   s = gconf_client_get_string (gconf_client, SYSTEM_MONO_FONT, NULL);
   if (s)
@@ -656,18 +658,10 @@
 static void
 init_xsettings (struct x_display_info *dpyinfo)
 {
-  char sel[64];
   Display *dpy = dpyinfo->display;
 
   BLOCK_INPUT;
 
-  sprintf (sel, "_XSETTINGS_S%d", XScreenNumberOfScreen (dpyinfo->screen));
-  dpyinfo->Xatom_xsettings_sel = XInternAtom (dpy, sel, False);
-  dpyinfo->Xatom_xsettings_prop = XInternAtom (dpy,
-                                               "_XSETTINGS_SETTINGS",
-                                               False);
-  dpyinfo->Xatom_xsettings_mgr = XInternAtom (dpy, "MANAGER", False);
-
   /* Select events so we can detect client messages sent when selection
      owner changes.  */
   XSelectInput (dpy, dpyinfo->root_window, StructureNotifyMask);
--- a/src/xsmfns.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/xsmfns.c	Sat Nov 20 13:45:14 2010 +0200
@@ -410,8 +410,8 @@
   XSetClassHint (dpyinfo->display, w, &class_hints);
   XStoreName (dpyinfo->display, w, class_hints.res_name);
 
-  sm_id = XInternAtom (dpyinfo->display, "SM_CLIENT_ID", False);
-  XChangeProperty (dpyinfo->display, w, sm_id, XA_STRING, 8, PropModeReplace,
+  XChangeProperty (dpyinfo->display, w, dpyinfo->Xatom_SM_CLIENT_ID,
+                   XA_STRING, 8, PropModeReplace,
                    (unsigned char *)client_id, strlen (client_id));
 
   dpyinfo->client_leader_window = w;
--- a/src/xterm.c	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/xterm.c	Sat Nov 20 13:45:14 2010 +0200
@@ -442,7 +442,6 @@
 }
 
 #define OPAQUE  0xffffffff
-#define OPACITY "_NET_WM_WINDOW_OPACITY"
 
 void
 x_set_frame_alpha (struct frame *f)
@@ -486,7 +485,7 @@
     unsigned long n, left;
 
     x_catch_errors (dpy);
-    rc = XGetWindowProperty (dpy, win, XInternAtom(dpy, OPACITY, False),
+    rc = XGetWindowProperty (dpy, win, dpyinfo->Xatom_net_wm_window_opacity,
 			     0L, 1L, False, XA_CARDINAL,
 			     &actual, &format, &n, &left,
 			     &data);
@@ -504,7 +503,7 @@
   }
 
   x_catch_errors (dpy);
-  XChangeProperty (dpy, win, XInternAtom (dpy, OPACITY, False),
+  XChangeProperty (dpy, win, dpyinfo->Xatom_net_wm_window_opacity,
 		   XA_CARDINAL, 32, PropModeReplace,
 		   (unsigned char *) &opac, 1L);
   x_uncatch_errors ();
@@ -1370,7 +1369,7 @@
 		str = (char *) SDATA (acronym);
 	    }
 	}
-      else if (glyph->u.glyphless.method == GLYPHLESS_DISPLAY_HEXA_CODE)
+      else if (glyph->u.glyphless.method == GLYPHLESS_DISPLAY_HEX_CODE)
 	{
 	  sprintf ((char *) buf, "%0*X",
 		   glyph->u.glyphless.ch < 0x10000 ? 4 : 6,
@@ -6659,7 +6658,7 @@
 
                 window = window_from_coordinates (f,
                                                   event.xmotion.x, event.xmotion.y,
-                                                  0, 0, 0, 0);
+                                                  0, 0);
 
                 /* Window will be selected only when it is not selected now and
                    last mouse movement event was not in it.  Minibuffer window
@@ -6798,7 +6797,7 @@
                 int x = event.xbutton.x;
                 int y = event.xbutton.y;
 
-                window = window_from_coordinates (f, x, y, 0, 0, 0, 1);
+                window = window_from_coordinates (f, x, y, 0, 1);
                 tool_bar_p = EQ (window, f->tool_bar_window);
 
                 if (tool_bar_p && event.xbutton.button < 4)
@@ -8285,12 +8284,11 @@
    http://freedesktop.org/wiki/Specifications/wm-spec.  */
 
 static int
-wm_supports (struct frame *f, const char *atomname)
+wm_supports (struct frame *f, Atom want_atom)
 {
   Atom actual_type;
   unsigned long actual_size, bytes_remaining;
   int i, rc, actual_format;
-  Atom prop_atom;
   Window wmcheck_window;
   struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f);
   Window target_window = dpyinfo->root_window;
@@ -8298,15 +8296,13 @@
   Display *dpy = FRAME_X_DISPLAY (f);
   unsigned char *tmp_data = NULL;
   Atom target_type = XA_WINDOW;
-  Atom want_atom;
 
   BLOCK_INPUT;
 
-  prop_atom = XInternAtom (dpy, "_NET_SUPPORTING_WM_CHECK", False);
-
   x_catch_errors (dpy);
   rc = XGetWindowProperty (dpy, target_window,
-                           prop_atom, 0, max_len, False, target_type,
+                           dpyinfo->Xatom_net_supporting_wm_check,
+                           0, max_len, False, target_type,
                            &actual_type, &actual_format, &actual_size,
                            &bytes_remaining, &tmp_data);
 
@@ -8341,10 +8337,10 @@
       dpyinfo->net_supported_window = 0;
 
       target_type = XA_ATOM;
-      prop_atom = XInternAtom (dpy, "_NET_SUPPORTED", False);
       tmp_data = NULL;
       rc = XGetWindowProperty (dpy, target_window,
-                               prop_atom, 0, max_len, False, target_type,
+                               dpyinfo->Xatom_net_supported,
+                               0, max_len, False, target_type,
                                &actual_type, &actual_format, &actual_size,
                                &bytes_remaining, &tmp_data);
 
@@ -8362,7 +8358,6 @@
     }
 
   rc = 0;
-  want_atom = XInternAtom (dpy, atomname, False);
 
   for (i = 0; rc == 0 && i < dpyinfo->nr_net_supported_atoms; ++i)
     rc = dpyinfo->net_supported_atoms[i] == want_atom;
@@ -8374,31 +8369,33 @@
 }
 
 static void
-set_wm_state (Lisp_Object frame, int add, const char *what, const char *what2)
-{
-  const char *atom = "_NET_WM_STATE";
-  Fx_send_client_event (frame, make_number (0), frame,
-                        make_unibyte_string (atom, strlen (atom)),
-                        make_number (32),
-                        /* 1 = add, 0 = remove */
+set_wm_state (Lisp_Object frame, int add, Atom atom, Atom value)
+{
+  struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (XFRAME (frame));
+
+  x_send_client_event (frame, make_number (0), frame,
+                       dpyinfo->Xatom_net_wm_state,
+                       make_number (32),
+                       /* 1 = add, 0 = remove */
+                       Fcons
+                       (make_number (add ? 1 : 0),
                         Fcons
-                        (make_number (add ? 1 : 0),
-                         Fcons
-                         (make_unibyte_string (what, strlen (what)),
-                          what2 != 0
-                          ? Fcons (make_unibyte_string (what2, strlen (what2)),
-                                   Qnil)
-                          : Qnil)));
+                        (make_fixnum_or_float (atom),
+                         value != 0
+                         ? Fcons (make_fixnum_or_float (value), Qnil)
+                         : Qnil)));
 }
 
 void
 x_set_sticky (struct frame *f, Lisp_Object new_value, Lisp_Object old_value)
 {
   Lisp_Object frame;
+  struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f);
 
   XSETFRAME (frame, f);
+
   set_wm_state (frame, NILP (new_value) ? 0 : 1,
-                "_NET_WM_STATE_STICKY", NULL);
+                dpyinfo->Xatom_net_wm_state_sticky, None);
 }
 
 /* Return the current _NET_WM_STATE.
@@ -8406,7 +8403,7 @@
    STICKY is set to 1 if the sticky state is set, 0 if not.  */
 
 static void
-get_current_vm_state (struct frame *f,
+get_current_wm_state (struct frame *f,
                       Window window,
                       int *size_state,
                       int *sticky)
@@ -8457,7 +8454,7 @@
           else
             *size_state = FULLSCREEN_HEIGHT;
         }
-      else if (a == dpyinfo->Xatom_net_wm_state_fullscreen_atom)
+      else if (a == dpyinfo->Xatom_net_wm_state_fullscreen)
         *size_state = FULLSCREEN_BOTH;
       else if (a == dpyinfo->Xatom_net_wm_state_sticky)
         *sticky = 1;
@@ -8472,23 +8469,21 @@
 static int
 do_ewmh_fullscreen (struct frame *f)
 {
-  int have_net_atom = wm_supports (f, "_NET_WM_STATE");
+  struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f);
+  int have_net_atom = wm_supports (f, dpyinfo->Xatom_net_wm_state);
   Lisp_Object lval = get_frame_param (f, Qfullscreen);
   int cur, dummy;
 
-  get_current_vm_state (f, FRAME_OUTER_WINDOW (f), &cur, &dummy);
+  get_current_wm_state (f, FRAME_OUTER_WINDOW (f), &cur, &dummy);
 
   /* Some window managers don't say they support _NET_WM_STATE, but they do say
      they support _NET_WM_STATE_FULLSCREEN.  Try that also.  */
   if (!have_net_atom)
-      have_net_atom = wm_supports (f, "_NET_WM_STATE_FULLSCREEN");
+    have_net_atom = wm_supports (f, dpyinfo->Xatom_net_wm_state_fullscreen);
 
   if (have_net_atom && cur != f->want_fullscreen)
     {
       Lisp_Object frame;
-      const char *fs = "_NET_WM_STATE_FULLSCREEN";
-      const char *fw = "_NET_WM_STATE_MAXIMIZED_HORZ";
-      const char *fh = "_NET_WM_STATE_MAXIMIZED_VERT";
 
       XSETFRAME (frame, f);
 
@@ -8500,33 +8495,38 @@
         case FULLSCREEN_BOTH:
           if (cur == FULLSCREEN_WIDTH || cur == FULLSCREEN_MAXIMIZED
               || cur == FULLSCREEN_HEIGHT)
-            set_wm_state (frame, 0, fw, fh);
-          set_wm_state (frame, 1, fs, NULL);
+            set_wm_state (frame, 0, dpyinfo->Xatom_net_wm_state_maximized_horz,
+                          dpyinfo->Xatom_net_wm_state_maximized_vert);
+          set_wm_state (frame, 1, dpyinfo->Xatom_net_wm_state_fullscreen, None);
           break;
         case FULLSCREEN_WIDTH:
           if (cur == FULLSCREEN_BOTH || cur == FULLSCREEN_HEIGHT
               || cur == FULLSCREEN_MAXIMIZED)
-            set_wm_state (frame, 0, fs, fh);
+            set_wm_state (frame, 0, dpyinfo->Xatom_net_wm_state_fullscreen,
+                          dpyinfo->Xatom_net_wm_state_maximized_vert);
           if (cur != FULLSCREEN_MAXIMIZED)
-            set_wm_state (frame, 1, fw, NULL);
+            set_wm_state (frame, 1, dpyinfo->Xatom_net_wm_state_maximized_horz, None);
           break;
         case FULLSCREEN_HEIGHT:
           if (cur == FULLSCREEN_BOTH || cur == FULLSCREEN_WIDTH
               || cur == FULLSCREEN_MAXIMIZED)
-            set_wm_state (frame, 0, fs, fw);
+            set_wm_state (frame, 0, dpyinfo->Xatom_net_wm_state_fullscreen,
+                          dpyinfo->Xatom_net_wm_state_maximized_horz);
           if (cur != FULLSCREEN_MAXIMIZED)
-            set_wm_state (frame, 1, fh, NULL);
+            set_wm_state (frame, 1, dpyinfo->Xatom_net_wm_state_maximized_vert, None);
           break;
         case FULLSCREEN_MAXIMIZED:
           if (cur == FULLSCREEN_BOTH)
-            set_wm_state (frame, 0, fs, NULL);
-          set_wm_state (frame, 1, fw, fh);
+            set_wm_state (frame, 0, dpyinfo->Xatom_net_wm_state_fullscreen, None);
+          set_wm_state (frame, 1, dpyinfo->Xatom_net_wm_state_maximized_horz,
+                        dpyinfo->Xatom_net_wm_state_maximized_vert);
           break;
         case FULLSCREEN_NONE:
           if (cur == FULLSCREEN_BOTH)
-            set_wm_state (frame, 0, fs, NULL);
+            set_wm_state (frame, 0, dpyinfo->Xatom_net_wm_state_fullscreen, None);
           else
-            set_wm_state (frame, 0, fw, fh);
+            set_wm_state (frame, 0, dpyinfo->Xatom_net_wm_state_maximized_horz,
+                          dpyinfo->Xatom_net_wm_state_maximized_vert);
         }
 
       f->want_fullscreen = FULLSCREEN_NONE;
@@ -8556,7 +8556,7 @@
   Lisp_Object lval;
   int sticky = 0;
 
-  get_current_vm_state (f, event->window, &value, &sticky);
+  get_current_wm_state (f, event->window, &value, &sticky);
   lval = Qnil;
   switch (value)
     {
@@ -8966,17 +8966,17 @@
   /* See Window Manager Specification/Extended Window Manager Hints at
      http://freedesktop.org/wiki/Specifications/wm-spec  */
 
-  const char *atom = "_NET_ACTIVE_WINDOW";
-  if (f->async_visible && wm_supports (f, atom))
+  struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f);
+  if (f->async_visible && wm_supports (f, dpyinfo->Xatom_net_active_window))
     {
       Lisp_Object frame;
       XSETFRAME (frame, f);
-      Fx_send_client_event (frame, make_number (0), frame,
-                            make_unibyte_string (atom, strlen (atom)),
-                            make_number (32),
-                            Fcons (make_number (1),
-                                   Fcons (make_number (last_user_time),
-                                          Qnil)));
+      x_send_client_event (frame, make_number (0), frame,
+                           dpyinfo->Xatom_net_active_window,
+                           make_number (32),
+                           Fcons (make_number (1),
+                                  Fcons (make_number (last_user_time),
+                                         Qnil)));
     }
 }
 
@@ -8996,13 +8996,13 @@
 {
   Atom atom;
   unsigned long data[2];
-
-  atom = XInternAtom (FRAME_X_DISPLAY (f), "_XEMBED_INFO", False);
+  struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f);
 
   data[0] = XEMBED_VERSION;
   data[1] = flags;
 
-  XChangeProperty (FRAME_X_DISPLAY (f), FRAME_OUTER_WINDOW (f), atom, atom,
+  XChangeProperty (FRAME_X_DISPLAY (f), FRAME_OUTER_WINDOW (f),
+                   dpyinfo->Xatom_XEMBED_INFO, dpyinfo->Xatom_XEMBED_INFO,
 		   32, PropModeReplace, (unsigned char *) data, 2);
 }
 
@@ -10196,90 +10196,97 @@
       dpyinfo->resx = (mm < 1) ? 100 : pixels * 25.4 / mm;
     }
 
-  dpyinfo->Xatom_wm_protocols
-    = XInternAtom (dpyinfo->display, "WM_PROTOCOLS", False);
-  dpyinfo->Xatom_wm_take_focus
-    = XInternAtom (dpyinfo->display, "WM_TAKE_FOCUS", False);
-  dpyinfo->Xatom_wm_save_yourself
-    = XInternAtom (dpyinfo->display, "WM_SAVE_YOURSELF", False);
-  dpyinfo->Xatom_wm_delete_window
-    = XInternAtom (dpyinfo->display, "WM_DELETE_WINDOW", False);
-  dpyinfo->Xatom_wm_change_state
-    = XInternAtom (dpyinfo->display, "WM_CHANGE_STATE", False);
-  dpyinfo->Xatom_wm_configure_denied
-    = XInternAtom (dpyinfo->display, "WM_CONFIGURE_DENIED", False);
-  dpyinfo->Xatom_wm_window_moved
-    = XInternAtom (dpyinfo->display, "WM_MOVED", False);
-  dpyinfo->Xatom_wm_client_leader
-    = XInternAtom (dpyinfo->display, "WM_CLIENT_LEADER", False);
-  dpyinfo->Xatom_editres
-    = XInternAtom (dpyinfo->display, "Editres", False);
-  dpyinfo->Xatom_CLIPBOARD
-    = XInternAtom (dpyinfo->display, "CLIPBOARD", False);
-  dpyinfo->Xatom_TIMESTAMP
-    = XInternAtom (dpyinfo->display, "TIMESTAMP", False);
-  dpyinfo->Xatom_TEXT
-    = XInternAtom (dpyinfo->display, "TEXT", False);
-  dpyinfo->Xatom_COMPOUND_TEXT
-    = XInternAtom (dpyinfo->display, "COMPOUND_TEXT", False);
-  dpyinfo->Xatom_UTF8_STRING
-    = XInternAtom (dpyinfo->display, "UTF8_STRING", False);
-  dpyinfo->Xatom_DELETE
-    = XInternAtom (dpyinfo->display, "DELETE", False);
-  dpyinfo->Xatom_MULTIPLE
-    = XInternAtom (dpyinfo->display, "MULTIPLE", False);
-  dpyinfo->Xatom_INCR
-    = XInternAtom (dpyinfo->display, "INCR", False);
-  dpyinfo->Xatom_EMACS_TMP
-    = XInternAtom (dpyinfo->display, "_EMACS_TMP_", False);
-  dpyinfo->Xatom_TARGETS
-    = XInternAtom (dpyinfo->display, "TARGETS", False);
-  dpyinfo->Xatom_NULL
-    = XInternAtom (dpyinfo->display, "NULL", False);
-  dpyinfo->Xatom_ATOM_PAIR
-    = XInternAtom (dpyinfo->display, "ATOM_PAIR", False);
-  /* For properties of font.  */
-  dpyinfo->Xatom_PIXEL_SIZE
-    = XInternAtom (dpyinfo->display, "PIXEL_SIZE", False);
-  dpyinfo->Xatom_AVERAGE_WIDTH
-    = XInternAtom (dpyinfo->display, "AVERAGE_WIDTH", False);
-  dpyinfo->Xatom_MULE_BASELINE_OFFSET
-    = XInternAtom (dpyinfo->display, "_MULE_BASELINE_OFFSET", False);
-  dpyinfo->Xatom_MULE_RELATIVE_COMPOSE
-    = XInternAtom (dpyinfo->display, "_MULE_RELATIVE_COMPOSE", False);
-  dpyinfo->Xatom_MULE_DEFAULT_ASCENT
-    = XInternAtom (dpyinfo->display, "_MULE_DEFAULT_ASCENT", False);
-
-  /* Ghostscript support.  */
-  dpyinfo->Xatom_PAGE = XInternAtom (dpyinfo->display, "PAGE", False);
-  dpyinfo->Xatom_DONE = XInternAtom (dpyinfo->display, "DONE", False);
-
-  dpyinfo->Xatom_Scrollbar = XInternAtom (dpyinfo->display, "SCROLLBAR",
-					  False);
-
-  dpyinfo->Xatom_XEMBED = XInternAtom (dpyinfo->display, "_XEMBED",
-				       False);
-
-  dpyinfo->Xatom_net_wm_state
-    = XInternAtom (dpyinfo->display, "_NET_WM_STATE", False);
-  dpyinfo->Xatom_net_wm_state_fullscreen_atom
-    = XInternAtom (dpyinfo->display, "_NET_WM_STATE_FULLSCREEN", False);
-  dpyinfo->Xatom_net_wm_state_maximized_horz
-    = XInternAtom (dpyinfo->display, "_NET_WM_STATE_MAXIMIZED_HORZ", False);
-  dpyinfo->Xatom_net_wm_state_maximized_vert
-    = XInternAtom (dpyinfo->display, "_NET_WM_STATE_MAXIMIZED_VERT", False);
-  dpyinfo->Xatom_net_wm_state_sticky
-    = XInternAtom (dpyinfo->display, "_NET_WM_STATE_STICKY", False);
-  dpyinfo->Xatom_net_window_type
-    = XInternAtom (dpyinfo->display, "_NET_WM_WINDOW_TYPE", False);
-  dpyinfo->Xatom_net_window_type_tooltip
-    = XInternAtom (dpyinfo->display, "_NET_WM_WINDOW_TYPE_TOOLTIP", False);
-  dpyinfo->Xatom_net_wm_icon_name
-    = XInternAtom (dpyinfo->display, "_NET_WM_ICON_NAME", False);
-  dpyinfo->Xatom_net_wm_name
-    = XInternAtom (dpyinfo->display, "_NET_WM_NAME", False);
-  dpyinfo->Xatom_net_frame_extents  
-    = XInternAtom (dpyinfo->display, "_NET_FRAME_EXTENTS", False);
+  {
+    const struct
+    {
+      const char *name;
+      Atom *atom;
+    } atom_refs[] = {
+      { "WM_PROTOCOLS", &dpyinfo->Xatom_wm_protocols  },
+      { "WM_TAKE_FOCUS", &dpyinfo->Xatom_wm_take_focus },
+      { "WM_SAVE_YOURSELF", &dpyinfo->Xatom_wm_save_yourself },
+      { "WM_DELETE_WINDOW", &dpyinfo->Xatom_wm_delete_window },
+      { "WM_CHANGE_STATE", &dpyinfo->Xatom_wm_change_state },
+      { "WM_CONFIGURE_DENIED", &dpyinfo->Xatom_wm_configure_denied },
+      { "WM_MOVED", &dpyinfo->Xatom_wm_window_moved },
+      { "WM_CLIENT_LEADER", &dpyinfo->Xatom_wm_client_leader },
+      { "Editres", &dpyinfo->Xatom_editres },
+      { "CLIPBOARD", &dpyinfo->Xatom_CLIPBOARD },
+      { "TIMESTAMP", &dpyinfo->Xatom_TIMESTAMP },
+      { "TEXT", &dpyinfo->Xatom_TEXT },
+      { "COMPOUND_TEXT", &dpyinfo->Xatom_COMPOUND_TEXT },
+      { "UTF8_STRING", &dpyinfo->Xatom_UTF8_STRING },
+      { "DELETE", &dpyinfo->Xatom_DELETE },
+      { "MULTIPLE", &dpyinfo->Xatom_MULTIPLE },
+      { "INCR", &dpyinfo->Xatom_INCR },
+      { "_EMACS_TMP_",  &dpyinfo->Xatom_EMACS_TMP },
+      { "TARGETS", &dpyinfo->Xatom_TARGETS },
+      { "NULL", &dpyinfo->Xatom_NULL },
+      { "ATOM_PAIR", &dpyinfo->Xatom_ATOM_PAIR },
+      { "_XEMBED_INFO", &dpyinfo->Xatom_XEMBED_INFO },
+      /* For properties of font.  */
+      { "PIXEL_SIZE", &dpyinfo->Xatom_PIXEL_SIZE },
+      { "AVERAGE_WIDTH", &dpyinfo->Xatom_AVERAGE_WIDTH },
+      { "_MULE_BASELINE_OFFSET", &dpyinfo->Xatom_MULE_BASELINE_OFFSET },
+      { "_MULE_RELATIVE_COMPOSE", &dpyinfo->Xatom_MULE_RELATIVE_COMPOSE },
+      { "_MULE_DEFAULT_ASCENT", &dpyinfo->Xatom_MULE_DEFAULT_ASCENT },
+      /* Ghostscript support.  */
+      { "DONE", &dpyinfo->Xatom_DONE },
+      { "PAGE", &dpyinfo->Xatom_PAGE },
+      { "SCROLLBAR", &dpyinfo->Xatom_Scrollbar },
+      { "_XEMBED", &dpyinfo->Xatom_XEMBED },
+      /* EWMH */
+      { "_NET_WM_STATE", &dpyinfo->Xatom_net_wm_state },
+      { "_NET_WM_STATE_FULLSCREEN", &dpyinfo->Xatom_net_wm_state_fullscreen },
+      { "_NET_WM_STATE_MAXIMIZED_HORZ",
+        &dpyinfo->Xatom_net_wm_state_maximized_horz },
+      { "_NET_WM_STATE_MAXIMIZED_VERT",
+        &dpyinfo->Xatom_net_wm_state_maximized_vert },
+      { "_NET_WM_STATE_STICKY", &dpyinfo->Xatom_net_wm_state_sticky },
+      { "_NET_WM_WINDOW_TYPE", &dpyinfo->Xatom_net_window_type },
+      { "_NET_WM_WINDOW_TYPE_TOOLTIP",
+        &dpyinfo->Xatom_net_window_type_tooltip },
+      { "_NET_WM_ICON_NAME", &dpyinfo->Xatom_net_wm_icon_name },
+      { "_NET_WM_NAME", &dpyinfo->Xatom_net_wm_name },
+      { "_NET_SUPPORTED",  &dpyinfo->Xatom_net_supported },
+      { "_NET_SUPPORTING_WM_CHECK", &dpyinfo->Xatom_net_supporting_wm_check },
+      { "_NET_WM_WINDOW_OPACITY", &dpyinfo->Xatom_net_wm_window_opacity },
+      { "_NET_ACTIVE_WINDOW", &dpyinfo->Xatom_net_active_window },
+      { "_NET_FRAME_EXTENTS", &dpyinfo->Xatom_net_frame_extents },
+      /* Session management */
+      { "SM_CLIENT_ID", &dpyinfo->Xatom_SM_CLIENT_ID },
+      { "_XSETTINGS_SETTINGS", &dpyinfo->Xatom_xsettings_prop },
+      { "MANAGER", &dpyinfo->Xatom_xsettings_mgr },
+    };
+
+    int i;
+    const int atom_count = sizeof (atom_refs) / sizeof (atom_refs[0]);
+    /* 1 for _XSETTINGS_SN  */
+    const int total_atom_count = 1 + atom_count;
+    Atom *atoms_return = xmalloc (sizeof (Atom) * total_atom_count);
+    char **atom_names = xmalloc (sizeof (char *) * total_atom_count);
+    char xsettings_atom_name[64];
+
+    for (i = 0; i < atom_count; i++)
+      atom_names[i] = (char *) atom_refs[i].name;
+
+    /* Build _XSETTINGS_SN atom name */
+    snprintf (xsettings_atom_name, sizeof (xsettings_atom_name),
+              "_XSETTINGS_S%d", XScreenNumberOfScreen (dpyinfo->screen));
+    atom_names[i] = xsettings_atom_name;
+
+    XInternAtoms (dpyinfo->display, atom_names, total_atom_count,
+                  False, atoms_return);
+
+    for (i = 0; i < atom_count; i++)
+      *atom_refs[i].atom = atoms_return[i];
+
+    /* Manual copy of last atom */
+    dpyinfo->Xatom_xsettings_sel = atoms_return[i];
+
+    xfree (atom_names);
+    xfree (atoms_return);
+  }
 
   dpyinfo->x_dnd_atoms_size = 8;
   dpyinfo->x_dnd_atoms_length = 0;
--- a/src/xterm.h	Sat Nov 20 13:24:28 2010 +0200
+++ b/src/xterm.h	Sat Nov 20 13:45:14 2010 +0200
@@ -270,7 +270,7 @@
   Atom Xatom_Scrollbar;
 
   /* Atom used in XEmbed client messages.  */
-  Atom Xatom_XEMBED;
+  Atom Xatom_XEMBED, Xatom_XEMBED_INFO;;
  
   /* The frame (if any) which has the X window that has keyboard focus.
      Zero if none.  This is examined by Ffocus_frame in xfns.c.  Note
@@ -332,13 +332,15 @@
 
   /* Extended window manager hints, Atoms supported by the window manager and
      atoms for settig the window type.  */
+  Atom Xatom_net_supported, Xatom_net_supporting_wm_check;
   Atom *net_supported_atoms;
   int nr_net_supported_atoms;
   Window net_supported_window;
   Atom Xatom_net_window_type, Xatom_net_window_type_tooltip;
+  Atom Xatom_net_active_window;
 
   /* Atoms dealing with EWMH (i.e. _NET_...) */
-  Atom Xatom_net_wm_state, Xatom_net_wm_state_fullscreen_atom,
+  Atom Xatom_net_wm_state, Xatom_net_wm_state_fullscreen,
     Xatom_net_wm_state_maximized_horz, Xatom_net_wm_state_maximized_vert,
     Xatom_net_wm_state_sticky, Xatom_net_frame_extents;
 
@@ -348,6 +350,11 @@
 
   /* Frame name and icon name */
   Atom Xatom_net_wm_name, Xatom_net_wm_icon_name;
+  /* Frame opacity */
+  Atom Xatom_net_wm_window_opacity;
+
+  /* SM */
+  Atom Xatom_SM_CLIENT_ID;
 };
 
 #ifdef HAVE_X_I18N
@@ -1011,6 +1018,13 @@
 extern void x_handle_selection_event (struct input_event *);
 extern void x_clear_frame_selections (struct frame *);
 
+extern void x_send_client_event (Lisp_Object display,
+                                 Lisp_Object dest,
+                                 Lisp_Object from,
+                                 Atom message_type,
+                                 Lisp_Object format,
+                                 Lisp_Object values);
+
 extern int x_handle_dnd_message (struct frame *,
                                  XClientMessageEvent *,
                                  struct x_display_info *,