changeset 106996:046bafc276fe

from trunk
author Kenichi Handa <handa@m17n.org>
date Wed, 20 Jan 2010 10:22:20 +0900
parents 68e28bd7d00a (current diff) 6881eb43ae95 (diff)
children 1b97672e92c5
files
diffstat 34 files changed, 433 insertions(+), 224 deletions(-) [+]
line wrap: on
line diff
--- a/doc/misc/ChangeLog	Mon Jan 18 10:07:25 2010 +0900
+++ b/doc/misc/ChangeLog	Wed Jan 20 10:22:20 2010 +0900
@@ -1,3 +1,7 @@
+2010-01-18  Juanma Barranquero  <lekktu@gmail.com>
+
+	* ada-mode.texi (Project File Overview): Fix typo.
+
 2010-01-17  Chong Yidong  <cyd@stupidchicken.com>
 
 	* semantic.texi: Add Richard Y. Kim credit.
--- a/doc/misc/ada-mode.texi	Mon Jan 18 10:07:25 2010 +0900
+++ b/doc/misc/ada-mode.texi	Wed Jan 20 10:22:20 2010 +0900
@@ -396,7 +396,7 @@
 src_dir=/Projects/my_project/src_2
 @end example
 
-Some variables (like @code{src_dir}) are lists; multiple occurances
+Some variables (like @code{src_dir}) are lists; multiple occurrences
 are concatenated.
 
 There must be no space between the variable name and ``='', and no
--- a/lib-src/make-docfile.c	Mon Jan 18 10:07:25 2010 +0900
+++ b/lib-src/make-docfile.c	Wed Jan 20 10:22:20 2010 +0900
@@ -240,10 +240,10 @@
   /* A keyword we look for at the beginning of lines.  If found, it is
      not copied, and SAW_KEYWORD is set to true.  */
   char *keyword;
-  /* The current point we've reached in an occurance of KEYWORD in
+  /* The current point we've reached in an occurrence of KEYWORD in
      the input stream.  */
   char *cur_keyword_ptr;
-  /* Set to true if we saw an occurance of KEYWORD.  */
+  /* Set to true if we saw an occurrence of KEYWORD.  */
   int saw_keyword;
 };
 
@@ -354,7 +354,7 @@
    PRINTFLAG is positive, output string contents to outfile.  If it is
    negative, store contents in buf.  Convert escape sequences \n and
    \t to newline and tab; discard \ followed by newline.
-   If SAW_USAGE is non-zero, then any occurances of the string `usage:'
+   If SAW_USAGE is non-zero, then any occurrences of the string `usage:'
    at the beginning of a line will be removed, and *SAW_USAGE set to
    true if any were encountered.  */
 
