Now on revision 110366. ------------------------------------------------------------ revno: 110366 committer: Paul Eggert branch nick: trunk timestamp: Thu 2012-10-04 22:57:24 -0700 message: Spelling fixes. diff: === modified file 'admin/grammars/srecode-template.wy' --- admin/grammars/srecode-template.wy 2012-10-01 18:10:29 +0000 +++ admin/grammars/srecode-template.wy 2012-10-05 05:57:24 +0000 @@ -212,7 +212,7 @@ ; dictionary-entry-list - : ;; emtpy + : ;; empty () | dictionary-entry-list dictionary-entry (append $1 $2) === modified file 'doc/emacs/display.texi' --- doc/emacs/display.texi 2012-09-30 09:18:38 +0000 +++ doc/emacs/display.texi 2012-10-05 05:57:24 +0000 @@ -1065,7 +1065,7 @@ Type @kbd{M-x delete-trailing-whitespace} to delete all trailing whitespace. This command deletes all extra spaces at the end of each line in the buffer, and all empty lines at the end of the buffer; to -ignore the latter, change the varaible @code{delete-trailing-lines} to +ignore the latter, change the variable @code{delete-trailing-lines} to @code{nil}. If the region is active, the command instead deletes extra spaces at the end of each line in the region. === modified file 'doc/lispref/commands.texi' --- doc/lispref/commands.texi 2012-09-30 09:18:38 +0000 +++ doc/lispref/commands.texi 2012-10-05 05:57:24 +0000 @@ -1952,7 +1952,7 @@ @defun posnp object This function returns non-@code{nil} if @var{object} is a mouse -oposition list, in either of the formats documented in @ref{Click +position list, in either of the formats documented in @ref{Click Events}); and @code{nil} otherwise. @end defun === modified file 'doc/lispref/errors.texi' --- doc/lispref/errors.texi 2012-09-30 09:18:38 +0000 +++ doc/lispref/errors.texi 2012-10-05 05:57:24 +0000 @@ -148,7 +148,7 @@ @ignore @c Not actually used for anything? Probably definition should be removed. @item protected-field -The message is @samp{Attempt to modify a protected fiel. +The message is @samp{Attempt to modify a protected file}. @end ignore @item scan-error @@ -205,7 +205,7 @@ The message is @code{Arithmetic range error}. @item singularity-error -The mssage is @samp{Arithmetic singularity error}. This is a +The message is @samp{Arithmetic singularity error}. This is a subcategory of @code{domain-error}. @item underflow-error === modified file 'doc/misc/ede.texi' --- doc/misc/ede.texi 2012-10-01 18:10:29 +0000 +++ doc/misc/ede.texi 2012-10-05 05:57:24 +0000 @@ -302,7 +302,7 @@ . a myprogram RET @end example -Note that these promps often have completion, so you can just press +Note that these prompts often have completion, so you can just press @kbd{TAB} to complete the name @file{myprogram}. If you had many files to add to the same target, you could mark them @@ -785,7 +785,7 @@ An arduino project of type @samp{ede-arduino-project} will read your @file{~/.arduino/preferences.txt} file, and identify your sketches. You will still need the Arduino IDE to set up your preferences and -locate your arduino. After quiting the IDE, Emacs will be able to +locate your arduino. After quitting the IDE, Emacs will be able to find your sketches, compile them, and upload them to your arduino. If you have the @file{arduino} command on your path, @ede{} will be @@ -1169,14 +1169,14 @@ @table @code @item project-am -Autmake project which reads existing Automake files. +Automake project which reads existing Automake files. @item ede-proj-project This project type will create @file{Makefiles}, or @file{Makefile.am} files to compile your project. @item ede-linux This project type will detect linux source trees. @item ede-emacs -This proejct will detect an Emacs source tree. +This project will detect an Emacs source tree. @end table There are several other project types as well. @@ -1291,7 +1291,7 @@ @code{ede-toplevel-project}. If this hasn't already been discovered, the directories as scanned upward one at a time until a directory with no project is found. The last found project becomes the project -root. If the ofund instance of @code{ede-project-autoload} has a +root. If the found instance of @code{ede-project-autoload} has a valid @code{proj-root} slot value, then that function is called instead of scanning the project by hand. Some project types have a short-cut for determining the root of a project, so this comes in handy. @@ -3331,7 +3331,7 @@ @end deffn @deffn Method ede-proj-flush-autoconf :AFTER this -Flush the configure file (current buffer) to accomodate @var{THIS}. +Flush the configure file (current buffer) to accommodate @var{THIS}. @end deffn @deffn Method ede-buffer-mine :AFTER this buffer @@ -3920,7 +3920,7 @@ @end deffn @deffn Method project-compile-target-command :AFTER this -Default target t- use when compling a texinfo file. +Default target to use when compiling a texinfo file. @end deffn @deffn Method ede-documentation :AFTER this === modified file 'doc/misc/eieio.texi' --- doc/misc/eieio.texi 2012-10-01 18:10:29 +0000 +++ doc/misc/eieio.texi 2012-10-05 05:57:24 +0000 @@ -595,7 +595,7 @@ @item :depth-first Search for methods in the class hierarchy in a depth first order. @item :c3 -Searches for methods in in a learnarized way that most closely matches +Searches for methods in in a linearized way that most closely matches what CLOS does when a monotonic class structure is defined. @end table @@ -1010,7 +1010,7 @@ @item :depth-first Search for methods in the class hierarchy in a depth first order. @item :c3 -Searches for methods in in a learnarized way that most closely matches +Searches for methods in in a linearized way that most closely matches what CLOS does when CLOS when a monotonic class structure is defined. This is derived from the Dylan language documents by @@ -1408,8 +1408,8 @@ Read a persistent object from @var{filename}, and return it. Signal an error if the object in @var{FILENAME} is not a constructor for @var{CLASS}. Optional @var{allow-subclass} says that it is ok for -@code{eieio-peristent-read} to load in subclasses of class instead of -being pendantic." +@code{eieio-persistent-read} to load in subclasses of class instead of +being pedantic. @end defun @node eieio-named @@ -1564,9 +1564,9 @@ @deffn Command eieiodoc-class class indexstring &optional skiplist -This will start at the current point, and created an indented menu of +This will start at the current point, and create an indented menu of all the child classes of, and including @var{class}, but skipping any -classes that might be in @var{skiplist} It will then create nodes for +classes that might be in @var{skiplist}. It will then create nodes for all these classes, subsection headings, and indexes. Each class will be indexed using the texinfo labeled index @@ -1585,7 +1585,7 @@ Next, an inheritance tree will be created listing all parents of that section's class. -Then,all the slots will be expanded in tables, and described +Then, all the slots will be expanded in tables, and described using the documentation strings from the code. Default values will also be displayed. Only those slots with @code{:initarg} specified will be expanded, others will be hidden. If a slot is inherited from a parent, === modified file 'doc/misc/org.texi' --- doc/misc/org.texi 2012-09-30 15:14:59 +0000 +++ doc/misc/org.texi 2012-10-05 05:57:24 +0000 @@ -947,7 +947,7 @@ Installing Info files is system dependent, because of differences in the @file{install-info} program. The Info documentation is installed together with the rest of Org mode. If you don't install Org mode, it is possible to -install the Info documentation seperately (you need to have +install the Info documentation separately (you need to have install-info@footnote{The output from install-info (if any) is system dependent. In particular Debian and its derivatives use two different versions of install-info and you may see the message: @@ -2671,13 +2671,13 @@ @cindex Lisp forms, as table formulas It is also possible to write a formula in Emacs Lisp. This can be useful -for string manipulation and control structures, if Calc's functionality is -not enough. +for string manipulation and control structures, if Calc's functionality is +not enough. If a formula starts with a single-quote followed by an opening parenthesis, then it is evaluated as a Lisp form. The evaluation should return either a string or a number. Just as with @file{calc} formulas, you can specify modes -and a printf format after a semicolon. +and a printf format after a semicolon. With Emacs Lisp forms, you need to be conscious about the way field references are interpolated into the form. By default, a reference will be @@ -6114,7 +6114,7 @@ them with @kbd{S-@key{cursor}} keys, the update is automatic. @orgcmd{C-S-@key{up/down},org-clock-timestamps-up/down} On @code{CLOCK} log lines, increase/decrease both timestamps so that the -clock duration keeps the same. +clock duration keeps the same. @orgcmd{S-M-@key{up/down},org-timestamp-up/down} On @code{CLOCK} log lines, increase/decrease the timestamp at point and the one of the previous (or the next clock) timestamp by the same duration. @@ -16556,7 +16556,7 @@ Finally, Org writes the file @file{index.org}, containing links to all other files. @i{MobileOrg} first reads this file from the server, and then downloads all agendas and Org files listed in it. To speed up the download, -MobileOrg will only read files whose checksums@footnote{Checksums are stored +MobileOrg will only read files whose checksums@footnote{Checksums are stored automatically in the file @file{checksums.dat}} have changed. @node Pulling from MobileOrg, , Pushing to MobileOrg, MobileOrg @@ -16704,7 +16704,7 @@ opened the doors for many new ideas and features. @item Jambunathan K -Jambunathan contributed the ODT exporter, definitly a killer feature of +Jambunathan contributed the ODT exporter, definitely a killer feature of Org mode. He also contributed the new HTML exporter, which is another core feature of Org. Here too, I knew I could rely on him to fix bugs in these areas and to patiently explain the users what was the problems and solutions. @@ -16712,7 +16712,7 @@ @item Achim Gratz Achim rewrote the building process of Org, turning some @emph{ad hoc} tools into a flexible and conceptually clean process. He patiently coped with the -many hicups that such a change can create for users. +many hiccups that such a change can create for users. @item Nick Dokos The Org mode mailing list would not be such a nice place without Nick, who === modified file 'etc/ORG-NEWS' --- etc/ORG-NEWS 2012-09-30 15:14:59 +0000 +++ etc/ORG-NEWS 2012-10-05 05:57:24 +0000 @@ -65,12 +65,12 @@ *** Org Element - =org-element.el= is a toolbox for parsing and analysing "elements" + =org-element.el= is a toolbox for parsing and analyzing "elements" in an Org-mode buffer. This has been written by Nicolas Goaziou and has been tested for quite some time. It is now part of Org's core and many core functions rely on this package. - Two functions might be particularily handy for users: + Two functions might be particularly handy for users: =org-element-at-point= and =org-element-context=. See the docstrings for more details. @@ -539,7 +539,7 @@ **** =:results org= now put results in a =#+BEGIN_SRC org= block =:results org= used to put results in a =#+BEGIN_ORG= block but it now puts -results in a =#+BEGIN_SRC org= block, wich comma-escaped lines. +results in a =#+BEGIN_SRC org= block, with comma-escaped lines. =#+BEGIN_ORG= blocks are obsolete. @@ -552,7 +552,7 @@ **** New menu entry for [[doc::org-refile][org-refile]] **** Allow capturing to encrypted entries -If you capture to an encrypted entry, it will be decrpyted before +If you capture to an encrypted entry, it will be decrypted before inserting the template then re-encrypted after finalizing the capture. **** Inactive timestamps are now handled in tables @@ -932,7 +932,7 @@ **** org-gnus.el now allows link creation from messages - You can now create links from messages. This is particularily + You can now create links from messages. This is particularly useful when the user wants to stored messages that he sends, for later check. Thanks to Ulf Stegemann for the patch. @@ -1115,7 +1115,7 @@ *** Completion -**** In-buffer completion is now done using John Wiegleys pcomplete.el +**** In-buffer completion is now done using John Wiegley's pcomplete.el Thanks to John Wiegley for much of this code. === modified file 'lib/stdlib.in.h' --- lib/stdlib.in.h 2012-10-04 07:15:42 +0000 +++ lib/stdlib.in.h 2012-10-05 05:57:24 +0000 @@ -458,7 +458,7 @@ /* Return the pathname of the pseudo-terminal slave associated with the master FD is open on, or NULL on errors. */ # if @REPLACE_PTSNAME@ -# if !(defined __cplusplus && defined GNULIB_NAMESPCE) +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) # undef ptsname # define ptsname rpl_ptsname # endif === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-10-04 19:28:11 +0000 +++ lisp/ChangeLog 2012-10-05 05:57:24 +0000 @@ -8347,7 +8347,8 @@ 2012-03-18 Leo Liu - * net/rcirc.el (rcirc-cmd-quit): Allow quiting all servers with prefix. + * net/rcirc.el (rcirc-cmd-quit): Allow quitting all servers with + prefix. 2012-03-17 Eli Zaretskii === modified file 'lisp/ChangeLog.10' --- lisp/ChangeLog.10 2012-01-19 07:21:25 +0000 +++ lisp/ChangeLog.10 2012-10-05 05:57:24 +0000 @@ -5492,7 +5492,7 @@ 2003-02-14 Dave Love - * international/code-pages.el: Undo `Trailing whitepace deleted.' + * international/code-pages.el: Undo `Trailing whitespace deleted.' damage. (cp1125, mik): Nullify mime-charset. === modified file 'lisp/cedet/ede.el' --- lisp/cedet/ede.el 2012-10-02 05:02:52 +0000 +++ lisp/cedet/ede.el 2012-10-05 05:57:24 +0000 @@ -1358,13 +1358,13 @@ (defmethod ede-system-include-path ((this ede-project)) "Get the system include path used by project THIS." nil) - + (defmethod ede-system-include-path ((this ede-target)) "Get the system include path used by project THIS." nil) (defmethod ede-source-paths ((this ede-project) mode) - "Get the base to all source trees in the current projet for MODE. + "Get the base to all source trees in the current project for MODE. For example, /src for sources of c/c++, Java, etc, and /doc for doc sources." nil) === modified file 'lisp/cedet/ede/auto.el' --- lisp/cedet/ede/auto.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/ede/auto.el 2012-10-05 05:57:24 +0000 @@ -68,7 +68,7 @@ ;; Add new types of dirmatches here. - ;; Error for wierd stuff + ;; Error for weird stuff (t (error "Unknown dirmatch type."))))) @@ -285,7 +285,7 @@ ;; If this file DOES NOT match dirmatch, we set the callfcn ;; to nil, meaning don't load the ede support file for this ;; type of project. If it does match, we will load the file - ;; and use a more accurate programatic match from there. + ;; and use a more accurate programmatic match from there. (unless (ede-project-dirmatch-p file dirmatch) (setq callfcn nil)))) ;; Call into the project support file for a match. === modified file 'lisp/cedet/ede/autoconf-edit.el' --- lisp/cedet/ede/autoconf-edit.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/ede/autoconf-edit.el 2012-10-05 05:57:24 +0000 @@ -165,7 +165,7 @@ (setq param (substring param (match-end 0)))) (when (string-match "\\s-*\\]?\\s-*\\'" param) (setq param (substring param 0 (match-beginning 0)))) - ;; Look for occurances of backslash newline + ;; Look for occurrences of backslash newline (while (string-match "\\s-*\\\\\\s-*\n\\s-*" param) (setq param (replace-match " " t t param))) param) === modified file 'lisp/cedet/inversion.el' --- lisp/cedet/inversion.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/inversion.el 2012-10-05 05:57:24 +0000 @@ -348,7 +348,7 @@ ;;;###autoload (defun inversion-require-emacs (emacs-ver xemacs-ver sxemacs-ver) - "Declare that you need either EMACS-VER, XEMACS-VER or SXEMACE-ver. + "Declare that you need either EMACS-VER, XEMACS-VER or SXEMACS-ver. Only checks one based on which kind of Emacs is being run." (let ((err (inversion-test 'emacs (cond ((featurep 'sxemacs) === modified file 'lisp/cedet/semantic/bovine/c.el' --- lisp/cedet/semantic/bovine/c.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/semantic/bovine/c.el 2012-10-05 05:57:24 +0000 @@ -390,7 +390,7 @@ ;; can then interpret. (let ((stream (semantic-lex-spp-symbol-stream spp-symbol))) (cond - ;; Empyt string means defined, so t. + ;; Empty string means defined, so t. ((null stream) t) ;; A list means a parsed macro stream. ((listp stream) @@ -515,7 +515,7 @@ ;; should be skipped. (semantic-c-skip-conditional-section) (setq semantic-lex-end-point (point)) - + ;; @TODO -somewhere around here, we also need to skip ;; other sections of the conditional. === modified file 'lisp/cedet/semantic/complete.el' --- lisp/cedet/semantic/complete.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/semantic/complete.el 2012-10-05 05:57:24 +0000 @@ -1555,7 +1555,7 @@ extended set. Quiet: Only show completions when we have narrowed all -posibilities down to a maximum of +possibilities down to a maximum of `semantic-displayor-tooltip-initial-max-tags' tags. Pressing TAB multiple times will also show completions. @@ -2239,4 +2239,3 @@ ;; End: ;;; semantic/complete.el ends here - === modified file 'lisp/cedet/semantic/db-global.el' --- lisp/cedet/semantic/db-global.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/semantic/db-global.el 2012-10-05 05:57:24 +0000 @@ -48,7 +48,7 @@ Two sanity checks are performed to assure (a) that GNU global program exists and (b) that the GNU global program version is compatibility with the database version. If optional NOERROR is nil, then an error may be signalled on version -mismatch. If NOERROR is not nil, then no error will be signlled. Instead +mismatch. If NOERROR is not nil, then no error will be signaled. Instead return value will indicate success or failure with non-nil or nil respective values." (interactive === modified file 'lisp/cedet/semantic/db-typecache.el' --- lisp/cedet/semantic/db-typecache.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/semantic/db-typecache.el 2012-10-05 05:57:24 +0000 @@ -584,7 +584,7 @@ (dolist (P path) (condition-case nil (oset P pointmax nil) - ;; Pointmax may not exist for all tables disovered in the + ;; Pointmax may not exist for all tables discovered in the ;; path. (error nil)) (semantic-reset (semanticdb-get-typecache P))))) === modified file 'lisp/cedet/semantic/decorate/include.el' --- lisp/cedet/semantic/decorate/include.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/semantic/decorate/include.el 2012-10-05 05:57:24 +0000 @@ -589,7 +589,7 @@ on disk, but a database table of tags has been associated with it. This means that the include will still be used to find tags for -searches, but you connot visit this include.\n\n") +searches, but you cannot visit this include.\n\n") (princ "This Header is now represented by the following database table:\n\n ") (princ (object-print table)) ))) === modified file 'lisp/cedet/semantic/fw.el' --- lisp/cedet/semantic/fw.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/semantic/fw.el 2012-10-05 05:57:24 +0000 @@ -85,7 +85,7 @@ c))) event)) (defun semantic-popup-menu (menu) - "Blockinig version of `popup-menu'" + "Blocking version of `popup-menu'" (popup-menu menu) ;; Wait... (while (popup-up-p) (dispatch-event (next-event)))) @@ -139,7 +139,7 @@ 'run-mode-hooks 'run-hooks)) - ;; Fancy compat useage now handled in cedet-compat + ;; Fancy compat usage now handled in cedet-compat (defalias 'semantic-subst-char-in-string 'subst-char-in-string) ) === modified file 'lisp/cedet/semantic/lex-spp.el' --- lisp/cedet/semantic/lex-spp.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/semantic/lex-spp.el 2012-10-05 05:57:24 +0000 @@ -646,7 +646,7 @@ ;; #define FOO(a) foo##a##bar (semantic-lex-spp-symbol-merge (cadr tok))) (t - (message "Invalid merge macro ecountered; \ + (message "Invalid merge macro encountered; \ will return empty string instead.") ""))) txt === modified file 'lisp/cedet/semantic/symref/filter.el' --- lisp/cedet/semantic/symref/filter.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/semantic/symref/filter.el 2012-10-05 05:57:24 +0000 @@ -101,7 +101,7 @@ (semantic-tag-start tag) (semantic-tag-end tag)) (when (called-interactively-p 'interactive) - (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))) === modified file 'lisp/cedet/semantic/tag-ls.el' --- lisp/cedet/semantic/tag-ls.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/semantic/tag-ls.el 2012-10-05 05:57:24 +0000 @@ -66,7 +66,7 @@ (define-overloadable-function semantic--tag-similar-types-p (tag1 tag2) "Compare the types of TAG1 and TAG2. -This functions can be overriden, for example to compare a fully +This function can be overridden, for example to compare a fully qualified with an unqualified type." (cond ((and (null (semantic-tag-type tag1)) @@ -80,7 +80,7 @@ (defun semantic--tag-similar-types-p-default (tag1 tag2) "Compare the types of TAG1 and TAG2. -This functions can be overriden, for example to compare a fully +This function can be overridden, for example to compare a fully qualified with an unqualified type." (semantic-tag-of-type-p tag1 (semantic-tag-type tag2))) @@ -97,7 +97,7 @@ to do the default equality tests if ATTR is not special for that mode.") (defun semantic--tag-attribute-similar-p-default (attr value1 value2 ignorable-attributes) - "For ATTR, VALUE1, VALUE2 and IGNORABLE-ATTRIBUTES, test for similarness." + "For ATTR, VALUE1, VALUE2 and IGNORABLE-ATTRIBUTES, test for similarity." (cond ;; Tag sublists require special testing. ((and (listp value1) (semantic-tag-p (car value1)) @@ -131,7 +131,7 @@ are similar w/out checking the sub-list of tags. Optional argument IGNORABLE-ATTRIBUTES are attributes to ignore while comparing similarity. By default, `semantic-tag-similar-ignorable-attributes' is referenced for -attributes, and IGNOREABLE-ATTRIBUTES will augment this list. +attributes, and IGNORABLE-ATTRIBUTES will augment this list. Note that even though :name is not an attribute, it can be used to to indicate lax comparison of names via `semantic--tag-similar-names-p'") @@ -207,7 +207,7 @@ (define-overloadable-function semantic-tag-full-name (tag &optional stream-or-buffer) "Return the fully qualified name of TAG in the package hierarchy. -STREAM-OR-BUFFER can be anything convertable by `semantic-something-to-stream', +STREAM-OR-BUFFER can be anything convertible by `semantic-something-to-stream', but must be a toplevel semantic tag stream that contains TAG. A Package Hierarchy is defined in UML by the way classes and methods are organized on disk. Some languages use this concept such that a === modified file 'lisp/cedet/semantic/tag.el' --- lisp/cedet/semantic/tag.el 2012-10-01 18:10:29 +0000 +++ lisp/cedet/semantic/tag.el 2012-10-05 05:57:24 +0000 @@ -554,7 +554,7 @@ "Set TAG name to NAME." (setcar tag name)) -;;; TAG Proxys +;;; TAG Proxies ;; ;; A new kind of tag is a TAG PROXY. These are tags that have some ;; minimal number of features set, such as name and class, but have a @@ -570,7 +570,7 @@ to be resolved, and DATA is the DATA passed into this function. DATA is data to help resolve the proxy. DATA can be an EIEIO object, such that FUNCTION is a method. -FUNCTION should return a list of tags, preferrably one tag." +FUNCTION should return a list of tags, preferably one tag." (let ((sym (make-symbol ":tag-proxy"))) (put sym 'proxy-function function) (put sym 'proxy-data data) === modified file 'lisp/emacs-lisp/eieio-base.el' --- lisp/emacs-lisp/eieio-base.el 2012-10-01 18:10:29 +0000 +++ lisp/emacs-lisp/eieio-base.el 2012-10-05 05:57:24 +0000 @@ -228,8 +228,8 @@ "Read a persistent object from FILENAME, and return it. Signal an error if the object in FILENAME is not a constructor for CLASS. Optional ALLOW-SUBCLASS says that it is ok for -`eieio-peristent-read' to load in subclasses of class instead of -being pendantic." +`eieio-persistent-read' to load in subclasses of class instead of +being pedantic." (unless class (message "Unsafe call to `eieio-persistent-read'.")) (when (and class (not (class-p class))) @@ -301,7 +301,7 @@ "Validate that in CLASS, the SLOT with PROPOSED-VALUE is good, then fix. A limited number of functions, such as quote, list, and valid object constructor functions are considered valid. -Secondarilly, any text properties will be stripped from strings." +Second, any text properties will be stripped from strings." (cond ((consp proposed-value) ;; Lists with something in them need special treatment. (let ((slot-idx (eieio-slot-name-index class nil slot)) === modified file 'lisp/emacs-lisp/timer.el' --- lisp/emacs-lisp/timer.el 2012-09-25 04:13:02 +0000 +++ lisp/emacs-lisp/timer.el 2012-10-05 05:57:24 +0000 @@ -204,7 +204,7 @@ "Insert TIMER into `timer-idle-list'. This arranges to activate TIMER whenever Emacs is next idle. If optional argument DONT-WAIT is non-nil, set TIMER to activate -immediately \(see beloe\), or at the right time, if Emacs is +immediately \(see below\), or at the right time, if Emacs is already idle. REUSE-CELL, if non-nil, is a cons cell to reuse when inserting === modified file 'lisp/ido.el' --- lisp/ido.el 2012-09-30 12:28:50 +0000 +++ lisp/ido.el 2012-10-05 05:57:24 +0000 @@ -496,7 +496,7 @@ ;; See http://debbugs.gnu.org/2042 for more info. (defcustom ido-buffer-disable-smart-matches t "Non-nil means not to re-order matches for buffer switching. -By default, ido aranges matches in the following order: +By default, ido arranges matches in the following order: full-matches > suffix matches > prefix matches > remaining matches === modified file 'lisp/org/ChangeLog' --- lisp/org/ChangeLog 2012-10-01 05:41:14 +0000 +++ lisp/org/ChangeLog 2012-10-05 05:57:24 +0000 @@ -2079,13 +2079,7 @@ * org-agenda.el (org-agenda-list): Ensures that the list returned by `org-agenda-add-time-grid-maybe' is appended to ̀rtnall' before - checking if the latter is emtpy. - -2012-09-30 Christophe Junke (tiny change) - - * org-agenda.el (org-agenda-list): Ensure that the list returned - by `org-agenda-add-time-grid-maybe' is appended to `rtnall' before - checking if the latter is emtpy. + checking if the latter is empty. 2012-09-30 Christophe Rhodes (tiny change) @@ -2691,7 +2685,7 @@ * org-element.el (org-element-paragraph-parser): Fix parsing of paragraph at the beginning of an item. - * org.el (org-mode): Set back comment-start-skip so comment-dwin + * org.el (org-mode): Set back comment-start-skip so comment-dwim can tell a keyword from a comment. * org.el (org-set-autofill-regexps): Install new comment line @@ -2959,7 +2953,7 @@ * org-capture.el (org-capture-fill-template): Expand % escape sequences into text entered for 'th %^{PROMPT} escape. - + * org-capture.el (org-capture-fill-template): Fixed regexp for % expandos to match any positive integer. (org-capture-templates): Updated docstring accordingly. === modified file 'lisp/org/org-agenda.el' --- lisp/org/org-agenda.el 2012-09-30 15:14:59 +0000 +++ lisp/org/org-agenda.el 2012-10-05 05:57:24 +0000 @@ -823,7 +823,7 @@ :group 'org-agenda-daily/weekly :version "24.1" :type '(choice - (const :tag "Alwas show prewarning" nil) + (const :tag "Always show prewarning" nil) (const :tag "Remove prewarning if entry is scheduled" t) (integer :tag "Restart prewarning N days before deadline"))) @@ -2837,7 +2837,7 @@ (widen) (let ((inhibit-read-only t)) (add-text-properties (point-min) (point-max) - `(org-serie t org-serie-redo-cmd ,redo))) + `(org-series t org-series-redo-cmd ,redo))) (setq org-agenda-redo-command redo) (goto-char (point-min))) (org-agenda-fit-window-to-buffer) @@ -4019,7 +4019,7 @@ `(org-agenda-type agenda org-last-args (,arg ,start-day ,span) org-redo-cmd ,org-agenda-redo-command - org-serie-cmd ,org-cmd)) + org-series-cmd ,org-cmd)) (if (eq org-agenda-show-log-scoped 'clockcheck) (org-agenda-show-clocking-issues)) (org-agenda-finalize) @@ -4324,7 +4324,7 @@ `(org-agenda-type search org-last-args (,todo-only ,string ,edit-at) org-redo-cmd ,org-agenda-redo-command - org-serie-cmd ,org-cmd)) + org-series-cmd ,org-cmd)) (org-agenda-finalize) (setq buffer-read-only t)))) @@ -4414,7 +4414,7 @@ `(org-agenda-type todo org-last-args ,arg org-redo-cmd ,org-agenda-redo-command - org-serie-cmd ,org-cmd)) + org-series-cmd ,org-cmd)) (org-agenda-finalize) (setq buffer-read-only t)))) @@ -4499,7 +4499,7 @@ `(org-agenda-type tags org-last-args (,todo-only ,match) org-redo-cmd ,org-agenda-redo-command - org-serie-cmd ,org-cmd)) + org-series-cmd ,org-cmd)) (org-agenda-finalize) (setq buffer-read-only t)))) @@ -6583,7 +6583,7 @@ (org-agenda-Quit)) (defun org-agenda-kill-all-agenda-buffers () - "Kill all buffers in `org-agena-mode'. + "Kill all buffers in `org-agenda-mode'. This is used when toggling sticky agendas. You can also explicitly invoke it with `C-c a C-k'." (interactive) @@ -6623,20 +6623,20 @@ (lprops (get 'org-agenda-redo-command 'org-lprops)) (redo-cmd (get-text-property p 'org-redo-cmd)) (last-args (get-text-property p 'org-last-args)) - (org-agenda-overriding-cmd (get-text-property p 'org-serie-cmd)) + (org-agenda-overriding-cmd (get-text-property p 'org-series-cmd)) (org-agenda-overriding-cmd-arguments (unless (eq all t) (cond ((listp last-args) (cons (or cpa (car last-args)) (cdr last-args))) ((stringp last-args) last-args)))) - (serie-redo-cmd (get-text-property p 'org-serie-redo-cmd))) + (series-redo-cmd (get-text-property p 'org-series-redo-cmd))) (put 'org-agenda-tag-filter :preset-filter nil) (put 'org-agenda-category-filter :preset-filter nil) (and cols (org-columns-quit)) (message "Rebuilding agenda buffer...") - (if serie-redo-cmd - (eval serie-redo-cmd) + (if series-redo-cmd + (eval series-redo-cmd) (org-let lprops '(eval redo-cmd))) (setq org-agenda-undo-list nil org-agenda-pending-undo-list nil) @@ -7035,7 +7035,7 @@ (or (and cnt (text-property-any (point-min) (point-max) 'org-day-cnt cnt)) (text-property-any (point-min) (point-max) 'org-today t) (text-property-any (point-min) (point-max) 'org-agenda-type 'agenda) - (and (get-text-property (min (1- (point-max)) (point)) 'org-serie) + (and (get-text-property (min (1- (point-max)) (point)) 'org-series) (org-agenda-goto-block-beginning)) (point-min)))) @@ -7090,7 +7090,7 @@ ;; `cmd' may have been set by `org-agenda-run-series' which ;; uses `org-agenda-overriding-cmd' to decide whether ;; overriding is allowed for `cmd' - (get-text-property (min (1- (point-max)) (point)) 'org-serie-cmd)) + (get-text-property (min (1- (point-max)) (point)) 'org-series-cmd)) (org-agenda-overriding-arguments (list (car args) sd span))) (org-agenda-redo) @@ -7183,7 +7183,7 @@ org-starting-day)) (sd (org-agenda-compute-starting-span sd span n)) (org-agenda-overriding-cmd - (get-text-property (min (1- (point-max)) (point)) 'org-serie-cmd)) + (get-text-property (min (1- (point-max)) (point)) 'org-series-cmd)) (org-agenda-overriding-arguments (list (car args) sd span))) (org-agenda-redo) === modified file 'lisp/org/org-element.el' --- lisp/org/org-element.el 2012-09-30 15:14:59 +0000 +++ lisp/org/org-element.el 2012-10-05 05:57:24 +0000 @@ -3924,7 +3924,7 @@ (and (eq type 'paragraph) (equal data (car (org-element-contents parent))) (memq (org-element-type parent) - '(footnote-definiton item)))))) + '(footnote-definition item)))))) ""))) (funcall (intern (format "org-element-%s-interpreter" type)) data === modified file 'lisp/org/org-faces.el' --- lisp/org/org-faces.el 2012-09-30 15:14:59 +0000 +++ lisp/org/org-faces.el 2012-10-05 05:57:24 +0000 @@ -293,7 +293,7 @@ (((class color) (min-colors 8) (background dark)) (:foreground "red" :inverse-video t)) (t (:inverse-video t)))) "Face for highlighting the calendar day when using `org-read-date'. -Using a bold face here might cause discrepencies while displaying the +Using a bold face here might cause discrepancies while displaying the calendar." :group 'org-faces) === modified file 'lisp/org/org-remember.el' --- lisp/org/org-remember.el 2012-09-30 15:14:59 +0000 +++ lisp/org/org-remember.el 2012-10-05 05:57:24 +0000 @@ -64,7 +64,7 @@ \\[universal-argument] \\[org-remember-finalize] to file the note. When this variable is nil, \\[org-remember-finalize] gives you the prompts, and -\\[universal-argument] \\[org-remember-finalize] triggers the fasttrack." +\\[universal-argument] \\[org-remember-finalize] triggers the fast track." :group 'org-remember :type 'boolean) === modified file 'lisp/proced.el' --- lisp/proced.el 2012-09-23 12:34:23 +0000 +++ lisp/proced.el 2012-10-05 05:57:24 +0000 @@ -1784,7 +1784,7 @@ process-alist)))) (unless (and signal process-alist) - ;; Discouraged usge (supported for backward compatibility): + ;; Discouraged usage (supported for backward compatibility): ;; The new calling sequence separates more cleanly between the parts ;; of the code required for interactive and noninteractive calls so that ;; the command can be used more flexibly in noninteractive ways, too. === modified file 'lisp/profiler.el' --- lisp/profiler.el 2012-10-02 06:30:40 +0000 +++ lisp/profiler.el 2012-10-05 05:57:24 +0000 @@ -495,7 +495,7 @@ t)))))) (defun profiler-report-collapse-entry () - "Collpase entry at point." + "Collapse entry at point." (interactive) (save-excursion (beginning-of-line) === modified file 'lisp/progmodes/python.el' --- lisp/progmodes/python.el 2012-10-04 16:39:37 +0000 +++ lisp/progmodes/python.el 2012-10-05 05:57:24 +0000 @@ -502,7 +502,7 @@ (and ;; Match even number of backslashes. (or (not (any ?\\ ?\' ?\")) point - ;; Quotes might be preceeded by a escaped quote. + ;; Quotes might be preceded by a escaped quote. (and (or (not (any ?\\)) point) ?\\ (* ?\\ ?\\) (any ?\' ?\"))) (* ?\\ ?\\) === modified file 'lisp/progmodes/verilog-mode.el' --- lisp/progmodes/verilog-mode.el 2012-09-28 05:19:55 +0000 +++ lisp/progmodes/verilog-mode.el 2012-10-05 05:57:24 +0000 @@ -5148,7 +5148,7 @@ whitespace with \\[verilog-delete-trailing-whitespace] on all command-line files, and saves the buffers." (unless noninteractive - (error "Use verilog-batch-delete-trailing-whitepace only with --batch")) ;; Otherwise we'd mess up buffer modes + (error "Use verilog-batch-delete-trailing-whitespace only with --batch")) ;; Otherwise we'd mess up buffer modes (verilog-batch-execute-func `verilog-delete-trailing-whitespace)) (defun verilog-batch-diff-auto () @@ -12161,7 +12161,7 @@ Interface names must be resolvable to filenames. See `verilog-auto-inst'. As with other autos, any inputs/outputs declared in the module -will suppress the AUTO from redeclarating an inputs/outputs by +will suppress the AUTO from redeclaring an input/output by the same name. An example: === modified file 'lisp/subr.el' --- lisp/subr.el 2012-09-25 05:33:43 +0000 +++ lisp/subr.el 2012-10-05 05:57:24 +0000 @@ -3170,7 +3170,7 @@ (set-window-hscroll window 0) ;; Don't try this with NOFORCE non-nil! (set-window-start window (point-min) t) - ;; This hould not be necessary. + ;; This should not be necessary. (set-window-point window (point-min)) ;; Run `temp-buffer-show-hook', with the chosen window selected. (with-selected-window window === modified file 'lisp/textmodes/reftex.el' --- lisp/textmodes/reftex.el 2012-09-30 20:30:13 +0000 +++ lisp/textmodes/reftex.el 2012-10-05 05:57:24 +0000 @@ -2466,7 +2466,7 @@ "Remember to cover the basics, that is, what you expected to happen and what in fact did happen. -Check if the bug is reproducable with an up-to-date version of +Check if the bug is reproducible with an up-to-date version of RefTeX available from http://www.gnu.org/software/auctex/. If the bug is triggered by a specific \(La\)TeX file, you should try === modified file 'lisp/window.el' --- lisp/window.el 2012-09-30 10:44:43 +0000 +++ lisp/window.el 2012-10-05 05:57:24 +0000 @@ -701,7 +701,7 @@ (set-window-parameter new 'delete-window 'delete-side-window) ;; Auto-adjust height/width of new window unless a size has been ;; explicitly requested. - (unless (if left-or-right + (unless (if left-or-right (cdr (assq 'window-width alist)) (cdr (assq 'window-height alist))) (setq alist @@ -5615,7 +5615,7 @@ buffer window 'reuse alist display-buffer-mark-dedicated))))) (defun display-buffer-at-bottom (buffer alist) - "Try displaying BUFFER in a window at the botom of the selected frame. + "Try displaying BUFFER in a window at the bottom of the selected frame. This either splits the window at the bottom of the frame or the frame's root window, or reuses an existing window at the bottom of the selected frame." === modified file 'src/lread.c' --- src/lread.c 2012-10-01 06:36:54 +0000 +++ src/lread.c 2012-10-05 05:57:24 +0000 @@ -1700,7 +1700,7 @@ if (NILP (Ffboundp (macroexpand)) /* Don't macroexpand in .elc files, since it should have been done already. We actually don't know whether we're in a .elc file or not, - so we use circumstancial evidence: .el files normally go through + so we use circumstantial evidence: .el files normally go through Vload_source_file_function -> load-with-code-conversion -> eval-buffer. */ || EQ (readcharfun, Qget_file_char) === modified file 'src/unexmacosx.c' --- src/unexmacosx.c 2012-09-21 03:03:48 +0000 +++ src/unexmacosx.c 2012-10-05 05:57:24 +0000 @@ -119,7 +119,7 @@ /* LC_DATA_IN_CODE is not defined in mach-o/loader.h on OS X 10.7. But it is used if we build with "Command Line Tools for Xcode 4.5 - (OS X Lion) - Septemper 2012". */ + (OS X Lion) - September 2012". */ #ifndef LC_DATA_IN_CODE #define LC_DATA_IN_CODE 0x29 /* table of non-instructions in __text */ #endif ------------------------------------------------------------ revno: 110365 committer: Eli Zaretskii branch nick: trunk timestamp: Thu 2012-10-04 22:13:41 +0200 message: Fix wording in TUTORIAL.ru. Suggested by Igor Potseluev <4eppelin@gmail.com>. diff: === modified file 'etc/tutorials/TUTORIAL.ru' --- etc/tutorials/TUTORIAL.ru 2012-02-08 02:05:02 +0000 +++ etc/tutorials/TUTORIAL.ru 2012-10-04 20:13:41 +0000 @@ -406,7 +406,7 @@ текста). Вы можете восстановить убитый текст в месте удаления или в любой другой точке редактируемого текста или даже в другом файле. Вы можете восстановить текст несколько раз и получить несколько копий данного текста. -Некоторые редактора называют операции "убить" и "восстановить" как +Некоторые редакторы называют операции "убить" и "восстановить" иначе: "вырезать" (cutting) и "вставить" (pasting) (ознакомьтесь с глоссарием (Glossary) в руководстве по Emacs). ------------------------------------------------------------ revno: 110364 committer: Eli Zaretskii branch nick: trunk timestamp: Thu 2012-10-04 22:07:45 +0200 message: Fix test for invalid handle in w32.c's 'utime'. src/w32.c (utime): Test for INVALID_HANDLE_VALUE, not for NULL, to see whether CreateFile failed. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2012-10-04 07:23:35 +0000 +++ src/ChangeLog 2012-10-04 20:07:45 +0000 @@ -1,3 +1,8 @@ +2012-10-04 Eli Zaretskii + + * w32.c (utime): Test for INVALID_HANDLE_VALUE, not for NULL, to + see whether CreateFile failed. + 2012-10-04 Paul Eggert * profiler.c (handle_profiler_signal): Inhibit pending signals too, === modified file 'src/w32.c' --- src/w32.c 2012-09-30 21:36:42 +0000 +++ src/w32.c 2012-10-04 20:07:45 +0000 @@ -3954,7 +3954,7 @@ /* Need write access to set times. */ fh = CreateFile (name, GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, 0, OPEN_EXISTING, 0, NULL); - if (fh) + if (fh != INVALID_HANDLE_VALUE) { convert_from_time_t (times->actime, &atime); convert_from_time_t (times->modtime, &mtime); ------------------------------------------------------------ revno: 110363 fixes bug: http://debbugs.gnu.org/12526 committer: Juri Linkov branch nick: trunk timestamp: Thu 2012-10-04 22:28:11 +0300 message: * lisp/replace.el (query-replace-interactive): Declare obsolete. (query-replace-read-from): Add the last incremental search string to the list of default values accessible via M-n. (map-query-replace-regexp): Use `read-regexp'. (query-replace, query-replace-regexp, query-replace-regexp-eval) (map-query-replace-regexp, replace-string, replace-regexp): Fix docstrings to replace mentions of `query-replace-interactive' with alternatives. diff: === modified file 'etc/NEWS' --- etc/NEWS 2012-10-04 18:30:08 +0000 +++ etc/NEWS 2012-10-04 19:28:11 +0000 @@ -858,6 +858,7 @@ *** `macro-declaration-function' (use `macro-declarations-alist'). *** `window-system-version' *** `dired-pop-to-buffer' (use `dired-mark-pop-up') +*** `query-replace-interactive' * Changes in Emacs 24.3 on non-free operating systems === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-10-04 18:30:08 +0000 +++ lisp/ChangeLog 2012-10-04 19:28:11 +0000 @@ -1,5 +1,16 @@ 2012-10-04 Juri Linkov + * replace.el (query-replace-interactive): Declare obsolete. + (query-replace-read-from): Add the last incremental search string + to the list of default values accessible via M-n. + (map-query-replace-regexp): Use `read-regexp'. + (query-replace, query-replace-regexp, query-replace-regexp-eval) + (map-query-replace-regexp, replace-string, replace-regexp): + Fix docstrings to replace mentions of `query-replace-interactive' + with alternatives. (Bug#12526) + +2012-10-04 Juri Linkov + * dired.el (dired-shrink-to-fit): Declare obsolete. (Bug#1806) (dired-pop-to-buffer): Declare obsolete. (dired-mark-pop-up): Doc fix. === modified file 'lisp/replace.el' --- lisp/replace.el 2012-09-25 04:13:02 +0000 +++ lisp/replace.el 2012-10-04 19:28:11 +0000 @@ -62,6 +62,10 @@ (defvar query-replace-interactive nil "Non-nil means `query-replace' uses the last search string. That becomes the \"string to replace\".") +(make-obsolete-variable 'query-replace-interactive + "use `M-n' to pull the last incremental search string +to the minibuffer that reads the string to replace, or invoke replacements +from Isearch by using a key sequence like `C-s C-s M-%'." "24.3") (defcustom query-replace-from-history-variable 'query-replace-history "History list to use for the FROM argument of `query-replace' commands. @@ -142,7 +146,8 @@ (if regexp-flag (read-regexp prompt nil query-replace-from-history-variable) (read-from-minibuffer - prompt nil nil nil query-replace-from-history-variable nil t))))) + prompt nil nil nil query-replace-from-history-variable + (car (if regexp-flag regexp-search-ring search-ring)) t))))) (if (and (zerop (length from)) query-replace-defaults) (cons (car query-replace-defaults) (query-replace-compile-replacement @@ -231,9 +236,11 @@ In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer. -If `query-replace-interactive' is non-nil, the last incremental search -string is used as FROM-STRING--you don't have to specify it with the -minibuffer. +Use \\\\[next-history-element] \ +to pull the last incremental search string to the minibuffer +that reads FROM-STRING, or invoke replacements from +incremental search with a key sequence like `C-s C-s M-%' +to use its current search string as the string to replace. Matching is independent of case if `case-fold-search' is non-nil and FROM-STRING has no uppercase letters. Replacement transfers the case @@ -279,9 +286,11 @@ In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer. -If `query-replace-interactive' is non-nil, the last incremental search -regexp is used as REGEXP--you don't have to specify it with the -minibuffer. +Use \\\\[next-history-element] \ +to pull the last incremental search regexp to the minibuffer +that reads REGEXP, or invoke replacements from +incremental search with a key sequence like `C-M-s C-M-s C-M-%' +to use its current search regexp as the regexp to replace. Matching is independent of case if `case-fold-search' is non-nil and REGEXP has no uppercase letters. Replacement transfers the case @@ -364,9 +373,9 @@ In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer. -If `query-replace-interactive' is non-nil, the last incremental search -regexp is used as REGEXP--you don't have to specify it with the -minibuffer. +Use \\\\[next-history-element] \ +to pull the last incremental search regexp to the minibuffer +that reads REGEXP. Preserves case in each replacement if `case-replace' and `case-fold-search' are non-nil and REGEXP has no uppercase letters. @@ -417,19 +426,16 @@ Non-interactively, TO-STRINGS may be a list of replacement strings. -If `query-replace-interactive' is non-nil, the last incremental search -regexp is used as REGEXP--you don't have to specify it with the minibuffer. +Use \\\\[next-history-element] \ +to pull the last incremental search regexp to the minibuffer +that reads REGEXP. A prefix argument N says to use each replacement string N times before rotating to the next. Fourth and fifth arg START and END specify the region to operate on." (interactive - (let* ((from (if query-replace-interactive - (car regexp-search-ring) - (read-from-minibuffer "Map query replace (regexp): " - nil nil nil - query-replace-from-history-variable - nil t))) + (let* ((from (read-regexp "Map query replace (regexp): " nil + query-replace-from-history-variable)) (to (read-from-minibuffer (format "Query replace %s with (space-separated strings): " (query-replace-descr from)) @@ -475,9 +481,9 @@ only matches surrounded by word boundaries. Fourth and fifth arg START and END specify the region to operate on. -If `query-replace-interactive' is non-nil, the last incremental search -string is used as FROM-STRING--you don't have to specify it with the -minibuffer. +Use \\\\[next-history-element] \ +to pull the last incremental search string to the minibuffer +that reads FROM-STRING. This function is usually the wrong thing to use in a Lisp program. What you probably want is a loop like this: @@ -540,8 +546,9 @@ text, TO-STRING is actually made a list instead of a string. Use \\[repeat-complex-command] after this command for details. -If `query-replace-interactive' is non-nil, the last incremental search -regexp is used as REGEXP--you don't have to specify it with the minibuffer. +Use \\\\[next-history-element] \ +to pull the last incremental search regexp to the minibuffer +that reads REGEXP. This function is usually the wrong thing to use in a Lisp program. What you probably want is a loop like this: ------------------------------------------------------------ revno: 110362 fixes bug: http://debbugs.gnu.org/1806 committer: Juri Linkov branch nick: trunk timestamp: Thu 2012-10-04 21:30:08 +0300 message: * lisp/dired.el (dired-shrink-to-fit): Declare obsolete. (dired-pop-to-buffer): Declare obsolete. (dired-mark-pop-up): Doc fix. diff: === modified file 'etc/NEWS' --- etc/NEWS 2012-10-02 06:46:40 +0000 +++ etc/NEWS 2012-10-04 18:30:08 +0000 @@ -792,6 +792,7 @@ **** `special-display-buffer-names' **** `special-display-function' **** `display-buffer-function' +**** `dired-shrink-to-fit' ** Time --- @@ -856,6 +857,7 @@ *** `buffer-has-markers-at' *** `macro-declaration-function' (use `macro-declarations-alist'). *** `window-system-version' +*** `dired-pop-to-buffer' (use `dired-mark-pop-up') * Changes in Emacs 24.3 on non-free operating systems === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-10-04 16:39:37 +0000 +++ lisp/ChangeLog 2012-10-04 18:30:08 +0000 @@ -1,3 +1,9 @@ +2012-10-04 Juri Linkov + + * dired.el (dired-shrink-to-fit): Declare obsolete. (Bug#1806) + (dired-pop-to-buffer): Declare obsolete. + (dired-mark-pop-up): Doc fix. + 2012-10-04 Fabián Ezequiel Gallina Allow user to set docstring style for fill-paragraph. @@ -347,7 +353,7 @@ 2012-09-30 Juri Linkov * arc-mode.el (archive-summarize): Let-bind `buffer-file-truename' - to nil around the call to `add-text-properties' to prevent + to nil around the call to `insert' to prevent directory time modification by lock_file. (Bug#2295) * tar-mode.el (tar-summarize-buffer): Idem. === modified file 'lisp/dired.el' --- lisp/dired.el 2012-09-30 09:10:59 +0000 +++ lisp/dired.el 2012-10-04 18:30:08 +0000 @@ -248,6 +248,10 @@ ;; I see no reason ever to make this nil -- rms. ;; (> baud-rate search-slow-speed) "Non-nil means Dired shrinks the display buffer to fit the marked files.") +(make-obsolete-variable 'dired-shrink-to-fit + "use the Customization interface to add a new rule +to `display-buffer-alist' where condition regexp is \"^ \\*Marked Files\\*$\", +action argument symbol is `window-height' and its value is nil." "24.3") (defvar dired-file-version-alist) @@ -1877,7 +1881,6 @@ `dired-listing-switches' `dired-trivial-filenames' - `dired-shrink-to-fit' `dired-marker-char' `dired-del-marker' `dired-keep-marker-rename' @@ -2940,6 +2943,7 @@ (defun dired-pop-to-buffer (buf) "Pop up buffer BUF in a way suitable for Dired." + (declare (obsolete dired-mark-pop-up "24.3")) (let ((split-window-preferred-function (lambda (window) (or (and (let ((split-height-threshold 0)) @@ -2981,6 +2985,11 @@ window is not shown if there is just one file, `dired-no-confirm' is t, or OP-SYMBOL is a member of the list in `dired-no-confirm'. +By default, Dired shrinks the display buffer to fit the marked files. +To disable this, use the Customization interface to add a new rule +to `display-buffer-alist' where condition regexp is \"^ \\*Marked Files\\*$\", +action argument symbol is `window-height' and its value is nil. + FILES is the list of marked files. It can also be (t FILENAME) in the case of one marked file, to distinguish that from using just the current file. ------------------------------------------------------------ revno: 110361 committer: Fabián Ezequiel Gallina branch nick: trunk timestamp: Thu 2012-10-04 13:39:37 -0300 message: Allow user to set docstring style for fill-paragraph. * progmodes/python.el (python-fill-comment-function, python-fill-string-function) (python-fill-decorator-function, python-fill-paren-function): Remove :safe for defcustoms. (python-fill-string-style): New defcustom (python-fill-paragraph-function): Enhanced context detection. (python-fill-string): Honor python-fill-string-style settings. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-10-04 12:56:14 +0000 +++ lisp/ChangeLog 2012-10-04 16:39:37 +0000 @@ -1,3 +1,14 @@ +2012-10-04 Fabián Ezequiel Gallina + + Allow user to set docstring style for fill-paragraph. + * progmodes/python.el + (python-fill-comment-function, python-fill-string-function) + (python-fill-decorator-function, python-fill-paren-function): + Remove :safe for defcustoms. + (python-fill-string-style): New defcustom + (python-fill-paragraph-function): Enhanced context detection. + (python-fill-string): Honor python-fill-string-style settings. + 2012-10-04 Martin Rudalics * emacs-lisp/edebug.el (edebug-pop-to-buffer): Select window === modified file 'lisp/progmodes/python.el' --- lisp/progmodes/python.el 2012-10-03 21:53:09 +0000 +++ lisp/progmodes/python.el 2012-10-04 16:39:37 +0000 @@ -2267,32 +2267,82 @@ This is the function used by `python-fill-paragraph-function' to fill comments." :type 'symbol - :group 'python - :safe 'symbolp) + :group 'python) (defcustom python-fill-string-function 'python-fill-string "Function to fill strings. This is the function used by `python-fill-paragraph-function' to fill strings." :type 'symbol - :group 'python - :safe 'symbolp) + :group 'python) (defcustom python-fill-decorator-function 'python-fill-decorator "Function to fill decorators. This is the function used by `python-fill-paragraph-function' to fill decorators." :type 'symbol - :group 'python - :safe 'symbolp) + :group 'python) (defcustom python-fill-paren-function 'python-fill-paren "Function to fill parens. This is the function used by `python-fill-paragraph-function' to fill parens." :type 'symbol + :group 'python) + +(defcustom python-fill-string-style 'pep-257 + "Style used to fill docstrings. +This affects `python-fill-string' behavior with regards to +triple quotes positioning. + +Possible values are DJANGO, PEP-257, PEP-257-NN, SYMMETRIC and +NIL. A value of NIL won't care about quotes position, will do +what `fill-paragraph' does, any other value may result in one of +the following docstring styles: + +DJANGO: + + \"\"\" + Process foo, return bar. + \"\"\" + + \"\"\" + Process foo, return bar. + + If processing fails throw ProcessingError. + \"\"\" + +PEP-257: + + \"\"\"Process foo, return bar.\"\"\" + + \"\"\"Process foo, return bar. + + If processing fails throw ProcessingError. + + \"\"\" + +PEP-257-NN: + + \"\"\"Process foo, return bar.\"\"\" + + \"\"\"Process foo, return bar. + + If processing fails throw ProcessingError. + \"\"\" + +SYMMETRIC: + + \"\"\"Process foo, return bar.\"\"\" + + \"\"\" + Process foo, return bar. + + If processing fails throw ProcessingError. + \"\"\"" + :type 'symbol :group 'python - :safe 'symbolp) + :safe (lambda (val) (memq val '(django pep-257 pep-257-nn symmetric nil)))) (defun python-fill-paragraph-function (&optional justify) "`fill-paragraph-function' handling multi-line strings and possibly comments. @@ -2302,18 +2352,19 @@ Optional argument JUSTIFY defines if the paragraph should be justified." (interactive "P") (save-excursion - (back-to-indentation) (cond ;; Comments - ((funcall python-fill-comment-function justify)) + ((python-syntax-context 'comment) + (funcall python-fill-comment-function justify)) ;; Strings/Docstrings - ((save-excursion (skip-chars-forward "\"'uUrR") - (python-syntax-context 'string)) + ((save-excursion (or (python-syntax-context 'string) + (equal (string-to-syntax "|") + (syntax-after (point))))) (funcall python-fill-string-function justify)) ;; Decorators ((equal (char-after (save-excursion (back-to-indentation) - (point-marker))) ?@) + (point))) ?@) (funcall python-fill-decorator-function justify)) ;; Parens ((or (python-syntax-context 'paren) @@ -2332,43 +2383,72 @@ (defun python-fill-string (&optional justify) "String fill function for `python-fill-paragraph-function'. JUSTIFY should be used (if applicable) as in `fill-paragraph'." - (let ((marker (point-marker)) - (string-start-marker - (progn - (skip-chars-forward "\"'uUrR") - (goto-char (python-syntax-context 'string)) - (skip-chars-forward "\"'uUrR") - (point-marker))) - (reg-start (line-beginning-position)) - (string-end-marker - (progn - (while (python-syntax-context 'string) - (goto-char (1+ (point-marker)))) - (skip-chars-backward "\"'") - (point-marker))) - (reg-end (line-end-position)) - (fill-paragraph-function)) + (let* ((marker (point-marker)) + (str-start-pos + (let ((m (make-marker))) + (setf (marker-position m) + (or (python-syntax-context 'string) + (and (equal (string-to-syntax "|") + (syntax-after (point))) + (point)))) m)) + (num-quotes (python-syntax-count-quotes + (char-after str-start-pos) str-start-pos)) + (str-end-pos + (save-excursion + (goto-char (+ str-start-pos num-quotes)) + (or (re-search-forward (rx (syntax string-delimiter)) nil t) + (goto-char (point-max))) + (point-marker))) + (multi-line-p + ;; Docstring styles may vary for oneliners and multi-liners. + (> (count-matches "\n" str-start-pos str-end-pos) 0)) + (delimiters-style + (case python-fill-string-style + ;; delimiters-style is a cons cell with the form + ;; (START-NEWLINES . END-NEWLINES). When any of the sexps + ;; is NIL means to not add any newlines for start or end + ;; of docstring. See `python-fill-string-style' for a + ;; graphic idea of each style. + (pep-257 (and multi-line-p (cons nil 2))) + (pep-257-nn (and multi-line-p (cons nil 1))) + (django (cons 1 1)) + (symmetric (and multi-line-p (cons 1 1))))) + (docstring-p (save-excursion + ;; Consider docstrings those strings which + ;; start on a line by themselves. + (goto-char str-start-pos) + (skip-chars-backward (rx whitespace)) + (= (point) (line-beginning-position)))) + (fill-paragraph-function)) (save-restriction - (narrow-to-region reg-start reg-end) - (save-excursion - (goto-char string-start-marker) - (delete-region (point-marker) (progn - (skip-syntax-forward "> ") - (point-marker))) - (goto-char string-end-marker) - (delete-region (point-marker) (progn - (skip-syntax-backward "> ") - (point-marker))) - (save-excursion - (goto-char marker) - (fill-paragraph justify)) - ;; If there is a newline in the docstring lets put triple - ;; quote in it's own line to follow pep 8 - (when (save-excursion - (re-search-backward "\n" string-start-marker t)) - (newline) - (newline-and-indent)) - (fill-paragraph justify)))) t) + (narrow-to-region str-start-pos str-end-pos) + (fill-paragraph justify)) + (save-excursion + (when (and docstring-p python-fill-string-style) + ;; Add the number of newlines indicated by the selected style + ;; at the start of the docstring. + (goto-char (+ str-start-pos num-quotes)) + (delete-region (point) (progn + (skip-syntax-forward "> ") + (point))) + (and (car delimiters-style) + (or (newline (car delimiters-style)) t) + ;; Indent only if a newline is added. + (indent-according-to-mode)) + ;; Add the number of newlines indicated by the selected style + ;; at the end of the docstring. + (goto-char (if (not (= str-end-pos (point-max))) + (- str-end-pos num-quotes) + str-end-pos)) + (delete-region (point) (progn + (skip-syntax-backward "> ") + (point))) + (and (cdr delimiters-style) + ;; Add newlines only if string ends. + (not (= str-end-pos (point-max))) + (or (newline (cdr delimiters-style)) t) + ;; Again indent only if a newline is added. + (indent-according-to-mode))))) t) (defun python-fill-decorator (&optional justify) "Decorator fill function for `python-fill-paragraph-function'. ------------------------------------------------------------ revno: 110360 committer: Julien Danjou branch nick: trunk timestamp: Thu 2012-10-04 15:11:49 +0200 message: Rename erc-notifications.el to erc-desktop-notifications.el * erc-desktop-notifications.el: Rename from erc-notifications to avoid clash with 8+3 filename format and erc-notify.el. diff: === modified file 'lisp/erc/ChangeLog' --- lisp/erc/ChangeLog 2012-09-25 04:13:02 +0000 +++ lisp/erc/ChangeLog 2012-10-04 13:11:49 +0000 @@ -1,3 +1,8 @@ +2012-10-04 Julien Danjou + + * erc-desktop-notifications.el: Rename from erc-notifications to + avoid clash with 8+3 filename format and erc-notify.el. + 2012-09-25 Chong Yidong * erc.el (erc-send-command): Use define-obsolete-function-alias. === renamed file 'lisp/erc/erc-notifications.el' => 'lisp/erc/erc-desktop-notifications.el' --- lisp/erc/erc-notifications.el 2012-07-21 11:08:32 +0000 +++ lisp/erc/erc-desktop-notifications.el 2012-10-04 13:11:49 +0000 @@ -1,4 +1,4 @@ -;; erc-notifications.el -- Send notification on PRIVMSG or mentions +;; erc-desktop-notifications.el -- Send notification on PRIVMSG or mentions ;; Copyright (C) 2012 Free Software Foundation, Inc. @@ -75,7 +75,7 @@ (member nick erc-track-exclude))) (erc-notifications-notify nick msg))))) -;;;###autoload(autoload 'erc-notifications-mode "erc-notifications" "" t) +;;;###autoload(autoload 'erc-notifications-mode "erc-desktop-notifications" "" t) (define-erc-module notifications nil "Send notifications on private message reception and mentions." ;; Enable @@ -85,6 +85,6 @@ ((remove-hook 'erc-server-PRIVMSG-functions 'erc-notifications-PRIVMSG) (remove-hook 'erc-text-matched-hook 'erc-notifications-notify-on-match))) -(provide 'erc-notifications) +(provide 'erc-desktop-notifications) -;;; erc-notifications.el ends here +;;; erc-desktop-notifications.el ends here ------------------------------------------------------------ revno: 110359 committer: martin rudalics branch nick: trunk timestamp: Thu 2012-10-04 14:56:14 +0200 message: I edebug-pop-to-buffer select window after setting its buffer (Bug#10805). * emacs-lisp/edebug.el (edebug-pop-to-buffer): Select window after setting its buffer (Bug#10805). diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-10-03 21:53:09 +0000 +++ lisp/ChangeLog 2012-10-04 12:56:14 +0000 @@ -1,3 +1,8 @@ +2012-10-04 Martin Rudalics + + * emacs-lisp/edebug.el (edebug-pop-to-buffer): Select window + after setting its buffer (Bug#10805). + 2012-10-03 Fabián Ezequiel Gallina Fix cornercase for string syntax. === modified file 'lisp/emacs-lisp/edebug.el' --- lisp/emacs-lisp/edebug.el 2012-09-14 03:55:16 +0000 +++ lisp/emacs-lisp/edebug.el 2012-10-04 12:56:14 +0000 @@ -383,12 +383,9 @@ ;; All windows are dedicated or show `edebug-trace-buffer', split ;; selected one. (t (split-window)))) + (set-window-buffer window buffer) (select-window window) - (set-window-buffer window buffer) - (set-window-hscroll window 0);; should this be?? - ;; Selecting the window does not set the buffer until command loop. - ;;(set-buffer buffer) - ) + (set-window-hscroll window 0)) ;; should this be?? (defun edebug-get-displayed-buffer-points () ;; Return a list of buffer point pairs, for all displayed buffers. ------------------------------------------------------------ revno: 110358 committer: Glenn Morris branch nick: trunk timestamp: Thu 2012-10-04 06:17:29 -0400 message: Auto-commit of generated files. diff: === modified file 'autogen/Makefile.in' --- autogen/Makefile.in 2012-09-27 10:17:43 +0000 +++ autogen/Makefile.in 2012-10-04 10:17:29 +0000 @@ -683,6 +683,7 @@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PSELECT = @REPLACE_PSELECT@ REPLACE_PTHREAD_SIGMASK = @REPLACE_PTHREAD_SIGMASK@ +REPLACE_PTSNAME = @REPLACE_PTSNAME@ REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@ REPLACE_PUTENV = @REPLACE_PUTENV@ REPLACE_PWRITE = @REPLACE_PWRITE@ @@ -1633,6 +1634,7 @@ -e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \ -e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \ -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \ + -e 's|@''REPLACE_PTSNAME''@|$(REPLACE_PTSNAME)|g' \ -e 's|@''REPLACE_PTSNAME_R''@|$(REPLACE_PTSNAME_R)|g' \ -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \ -e 's|@''REPLACE_RANDOM_R''@|$(REPLACE_RANDOM_R)|g' \ === modified file 'autogen/configure' --- autogen/configure 2012-09-27 10:17:43 +0000 +++ autogen/configure 2012-10-04 10:17:29 +0000 @@ -909,6 +909,7 @@ REPLACE_RANDOM_R REPLACE_PUTENV REPLACE_PTSNAME_R +REPLACE_PTSNAME REPLACE_MKSTEMP REPLACE_MBTOWC REPLACE_MALLOC @@ -7295,8 +7296,41 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_nomfi_needed" >&5 $as_echo "$gl_cv_cc_nomfi_needed" >&6; } fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -Wuninitialized is supported" >&5 +$as_echo_n "checking whether -Wuninitialized is supported... " >&6; } + if test "${gl_cv_cc_uninitialized_supported+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + + gl_save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -Werror -Wuninitialized" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_cc_uninitialized_supported=yes +else + gl_cv_cc_uninitialized_supported=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS="$gl_save_CFLAGS" +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_uninitialized_supported" >&5 +$as_echo "$gl_cv_cc_uninitialized_supported" >&6; } + fi + # List all gcc warning categories. gl_manywarn_set= for gl_manywarn_item in \ -W \ @@ -7415,11 +7449,15 @@ gl_manywarn_set="$gl_manywarn_set $gl_manywarn_item" done - # Disable the missing-field-initializers warning if needed + # Disable specific options as needed. if test "$gl_cv_cc_nomfi_needed" = yes; then gl_manywarn_set="$gl_manywarn_set -Wno-missing-field-initializers" fi + if test "$gl_cv_cc_uninitialized_supported" = no; then + gl_manywarn_set="$gl_manywarn_set -Wno-uninitialized" + fi + ws=$gl_manywarn_set @@ -16842,6 +16880,7 @@ REPLACE_MALLOC=0; REPLACE_MBTOWC=0; REPLACE_MKSTEMP=0; + REPLACE_PTSNAME=0; REPLACE_PTSNAME_R=0; REPLACE_PUTENV=0; REPLACE_RANDOM_R=0; @@ -21625,6 +21664,69 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sig_pselect" >&5 $as_echo "$gl_cv_sig_pselect" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pselect detects invalid fds" >&5 +$as_echo_n "checking whether pselect detects invalid fds... " >&6; } +if test "${gl_cv_func_pselect_detects_ebadf+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + + if test "$cross_compiling" = yes; then : + + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_pselect_detects_ebadf="guessing yes" ;; + # If we don't know, assume the worst. + *) gl_cv_func_pselect_detects_ebadf="guessing no" ;; + esac + +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +#if HAVE_SYS_SELECT_H +# include +#endif +#include +#include + +int +main () +{ + + fd_set set; + dup2(0, 16); + FD_ZERO(&set); + FD_SET(16, &set); + close(16); + struct timespec timeout; + timeout.tv_sec = 0; + timeout.tv_nsec = 5000; + return pselect (17, &set, NULL, NULL, &timeout, NULL) != -1 || errno != EBADF; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_pselect_detects_ebadf=yes +else + gl_cv_func_pselect_detects_ebadf=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_pselect_detects_ebadf" >&5 +$as_echo "$gl_cv_func_pselect_detects_ebadf" >&6; } + case $gl_cv_func_pselect_detects_ebadf in + *yes) ;; + *) REPLACE_PSELECT=1 ;; + esac fi if test $ac_cv_func_pselect = no || test $gl_cv_sig_pselect = no; then @@ -23438,6 +23540,8 @@ + + if test $gl_cv_have_include_next = yes; then gl_cv_next_sys_stat_h='<'sys/stat.h'>' else ------------------------------------------------------------ revno: 110357 committer: Paul Eggert branch nick: trunk timestamp: Thu 2012-10-04 00:23:35 -0700 message: Move ChangeLog entry to proper file. diff: === modified file 'ChangeLog' --- ChangeLog 2012-10-04 07:15:42 +0000 +++ ChangeLog 2012-10-04 07:23:35 +0000 @@ -9,17 +9,6 @@ * m4/stdlib_h.m4, m4/sys_stat_h.m4: Update from gnulib. * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate. - Port timers to OpenBSD, plus check for timer failures. - OpenBSD problem reported by Han Boetes. - * profiler.c (setup_cpu_timer): Check for failure of timer_settime - and/or setitimer. - (Fprofiler_cpu_stop): Don't assume HAVE_SETITIMER. - * syssignal.h (HAVE_ITIMERSPEC): New macro. This is for platforms - like OpenBSD, which has timer_settime but does not declare it. - OpenBSD does not define SIGEV_SIGNAL, so use that when deciding - whether to use itimerspec-related primitives. All uses of - HAVE_TIMER_SETTIME replaced with HAVE_ITIMERSPEC. - 2012-09-30 Paul Eggert Merge from gnulib, incorporating: === modified file 'src/ChangeLog' --- src/ChangeLog 2012-10-04 05:52:49 +0000 +++ src/ChangeLog 2012-10-04 07:23:35 +0000 @@ -4,6 +4,17 @@ to avoid similar races. * keyboard.c (pending_signals): Now bool, not int. + Port timers to OpenBSD, plus check for timer failures. + OpenBSD problem reported by Han Boetes. + * profiler.c (setup_cpu_timer): Check for failure of timer_settime + and/or setitimer. + (Fprofiler_cpu_stop): Don't assume HAVE_SETITIMER. + * syssignal.h (HAVE_ITIMERSPEC): New macro. This is for platforms + like OpenBSD, which has timer_settime but does not declare it. + OpenBSD does not define SIGEV_SIGNAL, so use that when deciding + whether to use itimerspec-related primitives. All uses of + HAVE_TIMER_SETTIME replaced with HAVE_ITIMERSPEC. + 2012-10-02 Paul Eggert * profiler.c (handle_profiler_signal): Fix a malloc race ------------------------------------------------------------ revno: 110356 committer: Paul Eggert branch nick: trunk timestamp: Thu 2012-10-04 00:15:42 -0700 message: Merge from gnulib. diff: === modified file 'ChangeLog' --- ChangeLog 2012-10-04 00:10:47 +0000 +++ ChangeLog 2012-10-04 07:15:42 +0000 @@ -1,5 +1,14 @@ 2012-10-04 Paul Eggert + Merge from gnulib, incorporating: + 2012-10-02 pselect: reject invalid file descriptors + 2012-10-02 ptsname: reject invalid file descriptors + 2012-10-02 manywarnings: cater to more gcc infelicities + 2012-09-30 sockets, sys_stat: restore AC_C_INLINE + * lib/pselect.c, lib/stdlib.in.h, m4/manywarnings.m4, m4/pselect.m4: + * m4/stdlib_h.m4, m4/sys_stat_h.m4: Update from gnulib. + * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate. + Port timers to OpenBSD, plus check for timer failures. OpenBSD problem reported by Han Boetes. * profiler.c (setup_cpu_timer): Check for failure of timer_settime === modified file 'lib/gnulib.mk' --- lib/gnulib.mk 2012-09-27 01:06:23 +0000 +++ lib/gnulib.mk 2012-10-04 07:15:42 +0000 @@ -857,6 +857,7 @@ -e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \ -e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \ -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \ + -e 's|@''REPLACE_PTSNAME''@|$(REPLACE_PTSNAME)|g' \ -e 's|@''REPLACE_PTSNAME_R''@|$(REPLACE_PTSNAME_R)|g' \ -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \ -e 's|@''REPLACE_RANDOM_R''@|$(REPLACE_RANDOM_R)|g' \ === modified file 'lib/pselect.c' --- lib/pselect.c 2012-06-22 21:26:37 +0000 +++ lib/pselect.c 2012-10-04 07:15:42 +0000 @@ -33,6 +33,8 @@ pointer parameter stands for no descriptors, an infinite timeout, or an unaffected signal mask. */ +#if !HAVE_PSELECT + int pselect (int nfds, fd_set *restrict rfds, fd_set *restrict wfds, fd_set *restrict xfds, @@ -74,3 +76,35 @@ return select_result; } + +#else /* HAVE_PSELECT */ +# include +# undef pselect + +int +rpl_pselect (int nfds, fd_set *restrict rfds, + fd_set *restrict wfds, fd_set *restrict xfds, + struct timespec const *restrict timeout, + sigset_t const *restrict sigmask) +{ + int i; + + /* FreeBSD 8.2 has a bug: it does not always detect invalid fds. */ + if (nfds < 0 || nfds > FD_SETSIZE) + { + errno = EINVAL; + return -1; + } + for (i = 0; i < nfds; i++) + { + if (((rfds && FD_ISSET (i, rfds)) + || (wfds && FD_ISSET (i, wfds)) + || (xfds && FD_ISSET (i, xfds))) + && dup2 (i, i) != i) + return -1; + } + + return pselect (nfds, rfds, wfds, xfds, timeout, sigmask); +} + +#endif === modified file 'lib/stdlib.in.h' --- lib/stdlib.in.h 2012-06-22 17:20:00 +0000 +++ lib/stdlib.in.h 2012-10-04 07:15:42 +0000 @@ -457,10 +457,19 @@ #if @GNULIB_PTSNAME@ /* Return the pathname of the pseudo-terminal slave associated with the master FD is open on, or NULL on errors. */ -# if !@HAVE_PTSNAME@ +# if @REPLACE_PTSNAME@ +# if !(defined __cplusplus && defined GNULIB_NAMESPCE) +# undef ptsname +# define ptsname rpl_ptsname +# endif +_GL_FUNCDECL_RPL (ptsname, char *, (int fd)); +_GL_CXXALIAS_RPL (ptsname, char *, (int fd)); +# else +# if !@HAVE_PTSNAME@ _GL_FUNCDECL_SYS (ptsname, char *, (int fd)); -# endif +# endif _GL_CXXALIAS_SYS (ptsname, char *, (int fd)); +# endif _GL_CXXALIASWARN (ptsname); #elif defined GNULIB_POSIXCHECK # undef ptsname === modified file 'm4/manywarnings.m4' --- m4/manywarnings.m4 2012-09-03 09:26:56 +0000 +++ m4/manywarnings.m4 2012-10-04 07:15:42 +0000 @@ -1,4 +1,4 @@ -# manywarnings.m4 serial 4 +# manywarnings.m4 serial 5 dnl Copyright (C) 2008-2012 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -35,14 +35,12 @@ # make sure your gcc understands it. AC_DEFUN([gl_MANYWARN_ALL_GCC], [ - dnl First, check if -Wno-missing-field-initializers is needed. - dnl -Wmissing-field-initializers is implied by -W, but that issues - dnl warnings with GCC version before 4.7, for the common idiom - dnl of initializing types on the stack to zero, using { 0, } + dnl First, check for some issues that only occur when combining multiple + dnl gcc warning categories. AC_REQUIRE([AC_PROG_CC]) if test -n "$GCC"; then - dnl First, check -W -Werror -Wno-missing-field-initializers is supported + dnl Check if -W -Werror -Wno-missing-field-initializers is supported dnl with the current $CC $CFLAGS $CPPFLAGS. AC_MSG_CHECKING([whether -Wno-missing-field-initializers is supported]) AC_CACHE_VAL([gl_cv_cc_nomfi_supported], [ @@ -77,8 +75,24 @@ ]) AC_MSG_RESULT([$gl_cv_cc_nomfi_needed]) fi + + dnl Next, check if -Werror -Wuninitialized is useful with the + dnl user's choice of $CFLAGS; some versions of gcc warn that it + dnl has no effect if -O is not also used + AC_MSG_CHECKING([whether -Wuninitialized is supported]) + AC_CACHE_VAL([gl_cv_cc_uninitialized_supported], [ + gl_save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -Werror -Wuninitialized" + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([[]], [[]])], + [gl_cv_cc_uninitialized_supported=yes], + [gl_cv_cc_uninitialized_supported=no]) + CFLAGS="$gl_save_CFLAGS"]) + AC_MSG_RESULT([$gl_cv_cc_uninitialized_supported]) + fi + # List all gcc warning categories. gl_manywarn_set= for gl_manywarn_item in \ -W \ @@ -197,10 +211,14 @@ gl_manywarn_set="$gl_manywarn_set $gl_manywarn_item" done - # Disable the missing-field-initializers warning if needed + # Disable specific options as needed. if test "$gl_cv_cc_nomfi_needed" = yes; then gl_manywarn_set="$gl_manywarn_set -Wno-missing-field-initializers" fi + if test "$gl_cv_cc_uninitialized_supported" = no; then + gl_manywarn_set="$gl_manywarn_set -Wno-uninitialized" + fi + $1=$gl_manywarn_set ]) === modified file 'm4/pselect.m4' --- m4/pselect.m4 2012-06-22 21:26:37 +0000 +++ m4/pselect.m4 2012-10-04 07:15:42 +0000 @@ -1,4 +1,4 @@ -# pselect.m4 +# pselect.m4 serial 2 dnl Copyright (C) 2011-2012 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -23,6 +23,44 @@ return !p;]])], [gl_cv_sig_pselect=yes], [gl_cv_sig_pselect=no])]) + + dnl On FreeBSD 8.2, pselect() doesn't always reject bad fds. + AC_CACHE_CHECK([whether pselect detects invalid fds], + [gl_cv_func_pselect_detects_ebadf], + [ + AC_RUN_IFELSE([AC_LANG_PROGRAM([[ +#include +#include +#if HAVE_SYS_SELECT_H +# include +#endif +#include +#include +]],[[ + fd_set set; + dup2(0, 16); + FD_ZERO(&set); + FD_SET(16, &set); + close(16); + struct timespec timeout; + timeout.tv_sec = 0; + timeout.tv_nsec = 5000; + return pselect (17, &set, NULL, NULL, &timeout, NULL) != -1 || errno != EBADF; +]])], [gl_cv_func_pselect_detects_ebadf=yes], + [gl_cv_func_pselect_detects_ebadf=no], + [ + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_pselect_detects_ebadf="guessing yes" ;; + # If we don't know, assume the worst. + *) gl_cv_func_pselect_detects_ebadf="guessing no" ;; + esac + ]) + ]) + case $gl_cv_func_pselect_detects_ebadf in + *yes) ;; + *) REPLACE_PSELECT=1 ;; + esac fi if test $ac_cv_func_pselect = no || test $gl_cv_sig_pselect = no; then === modified file 'm4/stdlib_h.m4' --- m4/stdlib_h.m4 2012-05-26 23:14:36 +0000 +++ m4/stdlib_h.m4 2012-10-04 07:15:42 +0000 @@ -102,6 +102,7 @@ REPLACE_MALLOC=0; AC_SUBST([REPLACE_MALLOC]) REPLACE_MBTOWC=0; AC_SUBST([REPLACE_MBTOWC]) REPLACE_MKSTEMP=0; AC_SUBST([REPLACE_MKSTEMP]) + REPLACE_PTSNAME=0; AC_SUBST([REPLACE_PTSNAME]) REPLACE_PTSNAME_R=0; AC_SUBST([REPLACE_PTSNAME_R]) REPLACE_PUTENV=0; AC_SUBST([REPLACE_PUTENV]) REPLACE_RANDOM_R=0; AC_SUBST([REPLACE_RANDOM_R]) === modified file 'm4/sys_stat_h.m4' --- m4/sys_stat_h.m4 2012-09-22 09:46:20 +0000 +++ m4/sys_stat_h.m4 2012-10-04 07:15:42 +0000 @@ -1,4 +1,4 @@ -# sys_stat_h.m4 serial 28 -*- Autoconf -*- +# sys_stat_h.m4 serial 27 -*- Autoconf -*- dnl Copyright (C) 2006-2012 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -11,6 +11,9 @@ [ AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS]) + dnl For the mkdir substitute. + AC_REQUIRE([AC_C_INLINE]) + dnl Check for broken stat macros. AC_REQUIRE([AC_HEADER_STAT]) === modified file 'msdos/ChangeLog' --- msdos/ChangeLog 2012-09-27 23:02:23 +0000 +++ msdos/ChangeLog 2012-10-04 07:15:42 +0000 @@ -1,3 +1,8 @@ +2012-10-04 Paul Eggert + + Merge from gnulib. + * msdos/sedlibmk.inp (REPLACE_PTSNAME): Edit to appropriate value. + 2012-09-27 Paul Eggert Check more robustly for timer_settime. === modified file 'msdos/sedlibmk.inp' --- msdos/sedlibmk.inp 2012-08-04 08:58:33 +0000 +++ msdos/sedlibmk.inp 2012-10-04 07:15:42 +0000 @@ -541,6 +541,7 @@ /^REPLACE_PRINTF *=/s/@REPLACE_PRINTF@/0/ /^REPLACE_PTHREAD_SIGMASK *=/s/@REPLACE_PTHREAD_SIGMASK@/0/ /^REPLACE_PSELECT *=/s/@REPLACE_PSELECT@/0/ +/^REPLACE_PTSNAME *=/s/@REPLACE_PTSNAME@/0/ /^REPLACE_PTSNAME_R *=/s/@REPLACE_PTSNAME_R@/0/ /^REPLACE_PUTENV *=/s/@REPLACE_PUTENV@/0/ /^REPLACE_PWRITE *=/s/@REPLACE_PWRITE@/0/ ------------------------------------------------------------ revno: 110355 committer: Paul Eggert branch nick: trunk timestamp: Wed 2012-10-03 22:52:49 -0700 message: * profiler.c (handle_profiler_signal): Inhibit pending signals too, to avoid similar races. * keyboard.c (pending_signals): Now bool, not int. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2012-10-02 19:38:10 +0000 +++ src/ChangeLog 2012-10-04 05:52:49 +0000 @@ -1,3 +1,9 @@ +2012-10-04 Paul Eggert + + * profiler.c (handle_profiler_signal): Inhibit pending signals too, + to avoid similar races. + * keyboard.c (pending_signals): Now bool, not int. + 2012-10-02 Paul Eggert * profiler.c (handle_profiler_signal): Fix a malloc race === modified file 'src/keyboard.c' --- src/keyboard.c 2012-10-01 06:36:54 +0000 +++ src/keyboard.c 2012-10-04 05:52:49 +0000 @@ -76,9 +76,9 @@ /* Positive if interrupt input is blocked right now. */ volatile int interrupt_input_blocked; -/* Nonzero means an input interrupt or alarm signal has arrived. +/* True means an input interrupt or alarm signal has arrived. The QUIT macro checks this. */ -volatile int pending_signals; +volatile bool pending_signals; #define KBD_BUFFER_SIZE 4096 === modified file 'src/lisp.h' --- src/lisp.h 2012-10-01 02:07:14 +0000 +++ src/lisp.h 2012-10-04 05:52:49 +0000 @@ -2131,7 +2131,7 @@ a request to exit Emacs when it is safe to do. */ extern void process_pending_signals (void); -extern int volatile pending_signals; +extern bool volatile pending_signals; extern void process_quit_flag (void); #define QUIT \ === modified file 'src/profiler.c' --- src/profiler.c 2012-10-04 00:10:47 +0000 +++ src/profiler.c 2012-10-04 05:52:49 +0000 @@ -239,6 +239,7 @@ else { Lisp_Object oquit; + bool saved_pending_signals; EMACS_INT count = 1; #ifdef HAVE_ITIMERSPEC if (profiler_timer_ok) @@ -252,12 +253,15 @@ uses QUIT, which can call malloc, which can cause disaster in a signal handler. So inhibit QUIT. */ oquit = Vinhibit_quit; + saved_pending_signals = pending_signals; Vinhibit_quit = Qt; + pending_signals = 0; eassert (HASH_TABLE_P (cpu_log)); record_backtrace (XHASH_TABLE (cpu_log), count); Vinhibit_quit = oquit; + pending_signals = saved_pending_signals; } }