--- a/lisp/ChangeLog	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/ChangeLog	Wed Jan 20 10:22:20 2010 +0900
@@ -1,3 +1,115 @@
+2010-01-19  Alan Mackenzie  <acm@muc.de>
+
+	* progmodes/cc-defs.el: Fix bug#5395: typing '#' in an empty
+	buffer throws "args out of range".
+	(c-set-cpp-delimiters, c-clear-cpp-delimiters): Check for EOB
+	playing the role of delimiter.
+
+2010-01-18  Stephen Leake  <stephen_leake@member.fsf.org>
+
+	* lisp/progmodes/ada-mode.el: Fix bug#5400.
+	(ada-matching-decl-start-re): Move into ada-goto-decl-start.
+	(ada-goto-decl-start): Rename from ada-goto-matching-decl-start; callers
+	changed.  Delete RECURSIVE parameter; never used.  Improve doc string.
+	Improve comments in "is" portion.  Handle null procedure declaration.
+	(ada-move-to-end): Improve doc string.
+
+2010-01-18  Óscar Fuentes  <ofv@wanadoo.es>
+
+	* ido.el (ido-cur-list): Initialize to nil.
+	Remove obsolete information from commentary.
+	(ido-choice-list): Initialize to nil.
+	(ido-get-bufname): Reject minibuffers.
+	(ido-make-buffer-list): If "default" is a nonexistent
+	buffer, ignore it, as per the function's comment.
+	(ido-kill-buffer-internal): New function.
+	(ido-kill-buffer-at-head): Use it.
+	(ido-visit-buffer): Likewise.
+
+2010-01-18  Chong Yidong  <cyd@stupidchicken.com>
+
+	* calendar/time-date.el (date-to-time): Doc fix (Bug#5408).
+
+2010-01-18  Juanma Barranquero  <lekktu@gmail.com>
+
+	* cedet/ede/locate.el (ede-locate-file-in-project)
+	(ede-locate-file-in-project-impl): Fix typos in docstrings.
+	(ede-enable-locate-on-project): Fix typos in error messages.
+
+	* cedet/semantic/util-modes.el (semantic-unmatched-syntax-face)
+	(semantic-stickyfunc-old-hlf, semantic-stickyfunc-header-line-format)
+	(semantic-stickyfunc-sticky-classes, semantic-highlight-func-mode-setup)
+	(semantic-stickyfunc-fetch-stickyline): Fix typos in docstrings.
+	(semantic-stickyfunc-popup-menu, semantic-highlight-func-popup-menu):
+	Fix typos in menu help.
+
+	* emacs-lisp/chart.el (chart-file-count, chart-rmail-from):
+	Fix typos in chart titles.
+
+	* whitespace.el (whitespace-style, global-whitespace-newline-mode):
+	* cedet/semantic.el (semantic-require-version, semantic--buffer-cache)
+	(semantic-unmatched-syntax-cache-check, semantic-unmatched-syntax-hook)
+	(semantic--before-fetch-tags-hook, semantic-new-buffer-fcn-was-run)
+	(semantic--umatched-syntax-needs-refresh-p, semantic-elapsed-time)
+	(semantic-parse-stream, semantic-parse-region)
+	(semantic-parse-region-default, semantic--set-buffer-cache)
+	(semantic-minimum-working-buffer-size, semantic-refresh-tags-safe)
+	(semantic-bovinate-toplevel, semantic-load-system-cache-loaded)
+	(semantic-default-submodes):
+	* cedet/semantic/db-ebrowse.el (semanticdb-table-ebrowse)
+	(semanticdb-create-ebrowse-database)
+	(semanticdb-find-tags-for-completion-method)
+	(semanticdb-find-tags-by-class-method)
+	(semanticdb-deep-find-tags-by-name-method)
+	(semanticdb-deep-find-tags-for-completion-method):
+	* cedet/semantic/db-el.el (semanticdb-elisp-mapatom-collector)
+	(semanticdb-find-tags-by-name-method, emacs-lisp-mode)
+	(semanticdb-find-tags-for-completion-method)
+	(semanticdb-find-tags-by-class-method)
+	(semanticdb-deep-find-tags-for-completion-method):
+	* cedet/semantic/db-find.el (semanticdb-find-translate-path)
+	(semanticdb-find-need-cache-update-p, semanticdb-find-result-with-nil-p)
+	(semanticdb-find-scanned-include-tags, semanticdb-find-tags-collector)
+	(semanticdb-find-tags-by-name-method)
+	(semanticdb-find-tags-by-name-regexp-method)
+	(semanticdb-find-tags-for-completion-method)
+	(semanticdb-find-tags-by-class-method)
+	(semanticdb-find-tags-external-children-of-type-method)
+	(semanticdb-find-tags-subclasses-of-type-method)
+	(semanticdb-deep-find-tags-by-name-method)
+	(semanticdb-deep-find-tags-by-name-regexp-method)
+	(semanticdb-deep-find-tags-for-completion-method):
+	* cedet/semantic/db-global.el (semanticdb-enable-gnu-global-hook)
+	(semanticdb-enable-gnu-global-in-buffer)
+	(semanticdb-find-tags-for-completion-method)
+	(semanticdb-deep-find-tags-by-name-method)
+	(semanticdb-deep-find-tags-for-completion-method):
+	* cedet/semantic/db-javascript.el (semanticdb-javascript-tags)
+	(javascript-mode, semanticdb-find-translate-path)
+	(semanticdb-find-tags-for-completion-method)
+	(semanticdb-find-tags-by-class-method)
+	(semanticdb-deep-find-tags-by-name-method)
+	(semanticdb-deep-find-tags-for-completion-method)
+	(semanticdb-find-tags-external-children-of-type-method):
+	* cedet/semantic/idle.el (semantic-idle-work-core-handler)
+	(define-semantic-idle-service, semantic-idle-summary-useful-context-p)
+	(global-semantic-idle-scheduler-mode):
+	* cedet/srecode/dictionary.el (srecode-field-value)
+	(srecode-dictionary-add-section-dictionary):
+	* emacs-lisp/eieio.el (eieio-error-unsupported-class-tags)
+	(eieio-generic-form, eieio-help-mode-augmentation-maybee, eieio-browse)
+	(describe-class, eieio-describe-generic, describe-generic):
+	* emacs-lisp/eieio-speedbar.el (eieio-speedbar-handle-click)
+	(eieio-speedbar-expand):
+	* emulation/viper-cmd.el (viper-exec-form-in-vi)
+	(viper-exec-form-in-emacs, viper-harness-minor-mode, viper-ESC)
+	(viper-repeat, viper-replace-state-exit-cmd, viper-toggle-search-style)
+	(viper-del-backward-char-in-replace, viper-backward-indent)
+	(viper-brac-function, viper-register-to-point, viper-submit-report):
+	* net/tramp.el (tramp-remote-coding-commands):
+	* term/x-win.el (emacs-session-save, x-menu-bar-open, icon-map-list):
+	Fix typos in docstrings.
+
 2010-01-17  Chong Yidong  <cyd@stupidchicken.com>
 
 	* mail/sendmail.el (mail-yank-original): Set the mark if the
@@ -12,7 +124,7 @@
 
 2010-01-17  Stephen Leake  <stephen_leake@member.fsf.org>
 
-	* progmodes/ada-mode.el: Fix bug#1920, bug#5400.
+	* progmodes/ada-mode.el: Fix bug#1920.
 	(ada-ident-re): Delete ., allow multibyte characters.
 	(ada-goto-label-re): New; matches goto labels.
 	(ada-block-label-re): New; matches block labels.
--- a/lisp/calendar/time-date.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/calendar/time-date.el	Wed Jan 20 10:22:20 2010 +0900
@@ -98,7 +98,8 @@
 
 ;;;###autoload
 (defun date-to-time (date)
-  "Parse a string DATE that represents a date-time and return a time value."
+  "Parse a string DATE that represents a date-time and return a time value.
+If DATE lacks timezone information, GMT is assumed."
   (condition-case ()
       (apply 'encode-time
 	     (parse-time-string
--- a/lisp/cedet/cedet-files.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/cedet/cedet-files.el	Wed Jan 20 10:22:20 2010 +0900
@@ -69,7 +69,7 @@
   (let ((file referencefile))
     ;; Replace the ! with /
     (setq file (subst-char-in-string ?! ?/ file))
-    ;; Occurances of // meant there was once a single !.
+    ;; Occurrences of // meant there was once a single !.
     (setq file (replace-regexp-in-string "//" "!" file))
 
     ;; Handle Windows special cases
--- a/lisp/cedet/ede/locate.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/cedet/ede/locate.el	Wed Jan 20 10:22:20 2010 +0900
@@ -97,7 +97,7 @@
       (setq ans 'ede-locate-base))
     (oset proj locate-obj (make-instance ans "Loc" :root root))
     (when (called-interactively-p 'interactive)
-      (message "Setting locator to %s." ans))
+      (message "Setting locator to %s" ans))
     ))
 
 ;;; LOCATE BASECLASS
@@ -142,9 +142,9 @@
 (defmethod ede-locate-file-in-project ((loc ede-locate-base)
 				       filesubstring
 				       )
-  "Locate with LOC occurances of FILESUBSTRING.
+  "Locate with LOC occurrences of FILESUBSTRING.
 Searches are done under the current root of the EDE project
-that crated this ede locat object."
+that created this EDE locate object."
   (let ((ans (ede-locate-file-in-project-impl loc filesubstring))
 	)
     (oset loc file filesubstring)
@@ -154,9 +154,9 @@
 (defmethod ede-locate-file-in-project-impl ((loc ede-locate-base)
 					    filesubstring
 					    )
-  "Locate with LOC occurances of FILESUBSTRING.
+  "Locate with LOC occurrences of FILESUBSTRING.
 Searches are done under the current root of the EDE project
-that crated this ede locat object."
+that created this EDE locate object."
   nil
   )
 
@@ -180,9 +180,9 @@
 
 (defmethod ede-locate-file-in-project-impl ((loc ede-locate-locate)
 					    filesubstring)
-  "Locate with LOC occurances of FILESUBSTRING under PROJECTROOT.
+  "Locate with LOC occurrences of FILESUBSTRING under PROJECTROOT.
 Searches are done under the current root of the EDE project
-that crated this ede locat object."
+that created this EDE locate object."
   ;; We want something like:
   ;;  /my/project/root*/filesubstring.c
   (let* ((searchstr (concat (directory-file-name (oref loc root))
@@ -235,9 +235,9 @@
 
 (defmethod ede-locate-file-in-project-impl ((loc ede-locate-global)
 					    filesubstring)
-  "Locate with LOC occurances of FILESUBSTRING under PROJECTROOT.
+  "Locate with LOC occurrences of FILESUBSTRING under PROJECTROOT.
 Searches are done under the current root of the EDE project
-that crated this ede locat object."
+that created this EDE locate object."
   (require 'cedet-global)
   (let ((default-directory (oref loc root)))
     (cedet-gnu-global-expand-filename filesubstring)))
@@ -273,9 +273,9 @@
 
 (defmethod ede-locate-file-in-project-impl ((loc ede-locate-idutils)
 					    filesubstring)
-  "Locate with LOC occurances of FILESUBSTRING under PROJECTROOT.
+  "Locate with LOC occurrences of FILESUBSTRING under PROJECTROOT.
 Searches are done under the current root of the EDE project
-that crated this ede locat object."
+that created this EDE locate object."
   (require 'cedet-idutils)
   (let ((default-directory (oref loc root)))
     (cedet-idutils-expand-filename filesubstring)))
@@ -309,9 +309,9 @@
 
 (defmethod ede-locate-file-in-project-impl ((loc ede-locate-cscope)
 					    filesubstring)
-  "Locate with LOC occurances of FILESUBSTRING under PROJECTROOT.
+  "Locate with LOC occurrences of FILESUBSTRING under PROJECTROOT.
 Searches are done under the current root of the EDE project
-that crated this ede locat object."
+that created this EDE locate object."
   (let ((default-directory (oref loc root)))
     (cedet-cscope-expand-filename filesubstring)))
 
--- a/lisp/cedet/semantic.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/cedet/semantic.el	Wed Jan 20 10:22:20 2010 +0900
@@ -45,7 +45,7 @@
 (declare-function semanticdb-load-ebrowse-caches "semantic/db-ebrowse")
 
 (defun semantic-require-version (major minor &optional beta)
-  "Non-nil if this version of semantic does not satisfy a specific version.
+  "Non-nil if this version of Semantic does not satisfy a specific version.
 Arguments can be:
 
   (MAJOR MINOR &optional BETA)
@@ -130,7 +130,7 @@
   DO NOT USE THIS VARIABLE IN PROGRAMS.
 
 If you need a tag list, use `semantic-fetch-tags'.  If you need the
-cached values for some reason, chances are you can, add a hook to
+cached values for some reason, chances are you can add a hook to
 `semantic-after-toplevel-cache-change-hook'.")
 (make-variable-buffer-local 'semantic--buffer-cache)
 (semantic-varalias-obsolete 'semantic-toplevel-bovine-cache
@@ -141,7 +141,7 @@
 (make-variable-buffer-local 'semantic-unmatched-syntax-cache)
 
 (defvar semantic-unmatched-syntax-cache-check nil
-  "Non nil if the unmatched syntax cache is out of date.
+  "Non-nil if the unmatched syntax cache is out of date.
 This is tracked with `semantic-change-function'.")
 (make-variable-buffer-local 'semantic-unmatched-syntax-cache-check)
 
@@ -154,18 +154,18 @@
 `top-level' comments.")
 
 (defvar semantic-unmatched-syntax-hook nil
-  "Hooks run when semantic detects syntax not matched in a grammar.
+  "Hooks run when Semantic detects syntax not matched in a grammar.
 Each individual piece of syntax (such as a symbol or punctuation
 character) is called with this hook when it doesn't match in the
 grammar, and multiple unmatched syntax elements are not grouped
-together.  Each hook is called with one argument, which is a list of
-syntax tokens created by the semantic lexer.  Use the functions
+together.  Each hook is called with one argument, which is a list
+of syntax tokens created by the semantic lexer.  Use the functions
 `semantic-lex-token-start', `semantic-lex-token-end' and
-`semantic-lex-token-text' to get information about these tokens.  The
-current buffer is the buffer these tokens are derived from.")
+`semantic-lex-token-text' to get information about these tokens.
+The current buffer is the buffer these tokens are derived from.")
 
 (defvar semantic--before-fetch-tags-hook nil
-  "Hooks run before a buffer is parses for tags.
+  "Hooks run before a buffer is parsed for tags.
 It is called before any request for tags is made via the function
 `semantic-fetch-tags' by an application.
 If any hook returns a nil value, the cached value is returned
@@ -311,7 +311,7 @@
 			    'semantic-init-db-hook "23.2")
 
 (defvar semantic-new-buffer-fcn-was-run nil
-  "Non nil after `semantic-new-buffer-fcn' has been executed.")
+  "Non-nil after `semantic-new-buffer-fcn' has been executed.")
 (make-variable-buffer-local 'semantic-new-buffer-fcn-was-run)
 
 (defsubst semantic-active-p ()
@@ -320,7 +320,7 @@
 
 (defsubst semantic--umatched-syntax-needs-refresh-p  ()
   "Return non-nil if the unmatched syntax cache needs a refresh.
-That is if it is dirty or if the current parse tree isn't up to date."
+That is, if it is dirty or if the current parse tree isn't up to date."
   (or semantic-unmatched-syntax-cache-check
       (not (semantic-parse-tree-up-to-date-p))))
 
@@ -377,7 +377,7 @@
 Do not set this yourself.  Call `semantic-debug'.")
 
 (defun semantic-elapsed-time (start end)
-  "Copied from elp.el.  Was elp-elapsed-time.
+  "Copied from elp.el.  Was `elp-elapsed-time'.
 Argument START and END bound the time being calculated."
   (+ (* (- (car end) (car start)) 65536.0)
      (- (car (cdr end)) (car (cdr start)))
@@ -410,14 +410,14 @@
 (define-overloadable-function semantic-parse-stream (stream nonterminal)
   "Parse STREAM, starting at the first NONTERMINAL rule.
 For bovine and wisent based parsers, STREAM is from the output of
-`semantic-lex', and NONTERMINAL is a rule in the apropriate language
+`semantic-lex', and NONTERMINAL is a rule in the appropriate language
 specific rules file.
 The default parser table used for bovine or wisent based parsers is
 `semantic--parse-table'.
 
 Must return a list: (STREAM TAGS) where STREAM is the unused elements
-from STREAM, and TAGS is the list of semantic tags found, usually only
-one tag is returned with the exception of compound statements")
+from STREAM, and TAGS is the list of semantic tags found; usually only
+one tag is returned with the exception of compound statements.")
 
 (define-overloadable-function semantic-parse-changes ()
   "Reparse changes in the current buffer.
@@ -433,7 +433,7 @@
 
 Optional arguments:
 NONTERMINAL is the rule to start parsing at.
-DEPTH specifies the lexical depth to decend for parser that use
+DEPTH specifies the lexical depth to descend for parser that use
 lexical analysis as their first step.
 RETURNONERROR specifies that parsing should stop on the first
 unmatched syntax encountered.  When nil, parsing skips the syntax,
@@ -447,8 +447,8 @@
 (defun semantic-parse-region-default
   (start end &optional nonterminal depth returnonerror)
   "Parse the area between START and END, and return any tags found.
-If END needs to be extended due to a lexical token being too large, it
-will be silently ignored.
+If END needs to be extended due to a lexical token being too large,
+it will be silently ignored.
 Optional arguments:
 NONTERMINAL is the rule to start parsing at if it is known.
 DEPTH specifies the lexical depth to scan.
@@ -532,7 +532,7 @@
 (defvar semantic-bovinate-nonterminal-check-obarray)
 
 (defun semantic--set-buffer-cache (tagtable)
-  "Set the toplevel cache cache to TAGTABLE."
+  "Set the toplevel tag cache to TAGTABLE."
   (setq semantic--buffer-cache tagtable
         semantic-unmatched-syntax-cache-check nil)
   ;; This is specific to the bovine parser.
@@ -560,7 +560,7 @@
 
 (defvar semantic-minimum-working-buffer-size (* 1024 5)
   "*The minimum size of a buffer before working messages are displayed.
-Buffers smaller than will parse silently.
+Buffers smaller than this will parse silently.
 Buffers larger than this will display the working progress bar.")
 
 (defsubst semantic-parser-working-message (&optional arg)
@@ -652,7 +652,7 @@
   semantic--buffer-cache)
 
 (defun semantic-refresh-tags-safe ()
-  "Refreshes the current buffer's tags safely.
+  "Refresh the current buffer's tags safely.
 
 Return non-nil if the refresh was successful.
 Return nil if there is some sort of syntax error preventing a reparse.
@@ -694,7 +694,7 @@
       lexically-safe))))
 
 (defun semantic-bovinate-toplevel (&optional ignored)
-  "Backward Compatibility Function."
+  "Backward compatibility function."
   (semantic-fetch-tags))
 (make-obsolete 'semantic-bovinate-toplevel 'semantic-fetch-tags "23.2")
 
@@ -1017,7 +1017,7 @@
 ;; auxiliary minor modes.
 
 (defvar semantic-load-system-cache-loaded nil
-  "Non nil when the Semantic system caches have been loaded.
+  "Non-nil when the Semantic system caches have been loaded.
 Prevent this load system from loading files in twice.")
 
 (defconst semantic-submode-list
@@ -1045,7 +1045,7 @@
  `global-semantic-highlight-func-mode' - Highlight the current tag.
  `global-semantic-stickyfunc-mode'     - Show current fun in header line.
  `global-semantic-mru-bookmark-mode'   - Provide `switch-to-buffer'-like
-                                    keybinding for tag names."
+                                         keybinding for tag names."
   :group 'semantic
   :type `(set ,@(mapcar (lambda (c) (list 'const c))
 			semantic-submode-list)))
--- a/lisp/cedet/semantic/db-ebrowse.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/cedet/semantic/db-ebrowse.el	Wed Jan 20 10:22:20 2010 +0900
@@ -90,7 +90,7 @@
 		   :initarg :global-extract
 		   :documentation
 		   "Table of ebrowse tags specific to this file.
-This table is compisited from the ebrowse *Globals* section.")
+This table is composited from the ebrowse *Globals* section.")
    )
   "A table for returning search results from ebrowse.")
 
@@ -128,7 +128,7 @@
 	   )))
 
 (defun semanticdb-create-ebrowse-database (dir)
-  "Create an EBROSE database for directory DIR.
+  "Create an EBROWSE database for directory DIR.
 The database file is stored in ~/.semanticdb, or whichever directory
 is specified by `semanticdb-default-save-directory'."
   (interactive "DDirectory: ")
@@ -597,7 +597,7 @@
 
 (defmethod semanticdb-find-tags-for-completion-method
   ((table semanticdb-table-ebrowse) prefix &optional tags)
-  "In TABLE, find all occurances of tags matching PREFIX.
+  "In TABLE, find all occurrences of tags matching PREFIX.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
   (if tags (call-next-method)
@@ -607,7 +607,7 @@
 
 (defmethod semanticdb-find-tags-by-class-method
   ((table semanticdb-table-ebrowse) class &optional tags)
-  "In TABLE, find all occurances of tags of CLASS.
+  "In TABLE, find all occurrences of tags of CLASS.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
   (if tags (call-next-method)
@@ -625,7 +625,7 @@
 (defmethod semanticdb-deep-find-tags-by-name-method
   ((table semanticdb-table-ebrowse) name &optional tags)
   "Find all tags name NAME in TABLE.
-Optional argument TAGS is a list of tags t
+Optional argument TAGS is a list of tags to search.
 Like `semanticdb-find-tags-by-name-method' for ebrowse."
   ;;(semanticdb-find-tags-by-name-method table name tags)
   (call-next-method))
@@ -640,7 +640,7 @@
 
 (defmethod semanticdb-deep-find-tags-for-completion-method
   ((table semanticdb-table-ebrowse) prefix &optional tags)
-  "In TABLE, find all occurances of tags matching PREFIX.
+  "In TABLE, find all occurrences of tags matching PREFIX.
 Optional argument TAGS is a list of tags to search.
 Like `semanticdb-find-tags-for-completion-method' for ebrowse."
   ;;(semanticdb-find-tags-for-completion-method table prefix tags)
--- a/lisp/cedet/semantic/db-el.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/cedet/semantic/db-el.el	Wed Jan 20 10:22:20 2010 +0900
@@ -76,7 +76,7 @@
 (defvar-mode-local emacs-lisp-mode semanticdb-find-default-throttle
   '(project omniscience)
   "Search project files, then search this omniscience database.
-It is not necessary to to system or recursive searching because of
+It is not necessary to do system or recursive searching because of
 the omniscience database.")
 
 ;;; Filename based methods
@@ -246,12 +246,12 @@
 ;;; Search Overrides
 ;;
 (defvar semanticdb-elisp-mapatom-collector nil
-  "Variable used to collect mapatoms output.")
+  "Variable used to collect `mapatoms' output.")
 
 (defmethod semanticdb-find-tags-by-name-method
   ((table semanticdb-table-emacs-lisp) name &optional tags)
-  "Find all tags name NAME in TABLE.
-Uses `inter-soft' to match NAME to emacs symbols.
+  "Find all tags named NAME in TABLE.
+Uses `intern-soft' to match NAME to Emacs symbols.
 Return a list of tags."
   (if tags (call-next-method)
     ;; No need to search.  Use `intern-soft' which does the same thing for us.
@@ -281,7 +281,7 @@
 
 (defmethod semanticdb-find-tags-for-completion-method
   ((table semanticdb-table-emacs-lisp) prefix &optional tags)
-  "In TABLE, find all occurances of tags matching PREFIX.
+  "In TABLE, find all occurrences of tags matching PREFIX.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
   (if tags (call-next-method)
@@ -290,7 +290,7 @@
 
 (defmethod semanticdb-find-tags-by-class-method
   ((table semanticdb-table-emacs-lisp) class &optional tags)
-  "In TABLE, find all occurances of tags of CLASS.
+  "In TABLE, find all occurrences of tags of CLASS.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
   (if tags (call-next-method)
@@ -316,7 +316,7 @@
 
 (defmethod semanticdb-deep-find-tags-for-completion-method
   ((table semanticdb-table-emacs-lisp) prefix &optional tags)
-  "In TABLE, find all occurances of tags matching PREFIX.
+  "In TABLE, find all occurrences of tags matching PREFIX.
 Optional argument TAGS is a list of tags to search.
 Like `semanticdb-find-tags-for-completion-method' for Emacs Lisp."
   (semanticdb-find-tags-for-completion-method table prefix tags))
--- a/lisp/cedet/semantic/db-find.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/cedet/semantic/db-find.el	Wed Jan 20 10:22:20 2010 +0900
@@ -281,7 +281,7 @@
 scan every available table.
 
 The return value is a list of objects of type `semanticdb-table' or
-it's children.  In the case of passing in a find result, the result
+their children.  In the case of passing in a find result, the result
 is returned unchanged.
 
 This routine uses `semanticdb-find-table-for-include' to translate
@@ -366,7 +366,7 @@
     ans))
 
 (defun semanticdb-find-need-cache-update-p (table)
-  "Non nil if the semanticdb TABLE cache needs to be updated."
+  "Non-nil if the semanticdb TABLE cache needs to be updated."
   ;; If we were passed in something related to a TABLE,
   ;; do a caching lookup.
   (let* ((index (semanticdb-get-table-index table))
@@ -431,7 +431,7 @@
   "All include tags scanned, plus action taken on the tag.
 Each entry is an alist:
   (ACTION . TAG)
-where ACTION is one of 'scanned, 'duplicate, 'lost.
+where ACTION is one of 'scanned, 'duplicate, 'lost
 and TAG is a clone of the include tag that was found.")
 (make-variable-buffer-local 'semanticdb-find-scanned-include-tags)
 
@@ -927,7 +927,7 @@
 
 (defun semanticdb-find-result-with-nil-p (resultp)
   "Non-nil of RESULTP is in the form of a semanticdb search result.
-nil is a valid value where a TABLE usually is, but only if the TAG
+The value nil is valid where a TABLE usually is, but only if the TAG
 results include overlays.
 This query only really tests the first entry in the list that is RESULTP,
 but should be good enough for debugging assertions."
@@ -1090,8 +1090,8 @@
   "Collect all tags returned by FUNCTION over PATH.
 The FUNCTION must take two arguments.  The first is TABLE,
 which is a semanticdb table containing tags.  The second argument
-to FUNCTION is TAGS.  TAGS may be a list of tags.  If TAGS is non-nil, then
-FUNCTION should search the TAG list, not through TABLE.
+to FUNCTION is TAGS.  TAGS may be a list of tags.  If TAGS is non-nil,
+then FUNCTION should search the TAG list, not through TABLE.
 
 See `semanticdb-find-translate-path' for details on PATH.
 FIND-FILE-MATCH indicates that any time a match is found, the file
@@ -1296,38 +1296,38 @@
 
 ;;; Top level Searches
 (defmethod semanticdb-find-tags-by-name-method ((table semanticdb-abstract-table) name &optional tags)
-  "In TABLE, find all occurances of tags with NAME.
+  "In TABLE, find all occurrences of tags with NAME.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
   (semantic-find-tags-by-name name (or tags (semanticdb-get-tags table))))
 
 (defmethod semanticdb-find-tags-by-name-regexp-method ((table semanticdb-abstract-table) regexp &optional tags)
-  "In TABLE, find all occurances of tags matching REGEXP.
+  "In TABLE, find all occurrences of tags matching REGEXP.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
   (semantic-find-tags-by-name-regexp regexp (or tags (semanticdb-get-tags table))))
 
 (defmethod semanticdb-find-tags-for-completion-method ((table semanticdb-abstract-table) prefix &optional tags)
-  "In TABLE, find all occurances of tags matching PREFIX.
+  "In TABLE, find all occurrences of tags matching PREFIX.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
   (semantic-find-tags-for-completion prefix (or tags (semanticdb-get-tags table))))
 
 (defmethod semanticdb-find-tags-by-class-method ((table semanticdb-abstract-table) class &optional tags)
-  "In TABLE, find all occurances of tags of CLASS.
+  "In TABLE, find all occurrences of tags of CLASS.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
   (semantic-find-tags-by-class class (or tags (semanticdb-get-tags table))))
 
 (defmethod semanticdb-find-tags-external-children-of-type-method ((table semanticdb-abstract-table) parent &optional tags)
-   "In TABLE, find all occurances of tags whose parent is the PARENT type.
+   "In TABLE, find all occurrences of tags whose parent is the PARENT type.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
    (require 'semantic/find)
    (semantic-find-tags-external-children-of-type parent (or tags (semanticdb-get-tags table))))
 
 (defmethod semanticdb-find-tags-subclasses-of-type-method ((table semanticdb-abstract-table) parent &optional tags)
-   "In TABLE, find all occurances of tags whose parent is the PARENT type.
+   "In TABLE, find all occurrences of tags whose parent is the PARENT type.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
    (require 'semantic/find)
@@ -1335,7 +1335,7 @@
 
 ;;; Deep Searches
 (defmethod semanticdb-deep-find-tags-by-name-method ((table semanticdb-abstract-table) name &optional tags)
-  "In TABLE, find all occurances of tags with NAME.
+  "In TABLE, find all occurrences of tags with NAME.
 Search in all tags in TABLE, and all components of top level tags in
 TABLE.
 Optional argument TAGS is a list of tags to search.
@@ -1343,7 +1343,7 @@
   (semantic-find-tags-by-name name (semantic-flatten-tags-table (or tags (semanticdb-get-tags table)))))
 
 (defmethod semanticdb-deep-find-tags-by-name-regexp-method ((table semanticdb-abstract-table) regexp &optional tags)
-  "In TABLE, find all occurances of tags matching REGEXP.
+  "In TABLE, find all occurrences of tags matching REGEXP.
 Search in all tags in TABLE, and all components of top level tags in
 TABLE.
 Optional argument TAGS is a list of tags to search.
@@ -1351,7 +1351,7 @@
   (semantic-find-tags-by-name-regexp regexp (semantic-flatten-tags-table (or tags (semanticdb-get-tags table)))))
 
 (defmethod semanticdb-deep-find-tags-for-completion-method ((table semanticdb-abstract-table) prefix &optional tags)
-  "In TABLE, find all occurances of tags matching PREFIX.
+  "In TABLE, find all occurrences of tags matching PREFIX.
 Search in all tags in TABLE, and all components of top level tags in
 TABLE.
 Optional argument TAGS is a list of tags to search.
--- a/lisp/cedet/semantic/db-global.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/cedet/semantic/db-global.el	Wed Jan 20 10:22:20 2010 +0900
@@ -66,7 +66,7 @@
   )
 
 (defun semanticdb-enable-gnu-global-hook ()
-  "Add support for GNU Global in the current buffer via semantic-init-hook.
+  "Add support for GNU Global in the current buffer via `semantic-init-hook'.
 MODE is the major mode to support."
   (semanticdb-enable-gnu-global-in-buffer t))
 
@@ -78,8 +78,8 @@
 
 (defun semanticdb-enable-gnu-global-in-buffer (&optional dont-err-if-not-available)
   "Enable a GNU Global database in the current buffer.
-Argument DONT-ERR-IF-NOT-AVAILABLE will throw an error if GNU Global
-is not available for this directory."
+When GNU Global is not available for this directory, display a message
+if optional DONT-ERR-IF-NOT-AVAILABLE is non-nil; else throw an error."
   (interactive "P")
   (if (cedet-gnu-global-root)
       (setq
@@ -168,7 +168,7 @@
 
 (defmethod semanticdb-find-tags-for-completion-method
   ((table semanticdb-table-global) prefix &optional tags)
-  "In TABLE, find all occurances of tags matching PREFIX.
+  "In TABLE, find all occurrences of tags matching PREFIX.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
   (if tags (call-next-method)
@@ -195,7 +195,7 @@
 (defmethod semanticdb-deep-find-tags-by-name-method
   ((table semanticdb-table-global) name &optional tags)
   "Find all tags name NAME in TABLE.
-Optional argument TAGS is a list of tags t
+Optional argument TAGS is a list of tags to search.
 Like `semanticdb-find-tags-by-name-method' for global."
   (semanticdb-find-tags-by-name-method table name tags))
 
@@ -208,7 +208,7 @@
 
 (defmethod semanticdb-deep-find-tags-for-completion-method
   ((table semanticdb-table-global) prefix &optional tags)
-  "In TABLE, find all occurances of tags matching PREFIX.
+  "In TABLE, find all occurrences of tags matching PREFIX.
 Optional argument TAGS is a list of tags to search.
 Like `semanticdb-find-tags-for-completion-method' for global."
   (semanticdb-find-tags-for-completion-method table prefix tags))
--- a/lisp/cedet/semantic/db-javascript.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/cedet/semantic/db-javascript.el	Wed Jan 20 10:22:20 2010 +0900
@@ -77,7 +77,7 @@
       (("uriComponent" variable nil nil nil)))
      nil nil))
   "Hard-coded list of javascript tags for semanticdb.
-See bottom of this file for instruction on managing this list.")
+See bottom of this file for instructions on managing this list.")
 
 ;;; Classes:
 (defclass semanticdb-table-javascript (semanticdb-search-results-table)
@@ -87,7 +87,7 @@
 
 (defclass semanticdb-project-database-javascript
   (semanticdb-project-database
-   eieio-singleton ;this db is for js globals, so singleton is apropriate
+   eieio-singleton ;this db is for js globals, so singleton is appropriate
    )
   ((new-table-class :initform semanticdb-table-javascript
 		    :type class
@@ -107,7 +107,7 @@
 (defvar-mode-local javascript-mode semanticdb-find-default-throttle
   '(project omniscience)
   "Search project files, then search this omniscience database.
-It is not necessary to to system or recursive searching because of
+It is not necessary to do system or recursive searching because of
 the omniscience database.")
 
 ;;; Filename based methods
@@ -157,7 +157,7 @@
 ;; to a search list.
 (define-mode-local-override semanticdb-find-translate-path javascript-mode
   (path brutish)
-  "Return a list of semanticdb tables asociated with PATH.
+  "Return a list of semanticdb tables associated with PATH.
 If brutish, do the default action.
 If not brutish, do the default action, and append the system
 database (if available.)"
@@ -216,7 +216,7 @@
 
 (defmethod semanticdb-find-tags-for-completion-method
   ((table semanticdb-table-javascript) prefix &optional tags)
-  "In TABLE, find all occurances of tags matching PREFIX.
+  "In TABLE, find all occurrences of tags matching PREFIX.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
   (if tags (call-next-method)
@@ -226,7 +226,7 @@
 
 (defmethod semanticdb-find-tags-by-class-method
   ((table semanticdb-table-javascript) class &optional tags)
-  "In TABLE, find all occurances of tags of CLASS.
+  "In TABLE, find all occurrences of tags of CLASS.
 Optional argument TAGS is a list of tags to search.
 Returns a table of all matching tags."
   (if tags (call-next-method)
@@ -248,7 +248,7 @@
 (defmethod semanticdb-deep-find-tags-by-name-method
   ((table semanticdb-table-javascript) name &optional tags)
   "Find all tags name NAME in TABLE.
-Optional argument TAGS is a list of tags t
+Optional argument TAGS is a list of tags to search.
 Like `semanticdb-find-tags-by-name-method' for javascript."
   (semanticdb-find-tags-by-name-method table name tags))
 
@@ -261,7 +261,7 @@
 
 (defmethod semanticdb-deep-find-tags-for-completion-method
   ((table semanticdb-table-javascript) prefix &optional tags)
-  "In TABLE, find all occurances of tags matching PREFIX.
+  "In TABLE, find all occurrences of tags matching PREFIX.
 Optional argument TAGS is a list of tags to search.
 Like `semanticdb-find-tags-for-completion-method' for javascript."
   (semanticdb-find-tags-for-completion-method table prefix tags))
@@ -270,7 +270,7 @@
 ;;
 (defmethod semanticdb-find-tags-external-children-of-type-method
   ((table semanticdb-table-javascript) type &optional tags)
-  "Find all nonterminals which are child elements of TYPE
+  "Find all nonterminals which are child elements of TYPE.
 Optional argument TAGS is a list of tags to search.
 Return a list of tags."
   (if tags (call-next-method)
--- a/lisp/cedet/semantic/idle.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/cedet/semantic/idle.el	Wed Jan 20 10:22:20 2010 +0900
@@ -367,7 +367,7 @@
 
 (defun semantic-idle-work-core-handler ()
   "Core handler for idle work processing of long running tasks.
-Visits semantic controlled buffers, and makes sure all needed
+Visits Semantic controlled buffers, and makes sure all needed
 include files have been parsed, and that the typecache is up to date.
 Uses `semantic-idle-work-for-on-buffer' to do the work."
   (let ((errbuf nil)
@@ -577,7 +577,7 @@
 DOC will be a documentation string describing FORMS.
 FORMS will be called during idle time after the current buffer's
 semantic tag information has been updated.
-This routines creates the following functions and variables:"
+This routine creates the following functions and variables:"
   (let ((global (intern (concat "global-" (symbol-name name) "-mode")))
 	(mode 	(intern (concat (symbol-name name) "-mode")))
 	(hook 	(intern (concat (symbol-name name) "-mode-hook")))
@@ -764,7 +764,7 @@
 	     jde-java-font-lock-code-face)))")
 
 (defun semantic-idle-summary-useful-context-p ()
-  "Non-nil of we should show a summary based on context."
+  "Non-nil if we should show a summary based on context."
   (if (and (boundp 'font-lock-mode)
 	   font-lock-mode
 	   (memq (get-text-property (point) 'face)
@@ -959,7 +959,7 @@
 ;;;###autoload
 (defun global-semantic-idle-scheduler-mode (&optional arg)
   "Toggle global use of option `semantic-idle-scheduler-mode'.
-The idle scheduler with automatically reparse buffers in idle time,
+The idle scheduler will automatically reparse buffers in idle time,
 and then schedule other jobs setup with `semantic-idle-scheduler-add'.
 If ARG is positive, enable, if it is negative, disable.
 If ARG is nil, then toggle."
--- a/lisp/cedet/semantic/util-modes.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/cedet/semantic/util-modes.el	Wed Jan 20 10:22:20 2010 +0900
@@ -337,7 +337,7 @@
     (((class color) (background light))
      (:underline "red")))
   "Face used to show unmatched syntax in.
-The face is used in  `semantic-show-unmatched-syntax-mode'."
+The face is used in `semantic-show-unmatched-syntax-mode'."
   :group 'semantic-faces)
 
 (defsubst semantic-unmatched-syntax-overlay-p (overlay)
@@ -767,7 +767,7 @@
       ]
     [ "Narrow To Headerline Tag" senator-narrow-to-defun
       :active (semantic-current-tag)
-      :help "Narrow to the bounds of the current tag."]
+      :help "Narrow to the bounds of the current tag"]
     [ "Fold Headerline Tag" senator-fold-tag-toggle
       :active (semantic-current-tag)
       :style toggle
@@ -854,7 +854,7 @@
   :type 'string)
 
 (defvar semantic-stickyfunc-old-hlf nil
-  "Value of the header line when entering sticky func mode.")
+  "Value of the header line when entering stickyfunc mode.")
 
 (defconst semantic-stickyfunc-header-line-format
   (cond ((featurep 'xemacs)
@@ -868,7 +868,7 @@
 	 '(:eval (list semantic-stickyfunc-indent-string
 		       (semantic-stickyfunc-fetch-stickyline))))
 	(t nil))
-  "The header line format used by sticky func mode.")
+  "The header line format used by stickyfunc mode.")
 
 (defun semantic-stickyfunc-mode-setup ()
   "Setup option `semantic-stickyfunc-mode'.
@@ -936,7 +936,7 @@
 
 (defvar semantic-stickyfunc-sticky-classes
   '(function type)
-  "List of tag classes which sticky func will display in the header line.")
+  "List of tag classes which stickyfunc will display in the header line.")
 (make-variable-buffer-local 'semantic-stickyfunc-sticky-classes)
 
 (defun semantic-stickyfunc-tag-to-stick ()
@@ -953,7 +953,7 @@
 
 (defun semantic-stickyfunc-fetch-stickyline ()
   "Make the function at the top of the current window sticky.
-Capture it's function declaration, and place it in the header line.
+Capture its function declaration, and place it in the header line.
 If there is no function, disable the header line."
   (let ((str
 	 (save-excursion
@@ -962,7 +962,7 @@
 	   (end-of-line)
 	   ;; Capture this function
 	   (let* ((tag (semantic-stickyfunc-tag-to-stick)))
-	     ;; TAG is nil if there was nothing of the apropriate type there.
+	     ;; TAG is nil if there was nothing of the appropriate type there.
 	     (if (not tag)
 		 ;; Set it to be the text under the header line
 		 (buffer-substring (point-at-bol) (point-at-eol))
@@ -1080,7 +1080,7 @@
       ]
     [ "Narrow To Tag" senator-narrow-to-defun
       :active (semantic-current-tag)
-      :help "Narrow to the bounds of the current tag."]
+      :help "Narrow to the bounds of the current tag"]
     [ "Fold Tag" senator-fold-tag-toggle
       :active (semantic-current-tag)
       :style toggle
@@ -1129,7 +1129,7 @@
 
 (defun semantic-highlight-func-mode-setup ()
   "Setup option `semantic-highlight-func-mode'.
-For semantic enabled buffers, highlight the first line of the
+For Semantic enabled buffers, highlight the first line of the
 current tag declaration."
   (if semantic-highlight-func-mode
       (progn
@@ -1202,7 +1202,7 @@
 	(setq semantic-highlight-func-ct-overlay ol)
 	)
 
-      ;; TAG is nil if there was nothing of the apropriate type there.
+      ;; TAG is nil if there was nothing of the appropriate type there.
       (if (or (not tag) disable)
 	  ;; No tag, make the overlay go away.
 	  (progn
--- a/lisp/cedet/srecode/dictionary.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/cedet/srecode/dictionary.el	Wed Jan 20 10:22:20 2010 +0900
@@ -240,7 +240,7 @@
 For each dictionary added to a macro, the block of codes in the
 template will be repeated.
 
-If optional argument SHOW-ONLY is non-nil, then don't add a new dictionarly
+If optional argument SHOW-ONLY is non-nil, then don't add a new dictionary
 if there is already one in place.  Also, don't add FIRST/LAST entries.
 These entries are not needed when we are just showing a section.
 
@@ -402,7 +402,7 @@
 (defclass srecode-field-value (srecode-dictionary-compound-value)
   ((firstinserter :initarg :firstinserter
 		  :documentation
-		  "The inserter object for the first occurance of this field.")
+		  "The inserter object for the first occurrence of this field.")
    (defaultvalue :initarg :defaultvalue
      :documentation
      "The default value for this inserter.")
--- a/lisp/cedet/srecode/extract.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/cedet/srecode/extract.el	Wed Jan 20 10:22:20 2010 +0900
@@ -216,7 +216,7 @@
   (srecode-insert-include-lookup ins dict)
   ;; There are two modes for includes.  One is with no dict,
   ;; so it is inserted straight.  If the dict has a name, then
-  ;; we need to run once per dictionary occurance.
+  ;; we need to run once per dictionary occurrence.
   (if (not (string= (oref ins :object-name) ""))
       ;; With a name, do the insertion.
       (let ((subdict (srecode-dictionary-add-section-dictionary
--- a/lisp/emacs-lisp/chart.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/emacs-lisp/chart.el	Wed Jan 20 10:22:20 2010 +0900
@@ -644,7 +644,7 @@
     ;; Lets create the chart!
     (chart-bar-quickie 'vertical "Files Extension Distribution"
 		       extlst "File Extensions"
-		       cntlst "# of occurances"
+		       cntlst "# of occurrences"
 		       10
 		       '(lambda (a b) (> (cdr a) (cdr b))))
     ))
@@ -740,9 +740,9 @@
 		(setcar cell (1+ (car cell))))
 	    (setq nmlst (cons nam nmlst)
 		  cntlst (cons 1 cntlst))))))
-    (chart-bar-quickie 'vertical "Username Occurance in RMAIL box"
+    (chart-bar-quickie 'vertical "Username Occurrence in RMAIL box"
 		       nmlst "User Names"
-		       cntlst "# of occurances"
+		       cntlst "# of occurrences"
 		       10
 		       '(lambda (a b) (> (cdr a) (cdr b))))
     ))
--- a/lisp/emacs-lisp/eieio-speedbar.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/emacs-lisp/eieio-speedbar.el	Wed Jan 20 10:22:20 2010 +0900
@@ -227,7 +227,7 @@
 object edit buffer doing an in-place edit.
 
 If your object represents some other item, override this method
-and take the apropriate action."
+and take the appropriate action."
   (require 'eieio-custom)
   (speedbar-with-attached-buffer
    (eieio-customize-object object))
@@ -327,7 +327,7 @@
 
 (defmethod eieio-speedbar-expand ((object eieio-speedbar) depth)
   "Expand OBJECT at indentation DEPTH.
-Inserts a list of new tag lines representing expanded elements withing
+Inserts a list of new tag lines representing expanded elements within
 OBJECT."
   (let ((children (eieio-speedbar-object-children object)))
     (cond ((eieio-object-p (car children))
--- a/lisp/emacs-lisp/eieio.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/emacs-lisp/eieio.el	Wed Jan 20 10:22:20 2010 +0900
@@ -79,7 +79,7 @@
   "*This hook is executed, then cleared each time `defclass' is called.")
 
 (defvar eieio-error-unsupported-class-tags nil
-  "*Non nil to throw an error if an encountered tag us unsupported.
+  "*Non-nil to throw an error if an encountered tag us unsupported.
 This may prevent classes from CLOS applications from being used with EIEIO
 since EIEIO does not support all CLOS tags.")
 
@@ -2021,7 +2021,7 @@
     (run-hook-with-args 'eieio-pre-method-execution-hooks
 			primarymethodlist)
 
-    ;; Now loop through all occurances forms which we must execute
+    ;; Now loop through all occurrences forms which we must execute
     ;; (which are happily sorted now) and execute them all!
     (let ((rval nil) (lastval nil) (rvalever nil) (found nil))
       (while lambdas
@@ -2101,7 +2101,7 @@
     (setq primarymethodlist  ;; Re-use even with bad name here
 	  (eieiomt-method-list method method-primary mclass))
 
-    ;; Now loop through all occurances forms which we must execute
+    ;; Now loop through all occurrences forms which we must execute
     ;; (which are happily sorted now) and execute them all!
     (let* ((rval nil) (lastval nil) (rvalever nil)
 	   (scoped-class (cdr lambdas))
@@ -2331,7 +2331,7 @@
 If CLASS is not a class then use `generic' instead.  If class has
 no form, but has a parent class, then trace to that parent class.
 The first time a form is requested from a symbol, an optimized path
-is memorized for future faster use."
+is memorized for faster future use."
  (let ((emto (aref (get method 'eieio-method-obarray)
 		   (if class key (+ key 3)))))
    (if (class-p class)
@@ -2814,13 +2814,13 @@
 ;;; Autoloading some external symbols, and hooking into the help system
 ;;
 
-(autoload 'eieio-help-mode-augmentation-maybee "eieio-opt" "For buffers thrown into help mode, augment for eieio.")
-(autoload 'eieio-browse "eieio-opt" "Create an object browser window" t)
+(autoload 'eieio-help-mode-augmentation-maybee "eieio-opt" "For buffers thrown into help mode, augment for EIEIO.")
+(autoload 'eieio-browse "eieio-opt" "Create an object browser window." t)
 (autoload 'eieio-describe-class "eieio-opt" "Describe CLASS defined by a string or symbol" t)
 (autoload 'eieio-describe-constructor "eieio-opt" "Describe the constructor function FCN." t)
-(autoload 'describe-class "eieio-opt" "Describe CLASS defined by a string or symbol" t)
-(autoload 'eieio-describe-generic "eieio-opt" "Describe GENERIC defined by a string or symbol" t)
-(autoload 'describe-generic "eieio-opt" "Describe GENERIC defined by a string or symbol" t)
+(autoload 'describe-class "eieio-opt" "Describe CLASS defined by a string or symbol." t)
+(autoload 'eieio-describe-generic "eieio-opt" "Describe GENERIC defined by a string or symbol." t)
+(autoload 'describe-generic "eieio-opt" "Describe GENERIC defined by a string or symbol." t)
 
 (autoload 'customize-object "eieio-custom" "Create a custom buffer editing OBJ.")
 
--- a/lisp/emulation/viper-cmd.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/emulation/viper-cmd.el	Wed Jan 20 10:22:20 2010 +0900
@@ -479,7 +479,7 @@
 			  (assoc major-mode viper-emacs-state-modifier-alist))
 		       viper-empty-keymap))
 	       ))
-	
+
   ;; This var is not local in Emacs, so we make it local.  It must be local
   ;; because although the stack of minor modes can be the same for all buffers,
   ;; the associated *keymaps* can be different.  In Viper,
@@ -891,7 +891,7 @@
 
 
 (defun viper-exec-form-in-vi  (form)
-  "Execute FORM in Vi state, regardless of the Ccurrent Vi state."
+  "Execute FORM in Vi state, regardless of the current Vi state."
   (let ((buff (current-buffer))
 	result)
     (viper-set-mode-vars-for 'vi-state)
@@ -910,7 +910,7 @@
 
 (defun viper-exec-form-in-emacs  (form)
   "Execute FORM in Emacs, temporarily disabling Viper's minor modes.
-Similar to viper-escape-to-emacs, but accepts forms rather than keystrokes."
+Similar to `viper-escape-to-emacs', but accepts forms rather than keystrokes."
   (let ((buff (current-buffer))
 	result)
     (viper-set-mode-vars-for 'emacs-state)
@@ -939,7 +939,7 @@
 Usage:
     (viper-harness-minor-mode load-file)
 
-LOAD-FILE is a name of the file where the specific minor mode is defined.
+LOAD-FILE is the name of the file where the specific minor mode is defined.
 Suffixes such as .el or .elc should be stripped."
 
   (interactive "sEnter name of the load file: ")
@@ -961,9 +961,9 @@
 If viper-no-multiple-ESC is 'twice double ESC would ding in vi-state.
 Other ESC sequences are emulated via the current Emacs's major mode
 keymap.  This is more convenient on TTYs, since this won't block
-function keys such as up,down, etc.  ESC will also will also work as
-a Meta key in this case.  When viper-no-multiple-ESC is nil, ESC functions
-as a Meta key and any number of multiple escapes is allowed."
+function keys such as up, down, etc.  ESC will also will also work as
+a Meta key in this case.  When viper-no-multiple-ESC is nil, ESC works
+as a Meta key and any number of multiple escapes are allowed."
   (interactive "P")
   (let (char)
     (cond ((and (not viper-no-multiple-ESC) (eq viper-current-state 'vi-state))
@@ -1181,7 +1181,7 @@
 		((eq event-char 'delete) (setq event-char ?\C-?))
 		((eq event-char 'backspace) (setq event-char ?\C-h))
 		((eq event-char 'space) (setq event-char ?\ )))
-	  (setq last-command-event 
+	  (setq last-command-event
 		(if (featurep 'xemacs)
 		    (character-to-event (or com event-char))
 		  (or com event-char)))
@@ -1257,7 +1257,7 @@
 
       ;; as com is non-nil, this means that we have a command to execute
       (if (viper-memq-char (car com) '(?r ?R))
-	  ;; execute apropriate region command.
+	  ;; execute appropriate region command.
 	  (let ((char (car com)) (com (cdr com)))
 	    (setq prefix-arg (cons value com))
 	    (if (viper= char ?r)
@@ -1285,7 +1285,7 @@
 	 ;; gg  acts as G0
 	 ((equal (car com) ?g)   (viper-goto-line 0))
 	 (t (error "Viper bell")))))
-    
+
     (if cmd-to-exec-at-end
 	(progn
 	  (setq last-command-event
@@ -1621,7 +1621,7 @@
 where `com' is the command to be re-executed, `val' is the
 argument to `com', `ch' is a flag for repeat, and `reg' is optional;
 if it exists, it is the name of the register for `com'.
-If the prefix argument, ARG, is non-nil, it is used instead of `val'."
+If the prefix argument ARG is non-nil, it is used instead of `val'."
   (interactive "P")
   (let ((save-point (point)) ; save point before repeating prev cmd
 	;; Pass along that we are repeating a destructive command
@@ -1944,7 +1944,7 @@
 		 require-final-newline
 		 ;; add newline only if we actually edited buffer. otherwise it
 		 ;; might unintentionally modify binary buffers
-		 (buffer-modified-p) 
+		 (buffer-modified-p)
 		 (not (viper-is-in-minibuffer))
 		 (not buffer-read-only))
 	    ;; text property may be read-only
@@ -2539,7 +2539,7 @@
 
 (defun viper-replace-state-exit-cmd ()
   "Binding for keys that cause Replace state to switch to Vi or to Insert.
-These keys are ESC, RET, and LineFeed"
+These keys are ESC, RET, and LineFeed."
   (interactive)
   (if overwrite-mode   ; if in replace mode invoked via 'R'
       (viper-finish-R-mode)
@@ -3711,7 +3711,7 @@
 (defun viper-toggle-search-style (arg)
   "Toggle the value of viper-case-fold-search/viper-re-search.
 Without prefix argument, will ask which search style to toggle.  With prefix
-arg 1,toggles viper-case-fold-search; with arg 2 toggles viper-re-search.
+arg 1, toggles viper-case-fold-search; with arg 2 toggles viper-re-search.
 
 Although this function is bound to \\[viper-toggle-search-style], the most
 convenient way to use it is to bind `//' to the macro
@@ -4262,7 +4262,7 @@
 (defun viper-del-backward-char-in-replace ()
   "Delete one character in replace mode.
 If `viper-delete-backwards-in-replace' is t, then DEL key actually deletes
-charecters.  If it is nil, then the cursor just moves backwards, similarly
+characters.  If it is nil, then the cursor just moves backwards, similarly
 to Vi.  The variable `viper-ex-style-editing', if t, doesn't let the
 cursor move past the beginning of line."
   (interactive)
@@ -4614,7 +4614,7 @@
   (indent-to (+ (current-column) viper-shift-width)))
 
 (defun viper-backward-indent ()
-  "Backtab, C-d in VI"
+  "Backtab, `C-d' in Vi."
   (interactive)
   (if viper-cted
       (let ((p (point)) (c (current-column)) bol (indent t))
@@ -4689,7 +4689,7 @@
 	      viper-InvalidRegister reg)))))
 
 (defun viper-brac-function (arg)
-  "Function called by \[, the brac.  View textmarkers and call \[\["
+  "Function called by \[, the brac.  View textmarkers and call \[\[."
   (interactive "P")
   (let ((reg (read-char)))
     (cond ((viper= ?\[ reg)
@@ -4922,7 +4922,7 @@
 
 ;; if ENFORCE-BUFFER is not nil, error if CHAR is a marker in another buffer
 (defun viper-register-to-point (char &optional enforce-buffer)
-  "Like jump-to-register, but switches to another buffer in another window."
+  "Like `jump-to-register', but switches to another buffer in another window."
   (interactive "cViper register to point: ")
   (let ((val (get-register char)))
     (cond
@@ -5047,7 +5047,7 @@
 ------------------------------
 
 Before reporting a bug, please verify that it is related to Viper, and is
-not cause by other packages you are using.
+not caused by other packages you are using.
 
 Don't report compilation warnings, unless you are certain that there is a
 problem.  These warnings are normal and unavoidable.
--- a/lisp/ido.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/ido.el	Wed Jan 20 10:22:20 2010 +0900
@@ -1042,11 +1042,11 @@
 ;; Stores the current list of items that will be searched through.
 ;; The list is ordered, so that the most interesting item comes first,
 ;; although by default, the files visible in the current frame are put
-;; at the end of the list.  Created by `ido-make-item-list'.
-(defvar ido-cur-list)
+;; at the end of the list.
+(defvar ido-cur-list nil)
 
 ;; Stores the choice list for ido-completing-read
-(defvar ido-choice-list)
+(defvar ido-choice-list nil)
 
 ;; Stores the list of items which are ignored when building
 ;; `ido-cur-list'.  It is in no specific order.
@@ -3344,7 +3344,7 @@
     (if ido-temp-list
 	(nconc ido-temp-list ido-current-buffers)
       (setq ido-temp-list ido-current-buffers))
-    (if default
+    (if (and default (buffer-live-p (get-buffer default)))
 	(progn
 	  (setq ido-temp-list
 		(delete default ido-temp-list))
@@ -3590,6 +3590,7 @@
   ;; Used by `ido-get-buffers-in-frames' to walk through all windows
   (let ((buf (buffer-name (window-buffer win))))
 	(unless (or (member buf ido-bufs-in-frame)
+		    (minibufferp buf)
 		    (member buf ido-ignore-item-temp-list))
 	  ;; Only add buf if it is not already in list.
 	  ;; This prevents same buf in two different windows being
@@ -3830,6 +3831,27 @@
 	      ;;(add-hook 'completion-setup-hook 'completion-setup-function)
 	      (display-completion-list completion-list)))))))
 
+(defun ido-kill-buffer-internal (buf)
+  "Kill buffer BUF and rebuild ido's buffer list if needed."
+  (if (not (kill-buffer buf))
+      ;; buffer couldn't be killed.
+      (setq ido-rescan t)
+    ;; else buffer was killed so remove name from list.
+    (setq ido-cur-list (delq buf ido-cur-list))
+    ;; Some packages, like uniquify.el, may rename buffers when one
+    ;; is killed, so we need to test this condition to avoid using
+    ;; an outdated list of buffer names. We don't want to always
+    ;; rebuild the list of buffers, as this alters the previous
+    ;; buffer order that the user was seeing on the prompt. However,
+    ;; when we rebuild the list, we try to keep the previous second
+    ;; buffer as the first one.
+    (catch 'update
+      (dolist (b ido-cur-list)
+	(unless (get-buffer b)
+	  (setq ido-cur-list (ido-make-buffer-list (cadr ido-matches)))
+	  (setq ido-rescan t)
+	  (throw 'update nil))))))
+
 ;;; KILL CURRENT BUFFER
 (defun ido-kill-buffer-at-head ()
   "Kill the buffer at the head of `ido-matches'.
@@ -3840,7 +3862,7 @@
     (let ((enable-recursive-minibuffers t)
 	  (buf (ido-name (car ido-matches))))
       (when buf
-	(kill-buffer buf)
+	(ido-kill-buffer-internal buf)
 	;; Check if buffer still exists.
 	(if (get-buffer buf)
 	    ;; buffer couldn't be killed.
@@ -3884,7 +3906,7 @@
      ((eq method 'kill)
       (if record
 	  (ido-record-command 'kill-buffer buffer))
-      (kill-buffer buffer))
+      (ido-kill-buffer-internal buffer))
 
      ((eq method 'other-window)
       (if record
--- a/lisp/net/tramp.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/net/tramp.el	Wed Jan 20 10:22:20 2010 +0900
@@ -6890,7 +6890,7 @@
 
 If they are variables, this variable is a string containing a Perl
 implementation for this functionality.  This Perl program will be transferred
-to the remote host, and it is avalible as shell function with the same name.")
+to the remote host, and it is available as shell function with the same name.")
 
 (defun tramp-find-inline-encoding (vec)
   "Find an inline transfer encoding that works.
--- a/lisp/progmodes/ada-mode.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/progmodes/ada-mode.el	Wed Jan 20 10:22:20 2010 +0900
@@ -677,14 +677,6 @@
 	    "\\>"))
   "Regexp used in `ada-goto-matching-start'.")
 
-(defvar ada-matching-decl-start-re
-  (eval-when-compile
-    (concat "\\<"
-	    (regexp-opt
-	     '("is" "separate" "end" "declare" "if" "new" "begin" "generic" "when") t)
-	    "\\>"))
-  "Regexp used in `ada-goto-matching-decl-start'.")
-
 (defvar ada-loop-start-re
   "\\<\\(for\\|while\\|loop\\)\\>"
   "Regexp for the start of a loop.")
@@ -2476,7 +2468,7 @@
      ((and (= (downcase (char-after)) ?b)
 	   (looking-at "begin\\>"))
       (save-excursion
-	(if (ada-goto-matching-decl-start t)
+	(if (ada-goto-decl-start t)
 	    (list (progn (back-to-indentation) (point)) 0)
 	  (ada-indent-on-previous-lines nil orgpoint orgpoint))))
 
@@ -2855,7 +2847,7 @@
 	      (if (looking-at "\\<begin\\>")
 		  (progn
 		    (setq indent (list (point) 0))
-		    (if (ada-goto-matching-decl-start t)
+		    (if (ada-goto-decl-start t)
 			(list (progn (back-to-indentation) (point)) 0)
 		      indent))
 		(list (progn (back-to-indentation) (point)) 0)
@@ -3421,7 +3413,6 @@
 	match-dat
       nil)))
 
-
 (defun ada-goto-next-non-ws (&optional limit skip-goto-label)
   "Skip to next non-whitespace character.
 Skips spaces, newlines and comments, and possibly goto labels.
@@ -3502,13 +3493,13 @@
   (if (save-excursion
 	(ada-goto-previous-word)
 	(looking-at (concat "\\<" defun-name "\\> *:")))
-      t                                 ; do nothing
+      t                                 ; name matches
     ;; else
     ;;
     ;; 'accept' or 'package' ?
     ;;
     (unless (looking-at ada-subprog-start-re)
-      (ada-goto-matching-decl-start))
+      (ada-goto-decl-start))
     ;;
     ;; 'begin' of 'procedure'/'function'/'task' or 'declare'
     ;;
@@ -3541,14 +3532,20 @@
 	       (buffer-substring (point)
 				 (progn (forward-sexp 1) (point))))))))
 
-(defun ada-goto-matching-decl-start (&optional noerror recursive)
-  "Move point to the matching declaration start of the current 'begin'.
-If NOERROR is non-nil, it only returns nil if no match was found."
+(defun ada-goto-decl-start (&optional noerror)
+  "Move point to the declaration start of the current construct.
+If NOERROR is non-nil, return nil if no match was found;
+otherwise throw error."
   (let ((nest-count 1)
+        (regexp (eval-when-compile
+                  (concat "\\<"
+                          (regexp-opt
+                           '("is" "separate" "end" "declare" "if" "new" "begin" "generic" "when") t)
+                          "\\>")))
 
 	;;  first should be set to t if we should stop at the first
 	;;  "begin" we encounter.
-	(first (not recursive))
+	(first t)
 	(count-generic nil)
 	(stop-at-when nil)
 	)
@@ -3572,7 +3569,7 @@
     ;; search backward for interesting keywords
     (while (and
 	    (not (zerop nest-count))
-	    (ada-search-ignore-string-comment ada-matching-decl-start-re t))
+	    (ada-search-ignore-string-comment regexp t))
       ;;
       ;; calculate nest-depth
       ;;
@@ -3605,7 +3602,6 @@
 
 		  (if (looking-at "end")
 		      (ada-goto-matching-start 1 noerror t)
-		    ;; (ada-goto-matching-decl-start noerror t)
 
 		    (setq loop-again nil)
 		    (unless (looking-at "begin")
@@ -3633,34 +3629,50 @@
 	(setq first t))
        ;;
        ((looking-at "is")
-	;; check if it is only a type definition, but not a protected
-	;; type definition, which should be handled like a procedure.
-	(if (or (looking-at "is[ \t]+<>")
-		(save-excursion
-		  (forward-comment -10000)
-		  (forward-char -1)
-
-		  ;; Detect if we have a closing parenthesis (Could be
-		  ;; either the end of subprogram parameters or (<>)
-		  ;; in a type definition
-		  (if (= (char-after) ?\))
-		      (progn
-			(forward-char 1)
-			(backward-sexp 1)
-			(forward-comment -10000)
-			))
-		  (skip-chars-backward "a-zA-Z0-9_.'")
-		  (ada-goto-previous-word)
-		  (and
-		   (looking-at "\\<\\(sub\\)?type\\|case\\>")
+        ;; look for things to ignore
+        (if
+            (or
+             ;; generic formal parameter
+             (looking-at "is[ t]+<>")
+
+             ;; A type definition, or a case statement.  Note that the
+             ;; goto-matching-start above on 'end record' leaves us at
+             ;; 'record', not at 'type'.
+             ;;
+             ;; We get to a case statement here by calling
+             ;; 'ada-move-to-end' from inside a case statement; then
+             ;; we are not ignoring 'when'.
+             (save-excursion
+               ;; Skip type discriminants or case argument function call param list
+               (forward-comment -10000)
+               (forward-char -1)
+               (if (= (char-after) ?\))
+                   (progn
+                     (forward-char 1)
+                     (backward-sexp 1)
+                     (forward-comment -10000)
+                     ))
+               ;; skip type or case argument name
+               (skip-chars-backward "a-zA-Z0-9_.'")
+               (ada-goto-previous-word)
+               (and
+                ;; if it's a protected type, it's the decl start we
+                ;; are looking for; since we didn't see the 'end'
+                ;; above, we are inside it.
+                (looking-at "\\<\\(sub\\)?type\\|case\\>")
 		   (save-match-data
 		     (ada-goto-previous-word)
 		     (not (looking-at "\\<protected\\>"))))
-		  ))                    ; end of `or'
-	    (goto-char (match-beginning 0))
-	  (progn
-	    (setq nest-count (1- nest-count))
-	    (setq first nil))))
+               )                    ; end of type definition p
+
+             ;; null procedure declaration
+             (save-excursion (ada-goto-next-word) (looking-at "\\<null\\>"))
+             );; end or
+            ;; skip this construct
+            nil
+          ;; this is the right "is"
+          (setq nest-count (1- nest-count))
+          (setq first nil)))
 
        ;;
        ((looking-at "new")
@@ -4115,7 +4127,7 @@
 Assumes point to be at the end of a statement."
   (or (ada-in-paramlist-p)
       (save-excursion
-	(ada-goto-matching-decl-start t))))
+	(ada-goto-decl-start t))))
 
 
 (defun ada-looking-at-semi-or ()
@@ -4409,7 +4421,7 @@
 		  ;;
 		  ada-move-to-declaration
 		  (looking-at "\\<begin\\>")
-		  (ada-goto-matching-decl-start)
+		  (ada-goto-decl-start)
 		  (setq pos (point))))
 
 	    )                           ; end of save-excursion
@@ -4421,7 +4433,7 @@
       (set-syntax-table previous-syntax-table))))
 
 (defun ada-move-to-end ()
-  "Move point to the matching end of the block around point.
+  "Move point to the end of the block around point.
 Moves to 'begin' if in a declarative part."
   (interactive)
   (let ((pos (point))
@@ -4471,7 +4483,7 @@
 	      (ada-goto-matching-end 0))
 	     ;; package start
 	     ((save-excursion
-		(setq decl-start (and (ada-goto-matching-decl-start t) (point)))
+		(setq decl-start (and (ada-goto-decl-start t) (point)))
 		(and decl-start (looking-at "\\<package\\>")))
 	      (ada-goto-matching-end 1))
 
--- a/lisp/progmodes/cc-defs.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/progmodes/cc-defs.el	Wed Jan 20 10:22:20 2010 +0900
@@ -1217,12 +1217,14 @@
   ;; This macro does a hidden buffer change.
   `(progn
      (c-put-char-property ,beg 'category 'c-cpp-delimiter)
-     (c-put-char-property ,end 'category 'c-cpp-delimiter)))
+     (if (< ,end (point-max))
+	 (c-put-char-property ,end 'category 'c-cpp-delimiter))))
 (defmacro c-clear-cpp-delimiters (beg end)
   ;; This macro does a hidden buffer change.
   `(progn
      (c-clear-char-property ,beg 'category)
-     (c-clear-char-property ,end 'category)))
+     (if (< ,end (point-max))
+	 (c-clear-char-property ,end 'category))))
 
 (defsubst c-comment-out-cpps ()
   ;; Render all preprocessor constructs syntactically commented out.
--- a/lisp/term/x-win.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/term/x-win.el	Wed Jan 20 10:22:20 2010 +0900
@@ -133,9 +133,9 @@
 down, this function is called.  It calls the functions in the hook
 `emacs-save-session-functions'.  Functions are called with the current
 buffer set to a temporary buffer.  Functions should use `insert' to insert
-lisp code to save the session state.  The buffer is saved
-in a file in the home directory of the user running Emacs.  The file
-is evaluated when Emacs is restarted by the session manager.
+lisp code to save the session state.  The buffer is saved in a file in the
+home directory of the user running Emacs.  The file is evaluated when
+Emacs is restarted by the session manager.
 
 If any of the functions returns non-nil, no more functions are called
 and this function returns non-nil.  This will inform the session manager
@@ -1286,7 +1286,7 @@
 ")
 
 ;; Get a selection value of type TYPE by calling x-get-selection with
-;; an appropiate DATA-TYPE argument decided by `x-select-request-type'.
+;; an appropriate DATA-TYPE argument decided by `x-select-request-type'.
 ;; The return value is already decoded.  If x-get-selection causes an
 ;; error, this function return nil.
 
@@ -1425,7 +1425,7 @@
 (declare-function accelerate-menu "xmenu.c" (&optional frame) t)
 
 (defun x-menu-bar-open (&optional frame)
-  "Open the menu bar if `menu-bar-mode' is on. otherwise call `tmm-menubar'."
+  "Open the menu bar if `menu-bar-mode' is on, otherwise call `tmm-menubar'."
   (interactive "i")
   (if (and menu-bar-mode
 	   (fboundp 'accelerate-menu))
@@ -1482,7 +1482,7 @@
   ;; Create the standard fontset.
   (condition-case err
 	(create-fontset-from-fontset-spec standard-fontset-spec t)
-    (error (display-warning 
+    (error (display-warning
 	    'initialization
 	    (format "Creation of the standard fontset failed: %s" err)
 	    :error)))
@@ -1654,7 +1654,7 @@
   :group 'x)
 
 (defcustom icon-map-list '(x-gtk-stock-map)
-  "A list of alists that maps icon file names to stock/named icons.
+  "A list of alists that map icon file names to stock/named icons.
 The alists are searched in the order they appear.  The first match is used.
 The keys in the alists are file names without extension and with two directory
 components.  For example, to map /usr/share/emacs/22.1.1/etc/images/open.xpm
--- a/lisp/textmodes/artist.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/textmodes/artist.el	Wed Jan 20 10:22:20 2010 +0900
@@ -5528,7 +5528,7 @@
 ;;         See `artist-draw-rect' for an example.
 ;;
 ;;         You must call the init-fn, the prep-fill-fn, arrow-set-fn
-;;         and the exit-fn at the apropriate points.
+;;         and the exit-fn at the appropriate points.
 ;;
 ;;         When artist-mouse-draw-xxx ends, the shape for your mode
 ;;         must be completely drawn.
@@ -5561,7 +5561,7 @@
 ;;         work.
 ;;
 ;;         You must call the init-fn, the prep-fill-fn, arrow-set-fn
-;;         and the exit-fn at the apropriate points.
+;;         and the exit-fn at the appropriate points.
 ;;
 ;;      e. Add your new mode to the master table, `artist-mt'.
 ;;
--- a/lisp/whitespace.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/lisp/whitespace.el	Wed Jan 20 10:22:20 2010 +0900
@@ -397,14 +397,14 @@
    spaces		SPACEs and HARD SPACEs are visualized via
 			faces.
 
-   lines		lines whose have columns beyond
+   lines		lines which have columns beyond
 			`whitespace-line-column' are highlighted via
-			faces .
+			faces.
 			Whole line is highlighted.
 			It has precedence over `lines-tail' (see
 			below).
 
-   lines-tail		lines whose have columns beyond
+   lines-tail		lines which have columns beyond
 			`whitespace-line-column' are highlighted via
 			faces.
 			But only the part of line which goes
@@ -462,7 +462,7 @@
 If nil, don't visualize TABs, (HARD) SPACEs and NEWLINEs via faces and
 via display table.
 
-There is an evaluation order for some values, if some values are
+There is an evaluation order for some values, if they are
 included in `whitespace-style' list.  For example, if
 indentation, indentation::tab and/or indentation::space are
 included in `whitespace-style' list.  The evaluation order for
@@ -1134,7 +1134,7 @@
 Use `global-whitespace-newline-mode' only for NEWLINE
 visualization exclusively.  For other visualizations, including
 NEWLINE visualization together with (HARD) SPACEs and/or TABs,
-please, use `global-whitespace-mode'.
+please use `global-whitespace-mode'.
 
 See also `whitespace-newline' and `whitespace-display-mappings'."
   :lighter    " NL"
@@ -2046,7 +2046,7 @@
 	((quit error)
 	 (whitespace-help-off)
 	 (error (error-message-string data)))))
-    (list sym)))			; return the apropriate symbol
+    (list sym)))			; return the appropriate symbol
 
 
 (defun whitespace-toggle-list (local-p arg the-list)
--- a/src/ChangeLog	Mon Jan 18 10:07:25 2010 +0900
+++ b/src/ChangeLog	Wed Jan 20 10:22:20 2010 +0900
@@ -1,3 +1,20 @@
+2010-01-19  Alan Mackenzie  <acm@muc.de>
+
+	Fix spurious before-change-functions invocation from (insert ?\n).
+	* textprop.c (set_text_properties): rename parameter
+	`signal_after_change_p' to `coherent_change_p', and make the
+	invocation of `modify_region' conditional on it.
+
+2010-01-19  Jan Djärv  <jan.h.d@swipnet.se>
+
+	* xsettings.c (apply_xft_settings): Save settings in Vxft_settings
+	for debug purpose.
+	(syms_of_xsettings): Declare xft-settings.
+
+2010-01-18  Chong Yidong  <cyd@stupidchicken.com>
+
+	* editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
+
 2010-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 
 	* xterm.c (event_handler_gdk): Block input (Bug#5037).
--- a/src/editfns.c	Mon Jan 18 10:07:25 2010 +0900
+++ b/src/editfns.c	Wed Jan 20 10:22:20 2010 +0900
@@ -1897,7 +1897,7 @@
 }
 
 DEFUN ("current-time-string", Fcurrent_time_string, Scurrent_time_string, 0, 1, 0,
-       doc: /* Return the current time, as a human-readable string.
+       doc: /* Return the current local time, as a human-readable string.
 Programs can use this function to decode a time,
 since the number of columns in each field is fixed
 if the year is in the range 1000-9999.
--- a/src/textprop.c	Mon Jan 18 10:07:25 2010 +0900
+++ b/src/textprop.c	Wed Jan 20 10:22:20 2010 +0900
@@ -1346,13 +1346,15 @@
 /* Replace properties of text from START to END with new list of
    properties PROPERTIES.  OBJECT is the buffer or string containing
    the text.  OBJECT nil means use the current buffer.
-   SIGNAL_AFTER_CHANGE_P nil means don't signal after changes.  Value
-   is nil if the function _detected_ that it did not replace any
-   properties, non-nil otherwise.  */
+   COHERENT_CHANGE_P nil means this is being called as an internal
+   subroutine, rather than as a change primitive with checking of
+   read-only, invoking change hooks, etc..  Value is nil if the
+   function _detected_ that it did not replace any properties, non-nil
+   otherwise.  */
 
 Lisp_Object
-set_text_properties (start, end, properties, object, signal_after_change_p)
-     Lisp_Object start, end, properties, object, signal_after_change_p;
+set_text_properties (start, end, properties, object, coherent_change_p)
+     Lisp_Object start, end, properties, object, coherent_change_p;
 {
   register INTERVAL i;
   Lisp_Object ostart, oend;
@@ -1397,12 +1399,12 @@
 	return Qnil;
     }
 
-  if (BUFFERP (object))
+  if (BUFFERP (object) && !NILP (coherent_change_p))
     modify_region (XBUFFER (object), XINT (start), XINT (end), 1);
 
   set_text_properties_1 (start, end, properties, object, i);
 
-  if (BUFFERP (object) && !NILP (signal_after_change_p))
+  if (BUFFERP (object) && !NILP (coherent_change_p))
     signal_after_change (XINT (start), XINT (end) - XINT (start),
 			 XINT (end) - XINT (start));
   return Qt;
--- a/src/xsettings.c	Mon Jan 18 10:07:25 2010 +0900
+++ b/src/xsettings.c	Wed Jan 20 10:22:20 2010 +0900
@@ -42,6 +42,8 @@
 static struct x_display_info *first_dpyinfo;
 static Lisp_Object Qfont_name, Qfont_render;
 static int use_system_font;
+static Lisp_Object Vxft_settings;
+
 
 #ifdef HAVE_GCONF
 static GConfClient *gconf_client;
@@ -406,12 +408,13 @@
   FcPattern *pat;
   struct xsettings settings, oldsettings;
   int changed = 0;
+  char buf[256];
 
   if (!read_xft_settings (dpyinfo, &settings))
     return;
 
   memset (&oldsettings, 0, sizeof (oldsettings));
-
+  buf[0] = '\0';
   pat = FcPatternCreate ();
   XftDefaultSubstitute (dpyinfo->display,
                         XScreenNumberOfScreen (dpyinfo->screen),
@@ -428,20 +431,30 @@
       FcPatternDel (pat, FC_ANTIALIAS);
       FcPatternAddBool (pat, FC_ANTIALIAS, settings.aa);
       ++changed;
+      oldsettings.aa = settings.aa;
     }
+  sprintf (buf, "Antialias: %d", oldsettings.aa);
+
   if ((settings.seen & SEEN_HINTING) != 0
       && oldsettings.hinting != settings.hinting)
     {
       FcPatternDel (pat, FC_HINTING);
       FcPatternAddBool (pat, FC_HINTING, settings.hinting);
       ++changed;
+      oldsettings.hinting = settings.hinting;
     }
+  if (strlen (buf) > 0) strcat (buf, ", ");
+  sprintf (buf+strlen (buf), "Hinting: %d", oldsettings.hinting);
   if ((settings.seen & SEEN_RGBA) != 0 && oldsettings.rgba != settings.rgba)
     {
       FcPatternDel (pat, FC_RGBA);
       FcPatternAddInteger (pat, FC_RGBA, settings.rgba);
+      oldsettings.rgba = settings.rgba;
       ++changed;
     }
+  if (strlen (buf) > 0) strcat (buf, ", ");
+  sprintf (buf+strlen (buf), "RGBA: %d", oldsettings.rgba);
+
   /* Older fontconfig versions don't have FC_LCD_FILTER. */
   if ((settings.seen & SEEN_LCDFILTER) != 0
       && oldsettings.lcdfilter != settings.lcdfilter)
@@ -449,14 +462,22 @@
       FcPatternDel (pat, FC_LCD_FILTER);
       FcPatternAddInteger (pat, FC_LCD_FILTER, settings.lcdfilter);
       ++changed;
+      oldsettings.lcdfilter = settings.lcdfilter;
     }
+  if (strlen (buf) > 0) strcat (buf, ", ");
+  sprintf (buf+strlen (buf), "LCDFilter: %d", oldsettings.lcdfilter);
+
   if ((settings.seen & SEEN_HINTSTYLE) != 0
       && oldsettings.hintstyle != settings.hintstyle)
     {
       FcPatternDel (pat, FC_HINT_STYLE);
       FcPatternAddInteger (pat, FC_HINT_STYLE, settings.hintstyle);
       ++changed;
+      oldsettings.hintstyle = settings.hintstyle;
     }
+  if (strlen (buf) > 0) strcat (buf, ", ");
+  sprintf (buf+strlen (buf), "Hintstyle: %d", oldsettings.hintstyle);
+
   if ((settings.seen & SEEN_DPI) != 0 && oldsettings.dpi != settings.dpi
       && settings.dpi > 0)
     {
@@ -465,7 +486,8 @@
       FcPatternDel (pat, FC_DPI);
       FcPatternAddDouble (pat, FC_DPI, settings.dpi);
       ++changed;
-
+      oldsettings.dpi = settings.dpi;
+      
       /* Change the DPI on this display and all frames on the display.  */
       dpyinfo->resy = dpyinfo->resx = settings.dpi;
       FOR_EACH_FRAME (tail, frame)
@@ -474,12 +496,16 @@
           XFRAME (frame)->resy = XFRAME (frame)->resx = settings.dpi;
     }
 
+  if (strlen (buf) > 0) strcat (buf, ", ");
+  sprintf (buf+strlen (buf), "DPI: %lf", oldsettings.dpi);
+
   if (changed)
     {
       XftDefaultSet (dpyinfo->display, pat);
       if (send_event_p)
         store_font_changed_event (Qfont_render,
                                   XCAR (dpyinfo->name_list_element));
+      Vxft_settings = make_string (buf, strlen (buf));
     }
   else
     FcPatternDestroy (pat);
@@ -638,6 +664,10 @@
     doc: /* *Non-nil means to use the system defined font.  */);
   use_system_font = 0;
 
+  DEFVAR_LISP ("xft-settings", &Vxft_settings,
+               doc: /* Font settings applied to Xft.  */);
+  Vxft_settings = make_string ("", 0);
+
 #ifdef HAVE_XFT
   Fprovide (intern_c_string ("font-render-setting"), Qnil);
 #ifdef HAVE_GCONF
--- a/test/ChangeLog	Mon Jan 18 10:07:25 2010 +0900
+++ b/test/ChangeLog	Wed Jan 20 10:22:20 2010 +0900
@@ -1,3 +1,10 @@
+2010-01-18  Juanma Barranquero  <lekktu@gmail.com>
+
+	* cedet/semantic-tests.el (semanticdb-test-gnu-global)
+	(semantic-lex-test-full-depth, semantic-symref-test-count-hits-in-tag):
+	Fix typos in docstrings and error messages.
+	(semanticdb-ebrowse-run-tests): Fix typos in error messages.
+
 2010-01-14  Juanma Barranquero  <lekktu@gmail.com>
 
 	* cedet/cedet-utests.el (cedet-utest-log-shutdown, pulse-test):
--- a/test/cedet/semantic-tests.el	Mon Jan 18 10:07:25 2010 +0900
+++ b/test/cedet/semantic-tests.el	Wed Jan 20 10:22:20 2010 +0900
@@ -58,7 +58,7 @@
   (when (not (or (eq major-mode 'c-mode)
 		 (eq major-mode 'c++-mode)))
     (error "Please make your default buffer be a C or C++ file, then
-run the test again..")))
+run the test again")))
 
 (defun semanticdb-ebrowse-dump ()
   "Find the first loaded ebrowse table, and dump out the contents."
@@ -83,7 +83,7 @@
 (defun semanticdb-test-gnu-global (searchfor &optional standardfile)
   "Test the GNU Global semanticdb.
 Argument SEARCHFOR is the text to search for.
-If optional arg STANDARDFILE is non nil, use a standard file w/ global enabled."
+If optional arg STANDARDFILE is non-nil, use a standard file w/ global enabled."
   (interactive "sSearch For Tag: \nP")
 
   (require 'data-debug)
@@ -235,7 +235,7 @@
 
 (defun semantic-lex-test-full-depth (arg)
   "Test the semantic lexer in the current buffer parsing through lists.
-Usually the lexer parses
+Usually the lexer parses.
 If universal argument ARG, then try the whole buffer."
   (interactive "P")
   (let* ((start (current-time))
@@ -309,7 +309,7 @@
 
 (defun semantic-symref-test-count-hits-in-tag ()
   "Lookup in the current tag the symbol under point.
-the count all the other references to the same symbol within the
+Then count all the other references to the same symbol within the
 tag that contains point, and return that."
   (interactive)
   (let* ((ctxt (semantic-analyze-current-context))
@@ -323,7 +323,7 @@
        (semantic-tag-start tag)
        (semantic-tag-end tag))
       (when (interactive-p)
-	(message "Found %d occurances of %s in %.2f seconds"
+	(message "Found %d occurrences of %s in %.2f seconds"
 		 Lcount (semantic-tag-name target)
 		 (semantic-elapsed-time start (current-time))))
       Lcount)))