* lisp/emacs-lisp/map.el (map--dispatch): Fix docstring
[emacs.git] / ChangeLog.2
blob7e2f5819c3b6a3a25b7dca448cb19e8ac0d30c2e
1 2016-08-05  Nicolas Petton  <nicolas@petton.fr>
3         * admin/authors.el (authors-valid-file-names): Addition.
5 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
7         Warn about Cairo-related problems
9         * etc/NEWS: Warn about known problems in the Cairo build.
10         (Bug#23925)
12 2016-08-05  Paul Pogonyshev  <pogonyshev@gmail.com>
14         Don't let completion break `declare' handling
16         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Fix to not alter
17         `defun-declarations-alist' by side effect (Bug #23648).
19 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
21         Adjust match data before calling after-change-funs
23         It's important to adjust the match data in between calling
24         before-change-functions and after-change-functions, so that buffer
25         change hooks will always see match-data consistent with buffer content.
26         (Bug #23917)
28         * src/insdel.c (replace_range): Add new parameter ADJUST_MATCH_DATA, if
29         true call update_search_regs.  Update all callers (except
30         Freplace_match) to pass 0 for the new parameter.
31         * src/search.c (update_search_regs): New function, extracted from
32         Freplace_match.
33         (Freplace_match): Remove match data adjustment code, pass 1 for
34         ADJUST_MATCH_DATA to replace_range instead.
36 2016-08-05  Mark Oteiza  <mvoteiza@udel.edu>
38         Do not show string-rectangle preview if minibuffer is empty
40         * lisp/rect.el (rectangle--string-preview): Remove condition that sets
41         preview string to the default replacement string.
43 2016-08-05  Achim Gratz  <Stromeko@nexgo.de>
45         * etc/PROBLEMS: Add entry about selection problems under Plasma 5.
47         Bug#24013
49 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
51         Port to glibc 2.24 (pre-release) + ppc64
53         Backport from master (Bug#24033).
54         Inspired by a suggestion by Florian Weimer in:
55         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
56         * src/emacs.c (main) [__PPC64__]:
57         Special case for __PPC64__, which needs ASLR disabled in
58         dumped Emacs too.
60 2016-08-05  Katsumi Yamaoka  <yamaoka@jpl.org>
62         * lisp/net/shr.el (shr-fill-line): Withdraw the last commit (4157159).
64         * lisp/net/shr.el (shr-fill-line):
65         Preserve text properties in folded lines (bug#24034).
67 2016-08-05  Robert Cochran  <robert-git@cochranmail.com>  (tiny change)
69         Expand FIXME near definition of fboundp
71         This expansion of the FIXME is so that future developers are aware of
72         the potential problems of aliasing fboundp to symbol-function without
73         taking backwards compatibility into account.
75         * src/data.c (fboundp): Note potential backwards compatibility issues in
76         FIXME.
78 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
80         kill-rectangle should mention killed-rectangle
82         * lisp/rect.el (kill-rectangle): Mention `killed-rectangle' in docstring
83         and warning message, rather than kill ring (Bug#19773).
85 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
87         Avoid assertion violations in nhexl-mode
89         * src/bidi.c (bidi_resolve_neutral): Convert an assertion to real
90         code executed in all builds.  (Bug#24001)
92 2016-08-05  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
94         Use memmove instead of memcpy on overlapping regions
96         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
97         use memmove instead of memcpy (bug#19213).
100         This is a backport from trunk.
101         (cherry picked from commit 354f9f0fc6cc05ed98883447f9b2f37943d79160)
103 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
105         Document buffer-swap-text+save-excursion interaction
107         * doc/lispref/buffers.texi (Swapping Text):
108         * src/buffer.c (Fbuffer_swap_text): Add warning about interaction of
109         `buffer-swap-text' and `save-excursion' (Bug #4655).
111 2016-08-05  Stefan Monnier  <monnier@iro.umontreal.ca>
113         Fix eieio vs cl-generic incompatibilities found in Rudel (bug#23947)
115         * lisp/emacs-lisp/cl-generic.el (cl-generic-apply): New function.
116         * lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Fix incorrect
117         mapping between cl-no-applicable-method and EIEIO's no-applicable-method.
118         * lisp/emacs-lisp/eieio-core.el (eieio--class-precedence-c3):
119         `class' is not a symbol but a class object.
121 2016-08-05  Stefan Monnier  <monnier@iro.umontreal.ca>
123         Include cl-generic in package--builtin-versions (bug#22817)
125         * lisp/emacs-lisp/cl-generic.el (package--builtin-versions):
126         Add ourselves manually.  Don't merge since there's a better fix on master.
128 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
130         Improve timing in `tramp-test29-environment-variables'
132         * test/automated/tramp-tests.el
133         (tramp-test--shell-command-to-string-asynchronously):
134         Add additional `accept-process-output' call.
135         (tramp-test29-environment-variables): Remove additional sleep calls.
137 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
139         Add test for handling environment variables in Tramp
141         * test/automated/tramp-tests.el
142         (tramp-test--shell-command-to-string-asynchronously): New defun.
143         (tramp-test29-environment-variables): New test.
144         (tramp-test30-vc-registered)
145         (tramp-test31-make-auto-save-file-name)
146         (tramp-test32-special-characters)
147         (tramp-test32-special-characters-with-stat)
148         (tramp-test32-special-characters-with-perl)
149         (tramp-test32-special-characters-with-ls, tramp-test33-utf8)
150         (tramp-test33-utf8-with-stat, tramp-test33-utf8-with-perl)
151         (tramp-test33-utf8-with-ls)
152         (tramp-test34-asynchronous-requests)
153         (tramp-test35-recursive-load, tramp-test36-unload): Rename.
155 2016-08-05  Glenn Morris  <rgm@gnu.org>
157         * lisp/emacs-lisp/package.el (describe-package-1)
158         (package-status-external): Fix face references.  (Bug#23927)
160 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
162         Improve documentation of search functions
164         Make the documentation of the search functions more accurate,
165         complete, and uniform; in particular, extend the description of
166         the effect when the 'count' parameter is a negative number to all
167         of these functions.
169         * src/search.c (Fsearch_backward, Fsearch_forward)
170         (Fre_search_backward, Fre_search_forward)
171         (Fposix_search_backward, Fposix_search_forward):
172         * lisp/isearch.el (word-search-backward, word-search-forward)
173         (word-search-backward-lax, word-search-forward-lax): Improve doc
174         strings as described above.
176         * doc/lispref/searching.texi (String Search, Regexp Search)
177         (POSIX Regexps): Use 'count' instead of 'repeat' as the name of
178         the fourth parameter of the *-search-{forward,backward} functions
179         and improve documentation as described above.
181 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
183         Delete environment variables in Tramp when needed
185         * lisp/net/tramp-sh.el (tramp-get-env-with-u-option): New defun.
186         (tramp-sh-handle-start-file-process)
187         (tramp-sh-handle-process-file, ): Use it.  (Bug#23952)
189 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
191         Add "New in Emacs 25" section to the FAQ
193         * doc/misc/efaq.texi (Latest version of Emacs): Update for later
194         versions.
195         (New in Emacs 25): New node.
196         (Status of Emacs): Add it to the menu.
198 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
200         Fix 'vertical-motion' in non-interactive sessions
202         * src/indent.c (Fvertical_motion): Don't return uninitialized
203         value in non-interactive session.  This fixes random errors in
204         batch mode, see
205         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00609.html
206         and
207         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00500.html
208         for the details.
210 2016-08-05  Andreas Schwab  <schwab@linux-m68k.org>
212         Fix memory leak in imagemagick-types
214         * src/image.c (Fimagemagick_types): Use AcquireExceptionInfo to
215         avoid memory leak.
217 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
219         Update ELisp manual to match 'string-collate-equalp' doc string
221         * doc/lispref/strings.texi (Text Comparison): Remove reference to
222         sorting from the description of 'string-collate-equalp'.  (Bug#23902)
224 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
226         Clarify docstring of find-feature-regexp
228         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Explain that `%s'
229         is optional (Bug #23520).
231 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
233         Add details to cl-lib defining macros' docstrings
235         * lisp/emacs-lisp/cl-macs.el (cl-defun, cl-defmacro): Add terse summary
236         of supported arglist forms (Bug #22462).
238 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
240         Clarify doc string of 'save-buffer'
242         * lisp/files.el (save-buffer): Clarify that backups might not be
243         made even if this command is invoked with 2 or 3 "C-u"s.
244         (Bug#3702)
246 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
248         Un-confuse doc string of 'string-collate-equalp'
250         * src/fns.c (Fstring_collate_equalp): Remove confusing text from
251         doc string.  (Bug#23902)
253 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
255         Clarify documentation of 'mouse-on-link-p'
257         * lisp/mouse.el (mouse-on-link-p): Clarify the form of the POS
258         argument.  (Bug#23899)
260 2016-08-05  Phillip Lord  <phillip.lord@russet.org.uk>
262         Fix missing undo-boundary on revert-buffer.
264         * lisp/simple.el (undo-auto--undoable-change-no-timer): New function.
265         * src/fileio.c (insert-buffer-contents): Call
266           undo-auto--undoably-changed-buffers before changes.
268         Addresses Bug#23785.
270         Do not merge to master as c98bc98 also addresses the same bug.
272 2016-08-05  Martin Rudalics  <rudalics@gmx.at>
274         Amend last addition to etc/PROBLEMS
276         * etc/PROBLEMS: Mention GTK+ problem with unexpected frame widenings
278 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
280         Fix open-network-stream responsiveness
282         Problem reported by Christer Ekholm (Bug#23864).
283         Backport from master.
284         * src/process.c (wait_reading_process_output):
285         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
286         when wait == INFINITY and got_output_end_time is invalid.
287         In this case the code should break, not continue.
289 2016-08-05  Phillip Lord  <phillip.lord@russet.org.uk>
291         Fix missing point information in undo
293         * src/undo.c (record_insert): Use record_point instead of
294           prepare_record, and do so unconditionally.
295           (prepare_record): Do not record first change.
296           (record_point): Now conditional on state before the last command.
297           (record_delete): Call record_point unconditionally.
298           (record_property_change): Use prepare_record.
299           (record_marker_adjustments): Use prepare_record.
301         Addresses Bug# 21722
303 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
305         Avoid crashes when buffer modification hooks clobber match data
307         * src/search.c (Freplace_match): Error out if buffer modification
308         hooks triggered by buffer changes in replace_range, upcase-region,
309         and upcase-initials-region clobber the match data needed to be
310         adjusted for the replacement.  (Bug#23869)
312 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
314         Note combine-and-quote-strings doesn't shell quote
316         * doc/lispref/processes.texi (Shell Arguments):
317         * lisp/subr.el (combine-and-quote-strings): Add a note that
318         combine-and-quote-strings doesn't protect arguments against shell
319         evaluation (Bug #20333).
321 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
323         Explain when package-initialize isn't called
325         * doc/lispref/os.texi (Startup Summary): Explain that package-initialize
326         is not called when options -q, -Q, or --batch were passed (Bug #19151).
328 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
330         Fix escaping in sh-indent-after-continuation docstr
332         * lisp/progmodes/sh-script.el (sh-indent-after-continuation): Properly
333         escape backslashes in docstring (Bug#23046).
335 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
337         Clarify the documentation of back-references in replacements
339         * doc/emacs/search.texi (Regexp Replace): Clarify that \D starts
340         with \1, not \0.
342         * lisp/replace.el (query-replace-regexp)
343         (query-replace-regexp-eval, replace-regexp): Doc fix (Bug#23884)
345 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
347         Clarify lexical binding with symbol args behavior
349         * doc/lispref/variables.texi (Lexical Binding): Clarify that symbol
350         arguments always refer to dynamic values (Bug #23781).  Remove mention
351         of obsolete restriction regarding lexical binding for defun and
352         defmacro, this no longer applies since 61b108cc 2012-05-29 "*
353         lisp/emacs-lisp/byte-run.el (defmacro, defun): Move from C...".
355 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
357         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
359 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
361         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23865)
363 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
365         Avoid assertion violations when rendering some fonts
367         * src/dispextern.h (FONT_TOO_HIGH): Don't consider a font "too
368         high" if its pixel_size value is zero.  This avoids assertion
369         violations at the end of x_produce_glyphs.
371 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
373         Document more details of package activation
375         * doc/emacs/package.texi (Package Installation): Explain that package
376         activation adds to load-path (Bug #21704).
378 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
380         Fixup warning message regarding HOME a bit more
382         * src/w32.c (init_environment): The manual section title is "Windows
383         HOME" (Bug #11612).  Move newline so warning fits in 80 character lines.
385 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
387         * lisp/leim/quail/indian.el ("bengali-probhat"): Change indicator to BngPB.
389 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
391         Fix input method "probhat" for Bengali
393         Author: উৎসব রায় <uroybd@gmail.com>
395         * lisp/leim/quail/indian.el ("bengali-probhat"): Fix entry.
397 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
399         Add to elisp-completion-at-point's docstring
401         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Document
402         position dependent behavior (Bug #19854).
404 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
405             Eli Zaretskii  <eliz@gnu.org>
407         Give more helpful warning about setting HOME
409         * src/w32.c (init_environment): Improve warning message that pops when
410         Emacs sets HOME according to existence of C:\.emacs (Bug #11612).
412 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
414         Fix slow redisplay in term-mode
416         * lisp/term.el (term-mode): Move the setting of
417         bidi-paragraph-direction from 'ansi-term' to here, since term-mode
418         is also affected.  Do not merge to master, since there the problem
419         is solved in bidi.c by changing the regexps that delimit a
420         paragraph.  (Bug#23801)
422 2016-08-05  উৎসব রায়  <uroybd@gmail.com>
424         New input method "probhat" for Bengali
426         * lisp/leim/quail/indian.el ("probhat"): New input method.
427         (Bug#23822)
429         * etc/NEWS: Mention the new input method.
431 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
432             Drew Adams  <drew.adams@oracle.com>
434         Update docs for `customize-mode'
436         * lisp/cus-edit.el (customize-mode): This function works with both major
437         and minor modes, make docstring and prompt reflect that (Bug #23649).
439         * doc/lispref/modes.texi (Derived Modes): Remove note about
440         customize-mode being experimental; it has been around since Emacs
441         22 (Bug #11299).
443 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
445         Fix documentation of 'assoc-string' and 'compare-strings'
447         * src/minibuf.c (Fassoc_string): Clarify how CASE-FOLD affects the
448         string comparison.  (Bug#23833)
449         * src/fns.c (Fcompare_strings): Fix the description of how
450         IGNORE-CASE affects the comparison.
452         * doc/lispref/strings.texi (Text Comparison): Clarify how
453         CASE-FOLD affects the string comparison in 'assoc-string'.  Fix
454         the description of how IGNORE-CASE affects the comparison in
455         'compare-strings'.
457 2016-08-05  Dmitry Gutov  <dgutov@yandex.ru>
459         Error on multibyte characters in HTTP request
461         * lisp/url/url-http.el (url-http-create-request): Check the
462         constructed request in the end to verify that it does not contain
463         multibyte characters (bug#23750).
465 2016-08-05  Katsumi Yamaoka  <yamaoka@jpl.org>
467         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
468         Mask keys that launch `widget-button-click' (bug#22157).
470 2016-08-05  Dmitry Gutov  <dgutov@yandex.ru>
472         Unset GIT_DIR when calling Git commands
474         * lisp/vc/vc-git.el (vc-git--call, vc-git-command):
475         Unset GIT_DIR (bug#23769).
477 2016-08-05  Phillip Lord  <phillip.lord@russet.org.uk>
479         Ensure undo-boundary after insert-file-contents.
481         * src/fileio.c: Record undoable change during insert-file-contents.
483         Addresses Bug #23785.
485 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
487         Clarify documentation of 'line-spacing' and 'line-height'
489         * doc/lispref/display.texi (Line Height): Clarify how the line
490         height is determined via variables and text properties.  (Bug#23806)
492 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
494         Fix removal of variables from process-environment
496         * src/callproc.c (add_env): Fix comparison of a variable with a
497         value against the same variable without a value.  (Bug#23779)
499 2016-08-05  Glenn Morris  <rgm@gnu.org>
501         * admin/authors.el (authors-ignored-files, authors-valid-file-names)
502         (authors-renamed-files-alist): Additions.
504         * admin/authors.el (authors-aliases, authors-fixed-case): Additions.
506 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
508         Fix documentation of completion functions
510         So that the described behavior matches the code (and docstrings).
512         * doc/lispref/minibuf.texi (Basic Completion): Symbol keys of hash table
513         collections are used like string keys, not ignored (Bug #10416).
515 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
517         Clarify documentation of 'font-lock-maximum-decoration'
519         * doc/emacs/display.texi (Font Lock): Explain how to make the
520         customization of 'font-lock-maximum-decoration' effective for an
521         existing buffer.  (Bug#23783)
523 2016-08-05  Glenn Morris  <rgm@gnu.org>
525         * doc/misc/cl.texi (Usage): Add some more details.
527 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
529         Fbackward_prefix_chars: stay within buffer bounds
531         The commit 1fd3172d "(Fbackward_prefix_chars): Set point properly while
532         scanning" (1998-03-18), moved the check against of the position against the
533         buffer beginning out the loop condition so that we might end up checking
534         the syntax of characters before the beginning of the buffer.  This can
535         cause segfaults or trigger a "Point before start of properties" error in
536         `update_interval' (called indirectly from `char_quoted').
538         * src/syntax.c (Fbackward_prefix_chars): Stop the loop when beginning of
539         buffer is reached (Bug #3552, Bug #17132, Bug #19379).
541 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
543         Fix ifdef-vs-if typo with RANDR13_LIBRARY
545         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
546         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
547         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00198.html
549         (cherry picked from commit dce99f222f1ca33265cd56ddb157817be1dc078e)
551 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
553         Fix last todo-mode change
555         * lisp/calendar/todo-mode.el (todo-read-category): Return the
556         keymap in order to use its defined key bindings.
558 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
560         Improve last todo-mode fix
562         * lisp/calendar/todo-mode.el (todo-read-category): Use
563         set-keymap-parent instead of copy-keymap, and default (as
564         previously) to the global binding (for rationale, see
565         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00217.html).
567 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
569         Fix todo-mode use of minibuffer completion keymap (bug#23695).
571         * lisp/calendar/todo-mode.el (todo-read-category): Don't
572         override minibuffer-local-completion-map globally (bug#23695).
573         Bind <SPC> key to self-insert-command.
575 2016-08-05  Glenn Morris  <rgm@gnu.org>
577         * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23764)
579         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
580         Avoid mangling autoloads with unspecified arguments.  (Bug#21299)
582 2016-08-05  Glenn Morris  <rgm@gnu.org>
584         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
585         autoloads as aliases.  (Bug#21299)
587 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
589         Minor grammar fix (bug#23746)
591         * doc/lispref/processes.texi (Synchronous Processes):
592         Another minor grammar fix (bug#23746).
594 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
596         Doc fixes for grammar and typos (bug#23746)
598         * doc/emacs/files.texi (Customize Save):
599         * doc/emacs/frames.texi (Window Dividers):
600         * doc/emacs/misc.texi (Printing):
601         * doc/lispref/compile.texi (Compiler Errors):
602         * doc/lispref/keymaps.texi (Changing Key Bindings):
603         * doc/lispref/loading.texi (Named Features):
604         * doc/lispref/markers.texi (Marker Insertion Types):
605         * doc/lispref/modes.texi (Mode Hooks):
606         * doc/lispref/text.texi (Undo):
607         * src/floatfns.c (Fldexp):
608         * src/xfaces.c (syms_of_xfaces):
609         Minor doc fixes for grammar and typos (bug#23746).
611 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
613         * doc/lispref/processes.texi (Process Buffers): Minor rewording.  (Bug#23446)
615 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
617         Add cross-reference to ELisp manual
619         * doc/lispref/commands.texi (Classifying Events): Add
620         cross-reference to "Motion Events".  (Bug#23756)
622 2016-08-05  Stefan Monnier  <monnier@iro.umontreal.ca>
623 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
625         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
627         Don't rewrite (funcall 'f ...) to (f ...).
629 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
631         Restore initial undo boundary with viper
633         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Add back last undo
634           boundary if it has been removed.
636         Addresses Bug#22295.
638 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
640         Revert "Fix viper undo breakage from undo-boundary changes"
642         This reverts commit c0139e32f1f3bb287b04e02a69a7848d6a040003.
644 2016-06-19  Ken Brown  <kbrown@cornell.edu>
646         Fix dbus crash on 32-bit Cygwin
648         * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store
649         connection address.  (Bug#23741)
650         (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection
651         address.
653 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
655         Bump version to 25.0.95
657         * README:
658         * configure.ac:
659         * lisp/ldefs-boot.el:
660         * msdos/sed2v2.inp: Bump Emacs version to 25.0.95.
662 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
664         * etc/AUTHORS: Update the AUTHORS file
666 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
668         add entries to authors.el
670         * admin/authors.el (authors-renamed-files-alist): Add char-fold files.
672 2016-06-19  Jules Tamagnan  <jtamagnan@gmail.com>
674         Fix eldoc-related freezes in python mode
676         * lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
677         (python-eldoc-function-timeout)
678         (python-eldoc-function-timeout-permanent): New defcustoms.
679         (python-eldoc-function): If python-eldoc--get-doc-at-point times
680         out, effectively turn off ElDoc in current buffer.  (Bug#23609)
682 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
684         Handle mouse leaving initial window in `mouse-set-region' (Bug#23707)
686         * lisp/mouse.el (mouse-set-region): If the mouse ends up in
687         another window or on the menu bar, use `window-point' of
688         selected window instead of `posn-point' of the event end
689         (Bug#23707).
691 2016-06-19  Marco Wahl  <marcowahlsoft@gmail.com>
693         org.el: Fix bindings of < and > for calendar scrolling
695         [This patch taken from upstream Org repo with 8b63dc9 dated
696         2014-10-20 (Bug#23725).]
697         * lisp/org/org.el (org-read-date-minibuffer-local-map):
698         Switch to the current calendar API for scrolling the calendar.
700 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
702         Fix undo boundary in recursive edit (Bug#23632)
704          * src/keyboard.c (recursive_edit_1): specbind
705            undo-auto--undoably-changed-buffers.
706          * lisp/simple.el (undo-auto--undoably-changed-buffers):
707            fix docstring.
709 2016-06-19  Glenn Morris  <rgm@gnu.org>
711         Doc fixes re alist-get.  (Bug#23548)
713         * lisp/subr.el (alist-get): Doc fix.
714         * doc/lispref/lists.texi (Association Lists): Improve alist-get.
716 2016-06-19  Glenn Morris  <rgm@gnu.org>
718         * lisp/progmodes/python.el (inferior-python-mode):
719         Avoid tabs.  (Bug#23616)
721         * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>: Doc fix.
723 2016-06-19  Tino Calancha  <f92capac@gmail.com>
725         * lisp/help-fns.el (describe-function-1):
726         Fix handling of file name for aliases.  (Bug#21950)
728         * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
730         * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
732 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
734         Fix crash in syntax.c after GC
736         Problem reported by Vincent Belaïche (Bug#23704).
737         * src/syntax.c (skip_chars): Recompute pointers into the
738         buffer after every call to update_syntax_table_forward,
739         as it can GC.
741 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
743         Improve squiggly heredoc support in non-SMIE Ruby mode
745         * lisp/progmodes/ruby-mode.el (ruby-parse-partial): Support
746         squiggly heredocs here, too (port from upstream).
748 2016-06-19  Stephen Berman  <stephen.berman@gmx.net>
750         Fix doc string quoting
752         * lisp/files.el (shell-quote-wildcard-pattern):
753         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
754         * lisp/subr.el (replace-regexp-in-string):
755         * lisp/view.el (view-mode):
756         * src/nsfns.m (syms_of_nsfns):
757         * src/syntax.c (Fbackward_prefix_chars):
758         Fix quoting problems in doc strings (Bug#23696).
760 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
762         Fix mouse dragging of vertical dividers with scroll bars on left (Bug#23690)
764         * lisp/mouse.el (mouse-drag-line): With scroll bars on the left
765         adjust trailing edge of window on the left when dragging the
766         vertical divider of the mode line.  (Bug#23690)
768 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
770         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
772         (Bug#23641)
774 2016-06-19  Glenn Morris  <rgm@gnu.org>
776         * test/automated/viper-tests.el (viper-test-undo-kmacro):
777         Delete temp-file at end.
779         * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
781         * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
783         * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table):
784         Fix typo.  (Bug#23654)
786 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
788         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
790 2016-06-19  Bill Wohler  <wohler@newt.com>
792         Correct cl-flet usage (Bug#22317)
794         * lisp/mh-e/mh-compat.el: Rename mh-cl-flet to mh-flet and convert alias to
795         macro using patch from Katsumi Yamaoka <yamaoka@jpl.org>.
796         * lisp/mh-e/mh-thread.el (mh-thread-set-tables):
797         * lisp/mh-e/mh-show.el (mh-gnus-article-highlight-citation):
798         * lisp/mh-e/mh-mime.el (mh-display-with-external-viewer):
799         (mh-mime-display, mh-press-button, mh-push-button):
800         (mh-display-emphasis): Call mh-flet instead of mh-cl-flet.
802 2016-06-19  Bill Wohler  <wohler@newt.com>
804         Release MH-E manual version 8.6
806         * doc/misc/mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH):
807         Update for release 8.6.
809 2016-06-19  Mike Kupfer  <m.kupfer@acm.org>
811         Update MH-E's documentation about HTML renderers
813         * doc/misc/mh-e.texi (HTML): Remove the footnote with the minimum Gnus
814         version (we are no longer trying to support multiple Emacs
815         releases). Sort the table of HTML renderers by name (the previous
816         ordering was based on a 10-year-old survey). Add shr and gnus-w3m to
817         the table. Remove the entry for w3 (no longer available).  Update
818         existing entries so that they are more consistent about what features
819         are discussed, and to reflect recent testing (Debian 8). Small tweaks
820         to existing text.
822 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
824         Fx the we->the typo
826         * doc/emacs/trouble.texi (Sending Patches):
827         Fix the typo (bug#23657).
829 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
831         Restore frames into the current display by default
833         * lisp/desktop.el (desktop-restore-in-current-display):
834         Default to t, not nil (Bug#23604).
835         * etc/NEWS: Mention the change.
837 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
839         * lisp/recentf.el (recentf-open-files-item): Quick fix for (bug#22434).
841         etc/TODO: Remove out-of-place issue
843 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
845         Clarify doc string of 'file-name-sans-extension'
847         * lisp/files.el (file-name-sans-extension, file-name-extension):
848         Clarify in the doc strings what is the extension, and which
849         leading period doesn't count.  (Bug#23643)
851 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
853         Fix the MSDOS build
855         * msdos/sed1v2.inp (PAXCTL_dumped, PAXCTL_notdumped): Define to
856         empty, and remove the lines which use them in recipes, as that
857         causes weird error message from Make and breaks the MSDOS build.
859 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
861         * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Call
862         substitute-command-keys to undo help--docstring-quote. (Bug#23634)
864 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
866         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
868 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
870         Fix infloop in 'number-sequence'
872         * lisp/subr.el (number-sequence): Avoid overflow leading to an
873         infloop.  (Bug#23627)
875         * test/automated/subr-tests.el (number-sequence-test): New test.
877 2016-06-19  Glenn Morris  <rgm@gnu.org>
879         * lisp/emacs-lisp/find-func.el (find-function-library):
881         Update for symbol-function no longer erroring.  (Bug#23626)
883 2016-06-19  Glenn Morris  <rgm@gnu.org>
885         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
886         (w32-get-valid-locale-ids): Improve declarations.
888 2016-06-19  Vincent Belaïche  <vincentb1@users.sourceforge.net>
890         Correct old cell name unbinding when renaming cell.
892         Bug is to unbind old cell names when renaming a cell with
893         'makunbound'. when the old cell name is of A1 type, then
894         'kill-local-variable' must be used instead, so that only the current
895         spreadsheet is affected. When the old cell name is a renamed cell,
896         then 'ses--unbind-cell-name' must be used in order to remove the old
897         name from the name hashmap.
899         * lisp/ses.el (ses-rename-cell): check consistency of cell symbol from
900         text-property and from array object. Instead of 'makunbound', use
901         either 'ses--unbind-cell-name' or 'kill-local-variable' depending on
902         whether the cell old name is a named cell or an A1 type cell
904 2016-06-19  Vincent Belaïche  <vincentb1@users.sourceforge.net>
906         Document problem: slow screen refresh on missing font.
908         See discussion of bug#22519 for more on this.
910 2016-06-19  Glenn Morris  <rgm@gnu.org>
912         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
914 2016-06-19  Glenn Morris  <rgm@gnu.org>
916         * build-aux/gitlog-to-emacslog: Handle empty generated ChangeLog.
918         This is relevant for M-x add-release-logs right after M-x authors.
920 2016-06-19  Glenn Morris  <rgm@gnu.org>
922         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
924 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
926         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
928 2016-06-19  Glenn Morris  <rgm@gnu.org>
930         * admin/authors.el (authors): First update the ChangeLog.
932         * admin/make-tarball.txt: Related updates.
934 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
936         Rename vc-stay-local back to vc-cvs-stay-local
938         * lisp/vc/vc-cvs.el (vc-cvs-stay-local): Rename back from
939         vc-stay-local (bug#19548).  Improve the docstring.
940         (vc-cvs-stay-local-p): Update accordingly.
942 2016-06-19  Glenn Morris  <rgm@gnu.org>
944         * doc/emacs/files.texi (Comparing Files):
945         * doc/emacs/trouble.texi (Sending Patches): Fix external xrefs.
947         * doc/misc/eww.texi (Advanced): Fix xref.
949 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
951         Fix cross-references between manuals
953         * doc/misc/viper.texi (Viper Specials):
954         * doc/misc/url.texi (Tramp):
955         * doc/misc/sem-user.texi (Smart Jump):
956         * doc/lispintro/emacs-lisp-intro.texi (Finding More):
957         * doc/misc/efaq.texi (Replacing text across multiple files): Fix
958         cross-references between manuals.  (Bug#23612)
959         * doc/lispintro/emacs-lisp-intro.texi (etags): Node deleted: no
960         longer relevant to Emacs Lisp programming.
962 2016-06-19  Glenn Morris  <rgm@gnu.org>
964         * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to avoid ".".
966         * admin/admin.el (add-release-logs): Also update etc/HISTORY.
968 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
970         Avoid aborting due to errors in arguments of 'set-face-attribute'
972         * src/xfaces.c (Finternal_set_lisp_face_attribute): Check the
973         FRAME argument before using it.  This avoids gratuitous aborts in
974         Emacs built with --enable-checking when the luser was unlucky
975         enough to get the argument list in wrong order.
977 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
979         Add automated test for viper-tests.el
981 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
983         Fix viper undo breakage from undo-boundary changes
985         * lisp/simple.el (undo-auto-disable-boundaries): New variable
986         * lisp/emulation/viper-init.el (viper-undo-in-complex-command,
987           viper-undo-needs-adjustment): Rename
988           variable to reflect new purpose,
989           (viper-buffer-undo-list-mark): Remove
990         * lisp/emulation/viper-cmd.el (viper-set-complex-command-for-undo):
991           Add undo using `undo-boundary', disable default undo-boundary
992           addition.
993         * lisp/emulation/viper-cmd.el
994           (viper-complete-complex-command-for-undo,viper-adjust-undo):
995           Change function name, remove old undo list manipulation.
996         * lisp/emulation/viper-cmd.el (viper-undo,viper-repeat,
997           viper-change-state-to-vi,viper-change-state):
998           Update for function name change.
1000         Addresses Bug #22295
1002 2016-06-19  Kaushal Modi  <kaushal.modi@gmail.com>
1004         Fix reference to obsolete fn ps-eval-switch
1006         lpr-eval-switch is functionally the same as ps-eval-switch,
1007         which was obsoleted in 2cdeb903c57126d3ad5f0cbd72e182584b76ee29.
1008         So use that instead (Bug#19717).
1009         * lisp/printing.el (pr-switches): Use lpr-eval-switch instead of
1010         ps-eval-switch.
1012 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1014         Do not trash symlinks to init file
1016         If the user’s init file is a symbolic link, do not break the link
1017         when initializing the package system.  Problem reported by Jackson
1018         Hamilton (Bug#23050).
1019         * lisp/emacs-lisp/package.el (package--ensure-init-file):
1020         Bind find-file-visit-truename when visiting the init file, and
1021         save and restore the buffer name the way cus-edit does in a
1022         similar situation (Bug#454).
1024 2016-06-19  Alan Mackenzie  <acm@muc.de>
1026         Don't print the "decomposition" line for control chars in what-cursor-position
1028         This is a temporary workaround for bug #23594, where the decomposition line
1029         for linefeed corrupted the display on a Linux virtual terminal.
1031         * lisp/descr-text.el (describe-char): Remove `decomposition' from the list of
1032         character code properties printed for control characters.
1034 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1036         Bring back xterm pasting with middle mouse
1038         Problem reported by Jan Synáček.
1039         Solution suggested by Stefan Monnier (Bug#23519).
1040         * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
1041         (xterm--pasted-text): New decl.
1042         (isearch-xterm-paste): New function.
1043         * lisp/term/xterm.el (xterm--pasted-text): New function,
1044         taken from xterm-paste internals.
1045         (xterm-paste): Use it.
1047 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1049         Provide workaround for xftfont rendering problem
1051         * src/xftfont.c (syms_of_xftfont) <xft-font-ascent-descent-override>:
1052         New variable.
1053         (xftfont_open): Use it to work around problems with rendering some
1054         fonts.  (Bug#23360)
1056 2016-06-19  Jun Hao  <jun_hao@aol.com>
1058         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
1060         (Bug#17693)
1062 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1064         Mention GTK+ problems in etc/PROBLEMS
1066         * etc/PROBLEMS (GDK_SCALE, GDK_DPI_SCALE): Mention the possible
1067         problems this could create and the workaround.  (Bug#23587)
1069 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
1071         * lisp/emacs-lisp/package.el (package-refresh-contents):
1073         Don't change the value of `package-check-signature'.
1074         (package-check-signature): Use `epg-find-configuration'
1075         instead of `executable-find'.
1077 2016-06-19  Daiki Ueno  <ueno@gnu.org>
1079         Revert "epg: Add a way to detect gpg1 executable for tests"
1081         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
1083 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1085         Avoid errors with Czech and Slovak input methods
1087         * lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
1088         (slovak-prog-3): Remove the kp-* key bindings, they are not needed
1089         and cause errors in "C-u C-x =".
1090         * lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
1091         (czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
1092         (Bug#23559)
1094 2016-06-19  Daiki Ueno  <ueno@gnu.org>
1096         epg: Add a way to detect gpg1 executable for tests
1098         Fixes bug#23561.
1100         * test/automated/epg-tests.el
1101         (epg-tests-program-alist-for-passphrase-callback): New
1102         constant.
1103         (epg-tests-find-usable-gpg-configuration): New function,
1104         renamed from `epg-tests-gpg-usable'.  All callers changed.
1105         (epg-tests-gpg-usable): Remove.
1107         * lisp/epg-config.el (epg-config--program-alist): Factor out
1108         constructor element to...
1109         (epg-config--configuration-constructor-alist): ...here.
1110         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
1111         and add PROGRAM-ALIST argument.
1113 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
1115         * lisp/emacs-lisp/package.el: Fix free variable warnings.
1117         (package--with-response-buffer): Replace two usages of
1118         `macroexp-let2*' with `let'.
1120 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
1122         * lisp/emacs-lisp/package.el (package--with-response-buffer):
1124         Fix some macro locals leaking into body.  (Bug#22440)
1126         * test/automated/package-test.el (package-test-signed):
1127         Manually check all possible values of `package-check-signature'.
1129 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1131         Improve documentation of 'server-name'
1133         * doc/emacs/misc.texi (Emacs Server): Fix example of setting
1134         'server-name'.  Mention how to do that with daemon sessions.
1135         (Bug#23576)
1137 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1139         Modernize ASLR advice in etc/PROBLEMS
1141         * etc/PROBLEMS (Segfault during 'make'): Modernize advice for
1142         seccomp, Docker, and NetBSD (Bug#23529).
1144 2016-06-19  Juri Linkov  <juri@linkov.net>
1146         * lisp/char-fold.el: Rename from character-fold.el.
1148         * lisp/replace.el (replace-char-fold): Rename from replace-character-fold.
1149         * test/automated/char-fold-tests.el: Rename from character-fold-tests.el.
1150         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00529.html
1152 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
1154         Bump version to 25.0.94
1156         * README:
1157         * configure.ac:
1158         * msdos/sed2v2.inp: Bump Emacs version to 25.0.94.
1160 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
1162         etc/AUTHORS: Update the AUTHORS file
1164 2016-06-19  Alan Third  <alan@idiocy.org>
1166         Fix bug#23462: Crash when iconifying frame on OS X.
1168         * src/nsterm.m (x_iconify_frame): Block input while miniaturize is
1169         running.
1171 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1173         Avoid shrinking windows with Gtk+ 3.20.3
1175         Problem reported by Matthias Clasen (Bug#23144).
1176         This was fixed in a different way in master.
1177         Do not merge to master.
1178         * src/xterm.c (handle_one_xevent) [GTK_CHECK_VERSION (3, 20, 3)]:
1179         Do not call xg_frame_resized in the MapNotify case.
1181 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1183         Fix bug in default setting of 'ps-paper-type'
1185         * lisp/international/mule-cmds.el (set-locale-environment): Don't
1186         inherit the value of locale from previous examination of different
1187         environment variables, which didn't look at LC_PAPER, and so using
1188         that value would effectively ignore the setting of LC_PAPER.
1189         (Bug#23544)
1191 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
1193         Properly reject malformed or empty package sigs
1195         Problem report and fix by Lizzie Dixon (Bug#23513).
1196         * lisp/emacs-lisp/package.el (package--check-signature-content):
1197         Report an error if no good signatures OR if a fatal error.  Not AND.
1199 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1201         Remove buggy non-native image scrolling
1203         This never worked, and could cause infinite recursion.
1204         Problem reported by Glenn Morris (Bug#22465).
1205         * lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
1206         All uses removed.
1208 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1210         * doc/misc/texinfo.tex: Sync from gnulib.
1212 2016-06-19  Glenn Morris  <rgm@gnu.org>
1214         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
1215         (find-alias-regexp): Fix :version.
1217 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1219         Do not mistake colon at the end of regexp for slash symbol
1221         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
1222         Check the parse state in the "Symbols with special characters"
1223         rule (bug#23515).
1225 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1227         Make package-install-from-buffer not move point
1229         * lisp/emacs-lisp/package.el (package-install-from-buffer):
1230         Use save-excursion here (bug#22616).
1232 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1234         Redo the fix for bug#21839
1236         * lisp/help.el (help-add-fundoc-usage): Undo the previous change.
1237         (help--make-usage-docstring): Escape newlines when printing.
1239         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
1240         Ditto (bug#21839).
1242 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1244         Don't treat JS spread as contination method call
1246         * lisp/progmodes/js.el (js--indent-operator-re):
1247         Allow only one dot (bug#23492).
1249         * test/indent/js.js (default): Add a corresponding example.
1251 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1253         Allow newlines inside cl function arglists
1255         * lisp/help.el (help-add-fundoc-usage): Allow newlines inside
1256         ARGLIST (bug#21839).
1258 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1260         Publicize cl--generic-all-functions
1262         * lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
1263         Rename from cl--generic-all-functions.  Update both callers.
1265         * lisp/cedet/semantic/db-el.el
1266         (semanticdb-find-tags-external-children-of-type-method):
1267         And use it here (bug#23042).
1269 2016-06-19  Alan Mackenzie  <acm@muc.de>
1271         Add some "safe-local-variable" declarations for compatibility with master.
1273         These enable C files from the master repository to be visited in Emacs 25
1274         without generating irritating questions about configuration variable safety.
1276         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
1277         functions.
1278         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
1279         safe-local-variable property c-string-list-p.
1280         (c-macro-names-with-semicolon): give the safe-local-variable property
1281         c-string-or-string-list-p.
1283 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1285         Fix doc string in `insert'
1287         * src/editfns.c (Finsert_and_inherit): The before-insertion
1288         markers do not move.
1289         (Finsert): Ditto.
1291 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1293         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
1295 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1297         Say 'All results processed' at the end
1299         * lisp/progmodes/xref.el (xref--query-replace-1):
1300         Say 'All results processed' at the end if the user hadn't
1301         cancelled the process (bug#23284).
1303 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1305         Document automatic adjustment of process' logical window dimensions
1307         * doc/lispref/processes.texi (Process Buffers): Document
1308         'set-process-window-size' and
1309         'window-adjust-process-window-size-function'.
1311         * etc/NEWS: Mention the new functionality and variable.
1313         * src/process.c (Fset_process_window_size): Improve the doc string.
1315 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
1317         tramp-sh.el: Work around a stat bug (backport from master)
1319         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
1320         stat versions which produce shell quoted output.  See also
1321         coreutils Bug#23422.
1323         (cherry picked from commit 6aad36ace9953b9672b13be68416d205532d5e59)
1325 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1327         Doc fixes for fclist and grep
1329         A newline is needed between two fc-list calls.
1330         egrep and fgrep have been withdrawn from POSIX,
1331         so document grep -E and grep -F instead.
1333 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1335         Minor doc fixes for quoting
1337         * doc/lispref/control.texi (Signaling Errors):
1338         * doc/lispref/display.texi (Displaying Messages):
1339         Don’t say that formats “generate”.  Try to word more clearly.
1340         * etc/NEWS: Coalesce near-duplicate entries.
1342 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1344         `nreverse' the marker pairs list
1346         * lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
1347         the marker pairs list for each buffer before returning.
1349 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1351         Use save-excursion in xref-location-marker more
1353         * lisp/progmodes/elisp-mode.el (xref-location-marker): Use
1354         save-excursion, in order not to alter the value of point if the
1355         buffer is currently open in the background (problem reported by
1356         Robert Weiner).
1358         * lisp/progmodes/etags.el (xref-location-marker): Same.
1360 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1362         shell-quote-argument DIR when appropriate
1364         * lisp/progmodes/project.el (project-file-completion-table):
1365         `shell-quote-argument' DIR as well.
1367         * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
1368         `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
1369         pointing out the problem.  Assert that DIR doesn't start with `~'.
1371 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1373         Rework xref-query-replace-in-results
1375         * lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
1376         all xrefs from the buffer first, then delegate most of the
1377         processing to the value returned by xref--buf-pairs-iterator.
1378         (xref--buf-pairs-iterator): New function.  Return an "iterator"
1379         which partitions returned markers into buffers, and only processes
1380         markers from one buffer at a time.  When an xref is out of date,
1381         skip it with a message instead of signaling error (bug#23284).
1382         (xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
1383         CR from both strings before comparing.
1384         (xref--query-replace-1): Remove the variable current-buf, no need
1385         to track it anymore.  Simplify the filter-predicate and search
1386         functions accordingly.  Iterate over buffer-markers pairs returned
1387         by the iterator, and call `perform-replace' for each of them.  Use
1388         multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
1389         time after the first, in order not to jump between windows.
1391         * test/automated/xref-tests.el
1392         (xref--buf-pairs-iterator-groups-markers-by-buffers-1)
1393         (xref--buf-pairs-iterator-groups-markers-by-buffers-2)
1394         (xref--buf-pairs-iterator-cleans-up-markers): New tests.
1396 2016-06-19  Juri Linkov  <juri@linkov.net>
1398         * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
1400         to set minibuffer-local value of text-property-default-nonsticky.
1401         (Bug#23418, bug#23127)
1403 2016-06-19  Stephen Berman  <stephen.berman@gmx.net>
1405         Fix todo-mode bug involving archived items (bug#23447)
1407         * lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
1408         from Todo Categories mode to a category with only archived items
1409         and todo-skip-archived-categories is non-nil, make sure the
1410         archive file buffer is in Todo Archive mode to prevent
1411         todo-category-select from raising an error, and don't set
1412         todo-current-todo-file, since that makes todo-show display the
1413         archived category.  Remove a no-op call to kill-buffer, which is
1414         already called in todo-insert-category-line.
1416 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1418         Handle "empty line" regexp in xref searches
1420         * lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
1421         match if re-search-forward doesn't move point (bug#23426).
1423         * test/automated/xref-tests.el
1424         (xref-collect-matches-finds-an-empty-line-regexp-match):
1425         Uncomment test.
1427 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1429         Add tests for xref-collect-matches
1431         * test/automated/xref-tests.el: New file.  Add tests for
1432         xref-collect-matches.
1434 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1436         Use grep-find-ignored-directories instead of vc-directory-exclusion-list
1438         * lisp/dired-aux.el (dired-do-find-regexp):
1439         Use grep-find-ignored-directories instead of
1440         vc-directory-exclusion-list.  The result should be functionally
1441         similar (the former uses the latter as the default value), but it
1442         should be more consistent and appropriate WRT user
1443         customizations.
1444         (dired-do-find-regexp-and-replace): Update the docstring.
1446         * lisp/dired.el: Update the corresponding autoloads.
1448         * doc/emacs/dired.texi (Operating on Files): Update the
1449         documentation accordingly.
1451 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1453         Clear buffer-undo-list when showing xrefs
1455         * lisp/progmodes/xref.el (xref--show-xref-buffer): Clear
1456         buffer-undo-list and temporarily bind it to t while rendering the
1457         buffer contents.
1459 2016-06-19  Alan Mackenzie  <acm@muc.de>
1461         Note the quote translation in `message' in section "incompatible changes".
1463         * etc/NEWS: Note that `message' translates quotes, that the translation
1464         cannot be disabled, and that `format' can be used to get the old
1465         behavior back.
1467 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1469         * etc/NEWS: Mention (message "%s" (format ...)).
1471 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1473         (Common Keywords): Correct what missing :group means
1475         * doc/lispref/customize.texi (Common Keywords): Correct what
1476         missing :group means.
1478 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1480         Improve documentation of Dired's 'A' and 'Q' commands
1482         * lisp/dired-aux.el (dired-do-find-regexp)
1483         (dired-do-find-regexp-and-replace): Mention
1484         'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
1485         also the fact that REGEXP should be palatable by Grep.  (Bug#23426)
1486         * lisp/dired.el: Update the corresponding autoload forms.
1488         * doc/emacs/dired.texi (Operating on Files): Mention
1489         'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
1490         (Bug#23429)
1492 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1494         Doc fixes for quoting
1496         * doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
1497         * doc/lispref/control.texi, doc/lispref/display.texi:
1498         * doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
1499         * src/callint.c, src/doprnt.c, src/editfns.c:
1500         Document quoting a bit more systematically.
1501         Problem reported by Alan Mackenzie (Bug#23425).
1503 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1505         posnp doc clarification
1507         * lisp/subr.el (posnp): Mention that a posn object is returned
1508         from `event-start' (bug#18211).
1510 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1512         Mention what a missing :group does
1514         * doc/lispref/customize.texi (Common Keywords): Document that
1515         a missing :group reuses the group from the preceding item (bug#21601).
1517 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1519         Fix documentation of dired-aux search/replace commands
1521         * lisp/dired-aux.el (dired-do-find-regexp)
1522         (dired-do-find-regexp-and-replace): Doc fixes.  (Bug#23429)
1523         * lisp/dired.el: Update the corresponding autoload forms.
1525 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1527         Fix quoting problem in cc-engine debug message
1529         * lisp/progmodes/cc-engine.el (c-replay-parse-state-state):
1530         Use "%s" format to pass through ‘'’ unscathed (Bug#23425), and
1531         likewise for ‘`’, and ‘%’.
1533 2016-06-19  Philipp Stephani  <phst@google.com>
1535         Add electric-quote-string unit test
1537         * test/automated/electric-tests.el (electric-quote-string): New test.
1539 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1541         Don’t electrically quote ‘'’ in Python
1543         Problem reported by Philipp Stephani (Bug#23387).
1544         * lisp/electric.el (electric-quote-post-self-insert-function):
1545         Do not requote a string starter or ender.
1547 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1549         `nreverse' Grep hits before passing them to xref--convert-hits
1551         * lisp/progmodes/xref.el (xref-collect-matches): `nreverse' hits
1552         before passing them to xref--convert-hits.  Fixes a regression
1553         from cc0b7132.
1555 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1557         * doc/misc/texinfo.tex: Sync from gnulib.
1559 2016-06-19  Juri Linkov  <juri@linkov.net>
1561         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
1563         (Bug#23410)
1565 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
1567         tramp.texi: Revert last change due to backward compatibility
1569         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
1571 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1573         cua-prefix-override-inhibit-delay doc fix
1575         * lisp/emulation/cua-base.el
1576         (cua-prefix-override-inhibit-delay): Typo fix in doc string
1577         (bug#23401).
1579         (cherry picked from commit 2b4c099822811ede787fc6e575bfbb17b3cc0681)
1581 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1583         global-eldoc-mode doc fix
1585         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
1586         specific about what "applicable" means (bug#23071).
1588         (cherry picked from commit 25e95b5dd8cd92e03788e589bf99a4b399f03114)
1590 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1592         normal-top-level-add-subdirs-to-load-path doc fix
1594         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
1595         Doc fix (bug#21962).
1597         (cherry picked from commit 28aaa6d20586e3330a23b017a65e56dd6461c003)
1599 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1601         isearch-search-fun-function doc tweak
1603         * lisp/isearch.el (isearch-search-fun-function): Mention what
1604         the STRING parameter is (bug#21552).
1606         (cherry picked from commit cafc2a5940cdc523cfea6dcf1cf540f48367c62a)
1608 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1610         Fill some imenu--index-alist doc lines
1612         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
1614         (cherry picked from commit 4b7bb8f596550628eaa83b82c0f7eabe59a84964)
1616 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1618         Fmarker_position doc string clarification
1620         * src/marker.c (Fmarker_position): Clarify the doc string
1621         (bug#21231).
1623         (cherry picked from commit eeac7c57273cec3f9408b18392dd2bafe3be4450)
1625 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1627         Further define-obsolete-* doc fixups
1629         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
1630         Fix up last change.
1631         (define-obsolete-variable-alias): Ditto.
1633         (cherry picked from commit 28e9f4390d8391c2c36be4ef515cf3a2c679a5a5)
1635 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1637         Describe WHEN in all the define-obsolete- macros
1639         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
1640         Say more verbosely what WHEN is (bug#21225).
1641         (define-obsolete-function-alias): Describe the WHEN parameter.
1642         (define-obsolete-variable-alias): Ditto.
1644         (cherry picked from commit 247c388f160581d207e41ca5926990bbf69d4a0f)
1646 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1648         Mention with-silent-modifications in the lispref manual
1650         * doc/lispref/text.texi (Changing Properties): Document
1651         with-silent-modifications (bug#21171).
1653         (cherry picked from commit fcd0d854eef6e439d51e8f07cf734d5e34e502b3)
1655 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1657         with-silent-modifications doc clarification
1659         * lisp/subr.el (with-silent-modifications): Rearrange the doc
1660         string a bit so that the most pertinent information is at the
1661         top (bug#21171).
1663         (cherry picked from commit e0e70f030e69d9696a963a86f5f7caaff4df06eb)
1665 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1667         clear-visited-file-modtime doc string fix
1669         * lisp/files.el (clear-visited-file-modtime): Fix possibly
1670         confusing doc string wording (bug#21169).
1672         (cherry picked from commit 1aaeaf1450756a71c9254a2a5b174c72084ca67a)
1674 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1676         Document mode mode line variables
1678         * doc/lispref/modes.texi (Mode Line Variables): Document
1679         `mode-line-front-space, `mode-line-misc-info',
1680         `mode-line-end-spaces' (bug#21014).
1682         (cherry picked from commit bf7a630b0a5d3900f2afb0e7a881ce62e2b9f935)
1684 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1686         Add a cross ref to Optional Mode Line
1688         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
1689         reference to the Emacs mode line node that explains things
1690         like `display-time-string' (bug#21002).
1692         (cherry picked from commit a3151a28789f413af73b14fbba557b2a587fca53)
1694 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1696         Add a doc string to display-time-string
1698         * lisp/time.el: Add a doc string to `display-time-string',
1699         because it's referred to in the manual, and is too mysterious
1700         otherwise (bug#21002).
1702         (cherry picked from commit 45559c584e5a4ddeed1539b028b50b95baa372f8)
1704 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1706         custom-buffer-style doc fix
1708         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
1709         value (bug#20724).
1711         (cherry picked from commit bcf0291d0cd02095b0809b1eb91f1e5c5c2ac5e3)
1713 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1715         Rearrange the doc of query-replace slightly
1717         * lisp/replace.el (query-replace): Move the mention of the
1718         interactive prefix arg earlier so that users can find it
1719         (bug#20654).
1721         (cherry picked from commit bcc10761c3b968fa4534718116a0a601ed7da389)
1723 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1725         apropos-print doc fix
1727         * lisp/apropos.el (apropos-print): Document the undocumented
1728         parameters (bug#20520).
1730         (cherry picked from commit 0714d7387812a151f59993ac77c7321724ef79b1)
1732 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1734         completion-table-with-predicate doc string fix
1736         * lisp/minibuffer.el (completion-table-with-predicate): t ->
1737         non-nil in the doc string (bug#20460).
1739         (cherry picked from commit b6a4d162208f239bc7804696d611ae52c686f138)
1741 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1743         Fill the completion-table-with-predicate doc string
1745         * lisp/minibuffer.el (completion-table-with-predicate): Fill
1746         the doc string (bug#20460).
1748         (cherry picked from commit 207a31432c1ed8b548003a3e4af32c49aa3441e9)
1750 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1752         replace-match-maybe-edit doc clarification
1754         * lisp/replace.el (replace-match-maybe-edit): Say what
1755         MATCH-DATA is (bug#20304).
1757         (cherry picked from commit 139874ba53c2e2de9868f8e5234d6ea2bcb97af8)
1759 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1761         add-timeout doc fix
1763         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
1764         value (bug#20181).
1766         (cherry picked from commit 921b40476f597c84d7c34aa289cd43caeb389c4a)
1768 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1770         Extremely minor doc fix in Choosing Window
1772         * doc/lispref/windows.texi (Choosing Window): There's only one
1773         action alist, I think (bug#20158).
1775         (cherry picked from commit 6c7e7f421d02d9290d6d1d85320737371160aef7)
1777 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1779         Transform mentions of `eval-after-load' to `with-eval-after-load'
1781         * doc/lispref/loading.texi (Hooks for Loading): Update text to
1782         not mention `eval-after-load' (bug#20038).
1784         (cherry picked from commit 9392193be56eebdfac702a0bbb5e954088371c7a)
1786 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1788         cursor-type doc fix
1790         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
1791         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
1793         (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
1795 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1797         Add a link from Tool Bar to Images
1799         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
1800         Images node (bug#19722).
1802         (cherry picked from commit da5d0786163a91400eced4fddba4a92b652458d1)
1804 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1806         (default-mode-line-format): More explicit obsolete info
1808         * lisp/subr.el (default-mode-line-format): Be more explicit in
1809         how default values are now handled (bug#19424).
1811         (cherry picked from commit 9dc5f6d830e72420dc4d41c8f6ca1ca6b28609c0)
1813 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1815         Fcompare_buffer_substrings doc string clarification
1817         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
1818         doc string clarification (bug#19255).
1820         (cherry picked from commit aa692acbb598a1cc8219ed7a87dde25fd7626ba5)
1822 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1824         insert-file-contents-literally doc fix
1826         * lisp/files.el (insert-file-contents-literally): Say that the
1827         parameters are explained in the other function (bug#18317).
1829         (cherry picked from commit b6481b19bc9592492b1f70dfecb4de6256f537fe)
1831 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1833         Fix custom types for cursor-in-non-selected-windows
1835         * lisp/cus-start.el (standard): Use the same custom types for
1836         cursor-in-non-selected-windows as for cursor-type (bug#19214).
1838         (cherry picked from commit b66bc0cced786e0320e1c3b0758bd3c434d4e8b5)
1840 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1842         Doc clarification to mwheel-scroll
1844         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
1845         does not apply to Windows (bug#19209).
1847         (cherry picked from commit 696052b5fdfbc5c25dff3c6b081aebe70f6d06c7)
1849 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1851         Clarify the doc of eval-expression-print-format
1853         * lisp/simple.el (eval-expression-print-format): Doc
1854         clarification (bug#19114).
1856         (cherry picked from commit cd193a871f5a8e1c81ba86fc398ac382fa814383)
1858 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1860         Explictly explain that package-initialize loads the packages
1862         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
1863         in saying that `package-initialize' obviates adjusting the
1864         path or requiring the packages, as this is a question that
1865         apparently comes up now and then (bug#18829).
1867         (cherry picked from commit 619e0aedb2f3dbfe6821ac34e2d25b4e5c181117)
1869 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1871         Have the doc strings of `load-path' and `require' mention each other
1873         * src/fns.c (Frequire): Mention `load-path' and fill the doc
1874         string (bug#18829).
1876         * src/lread.c (syms_of_lread): Mention that `require' uses
1877         `load-path'.
1879         (cherry picked from commit 3eca9a03816f95da0030665223c0b5262f223ba7)
1881 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1883         Doc fix for insert-pair-alist
1885         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
1886         COMMAND-CHAR is (bug#18809).
1888         (cherry picked from commit 2824c587e9749a8f350f1d3dddd65176b4561dcb)
1890 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1892         Move doc of backup-directory-alist to the Backup node
1894         * doc/emacs/files.texi (Backup): Move the documentation of
1895         `backup-directory-alist' here from the "Single or Numbered
1896         Backups" node, because it doesn't seem to have much to do with
1897         numbering (bug#18692).
1899         (cherry picked from commit e77b8d84b4161f2cf8720dec2bf44a3e50134398)
1901 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1903         Tiny doc clarification for create-fontset-from-fontset-spec
1905         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
1906         Clarify what the optional part is (bug#18686).
1908         (cherry picked from commit c05d186455ce9907eeb6b21ea4227e453996c681)
1910 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1912         Fill the doc string of font-lock-keywords
1914         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
1915         reorganise some explanations (bug#21427).
1917         (cherry picked from commit c05716d3a26ea7518b89eacfccaf70c9d0731df7)
1919 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1921         Doc fix for font-lock-remove-keywords
1923         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
1924         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
1926         (cherry picked from commit bc00dcf12983cd399127d0eea39647f29778eb02)
1928 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1930         Clarify whitespace-style doc string
1932         * lisp/whitespace.el (whitespace-style): Doc clarification
1933         (bug#18296).
1935         (cherry picked from commit d96c720d0cca7c9ffbb4c712ad315bb707d6625c)
1937 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1939         Doc fixed for next-error-buffer-p
1941         * lisp/simple.el (next-error-buffer-p): Clarify doc string
1942         (bug#18202).
1944         (cherry picked from commit a10eb168cc96db9f0dab2d75550cbd8f08be2363)
1946 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1948         Tiny doc fix
1950         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
1951         (and fill) (bug#18201).
1953         (cherry picked from commit 2ef0040e2363a669d9b93df935d31c98fa130132)
1955 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1957         Doc fix
1959         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
1960         slightly (bug#18092).
1962         (cherry picked from commit 6b769c81d024f7eeb90b167e7df6f87d859614d4)
1964 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1966         delsel doc touch ups
1968         * lisp/delsel.el (delete-selection-helper): Use non-nil
1969         instead of t and clarify function return values (bug#18089).
1971         (cherry picked from commit d7a5b5be9a5869bcd233434ec3103dd1976d7df7)
1973 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1975         Doc fixes for menu-bar.el
1977         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
1978         REGION parameter (bug#18028).
1979         (clipboard-kill-region): Ditto.
1981         (cherry picked from commit 33d2c67bff0992ecbc0fe38556683242b9d1a4ae)
1983 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1985         Doc fix
1987         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
1989         (cherry picked from commit 6baca4911ec901579749dbf7596011d90fea3781)
1991 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1993         Minor doc clarification
1995         * lisp/subr.el (y-or-n-p): Document the return value from "n"
1996         (bug#18024).
1998         (cherry picked from commit 5d1f3192d484edee92caa46cd7d699da3e920259)
2000 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2002         Fill font-lock-mode doc string
2004         * lisp/font-core.el (font-lock-mode): Fill the text to make it
2005         narrower (bug#18008).
2007         (cherry picked from commit 27abf372836532c57be2e9e3ed23413729cc07fc)
2009 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2011         Wrap the auto-generated doc string
2013         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
2014         string to make it less likely that we get overlong lines
2015         (bug#17999).
2017         (cherry picked from commit 323b69664914d687fd4b48593479cea223dfbcb4)
2019 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2021         Clarify hi-lock-find-patterns
2023         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
2024         (bug#17989).
2026         (cherry picked from commit 552e90ce7dff3a7107243fdf71c4de3af443e13a)
2028 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2030         Add a doc string to `winner-mode'
2032         * lisp/winner.el (winner-mode): Add a doc string based on the
2033         comments in the file (bug#17716).
2035         (cherry picked from commit 2c3ab9b6e39a3d600e7d82deacc24effaec051bb)
2037 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2039         Doc fix for align-newline-and-indent
2041         * lisp/align.el (align-newline-and-indent): Mention that
2042         alignment is done by `align' (bug#17707).
2044         (cherry picked from commit 340a224ec3e01706112a07164da9a9f3f369a5aa)
2046 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2048         Doc fix for `kbd'
2050         * lisp/subr.el (kbd): Describe more fully the format of the
2051         parameter (bug#17039).
2053         (cherry picked from commit 3a33afe25d8518f194fa4706eaccdb2a786a0348)
2055 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2057         Doc tweak
2059         * lisp/simple.el (use-empty-active-region): Doc tweak.
2060         There's only one region (bug#16513).
2062         (cherry picked from commit 35fb7897f161d5e5a87e039dc1e427094640b0c8)
2064 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2066         Link from (emacs)Exiting to (lisp)Killing Emacs
2068         * doc/emacs/entering.texi (Exiting): Link to the lispref
2069         manual for further customizations (bug#15445).
2071         (cherry picked from commit bc5f27aa099cdde02ca66e71501b89300685ab28)
2073 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2075         find-lisp doc touchups
2077         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
2078         string (bug#15047).
2079         (find-lisp-find-files): Clarify doc.
2081         (cherry picked from commit e4c7657b0d1a31d64ca24bc64b5480cd7687e332)
2083 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2085         Don't have the manual claim that it lists all CL incompatibilities
2087         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
2088         incompatibilities isn't exhaustive, so don't say that it is
2089         (bug#15171).
2091         (cherry picked from commit fb685bc91a72508c97ce7e30f970d4157677f371)
2093 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2095         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
2097         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
2098         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
2099         (bug#14554).
2101         (cherry picked from commit e4c26271f2c2fe08f8490e25c63a436ab2a804ca)
2103 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2105         Doc string change to enable-recursive-minibuffers
2107         * src/minibuf.c (syms_of_minibuf): Mention
2108         minibuffer-depth-indicator-mode in the doc string to
2109         enable-recursive-minibuffers (bug#14147).
2111         (cherry picked from commit 23ba488a5e8290c4de91e0ff4161641efa364c0d)
2113 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2115         Clarify the `interactive' doc string slightly
2117         * src/callint.c (Finteractive): Clarify the doc string slightly
2118           (bug#14577).
2120         (cherry picked from commit cd993be60da2d12db0d390001373d486c1091c47)
2122 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2124         Clarify some doc strings
2126         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
2127         Clarify doc string (bug#8693).
2128         (syntax-propertize): Clarify doc string.
2130         (cherry picked from commit ad3ef417f3c40f086de9c547d6272e5685595e42)
2132 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2134         Add some concept index entries for custom types
2136         * doc/lispref/customize.texi (Composite Types): Add concept
2137         index entries for restricted-sexp, radio and choice (bug#7385).
2139         (cherry picked from commit 388bb723fa078158d3148de05e942f9c01e95dd8)
2141 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2143         Mention `lisp-indent-function' in the lispref manual
2145         * doc/lispref/macros.texi (Indenting Macros): Mention
2146         `lisp-indent-function' (bug#3393).
2148         (cherry picked from commit a1627691a896b2afaa264f93534178bc763564c9)
2150 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2152         Clarify doc string of internal compilation function
2154         * lisp/progmodes/compile.el (compilation-get-file-structure):
2155         Clarify doc string (bug#3137).
2157         (cherry picked from commit 123191decb7428db3b32a6c01631fa755088393a)
2159 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2161         Use ‘T *restrict’ proto, not ‘T[restrict]’
2163         * src/fns.c (sort_vector_copy): Use a different way to attempt to
2164         work around GCC 3.0-and-earlier incompatibility with C99, one that
2165         does not have problems with modern non-GCC compilers.
2167 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2169         Fix documentation of 'url-retrieve-synchronously'
2171         * doc/misc/url.texi (Retrieving URLs): Update argument list of
2172         'url-retrieve-synchronously'.  (Bug#23411)
2174 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2176         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
2178 2016-06-19  Leo Liu  <sdl.web@gmail.com>
2180         Fix last change to isearch-update (bug#23406)
2182         * lisp/isearch.el (isearch-update): Remove (setq cursor-sensor-inhibit
2183           nil) ie remove the original (unless (boundp 'cursor-sensor-inhibit)
2184           ...) form.
2186 2016-06-19  Leo Liu  <sdl.web@gmail.com>
2188         Autoload cursor-sensor-inhibit (bug#23406)
2190         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-inhibit): Autoload.
2191         * lisp/isearch.el (isearch-update): Remove boundp check.
2193 2016-06-19  Phillip Lord  <phillip.lord@newcastle.ac.uk>
2195         org-map-entries: Fix org-agenda-prepare-buffers call
2197         * lisp/org/org.el (org-map-entries): Check that buffer-file-name is non-nil
2198           before passing to org-agenda-prepare-buffers.
2200         This is a backport of commit 44c8cd7136e3fcd1e6bfa08895cac437b7a691fa
2201         from upstream org-mode. Addresses bug #23365.
2203 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2205         Followup for last commit in the user manual
2207         * doc/emacs/basic.texi (Moving Point): Clarify that
2208         set-goal-column has buffer-local effect.  (Bug#23405)
2210 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2212         Improve doc string of 'set-goal-column'
2214         * lisp/simple.el (set-goal-column): Doc fix.  (Bug#23405)
2216 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2218         Fix the MSDOS build
2220         * config.bat:
2221         * msdos/sedlisp.inp:
2222         * msdos/sedlibmk.inp:
2223         * msdos/sedleim.inp:
2224         * msdos/sedadmin.inp:
2225         * msdos/sed6.inp:
2226         * msdos/sed3v2.inp:
2227         * msdos/sed2v2.inp:
2228         * msdos/sed1v2.inp: Adapt to Emacs 25.
2230         * src/process.c (remove_slash_colon): Move out of "#ifdef
2231         subprocesses" block, as it its called unconditionally.  Move
2232         ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
2233         reference variables only defined in that block.
2234         * src/msdos.h: Provide prototypes for IT_set_frame_parameters,
2235         faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
2236         dos_keysns, dos_keyread, run_msdos_command, and
2237         syms_of_win16select, to avoid compiler warnings.
2238         * src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
2239         'environ', depending on the DJGPP version.
2240         Remove declarations of externally-visible Lisp objects, like
2241         Qbackground_color and Qreverse.
2242         (run_msdos_command): First argument is not signed, not unsigned.
2243         Use SYS_ENVIRON.
2244         (sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
2245         the latter doesn't work when 'time_t' is an unsigned data type.
2246         This caused idle timers to behave incorrectly: they only fired
2247         after a keyboard input event.
2248         * src/frame.c (adjust_frame_size) [MSDOS]: Account for
2249         FRAME_TOP_MARGIN that isn't counted in the frame's number of
2250         lines, but dos_set_window_size needs it to be added.
2251         * src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
2252         * src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
2253         that works around compilation errors with older GCC versions.
2254         * src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
2255         Objects.
2256         * src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
2257         no-op implementations for 'lock_file' and 'unlock_file'.
2258         (Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
2259         ifdefs in all users of filelock.c functionality.
2260         * src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
2261         * src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
2262         warnings.
2263         * src/dosfns.h: Provide prototypes for dos_cleanup,
2264         syms_of_dosfns, and init_dosfns.
2265         * src/deps.mk (atimer.o): Depend on msdos.h.
2266         (emacs.o): Depend on dosfns.h.
2267         * src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
2268         warnings.
2270         * lisp/window.el (window--adjust-process-windows): Skip the body
2271         if 'process-list' is not available.  This avoids failure to start
2272         up on MS-DOS.
2273         * lisp/vc/diff.el (diff-no-select): Test 'make-process', not
2274         'start-process', as the latter is now available on all platforms.
2275         * lisp/textmodes/ispell.el (ispell-async-processp): Replace
2276         'start-process' with 'make-process' in a comment.
2277         * lisp/term/internal.el (IT-unicode-translations): Modify and add
2278         a few translations to display Info files with Unicode markup.  Fix
2279         an ancient off-by-one mismatch error with Unicode codepoints.
2280         * lisp/progmodes/compile.el (compilation-start): Test
2281         'make-process', not 'start-process', as the latter is now
2282         available on all platforms.
2283         * lisp/man.el (Man-build-man-command, Man-getpage-in-background):
2284         Test 'make-process', not 'start-process', as the latter is now
2285         available on all platforms.
2286         * lisp/international/mule-cmds.el (set-coding-system-map): Test
2287         'make-process', not 'start-process', as the latter is now
2288         available on all platforms.
2289         * lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
2290         fix.
2291         (eshell-execute-pipeline): Test 'make-process', not
2292         'start-process', as the latter is now available on all platforms.
2294 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
2296         Remove \= from format string (bug#18190)
2298         * lisp/emacs-lisp/eieio.el (defclass): Remove \= from format
2299         string.
2301 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2303         Fix variable-pitch font on MS-Windows
2305         * lisp/faces.el (variable-pitch) [w32]: Name a variable-pitch font
2306         explicitly, to avoid Emacs picking up a bold-italic variant on
2307         some MS-Windows systems.  See this thread for details:
2308         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00746.html.
2310 2016-06-19  Alan Mackenzie  <acm@muc.de>
2312         Restore follow-scroll-up/down to scrolling by the combined size of all windows
2314         Also rename the current follow-scroll-up/down functions to
2315         follow-scroll-up-window and follow-scroll-down-window.  These scroll by the
2316         height of the current window.
2318         This fixes bug #23347.
2320         * lisp/follow.el (follow-mode): Tweak the doc string.
2321         (follow-scroll-up-arg, follow-scroll-down-arg): new functions, extracted from
2322         follow-scroll-up/down.
2323         (follow-scroll-up-window, follow-scroll-down-window): Functions renamed from
2324         follow-scroll-up/down.
2325         (follow-scroll-up, follow-scroll-down): Restore the historic functionality.
2327 2016-06-19  Alan Mackenzie  <acm@muc.de>
2329         Revert unneeded change which harms syntactic parsing.  This fixes bug #23308.
2331         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache): User
2332         c-state-old-cpp-end as an argument to c-with-all-but-one-cpps-commented-out
2333         regardless of the value of `here'.
2335 2016-06-19  Alan Mackenzie  <acm@muc.de>
2337         Correct indentation of ids in a C++ enum after a protection keyword.
2339         Also correct the misfontification of the last enum identifier.
2341         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): setq
2342         c-last-identifier-range to nil to ensure that only types recognized by this
2343         macro are set for fontification as types.
2344         (c-backward-typed-enum-colon): Function renamed from
2345         c-backward-colon-prefixed-type.  On finding a colon in the backward search,
2346         check it is preceded by an identifier rather than a keyword.
2348 2016-06-19  Glenn Morris  <rgm@gnu.org>
2350         * lisp/window.el (window--process-window-list): No-op if no processes.
2352         This avoids an issue with save-selected-window (from walk-windows)
2353         failing if frame.el is not loaded, eg if the terminal is resized
2354         during startup of a -nw CANNOT_DUMP build.  (Bug#23369).
2356 2016-06-19  Paul Eggert  <eggert@penguin.cs.ucla.edu>
2358         Port dumping to NetBSD with PaX
2360         Problem reported by Thomas Klausner (Bug#23371).
2361         * configure.ac (PAXCTL_dumped, PAXCTL_notdumped): New vars.
2362         Set them to setfattr and/or paxctl commands appropriate for
2363         GNU/Linux and/or NetBSD; the latter prefers paxctl +a.  Search
2364         for paxctl only if setfattr is not found.
2365         * src/Makefile.in (PAXCTL_dumped, PAXCTL_notdumped):
2366         New vars, replacing PAXCTL_if_present and SETFATTR_if_present.
2367         All uses changed.
2369 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
2371         Don't mistake `for' inside a function for a part of array comprehension
2373         * lisp/progmodes/js.el (js--indent-in-array-comp): Also check the
2374         depth in parens between the bracket and `for' (bug#23391).
2376         * test/indent/js.js: Add a corresponding example.
2378 2016-06-19  Anders Lindgren  <andlind@gmail.com>
2380         Fix bug#22891: wrong terminal width when a fringe width is zero.
2382         When either fringe width is zero, Emacs reserved one column for a
2383         continuation glyph. Terminal windows does not take this into
2384         account when the frame is resized.
2386         * lisp/window.el (window-adjust-process-window-size): Use
2387         `window-max-chars-per-line' instead of `window-body-width'.
2388         * lisp/term.el (term-window-width): Remove function. (It does the
2389         same as `window-max-chars-per-line' but without recent bug fixes.)
2390         (term-mode): Use `window-max-chars-per-line' instead of
2391         `term-window-width'.
2393         Backport
2395         (cherry picked from commit 5b5403289888efe8783ae6a405845b925f544ec1)
2397 2016-06-19  Leo Liu  <sdl.web@gmail.com>
2399         Improve last change to vc-git-mode-line-string
2401         * lisp/vc/vc-git.el (vc-git-mode-line-string): Better fix that caches
2402           the result.
2404 2016-06-19  Stephen Berman  <stephen.berman@gmx.net>
2406         Todo mode doc bug fix
2408         * lisp/calendar/todo-mode.el (todo-show): Correct obsolete and no
2409         longer correct information in doc string.
2411 2016-06-19  Leo Liu  <sdl.web@gmail.com>
2413         Fix revision calculation in vc-git-mode-line-string
2415         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use
2416           vc-git-working-revision because vc-working-revision needs to decide
2417           the backend and may return nil.
2419 2016-06-19  Jorgen Schaefer  <contact@jorgenschaefer.de>
2421         Add Python 3.5 keyword "await"
2423         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
2424         keyword.
2426 2016-06-19  Lele Gaifax  <lele@metapensiero.it>
2428         Add new keywords of Python 3.5
2430         Python 3.5, released in mid September 2015, introduced a few new
2431         keywords to better support asynchronous code, "async" and "await"
2432         in particular. See https://www.python.org/dev/peps/pep-0492/ for
2433         details. (Bug#21783)
2434         * lisp/progmodes/python.el (python-rx-constituents): Add async
2435         def/for/with as block-start and async def as defun.
2436         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
2437         def/for/with as keyword.
2438         * test/automated/python-tests.el (python-indent-after-async-block-1,
2439         python-indent-after-async-block-2, python-indent-after-async-block-3,
2440         python-nav-beginning-of-defun-3): New tests to test indentation and
2441         navigation for the async keyword.
2443 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
2445         Partially revert previous change.
2447         This commit partially reverts 0f332848cdb2ed6d46771914a911cbca194cd51a.
2448         * lisp/rect.el (rectangle--highlight-for-redisplay): Use region face.
2449         This function is for rectangle-mark-mode, not string-rectangle.
2451 2016-06-19  Paul Eggert  <eggert@penguin.cs.ucla.edu>
2453         Say why text-quoting-style is not a user option
2455         * doc/lispref/help.texi (Keys in Documentation):
2456         * etc/NEWS: Document why text-quoting-style is not a
2457         customizable variable (Bug#23372).
2459 2016-06-19  Glenn Morris  <rgm@gnu.org>
2461         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
2462         Future-proof against non-time-values.
2464 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2466         Don't mention ~/.emacs.bmk literally in doc strings
2468         * lisp/bookmark.el (bookmark-save-flag, bookmark-load): Don't
2469         mention "~/.emacs.bmk" explicitly as the default bookmark file in
2470         the doc strings.  (Bug#23350)
2472 2016-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2474         * etc/NEWS: Explain why multicolor font display is disabled on OS X Cocoa.
2476 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2478         Port to Ubuntu 16.04 --enable-gcc-warnings
2480         * src/image.c (gif_load) [HAVE_GIF]: Fix pointer signedness problem.
2482 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2484         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
2486 2016-06-19  Tino Calancha  <f92capac@gmail.com>
2488         Don't kill ~/ if it's the top level directory
2490         * lisp/dired-aux.el (dired-kill-subdir): Don't kill ~/ if it's
2491         the top level directory (bug#23017).
2493 2016-06-19  Tino Calancha  <f92capac@gmail.com>  (tiny change)
2495         describe-char: fix insert char documentation
2497         * lisp/descr-text.el (describe-char):
2498         Only 'ucs-names' entries can be inserted by unicode name (Bug#23325).
2500 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
2502         (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
2504         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use `substring'
2505         instead of `replace-regexp-in-string', because REV can be nil
2506         (e.g. when FILE is a directory, bug#23344), and we actually know
2507         we only need the first 4 characters.
2509 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
2511         Bump version to 25.0.93
2513         * README:
2514         * configure.ac:
2515         * msdos/sed2v2.inp: Bump Emacs version to 25.0.93.
2517 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
2519         * etc/AUTHORS: Update the AUTHORS file
2521         * admin/update_autogen: Use #!/usr/bin/env bash
2523         * admin/authors.el (authors-ignored-files): Additions.
2525 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
2527         In x_set_window_size restore do_pending_window_change calls
2529         * src/xterm.c (x_set_window_size):
2530         * src/w32term.c (x_set_window_size): Restore
2531         do_pending_window_change calls after their stupid removal on
2532         2015-08-31.
2534 2016-06-19  Ilya Zakharevich  <ilya@math.berkeley.edu>
2536         Fix Alt-modified keys on some European MS-Windows keyboards
2538         * src/w32fns.c (deliver_wm_chars): If the reported character is
2539         ASCII, AND Meta modifier is a candidate, behave as if Meta is
2540         present, i.e. fall back to the legacy code.  (Bug#23251)
2542 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2544         Document 'help-go-forward'
2546         * doc/emacs/help.texi (Help Mode): Document and index
2547         'help-go-forward'.  (Bug#23323)
2549 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2551         Revert "Allow to customize names of executables used by grep.el"
2553         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
2555 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2557         Revert "Don't use 'find-program'"
2559         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
2561 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2563         Revert "Use 'grep-find-program' in check-declare.el"
2565         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
2567 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2569         Clarify documentation of 'dired-mark-files-containing-regexp'
2571         * doc/emacs/dired.texi (Marks vs Flags): Clarify that for files
2572         visited in buffers, 'dired-mark-files-containing-regexp' searches
2573         the buffer rather than the file on disk.  (Bug#22694)
2575         * lisp/dired.el (dired-mark-files-containing-regexp): Clarify that
2576         for files visited in buffers, 'dired-mark-files-containing-regexp'
2577         searches the buffer rather than the file on disk.  (Bug#22694)
2579 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2581         Make tmm-menubar work in correct order again
2583         * lisp/tmm.el (tmm-prompt): Don't reverse 'tmm-km-list' right at the
2584         beginning; instead, pass a reversed copy to 'tmm--completion-table'.
2585         (Bug#23309)
2586         (tmm-menubar): Fix an off-by-one error in determining the menu
2587         item when the function is called with a non-nil 'x-position'
2588         argument.
2590 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
2592         Remove the Meta-CVS VC backend
2594         * lisp/obsolete/vc-mcvs.el: Remove the file (bug#20475).
2596         * lisp/vc/log-view.el (log-view-extract-comment): Remove the MCVS
2597         reference.
2599         * doc/misc/efaq-w32.texi (Version control): Same.
2601 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
2603         Fix Bug#23276
2605         * lisp/autorevert.el (auto-revert-handler): Ignore errors
2606         coming from `revert-buffer'.  (Bug#23276)
2608 2016-06-19  Reto Zimmermann  <reto@gnu.org>
2610         Sync with upstream vhdl mode v3.38.1.
2612         * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
2613         (vhdl-mode): No longer set comment-padding.
2614         (vhdl-begin-p): Handle missing space between keyword and parenthesis.
2615         (vhdl-beginning-of-statement-1): Fix indentation for "else generate".
2616         (vhdl-template-else, vhdl-template-elsif): Support generate statement.
2617         (vhdl-re-search-forward, vhdl-re-search-backward): Save match data.
2619 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2621         Tweak configure.ac syntax in recent module patch
2623         * configure.ac: Use proper Autoconf parenthesization in
2624         recent HAVE_MODULES patch.  Although this doesn’t fix any bugs,
2625         the previous syntax was confusing.
2627 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2629         Port to GCC 5.3.1 20160406 (Red Hat 5.3.1-6)
2631         * src/indent.c (Fvertical_motion): Pacify --enable-gcc-warnings
2632         when using the April 6 Fedora patch to GCC.
2634 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
2636         Make sh-electric-here-document-mode accessible in sh-mode-hook. (Bug#3226)
2638         * lisp/progmodes/sh-script.el (sh-mode-hook): Add
2639         sh-electric-here-document-mode as an option and the default value.
2640         (sh-mode): Mention sh-mode-hook in docstring.
2641         (sh-mode): Remove sh-electric-here-document-mode invocation.
2643 2016-06-19  Glenn Morris  <rgm@gnu.org>
2645         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
2647 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
2649         Make use of rectangle-preview custom variable.
2651         lisp/rect.el (rectangle--string-preview): Only create a preview if
2652         rectangle-preview is non-nil (Bug#23248).
2654 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
2656         Make use of rectangle-preview face.
2658         * lisp/rect.el (rectangle--string-preview):
2659         (rectangle--highlight-for-redisplay): Replace 'region with
2660         'rectangle-preview (Bug#23248).
2662 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2664         Use 'grep-find-program' in check-declare.el
2666         * lisp/emacs-lisp/check-declare.el (check-declare-directory): Use
2667         'grep-find-program', not 'find-program'.
2669 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2671         Improve "C-h S" for cl-lib symbols
2673         * lisp/info-look.el: Add cl.info lookup to emacs-lisp-mode related
2674         manuals.  (Bug#23289)
2676 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2678         Fix minor issues with removing left or right fringes
2680         * lisp/window.el (window-max-chars-per-line): Account for
2681         'left-fringe-width' and 'right-fringe-width' variables.
2683         * doc/lispref/windows.texi (Window Sizes): Document the effect on
2684         window text width when setting the width of one or both fringes to
2685         zero.
2686         * doc/emacs/display.texi (Fringes): Document the effect on window
2687         text width when setting the width of one or both fringes to zero.
2688         (Bug#22891)
2690 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2692         Speed up redisplay in ansi-term mode
2694         * lisp/term.el (ansi-term): Force L2R 'bidi-paragraph-direction'.
2695         (Bug#20611)
2697 2016-06-19  Philipp Stephani  <phst@google.com>
2699         Simplify 8-bit character handling by terminal for 'raw-text'
2701         * lisp/international/mule.el (set-keyboard-coding-system): Treat
2702         'raw-text' as another coding type that requires 8-bit characters.
2703         * lisp/xt-mouse.el (xterm-mouse--read-coordinate): Use 'no-conversion'
2704         instead of 'latin-1'.
2706 2016-06-19  Glenn Morris  <rgm@gnu.org>
2708         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
2710 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2712         Fix w32 memory-management problem when extending buffer text
2714         * src/w32heap.c (mmap_realloc): Only attempt extending a region if
2715         the following region has the same allocation base.  Also, use the
2716         original allocation base and enlarged size to commit reserved
2717         memory, to ensure that the allocation base stays at its original
2718         value.  This fixes several hard-to-debug problems whereby part of
2719         buffer text was overwritten with binary nulls, because
2720         mmap_realloc copied only part of buffer text when extending it.
2721         See
2722         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00325.html
2723         and http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#55 for two
2724         examples of the related problems.
2726 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
2728         Fix Bug#20637.  Do not merge to master
2730         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
2731         Use `vc-backend' instead of `vc-responsible-backend'.  (Bug#20637)
2733         * test/automated/vc-tests.el (vc-test--state)
2734         (vc-test--working-revision): Deactivate now failing checks.
2736 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2738         substitute-command-keys keeps quotes’ text props
2740         Problem reported by Clément Pit--Claudel (Bug#23254).
2741         * src/doc.c: Include intervals.h.
2742         (Fsubstitute_command_keys): If the only substitutions are for
2743         quotes, copy the source string’s text properties too, since no
2744         substring lengths have changed.
2746 2016-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2748         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
2750 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
2752         Add semantic-symref-filepattern-alist entry for lisp-interaction-mode
2754         * lisp/cedet/semantic/symref/grep.el
2755         (semantic-symref-filepattern-alist):
2756         Add entry for lisp-interaction-mode
2757         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#47)
2759 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
2761         Perform xref searches without visiting unopened files
2763         * lisp/progmodes/xref.el (xref-collect-references): Instead of
2764         calling `semantic-symref-find-references-by-name', use
2765         `semantic-symref-instantiate' and `semantic-symref-perform-search'
2766         directly.  Ask for `line-and-text' results (bug#23223).
2767         (xref-collect-matches): Include the line text in the "hit"
2768         structure.
2769         (xref--convert-hits): New function, split off from
2770         `xref-collect-references' and `xref-collect-matches', to convert
2771         "hits" to xref instance list.  Create a temporary buffer here, to
2772         use it for post-processing all hit lines.
2773         (xref--collect-matches): Use a different approach for non-visited
2774         files.  Insert the line text into the temp buffer, apply the
2775         file's major mode the best we can without reading its whole
2776         contents, syntax-propertize, and search in the result.
2777         (xref--collect-matches-1): Extract, to handle the common logic
2778         between two cases.
2779         (xref--find-buffer-visiting): New function, a wrapper around
2780         `find-buffer-visiting' to amortize its cost.
2782         * lisp/cedet/semantic/symref/idutils.el
2783         (semantic-symref-idutils--line-re): New constant.
2784         (semantic-symref-parse-tool-output-one-line): Support result type
2785         `line-and-text'.
2787         * lisp/cedet/semantic/symref/grep.el
2788         (semantic-symref-grep--line-re)
2789         (semantic-symref-parse-tool-output-one-line): Same.
2791         * lisp/cedet/semantic/symref/cscope.el
2792         (semantic-symref-cscope--line-re)
2793         (semantic-symref-parse-tool-output-one-line): Same.
2795         * lisp/cedet/semantic/symref/global.el
2796         (semantic-symref-global--line-re)
2797         (semantic-symref-parse-tool-output-one-line): Same.
2799 2016-06-19  Phillip Lord  <phillip.lord@newcastle.ac.uk>
2801         Revert "Prevent bootstrap autoload backup files"
2803         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
2805 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2807         Improve time zone documentation
2809         * doc/lispref/os.texi (Time Zone Rules):
2810         New section, mostly with material moved here from other sections.
2811         * doc/emacs/cmdargs.texi (General Variables):
2812         * doc/lispref/os.texi (Time Conversion, Time Parsing):
2813         Xref new section.
2814         * etc/NEWS, etc/PROBLEMS:
2815         * lisp/org/org.el (org-timestamp-format):
2816         * src/editfns.c (Fformat_time_string, Fdecode_time)
2817         (Fencode_time, Fcurrent_time_string, Fcurrent_time_zone)
2818         (Fset_time_zone_rule):
2819         When documenting time zone rule strings, mention the TZ
2820         environment variable in preference to mentioning the
2821         sort-of-internal function set-time-zone-rule.
2823 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
2825         Prevent bootstrap autoload backup files
2827          * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
2828            backups in newly created file.
2830           (autoload-ensure-default-file): Function split into two.
2831           (autoload-ensure-file-writeable): New function from split.
2833           (Bug#23203)
2835 2016-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2837         Disable multicolor fonts on OS X since they are not supported on free systems
2839         * src/macfont.m (macfont_list): Don't use color bitmap fonts.
2841 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2843         Capitalize “Universal Time” in documentation
2845         It’s a proper noun.
2846         * lisp/vc/add-log.el (add-log-time-zone-rule): Also, fix typo by
2847         mentioning ‘format-time-string’ instead of ‘set-time-zone-rule’.
2849 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2851         Don't use 'find-program'
2853         * lisp/progmodes/project.el (project-file-completion-table): Use
2854         'grep-find-program', rather than the obsolete 'find-program'.
2856 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2858         Sync with gnulib
2860         This is for picky compilers whose stdint.h fails our C11 tests.
2861         Problem reported for clang by Philipp Stephani (Bug#23261).
2862         This incorporates:
2863         2016-04-11 stdint: port to strict C11 left shift
2864         * doc/misc/texinfo.tex, lib/stdint.in.h: Copy from gnulib.
2866 2016-06-19  Leo Liu  <sdl.web@gmail.com>
2868         Fix last change on 2016-01-02
2870         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Move
2871           `cl-errs-re' before `lisp--el-match-keyword'; don't use `prepend'
2872           which highlights `cl-errs-re' even in comments or strings.
2874 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2876         Port run-prolog EMACS to SWI-Prolog 7.2.3
2878         * lisp/progmodes/prolog.el (prolog-ensure-process):
2879         Work around incompatibility of SWI-Prolog 7.2.3 and earlier
2880         with the new way of dealing with the EMACS and INSIDE_EMACS
2881         environment variables.
2883 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2885         Avoid crashes due to unreasonably large or small text scaling
2887         * lisp/face-remap.el (text-scale-min-amount)
2888         (text-scale-max-amount): New functions.
2889         (text-scale-set, text-scale-increase): Use them to limit the text
2890         scaling to a reasonable range of values.  (Bug#23259)
2892 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2894         Improve documentation of 'with-eval-after-load'
2896         * lisp/subr.el (with-eval-after-load): Doc fix.  (Bug#23258)
2898 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2900         Improve handling of non-ASCII characters in Git log messages
2902         * lisp/vc/vc-git.el (vc-git-commits-coding-system): Now a defcustom.
2903         (vc-git-log-output-coding-system): New defcustom.
2904         (vc-git-print-log, vc-git-command, vc-git--call): Use
2905         'vc-git-log-output-coding-system' for reading stuff from Git.
2906         Don't override values of 'coding-system-for-read/write' if they
2907         are bound by caller -- this allows the user to force an encoding
2908         via "C-x RET c".
2909         (vc-git-checkin): On MS-Windows, pass the log message via a
2910         temporary file, to work around the limitations on passing
2911         non-ASCII characters via command-line arguments.  Force using the
2912         'locale-coding-system' for Git command-line arguments.  This fixes
2913         problems with non-ASCII commit log messages on MS-Windows.
2914         (Bug#23076)
2916         * etc/NEWS: Mention the new vc-git related defcustoms.
2918 2016-06-19  Philipp Stephani  <phst@google.com>
2920         Remove undefined behavior in OS X dumper.
2922         Found by Address Sanitizer.
2924         * src/unexmacosx.c (unexec_write): Use Mach virtual memory API to
2925         avoid undefined behavior when reading arbitrary memory.
2927 2016-06-19  Joakim Verona  <joakim@verona.se>
2929         Fix clipping of xwidgets
2931         * src/xwidget.c (x_draw_xwidget_glyph_string): Use window_box
2932         instead of calculating the clipping borders manually.  Suggested
2933         by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
2935 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2937         Improve Lisp-level documentation of tooltips
2939         * doc/lispref/display.texi (Tooltips): New section.  (Bug#23246)
2940         (Display): Update the chapter menu.
2941         * doc/lispref/text.texi (Special Properties): Make the "tooltip"
2942         index entry more concrete.  Change the cross-reference to point to
2943         "Tooltips" in the ELisp manual.
2944         * doc/lispref/elisp.texi (Top): Update the master menu.
2945         * doc/emacs/frames.texi (Tooltips): Include more customization
2946         variables.  Add a cross-reference to the ELisp manual.
2948 2016-06-19  Glenn Morris  <rgm@gnu.org>
2950         Faces names should not end in "-face".
2952         * lisp/rect.el (rectangle-preview): Rename from rectangle-preview-face.
2953         * lisp/vc/vc-hooks.el (vc-state-base): Rename from vc-state-base-face.
2955 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2957         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
2959 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2961         Comint and compile no longer set EMACS
2963         This mostly restores the change that I reverted on March 23,
2964         fixing most of Bug#20202.  The only part of the change that is
2965         still reverted is the change to M-x term, where compatibility with
2966         current Bash constrains us from moving too quickly (Bug#20484).
2967         Problem reported by Phillip Lord in: http://bugs.gnu.org/20484#108
2968         * etc/NEWS: Document this.
2969         * lisp/comint.el (comint-exec-1):
2970         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
2971         * lisp/progmodes/compile.el (compilation-start):
2972         Don’t set EMACS=t in the subsidiary process.
2974 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
2976         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
2978 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2980         Allow to customize names of executables used by grep.el
2982         * lisp/progmodes/grep.el (grep-find-program): Renamed from
2983         'find-program', which was a variable.  All uses changed.
2984         (grep-xargs-program): Renamed from 'xargs-program', which was a
2985         variable.  All uses changed.
2986         (grep-program): Now a defcustom rather than a simple variable.
2987         (Bug#23219)
2989 2016-06-19  Alan Third  <alan@idiocy.org>
2991         Set locale encoding to UTF-8 when run from OS X GUI.
2993         * src/nsterm.m (ns_init_locale): Append .UTF-8 when setting LANG.
2995 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2997         Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
2999         * lisp/ffap.el (ffap-guess-file-name-at-point): Ignore errors
3000         while 'ffap-guesser' runs.  (Bug#23218)
3002 2016-06-19  Marcin Borkowski  <mbork@mbork.pl>
3004         Avoid infinite loop in 'studlify-word'
3006         * lisp/play/studly.el (studlify-region): Call
3007         'forward-word-strictly' and 'backward-word-strictly' instead of
3008         'forward-word' and 'backward-word'.  (Bug#19940)
3010 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3012         Don’t recommend obsolete EMACS env var
3014         * doc/misc/efaq.texi (Escape sequences in shell output):
3015         Remove long-obsolete (and now-confusing) notes about
3016         the EMACS environment variable in Emacs 21.1 and earlier.
3017         * doc/misc/efaq.texi (^M in the shell buffer):
3018         * etc/PROBLEMS:
3019         Remove obsolescent recommendation to consult the EMACS environment
3020         variable.
3022 2016-06-19  Glenn Morris  <rgm@gnu.org>
3024         * lisp/emacs-lisp/package.el: Change from a few days ago needs seq.
3026         * lisp/emacs-lisp/seq.el: Load cl-lib, not cl-extra.
3028 2016-06-19  Leo Liu  <sdl.web@gmail.com>
3030         Fix "Beginning of buffer" error in forward-page
3032         * lisp/textmodes/page.el (forward-page): Check before move to prevent
3033           "Beginning of buffer" error.
3035 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3037         Add a `transient' project type
3039         * lisp/progmodes/project.el (project-roots): Implement for the
3040         `transient' project type (bug#23224).
3041         (project-current): Instead of signaling an error, return a
3042         transient project instance rooted in the chosen directory.
3044 2016-06-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3046         Revert "Backport HTTPS proxy fix"
3048         This reverts commit 2d1a6054b161bd1055d4feb11c8c5ac95543f5db.
3050         It's too late in the Emacs 25 release cycle to add things like this to
3051         Emacs 25.1.  It's border line new feature.
3053 2016-06-19  Tao Fang  <fangtao0901@gmail.com>
3055         Backport HTTPS proxy fix
3057         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
3059         Backport:
3061 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3063         Fix stability confusion in sort-tests
3065         Problem reported by Philipp Stephani (Bug#23205).
3066         * test/automated/sort-tests.el:
3067         (sort-tests--insert-words-sort-and-compare):
3068         Don’t assume that reversing a sorted list is the same
3069         as sorting with the reverse predicate.  This is not true
3070         for stable sorts when items compare equal.
3072 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3074         Avoid describe-key error with lambdas
3076         Problem reported by Sho Takemori (Bug#22716).
3077         * lisp/cedet/mode-local.el (describe-mode-local-overload)
3078         (xref-mode-local-overload): Use function-overload-p instead
3079         of assuming the argument is a symbol.
3081 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
3083         * lisp/emacs-lisp/package.el (package-install-selected-packages):
3085         Skip unavailable packages.
3087 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3089         Sync with gnulib
3091         This incorporates:
3092         2016-04-03 stdint: detect good enough pre-C++11 stdint.h in C++ mode
3093         2016-04-01 stddef: support configuring with g++
3094         * doc/misc/texinfo.tex, lib/stddef.in.h, m4/stdint.m4:
3095         Copy from gnulib.
3097 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3099         Fix doc for Universal Time
3101         * doc/lispref/os.texi (Time of Day, Time Conversion):
3102         Be more careful about distinguishing UTC (which is not valid for
3103         pre-1961 time stamps) and UT (which is).
3104         (Time Parsing): Remove stray obsolete paragraph about a
3105         UNIVERSAL argument for ‘format-time-string’.
3107 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
3109         Handle Bug#23186
3111         * lisp/net/tramp.el (tramp-encoding-command-switch)
3112         (tramp-encoding-command-interactive):
3113         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
3114         `tramp-encoding-shell' could be nil.  (Bug#23186)
3116 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3118         More format-time-string change fixups
3120         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
3121         * lisp/org/org.el (org-timestamp-format):
3122         Fix doc to match new format-time-string behavior.
3123         * lisp/org/ox-icalendar.el (org-icalendar-convert-timestamp):
3124         Use (not (not X)) to treat non-nil values of utc arg as UTC.
3126 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3128         make-xwidget unused arg cleanup
3130         * doc/lispref/display.texi (Xwidgets): Remove stray refs.
3131         * src/xwidget.c (syms_of_xwidget): Qwebkit, not Qwebkit_osr.
3133 2016-06-19  Joakim Verona  <joakim@verona.se>
3135         Remove unused arguments from make-xwidget
3137         The arguments BEG and END were unused, and are now removed.
3139         * doc/emacs/display.texi (Xwidgets): Document the change
3140         * lisp/xwidget.el (make-xwidget, xwidget-insert)
3141         (xwidget-webkit-new-session): Reflect changed arguments
3142         * src/xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments
3144 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3146         Document incompatible changes in 'format-time-string'
3148         * etc/NEWS: Mention the incompatible change in the interpretation
3149         of the 3rd argument to 'format-time-string'.  (Bug#21943)
3151 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3153         Improve documentation of byte-code objects
3155         * doc/lispref/compile.texi (Byte-Code Objects): Document the
3156         integer format of the argument descriptor.  (Bug#23061)
3158 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3160         Adapt calls to 'format-time-string' to changes in Emacs 25
3162         * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): Use t as the
3163         last argument to format-time-string.  (Bug#23128)
3164         * lisp/gnus/gmm-utils.el (gmm-format-time-string): Use t as the
3165         last argument to format-time-string, when the TZ argument is not a
3166         number, per the doc string.
3168 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3170         Improve vc-diff with Git backend
3172         * lisp/vc/vc-git.el (vc-git-command): Don't override
3173         coding-system-for-read/write if they are already bound.
3174         Suggested by joaotavora@gmail.com (João Távora).  (Bug#20892)
3175         (vc-git-print-log): Don't override coding-system-for-read if it's
3176         already bound.
3178 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3180         (js--continued-expression-p): Special-case unary plus and minus
3182         * lisp/progmodes/js.el (js--continued-expression-p): Make an
3183         effort to recognize unary plus and minus, in the contexts where
3184         they make sense (https://github.com/mooz/js2-mode/issues/322).
3186 2016-06-19  Alan Mackenzie  <acm@muc.de>
3188         Prevent C++ Mode wrongly fontifying some identifiers near templates as types
3190         This fixes debbugs #7917.
3192         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): Accept 'maybe
3193         (from c-forward-type) as sufficient to record an id.  Record type id as well
3194         as ref ids.
3195         (c-forward-name): Bind c-last-identifier-range around the call to
3196         c-forward-<>-arglist to prevent it getting corrupted.  Don't automatically
3197         assume an identifier is a type when a template ">" is followed by a "(".
3198         (c-forward-type): Don't automatically assume an identifier is a type when a
3199         template ">" is followed by a "(".
3201         * lisp/progmodes/cc-fonts.el (c-font-lock-<>-arglists): Don't fontify an
3202         identifier as a type when its associated ">" is followed by a "(".
3204 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3206         Avoid crashes due to insanely large columns in tabulated-list-format
3208         * src/xdisp.c (append_stretch_glyph, produce_xwidget_glyph)
3209         (produce_image_glyph): Limit the pixel width of the produced glyph
3210         to SHRT_MAX.  (Bug#23178)
3211         (append_composite_glyph, append_glyph, append_glyphless_glyph):
3212         Add assertions to verify that the pixel width of the glyph will
3213         never overflow a 'short'.
3214         * src/term.c (append_composite_glyph): Add assertion to verify
3215         that the pixel width of the glyph will never overflow a 'short'.
3217 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
3219         Teach M-x disassemble a default argument.
3221         Adopts default argument in the same way as `describe-function'.
3222         * lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
3223         if any.
3225 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3227         Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
3229         * lisp/vc/vc-annotate.el (vc-annotate): Force DOS EOL decoding on
3230         MS-Windows and MS-DOS, when processing the output of "svn annotate".
3232 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
3234         Fix OS X specific settings in tramp-tests
3236         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
3238         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
3240         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
3241         (tramp--test-utf8): Improve settings of coding systems.
3242         Do not use `tramp--test-darwin-p' anymore.  (Bug#22145)
3244 2016-06-19  Alan Mackenzie  <acm@muc.de>
3246         Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
3248         * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
3249         superfluous invocations of c-self-bind-state-cache.
3251         * lisp/progmodes/cc-defs.el: (c-self-bind-state-cache): Copy and terminate
3252         markers correctly.
3254         * lisp/progmodes/cc-engine.el (c-record-parse-state-state): Terminate stale
3255         markers.
3257 2016-06-19  Alan Mackenzie  <acm@muc.de>
3259         Merge branch 'emacs-25' of /home/acm/emacs/emacs.git/emacs-25 into emacs-25
3261 2016-06-19  Xue Fuqiao  <xfq.free@gmail.com>
3263         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
3265         The example was removed by Chong Yidong on Mar 5, 2012.
3267 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3269         * doc/man/emacsclient.1: Document +line:column option.
3271 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3273         Fix rare problems with echo-area display and multiple frames
3275         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
3276         around the call to x_consider_frame_title, to prevent
3277         resize_mini_window from undoing echo-area display.  (Bug#23124)
3279 2016-06-19  Alan Mackenzie  <acm@muc.de>
3281         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
3283         This would happen when that variable already has a buffer local binding.  Such
3284         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
3286         * lisp/replace.el (query-replace-read-from): Move the binding of
3287         text-property-default-nonsticky to inside of a new with-current-buffer buffer
3288         form with the minibuffer as argument.
3290 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3292         Remove prog-indentation-context
3294         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
3295         (prog-first-column, prog-widen): Remove, as discussed in
3296         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
3298         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
3299         to them.
3301         * etc/NEWS: Ditto.
3303         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
3304         Remove the compatibility aliases and all uses.
3306         Do not merge to master.
3308 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3310         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
3312 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3314         Don't start the 'midnight' timer twice
3316         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
3317         timer twice when activating the mode the first time.  (Bug#23123)
3319 2016-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3321         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
3323 2016-06-19  Stephen Berman  <stephen.berman@gmx.net>
3325         Fix todo-mode category movement
3327         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
3328         category's existing categories sexp instead of invoking
3329         todo-update-categories-sexp in file moved to, in order to take
3330         archived items into account.  If the moved category has archived
3331         items, handle the source archive buffer properly.  Remove
3332         superfluous code.
3334 2016-06-19  Glenn Morris  <rgm@gnu.org>
3336         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
3338 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3340         Ignore non-nil. non-cons values of unread-command-events
3342         * src/keyboard.c (requeued_events_pending_p, read_char)
3343         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
3344         unread command events to be processed.  (Bug#22976)
3346 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3348         Improve documentatuon of 'truncate-partial-width-windows'
3350         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
3351         Clarify in the doc string how the width of partial-width windows
3352         is computed for the purposes of truncation decision.  (Bug#4338)
3354         * doc/emacs/windows.texi (Split Window): Clarify how the width of
3355         windows is calculated for the purposes of truncation decision.
3356         * doc/emacs/display.texi (Line Truncation): Remove a redundant
3357         index entry.
3359 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3361         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
3363 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3365         Fix 'dired-goto-file' in Dired buffers produced by find-dired
3367         * lisp/dired.el (dired-goto-file): Try looking for the file as a
3368         relative name with leading sub-directories, before looking for the
3369         basename alone.  (Bug#23089)
3371 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
3373         Fix map-put and map-delete for alists (Bug#23105)
3375         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
3376         expression to a new symbol.
3377         * test/automated/map-tests.el: Add a regression test.
3379 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3381         Minor copyedits of documentation for temporary displays
3383         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
3384         Minor changes in wording.
3385         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
3386         index entries for 'display-buffer'.
3388         * etc/NEWS: Minor rewording of the entry about temporary displays.
3390 2016-06-19  Philipp Stephani  <phst@google.com>
3392         Add customization option for using UTF-8 coordinates in xt-mouse
3394         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
3395         (xterm-mouse--read-coordinate): New function to replace
3396         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
3397         (xterm-mouse--read-number-from-terminal): Adapt to new name.
3398         (xterm-mouse-tracking-enable-sequence)
3399         (xterm-mouse-tracking-disable-sequence): Replace constants with
3400         functions, mark constants as obsolete.
3401         (xterm-mouse--tracking-sequence): New helper function.
3402         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
3403         enable UTF-8 only if customization option says so; store UTF-8
3404         flag in terminal parameter.  (Bug#23009)
3406         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
3408 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3410         Minor doc string fixes in replace.el
3412         * lisp/replace.el (query-replace, query-replace-regexp)
3413         (query-replace-regexp-eval, map-query-replace-regexp)
3414         (replace-string, replace-regexp): Clarify in doc strings that
3415         these commands operate from point to the end of the buffer's
3416         accessible portion.  (Bug#23067)
3418 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3420         Fix scrolling upwards with 'xwidget-webkit-browse-url'
3422         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
3423         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
3424         (Bug#22918)
3426 2016-06-19  K. Handa  <handa@gnu.org>
3428         Fix display of Indic scripts
3430         * src/ftfont.c (ftfont_shape_by_flt): For combining characters out
3431         of the range U+300...U+36F, use the "combining" FLT only with
3432         non-OTF fonts.
3434 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3436         Fix splash screen display at startup
3438         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
3439         window displayed by "emacs -q" has enough space to show the whole
3440         text even if it includes 2 lines talking about recovering crashes
3441         sessions.  (Bug#23074)
3443         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
3444         error when computing the window-height from frame-height.
3446         * etc/NEWS: Mention the change.
3448 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
3450         Describe temporary displays in Emacs manual
3452         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
3453         * doc/emacs/windows.texi (Window Choice): Minor fixes.
3454         (Temporary Displays): New subsubsection describing display of
3455         temporary buffers and `temp-buffer-resize-mode'.
3457 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3459         Avoid stray As next to IDLW icons
3461         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
3462         Use "" for empty labels, not "a", as the latter now displays stray
3463         "A"s (Bug#18997).
3465 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3467         Avoid GTK 3 crash with icons and masks
3469         Problem reported by Mosè Giordano (Bug#18997).
3470         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
3471         (xg_get_pixbuf_from_pix_and_mask): Do not use
3472         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
3473         invoke XGetPixel directly.  This is slow but speed is not
3474         important here.  Also, fail for unusual situations (not TrueColor,
3475         or images that are not 8 bits per sample) instead of displaying
3476         junk or crashing.
3478 2016-06-19  Juri Linkov  <juri@linkov.net>
3480         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
3482         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
3484 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3486         Define make_save_ptr_ptr unconditionally
3488         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
3489         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
3490         Philipp Stephani <phst@google.com>.  (Bug#23101)
3492 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3494         Preserve current buffer when popping up TTY menus
3496         * src/term.c (tty_menu_show): Be sure to save and restore the
3497         current buffer around TTY menu pop-ups.  (Bug#23101)
3499 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3501         Improve font selection by family on MS-Windows
3503         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
3504         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
3505         This avoids rejecting many font families whose members are shown
3506         by 'font-family-list', in particular 'courier' requested by
3507         info.el.  Without this change, many values of ':family' attribute
3508         of a face have no effect on MS-Windows, because they are rejected
3509         due to bogus mismatch of the charset.
3511 2016-06-19  Paul Eggert  <eggert@penguin.cs.ucla.edu>
3513         Comint, term, and compile now set EMACS
3515         This fixes directory tracking in ansi-term, at the expense of
3516         breaking some usages of 'configure'.  Setting EMACS is meant to be
3517         a somewhat temporary measure, until Bash 4.4 comes out and is
3518         common.  (Bug#20484).
3519         * etc/NEWS: Document this.
3520         * lisp/comint.el (comint-exec-1):
3521         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
3522         * lisp/progmodes/compile.el (compilation-start):
3523         * lisp/term.el (term-exec-1):
3524         Go back to setting the EMACS environment variable, for backward
3525         compatibility to Bash 4.3 and earlier.
3527 2016-06-19  Paul Eggert  <eggert@penguin.cs.ucla.edu>
3529         Ignore more merges when generating ChangeLog
3531         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
3532         not merely those from master and emacs-NN.  The ChangeLog entries
3533         they generate are not that useful.
3535 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3537         Sync with gnulib
3539         This incorporates:
3540         2016-03-22 gitlog-to-changelog: suppress ignored chatter
3541         2016-03-21 sys_select: port to new Cygwin
3542         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
3543         * lib/sys_select.in.h: Copy from gnulib.
3545 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3547         Resurrect GNUS-NEWS autogeneration
3549         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
3550         GNUS-NEWS section to match current file locations and procedure.
3551         * etc/GNUS-NEWS: Regenerate by using new procedure.
3552         * lisp/Makefile.in (update-gnus-news): New rule, containing a
3553         procedure for building GNUS-NEWS.  The old procedure got lost
3554         somehow when Gnus was merged into Emacs.
3556 2016-06-19  Anders Lindgren  <andlind@gmail.com>
3558         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
3560         * src/nsterm.m (ns_screen_margins): New function.
3561         (ns_screen_margins_ignoring_hidden_dock): New function.
3562         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
3563         ([EmacsWindow zoom:]): Take all screen margins (except those
3564         originating from a hidden dock) into account.
3566 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3568         Fix bug in displaying header line with a box face
3570         * src/xdisp.c (get_next_display_element): Handle the case when a
3571         display string acquires the box face from an underlying string,
3572         not from the buffer.  (Bug#23091)
3574 2016-06-19  Kaushal Modi  <kaushal.modi@gmail.com>
3576         Fix an Isearch var to be a string (Bug#23038)
3578         * lisp/isearch.el (isearch--describe-regexp-mode): The `description' var
3579           needs to always be a string.  Add the missing default case for the
3580           cond form that ensures that.
3582         Before this bug fix, for the events when `regexp-function' and
3583         `search-default-mode' both were nil, `description' also stayed nil.  So
3584         when `space-before' was non-nil, the "non-string" `description'
3585         (with a value of nil) got passed as an argument to
3586         `replace-regexp-in-string' (where a string was expected).  That caused
3587         the error described in Bug#23038.
3589 2016-06-19  Leo Liu  <sdl.web@gmail.com>
3591         Fix (args-out-of-range 1) error in cursor-sensor--detect
3593         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
3594           hard-code (point-min) as 1 which fails in narrowed buffers.
3596 2016-06-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3598         Render empty <ul><li><ul> correctly
3600         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
3601         correctly (bug#22964).
3602         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
3604         Backport:
3606 2016-06-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3608         Ignore invalid base64 encoded embedded images
3610         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
3611         encoded embedded images (bug#22928).
3612         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
3614         Backport:
3616 2016-06-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3618         Fix <p> and <div> newlines with or without <li> in shr
3620         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
3621         a <li>, if we are, and don't insert newlines there.
3622         (shr-ensure-paragraph): When mixing newlines and paragraph
3623         ensurements, don't insert too many blank lines.
3624         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
3625         new line.
3626         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
3628         Backport:
3630 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3632         Avoid errors in 'newline'
3634         * lisp/simple.el (newline): Don't barf if invoked with
3635         non-positive argument in the middle of a line.  (Bug#22490)
3637 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
3639         Fix Bug#23032
3641         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
3642         remote file names.  (Bug#23032)
3644 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3646         Adjudicate review comments in abbrevs.texi
3648         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
3649         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
3650         default values of variables.  Suggested by Steve Byrne
3651         <sbb@penguinis.org>.  (Bug#23016)
3653         * admin/release-process (Check manuals): Mark files reviewed by
3654         Steve Byrne.
3656 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3658         Fixup the "normal" matcher; highlight global var symbols, too
3660         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
3661         operator name symbols with the "normal" matcher (it actually
3662         needed updating).  Highlight global variable symbols, too.
3664 2016-06-19  Marcin Borkowski  <mbork@mbork.pl>
3666         Honor prefix arg in doc-view-next-line-or-next-page
3668         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
3669         prefix argument into consideration when continuous scrolling is
3670         not in effect (i.e., by default) (bug#19559).
3672 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3674         Port to strict C99 offsetof
3676         * src/bidi.c (bidi_copy_it):
3677         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
3678         Use only a single identifier as the second argument of offsetof.
3679         Found by using clang -pedantic.
3681 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3683         Port to GTK with strict C11 compiler
3685         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
3686         Cast from function type to void * where the C standard requires this.
3687         This works around a problem in the prototypes for
3688         g_signal_handler_find and g_signal_handlers_block_by_func, which
3689         use gpointer instead of GCallback.  Found by using gcc -pedantic.
3691 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3693         Port to GTK with strict C99 compiler
3695         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
3696         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
3697         * src/emacsgtkfixed.c (EmacsFixedPrivate):
3698         * src/emacsgtkfixed.h (EmacsFixedClass):
3699         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
3701 2016-06-19  Anders Lindgren  <andlind@gmail.com>
3703         Avoid screen artifacts with new OS X visible bell after scrolling
3705         * src/nsterm.m (EmacsBell): Save NSView when displaying the
3706         visible bell and set `needsDisplay' when removed.
3707         (hide_bell): Trace.
3708         (ns_copy_bits): Trace.
3710 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
3712         Suppress some Tramp tests for OSX, do not merge with master
3714         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
3715         (tramp--test-utf8): Use it.  (Bug#22145)
3717 2016-06-19  Glenn Morris  <rgm@gnu.org>
3719         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
3720         Move definitions before use.
3722         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
3724         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
3726 2016-06-19  Glenn Morris  <rgm@gnu.org>
3728         Address compilation warnings due to 2016-01-03 mml refactoring.
3730         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
3731         (message-options-get): Autoload.
3732         (message-options-set): Declare.
3733         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
3734         Simplify default value.
3735         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
3736         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
3737         No longer a need for password-cache.
3739 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
3741         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
3743         (bug#22960).
3745 2016-06-19  Glenn Morris  <rgm@gnu.org>
3747         * lisp/dired-x.el (dired-omit-here-always): Correct error message
3748         for 2016-01-25 change.
3750         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
3751         removed 2016-01-30.
3753         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
3755 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3757         Avoid segfaults due to frame image cache being absent
3759         * src/image.c (cache_image): If the frame doesn't have an image
3760         cache, create it.  (Bug#23028)
3762 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3764         Improve documentation of glyphless-character display
3766         * doc/emacs/display.texi (Text Display): Document and index the
3767         'glyphless-char' face.
3769 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3771         Support safe navigation operator in non-SMIE indentation code
3773         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
3774         Support safe navigation operator in non-SMIE indentation code.
3775         Cherry-picked from
3776         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
3778 2016-06-19  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3780         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
3782         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
3783         assume xsd:base64Binary values are UTF-8 strings.
3784         (soap-decode-xs-basic-type): Likewise.
3785         (soap-invoke): Document xsd:base64Binary handling.
3787 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3789         Fix Ruby's operator precedence
3791         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
3792         Rearrange the smie-precs->prec2 form.
3794 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3796         (ruby-interpolation-inside-another-interpolation): New failing test
3798         * test/automated/ruby-mode-tests.el
3799         (ruby-interpolation-inside-another-interpolation):
3800         New failing test.
3802 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3804         Port to clang 3.7.0 on x86-64
3806         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
3807         not done conditionally.  This helps clang, which needs
3808         -Wunknown-warning-option later when configured with warnings.
3809         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
3810         smart enough to figure this out on its own if warnings are enabled.
3811         (lisp_time_struct): Redo for clarity, and to pacify clang.
3812         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
3813         uninitialized locals.  This avoids undefined behavior and pacifies
3814         clang.
3816 2016-06-19  Glenn Morris  <rgm@gnu.org>
3818         * test/automated/package-test.el (package-test-signed): Tweak skip
3819         condition, for hydra.
3821 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3823         Sync with gnulib
3825         This incorporates:
3826         2016-03-15 time_rz: port to clang -Wunused-const-variable
3827         2016-03-15 select: port more to Intel 2016.1.150 compiler
3828         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
3830 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3832         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
3834         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
3835         nil.
3837         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
3838         loading window.el.  (Bug#22975)
3840 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3842         Do not tokenize a comment before continuation as ';'
3844         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
3845         Account for a comment right after point.
3847 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3849         Don't misindent arguments of a method call inside continuation
3851         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
3852         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
3853         Simplify the traversal loop.
3855 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
3857         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
3859         (read_key_sequence): Test it here, as before.
3860         (bug#22825).
3862 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3864         ASCII-only etc/NEWS etc.
3866         * etc/NEWS, nextstep/README: Revert the recently-added curved
3867         quotes, and stick to ASCII.  This typically involves replacing
3868         curved with straight quotes.  Since etc/NEWS is viewed so often by
3869         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
3870         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
3872 2016-06-19  Alan Mackenzie  <acm@muc.de>
3874         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
3876         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
3878         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
3879         rather than just using the cache variable c-state-cache.
3880         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
3881         to c-parse-state from other uses of the parse state cache.
3883         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
3884         c-self-bind-state-cache around the processing, replacing flawed bindings of
3885         c-state-cache.
3887 2016-06-19  Alan Mackenzie  <acm@muc.de>
3889         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
3891         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
3893         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
3894         rather than just using the cache variable c-state-cache.
3895         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
3896         to c-parse-state from other uses of the parse state cache.
3898         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
3899         c-self-bind-state-cache around the processing, replacing flawed bindings of
3900         c-state-cache.
3902 2016-06-19  Kaushal Modi  <kaushal.modi@gmail.com>
3904         Fix Isearch prompt when invoked with an argument
3906         * lisp/isearch.el (isearch--describe-regexp-mode): With
3907         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
3908         now displays "Regexp I-search: " again.  But if the user has set
3909         `search-default-mode' to t, and then does C-s, the minibuffer now
3910         displays "I-search: " because the default search mode is now regexp
3911         mode.  Comments have been added to explain the priority of conditions
3912         in the `cond' form.  (Bug#22991)
3914 2016-06-19  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
3916         Fix a typo in the Emacs manual
3918         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
3919         in a command name.
3921 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3923         Curved quotes in etc/NEWS etc.
3925         * etc/NEWS, nextstep/README: Prefer curved quotes in the
3926         recently-changed text documentation.  See:
3927         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00860.html
3929 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3931         Fix some single quotes in documentation
3933         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
3934         when documenting quoting styles.
3935         * etc/NEWS, nextstep/README: In these plain text files, quote
3936         'like this' consistently, rather than also (sometimes) ‘like this’
3937         or (more often) `like this'.
3939 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3941         Make lisp-completion-at-point's argument optional
3943         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
3944         the argument optional, like it was before the rename.
3946 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3948         Tweak the left precedence of '=>'
3950         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
3951         precedence of '=>', to improve indentation and sexp navigation.
3953 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3955         Indent '.' relative to the first sibling expression
3957         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
3958         Indent '.' relative to the first sibling expression, instead of the
3959         parent token (bug#17213).
3961 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3963         Make '.' associative, for easier sexp navigation
3965         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
3966         Make '.' associative, for easier sexp navigation.
3968 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
3970         Revert "Simplify "Visit New File" to "New File""
3972         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
3974 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
3976         Simplify "Visit New File" to "New File"
3978         * doc/emacs/files.texi, lisp/menu-bar.el (menu-bar-file-menu),
3979           lisp/startup.el(normal-mouse-start-screen,
3980           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
3981           File".
3983 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3985         Update Unicode notes for importing a new Unicode version
3987         * admin/notes/unicode: Mention the need to update otf-script-alist
3988         in fontset.el when importing data files from a new Unicode
3989         version.
3991 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3993         Import new data files from Unicode 9.0.0beta
3995         * admin/unidata/UnicodeData.txt:
3996         * admin/unidata/Blocks.txt:
3997         * admin/unidata/BidiMirroring.txt:
3998         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
3999         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
4000         'coding-system-for-read' to 'utf-8, as various Unicode data files
4001         now actually use non-ASCII characters.
4002         (unidata-setup-list, unidata-get-name): Support the new Tangut
4003         Ideographs block.
4005         * lisp/international/characters.el (standard-case-table): Add new
4006         characters from Unicode 9.0.0.
4007         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
4008         Cyrillic Extended-C block.
4009         (char-width-table): Update ranges per Unicode 9.0.0.
4010         * lisp/international/fontset.el (script-representative-chars): Add
4011         new scripts defined by Unicode 9.0.0.
4012         (otf-script-alist): Add new OTF script tags.
4013         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
4014         Unicode 9.0.0 additions.
4016 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4018         Avoid errors in forms-mode when default major mode is text
4020         * lisp/forms.el (forms-mode): Bind
4021         change-major-mode-with-file-name to nil when calling
4022         set-visited-file-name.  (Bug#22982)
4024 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4026         Avoid crashes at startup on systems that CANNOT_DUMP
4028         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
4029         boolean variable.
4030         (init_iterator, reseat_to_string)
4031         (Fcurrent_bidi_paragraph_direction)
4032         (Fbidi_find_overridden_directionality): Use
4033         redisplay--inhibit-bidi instead of purify-flag, to determine when
4034         it's safe to reorder bidirectional text.
4036         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
4037         beginning of the file.  Reset to nil when charprop.el is
4038         successfully loaded, or when we are going to dump, whichever
4039         happens last.  (Bug#22975)
4041 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4043         Fix documentation of seq.el functions
4045         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
4046         cross-references.  Fix formatting.  (Bug#22992)
4048 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4050         Support Ruby 2.3.0's safe navigation operator
4052         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
4053         (ruby-smie--backward-token): Tokenize '&.' as '.'.
4054         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
4056         * test/indent/ruby.rb: Add an example using safe navigation
4057         operator.  Fix a syntax error in existing example.
4059 2016-06-19  John Wiegley  <johnw@newartisans.com>
4061         Update Emacs manual section related to character folding
4063         * doc/emacs/search.texi: Character folding is not on by default.
4065 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4067         Update admin/notes/unicode
4069         * admin/notes/unicode: Update the list of files from the UCD we
4070         are using.  Mention the possible need to change 'ucs-names' when
4071         importing a new version of the Unicode Standard.
4073 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4075         Add symref-filepattern entries for c?perl-mode
4077         * lisp/cedet/semantic/symref/grep.el
4078         (semantic-symref-filepattern-alist): Add entries for perl-mode and
4079         cperl-mode.
4081 2016-06-19  Ken Raeburn  <raeburn@raeburn.org>
4083         Don't use XRANDR 1.3 extensions if the server doesn't support them.
4085         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
4086         version number.
4087         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
4088         after querying the X server.
4089         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
4090         XRRGetScreenResourcesCurrent if the server doesn't support at least
4091         RANDR version 1.3.  Conditionalize the code blocks on compiling
4092         against library version 1.3 or better, rather than feature tests for
4093         each function.
4094         * configure.ac: Stop testing for those two functions.
4096 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4098         Sync with gnulib
4100         This incorporates:
4101         2016-03-08 intprops: make .h file license match module
4102         2016-03-08 acl: fix missing return on Cygwin
4103         2016-03-05 extern-inline: port to PGI CC
4104         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
4105         * m4/extern-inline.m4:
4106         Copy from gnulib.
4108 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4110         Rework C source files to avoid ^(
4112         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
4113         at the start of a line unless it starts a function.  This change
4114         is a short-term hack; in the longer run we plan to fix cc-mode’s
4115         performance for C files that have ‘(’ at the start of a line in a
4116         comment or string.
4118 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4120         By default, etags produces unqualified Perl tag names
4122         * lib-src/etags.c (Perl_functions): Produce unqualified names,
4123         unless -Q was specified.
4124         (print_help): Update the description of -Q.
4126         * doc/man/etags.1: Update the documentation of -Q.
4128         * test/etags/ETAGS.good_1:
4129         * test/etags/ETAGS.good_2:
4130         * test/etags/ETAGS.good_3:
4131         * test/etags/ETAGS.good_4:
4132         * test/etags/ETAGS.good_5:
4133         * test/etags/CTAGS.good: Adapt the expected test results to the
4134         changed Perl functionality.
4136 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4138         Indent methods with keyword names correctly
4140         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
4141         Rename to ruby-smie--before-method-name.  Now also check if we're
4142         after a 'def' keyword.  Update both callers.
4144 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4146         Propertize character literals and special global variables differently
4148         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
4149         character literals and global variables with special names with
4150         prefix and symbol syntax classes, for SMIE to tokenize them
4151         together automatically.
4152         (ruby-font-lock-keywords): Fix an old regression in highlighting
4153         character literals.
4155 2016-06-19  John Wiegley  <johnw@newartisans.com>
4157         Change how /etc/NEWS presents character folding
4159         * NEWS: Note that character folding is no longer the default.
4161 2016-06-19  John Wiegley  <johnw@newartisans.com>
4163         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
4165         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
4167 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
4169         Properly handle lambda as read function (bug 22961)
4171         * src/lread.c (readchar): Be more strict about checking for
4172         string in cons for read_vector.
4173         (unreadchar): Likewise.
4175 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4177         Propertize operator symbol names with symbol syntax class
4179         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
4180         Do it here.
4181         (ruby-font-lock-keywords): Instead of handling them here.  Leave
4182         highlighting them to the "normal" matcher, because now we can.
4183         (ruby-smie--forward-token, ruby-smie--backward-token):
4184         Likewise, don't special-case operator symbols anymore.
4185         (ruby-smie--args-separator-p): Simplify the regexp, match operator
4186         names with \s_.
4187         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
4188         at EOL the same way: check if the character has been assigned the
4189         symbol syntax class by syntax-propertize.
4191 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4193         Stop recognizing :#{} as symbol in ruby-mode
4195         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
4196         the weird part that recognized colon followed by interpolation
4197         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
4198         syntax error in any modern version of Ruby.  Fix nearby bug reference.
4200 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4202         Allow using the left shift operator without spaces on both sides
4204         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
4205         ruby-verify-heredoc, reverse the meaning of the return value, and
4206         short-circuit if preceded by a symbol not separated by whitespace.
4208         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
4209         (ruby-no-heredoc-class-self): New tests.
4211 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
4213         Properly handle unquoting in wdired (bug 22938)
4215         The recorded old names are not quoted, don't unquote them.
4217         * lisp/wdired.el (wdired-normalize-filename): Add argument
4218         unquotep, only unquote if non-nil.
4219         (wdired-get-filename): Don't unquote the old file name.
4220         (wdired-get-previous-link): Always unquote.
4222 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4224         Allow splat operator before percent literal
4226         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
4227         Allow splat operator before percent literal.
4229 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4231         Don't apply the return value of goto-char as syntax class
4233         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
4234         apply the return value of goto-char as syntax class.
4236 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4238         Guard against nested percent literals
4240         * lisp/progmodes/ruby-mode.el
4241         (ruby-syntax-propertize-percent-literal):
4242         Don't check the syntax status.
4243         (ruby-syntax-propertize): Check it here.  And also guard against
4244         being in a larger percent literal.
4246         * test/automated/ruby-mode-tests.el
4247         (ruby-no-nested-percent-literals): New test.
4249 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4251         Recognize iuwu-mod after an escaped newline
4253         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
4254         newline is escaped.
4255         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
4256         correctly.
4258 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
4260         Fix symbolic mode string conversion for s and t
4262         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
4263         ?t.
4264         (file-modes-symbolic-to-number): Default to a for ts permissions.
4266 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4268         Update 'ucs-names' database
4270         * lisp/international/mule-cmds.el (ucs-names): Update used and
4271         unused ranges from the latest UnicodeData.txt.
4273 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4275         Improve doc string of 'shell-command'
4277         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
4278         for.  (Bug#22926)
4280 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4282         Make the code in movemail_strftime more general
4284         * lib-src/movemail.c (movemail_strftime): Transform the format
4285         string passed by the caller instead of using a separate format
4286         string.
4288 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4290         Speed up redisplay of binary files with long series of nulls
4292         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
4293         for a character needed for resolving the type of a series of BN
4294         and ET characters, as required by rule W5 of UAX#9, if the results
4295         of the resolution are known in advance, because we are at level
4296         zero, and the previous strong character was L.
4297         (bidi_resolve_neutral): Partially resurrect the optimization for a
4298         long series of control characters in an otherwise strictly L2R
4299         text.
4300         (bidi_level_of_next_char): Don't enter the loop that searches for
4301         a paragraph separator if the current character is already at base
4302         embedding level.  (Bug#22739)
4304 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4306         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
4308         Remove the highlighting support for quoting 'like this' inside
4309         Lisp docstrings.  This part of
4310         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
4311         unintentional, considering substitute-command-keys gives wrong
4312         output for such usage.
4313         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
4314         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
4315         straight quotes as symbol.
4317 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4319         Restore leading space in movemail pop output
4321         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
4322         (strftime) [WINDOWSNT]: New macro.
4323         (mbx_delimit_begin): Go back to previous version of this code,
4324         now that there’s a special-purpose WINDOWSNT implementation
4325         that should do the right thing.  That way, the output continues
4326         to use leading space rather than leading zero for day of month.
4328 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4330         Fix bidi-paragraph-direction in Rmail view buffer
4332         * lisp/mail/rmail.el (rmail-show-message-1): Reset
4333         bidi-paragraph-direction to nil before formatting the message for
4334         display.
4336 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4338         Don't misindent computed property generator methods
4340         * lisp/progmodes/js.el (js--looking-at-operator-p):
4341         Don't misindent computed property generator methods
4342         (https://github.com/mooz/js2-mode/issues/317).
4344 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4346         Fix mbox files produced by movemail on MS-Windows
4348         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
4349         format specifiers, as at least the MS-Windows version of strftime
4350         doesn't support %e and %T.
4352 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4354         doc string file descriptor exhaustion fix
4356         * src/doc.c (get_doc_string): Move newly-added check to a better
4357         location (Bug#22814).
4359 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
4361         Fix Bug#22814
4363         * src/doc.c (get_doc_string): Raise an error in case too many
4364         files are open.  (Bug#22814)
4366 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
4368         Fix insertion of edited servers in the dribble file
4370         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
4371         insert explicit newlines, because they're quoted (bug#22903).
4373         Backport:
4375         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
4377 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
4379         Fix previous fix of enlarge-/shrink-window
4381         * lisp/window.el (enlarge-window, shrink-window): Consistently
4382         signal user-error instead of error.  Resize minibuffer window by
4383         delta lines instead of pixels.  When a window cannot be resized,
4384         signal an error only when this function was invoked by a command
4385         in the enlarge-/shrink-window group (this restores the behavior
4386         before the fix of bug#22723 for the non-interactive case).
4388 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
4390         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
4392 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
4394         Complete temperature units in calc-convert-temperature
4396         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
4397         temperature units in math-standard-units.
4399 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4401         Make sure to use case-sensitive search
4403         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
4404         use case-sensitive search.
4406 2016-06-19  Ulf Jasper  <ulf.jasper@web.de>
4408         Prevent infinite loop on not-well-formed xml. (Bug#16344)
4410         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
4411         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
4412           test cases for Bug#16344.
4414 2016-06-19  Alan Third  <alan@idiocy.org>
4416         Add the missing test case for the previous patch
4418         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
4419         any processing.
4420         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
4421         DABBREV--SUBSTITUTE-EXPANSION.
4422         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
4424 2016-06-19  Alan Third  <alan@idiocy.org>
4426         Use the correct dabbrev expansion
4428         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
4429         any processing.
4430         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
4431         DABBREV--SUBSTITUTE-EXPANSION.
4432         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
4434 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
4436         Bump version to 25.0.92
4438         * README:
4439         * configure.ac:
4440         * msdos/sed2v2.inp: Bump version to 25.0.92.
4442 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
4444         * etc/AUTHORS: Update the AUTHORS file
4446 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
4448         authors.el updates
4450         * admin/authors.el (authors-ignored-files): Addition.
4452 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
4453 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4455         Fix Bug#22859
4457         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
4458         event in case of kqueue and file1 is nil.  (Bug#22859)
4460 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4462         Fix reordering of bidi text in an isolate inside an override
4464         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
4465         of FSI with either LRI or RLI, as determined by the first strong
4466         directional character in the isolate.  This prevents failure to
4467         isolate when the FSI...PDI text is inside a directional override.
4468         (Bug#22786)
4470 2016-03-04  Alan Mackenzie  <acm@muc.de>
4472         Document c-guess-basic-syntax in the CC Mode manual.
4474         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
4475         pxrefs to Custom Line-Up and Other Indentation.
4476         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
4477         Syntactic Analysis.
4479 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4481         Fix targets in test/automated/Makefile.in
4483         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
4484         empty target and target all.
4486 2016-03-04  Leo Liu  <sdl.web@gmail.com>
4488         Comment on last change to define-derived-mode
4490         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
4492 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4494         Allow binding `url-mime-accept-string'
4496         * lisp/url/url-http.el (url-http): Allow binding
4497         `url-mime-accept-string' (bug#22855).
4499         Backport:
4501         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
4503 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4505         Also allow setting the paragraph direction to nil
4507         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
4508         setting the paragraph direction to nil ("auto").
4510 2016-03-04  Anders Lindgren  <andlind@gmail.com>
4512         Made the new OS X visible bell more visible.
4514         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
4515           "caution" image five times, as the image in its original size
4516           was hard to see.
4518 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4520         Use the correct background color when filling nested <divs>
4522         * lisp/net/shr.el (shr-face-background): Return the first
4523         background, because that's the one that's visible (bug#22680).
4525         Backport:
4527         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
4529 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4531         Make <div> in <li> not insert extra newlines
4533         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
4534         extra newlines (bug#19587).
4536         Backport:
4538         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
4540 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
4542         Uncomment the next-error-function integration in xref
4544         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
4545         Uncomment the next-error-function integration
4546         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
4548 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
4550         Remove the word "valid", to avoid ambiguity
4552         * doc/emacs/maintaining.texi (Identifier Search)
4553         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
4555 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4557         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
4559 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4561         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
4563         * etc/NEWS:
4564         * etc/PROBLEMS: Mention this.
4566         * lisp/autorevert.el (global-auto-revert-mode): Set
4567         `auto-revert-use-notify' to nil.  (Bug#22814)
4569 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
4571         * etc/TODO: Minor quoting and grammar fixes.
4573 2016-03-04  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
4575         Fix ModelSim error parsing
4577         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
4578         ModelSim error parsing (bug#5768).
4580 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4582         Make parse-time-string-chars faster
4584         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
4585         up the code (backport:).
4587 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4589         Add a eww command to toggle paragraph direction
4591         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
4592         command and keystroke.
4594         * doc/misc/eww.texi (Advanced): Mention the `D' command.
4596 2016-03-04  Glenn Morris  <rgm@gnu.org>
4598         * nextstep/WISHLIST: Merge into etc/TODO and remove.
4600         * etc/TODO: Merge in items from nextstep/WISHLIST.
4601         * nextstep/README: Update for this change.
4603 2016-03-04  Andreas Schwab  <schwab@linux-m68k.org>
4605         Fix char signedness issue in bidi code
4607         * src/dispextern.h (struct bidi_t): Change type of resolved_level
4608         and isolate_level to signed char.  (Bug#22830)
4610 2016-03-04  Andreas Schwab  <schwab@linux-m68k.org>
4612         * lib-src/pop.c (socket_connection): Fix format string.
4614 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4616         Avoid inflooping in thing-at-point-looking-at
4618         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
4619         with regular expressions whose matching doesn't move point.
4620         (Bug#22756)
4621         Describe the argument DISTANCE in the doc string.
4623 2016-03-04  Leo Liu  <sdl.web@gmail.com>
4625         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
4627 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4629         etc/PROBLEMS: Mention problems with using file descriptors
4631         * etc/PROBLEMS: Mention problems with using file descriptors
4632         of kqueue file notification library.
4634 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>
4636         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
4638 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4640         Remove unneeded workaround in xftfont.c
4642         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
4643         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
4644         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
4646 2016-03-04  Stefan Monnier  <monnier@iro.umontreal.ca>
4648         * lisp/saveplace.el (save-place-local-mode): New minor mode
4650         (toggle-save-place): Define as obsolete alias.
4651         (save-place--setup-hooks): New function.
4652         (save-place-mode): Use it.
4654 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4656         Fix redisplay on a TTY after 'make-frame'
4658         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
4659         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
4661 2016-03-04  Alan Mackenzie  <acm@muc.de>
4663         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
4665         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
4666         `syntax-after' to ensure syntax-table text properties are respected.
4668 2016-03-04  Magnus Henoch  <magnus.henoch@gmail.com>
4670         Input method polish-slash should not use keyboard translation
4672         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
4673         polish-slash should not use keyboard translation (bug#19081).
4675 2016-03-04  Chris Feng  <chris.w.feng@gmail.com>
4677         Fix an assertion
4679         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
4680         implies start == 0) separately.
4682 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4684         Fix 'toggle-save-place'
4686         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
4687         support save-place in the buffer.  Autoload the command.
4689 2016-03-04  Stefan Monnier  <monnier@iro.umontreal.ca>
4691         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
4693         * src/keyboard.c (read_key_sequence): Don't inadvertently set
4694         immediate_echo when we don't want any echo-keystrokes.
4695         (echo_keystrokes_p): Move earlier.
4697 2016-03-04  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
4699         Minor fixes in calculator.el
4701         * lisp/calculator.el (calculator-mode-map): Bind `E' for
4702         `calculator-exp'.
4703         (calculator-last-input): Fix a bug with pressing F1.
4704         (Bug#20764)
4706 2016-03-04  Anders Lindgren  <andlind@gmail.com>
4708         Update HISTORY section in readme for the NextStep interface.
4710         * nextstep/README: Update HISTORY after suggestion
4711         from former maintainer Adrian Robert.
4713 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4715         Improve documentation of 'save-place-mode'
4717         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
4718         turning on 'save-place-mode' globally.
4720         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
4721         on the mode in all buffers.
4723 2016-03-04  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
4725         Allocate glyph matrices for the initial frame
4727         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
4729         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
4731 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4733         Fix white space in last checkin
4735 2016-03-04  Dima Kogan  <gnuplot@dima.secretsauce.net>
4737         Make `insert-pair' always leave the cursor where documented
4739         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
4740         insert-pair states that after insertion, the point ends up
4741         after the opening character. This was not true if the pair was
4742         inserted to surround a region (bug#16949).
4744 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>
4746         etc/NEWS: Mention the new second parameter to `package-install'
4748         * etc/NEWS: Mention the new second parameter to
4749         `package-install' (bug#22784).
4751 2016-03-04  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
4753         Highlight assignments in Makefiles more correctly
4755         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
4756         Highlight assignments preceded by a TAB character correctly
4757         (bug#20787).
4760         Backport:
4762         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
4764 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4766         Improve documentation of focus-related hooks
4768         * doc/lispref/commands.texi (Focus Events): Mention focus-related
4769         hooks.  (Bug#21728)
4771 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4773         Further improve doc string of 'disable-point-adjustment'
4775         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
4776         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
4778 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4780         Further adaptions in file-notify-tests.el for w32notify
4782         * test/automated/file-notify-tests.el
4783         (file-notify--test-read-event-timeout, file-notify--test-timeout):
4784         Decrease values.
4785         (file-notify-test03-autorevert)
4786         (file-notify-test04-file-validity)
4787         (file-notify-test05-dir-validity): Run tests also for w32notify.
4788         (file-notify-test08-watched-file-in-watched-dir):
4789         Adapt expected events for w32notify.
4791 2016-03-04  Jan Tatarik  <jan.tatarik@gmail.com>
4793         Don't bug out on localised dates in gnus-icalendar
4795         * lisp/gnus/gnus-icalendar.el
4796         (gnus-icalendar-event:org-timestamp): Don't bug out on
4797         localised dates.
4799 2016-03-04  Drew Adams  <drew.adams@oracle.com>
4801         (ls-lisp-insert-directory): Make -B work
4803         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
4804         (bug#20776).
4806         Backport:
4808         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
4810 2016-03-04  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
4812         Make buttons in header lines work
4814         * lisp/help-mode.el (help-button-action): `help-xref-button' in
4815         header line doesn't work (bug#21024).
4817         Backport:
4819         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
4821 2016-03-04  Christopher Wellons  <wellons@nullprogram.com>
4823         Make setf for frame-height/width work again
4825         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
4826         frame-height/width work again (bug#21979).
4828 2016-03-04  Łukasz Stelmach  <stlman@poczta.fm>
4830         Encode header strings before printing
4832         * lisp/ps-print.el (ps-generate-header-line): Encode the
4833         header strings to avoid problems with non-ASCII headers
4834         (bug#22611).
4836         Backport:
4838         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
4840 2016-03-04  Nicolas Richard  <youngfrog@members.fsf.org>
4842         (cl-union): Do not ignore :test argument when lists are equal.
4844         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
4846         * test/automated/cl-seq-tests.el: New file (bug#22729).
4848 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4850         Add `isearch' to `basic-faces'
4852         * doc/lispref/display.texi (Basic Faces): Mention the isearch
4853         and lazy-highlight faces.
4855         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
4856         group, too (bug#22760).
4858 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
4860         Make $, : and @ "prefix characters" in ruby-mode
4862         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
4863         syntax classes of $, : and @ to "prefix character"
4864         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
4865         (ruby-syntax-propertize): Undo that specifically for colons
4866         followed by an opening paren or bracket.
4867         (ruby-font-lock-keyword-beg-re): Include colon character.
4868         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
4869         not being a symbol constituent anymore.
4871 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
4873         Make find-tag-default-bounds more strict
4875         * lisp/subr.el (find-tag-default-bounds): Delegate to
4876         bounds-of-thing-at-point (bug#22692).
4878 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4880         Minor fixes in filenotify.el
4882         * lisp/filenotify.el (top): Require 'cl-lib.
4883         (file-notify--rm-descriptor)
4884         (file-notify--event-watched-file): Use cl-caadr.
4885         (file-notify-callback): Handle also `ignore' events from inotify.
4887 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4889         Additional fixes for file notification
4891         * lisp/filenotify.el (top): Require 'cl when compiling.
4892         (file-notify--event-watched-file): New defun.
4893         (file-notify--rm-descriptor, file-notify-callback):
4894         Handle case of several monitors running in parallel.
4896         * test/automated/file-notify-tests.el
4897         (file-notify--test-event-test): Simplify test.
4898         (file-notify--test-with-events): Get rid of outer definition.
4899         Check also results of tests performed in callbacks.
4900         (file-notify-test02-events): No wrapping when calling
4901         `file-notify-rm-watch'.  No special checking for callback tests.
4902         (file-notify-test07-backup): Adapt expected events for gfilenotify.
4903         (file-notify-test08-watched-file-in-watched-dir): Improve.
4905 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4907         Fix documentation of 'global-disable-point-adjustment'
4909         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
4910         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
4912 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4914         Set file modes of pinentry socket for extra safety
4916         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
4917         (pinentry-start): Change the file modes of the socket file to 0700.
4918         This is just for extra safety since the parent directory is already
4919         protected with `server-ensure-safe-dir'.
4921 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4923         Clarify GnuPG version compatibility chapter
4925         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
4926         description a bit clearer.
4928 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4930         Revert "Change the default socket location for pinentry"
4932         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
4933         It turned out that the address is fixed in Pinentry itself.
4935 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
4937         Kill off xref--display-history
4939         Now that the core workflow keeps the xref window visible, there's
4940         less value in storing this history.  And it never was
4941         comprehensive enough to undo scrolling changes.
4942         * lisp/progmodes/xref.el (xref--display-history)
4943         (xref--save-to-history, xref-quit): Remove.
4944         (xref--show-pos-in-buf): Update accordingly.
4945         (xref--xref-buffer-mode-map): Remove xref-quit binding.
4947 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
4949         Keep the xref buffer visible until the user quits it explicitly
4951         * lisp/progmodes/xref.el (xref--pop-to-location):
4952         Rename WINDOW argument to ACTION.
4953         (xref--with-dedicated-window): New macro.
4954         (xref--show-pos-in-buf): Rename from `xref--display-position'.
4955         Add and handle new argument, SELECTED.  Use the above macro.
4956         (xref--show-location): Add SELECTED argument.
4957         (xref-show-location-at-point): Make an effort to avoid the
4958         original window when showing the location.
4959         (xref-goto-xref): Don't quit the xref window (bug#20487 and
4960         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
4961         (xref--query-replace-1): Use xref--with-dedicated-window as well.
4962         (xref--next-error-function): Call xref--show-location instead of
4963         xref--pop-to-location.
4964         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
4965         Only pass that value to xref--pop-to-location.  Pass the current
4966         selected window to xref-show-xrefs-function as the `window'
4967         property.
4968         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
4969         to DISPLAY-ACTION as well.
4971 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4973         Change the default socket location for pinentry
4975         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
4976         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
4977         ~/.emacs.d/pinentry.
4978         (pinentry-start): Change the file modes of the socket file to 0700.
4979         This is just for extra safety since the parent directory is already
4980         protected with `server-ensure-safe-dir'.
4982 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4984         Mention how to enable pinentry feature
4986         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
4987         * lisp/net/pinentry.el: Likewise.
4989 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
4991         Sync with gnulib
4993         This incorporates:
4994         2016-02-10 stdalign: port to older HP and IBM cc
4995         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
4997 2016-03-04  David Engster  <deng@randomsample.de>
4999         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
5001         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
5002           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
5003           not an idle hook, so it's not appropriate to call it there. It will
5004           already be called in the `semantic-idle-work-core-handler', which
5005           runs when Emacs is actually idle.
5007 2016-03-04  David Engster  <deng@randomsample.de>
5009         Restore point when writing semantic table to disk
5011         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
5012           `semantic-fetch-tags' in `save-excursion', since it might move point
5013           in current buffer. (Bug #22287)
5015 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5017         Mention pinentry.el in epa manual
5019         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
5020         describing the differences between three GnuPG branches, and how
5021         to enable pinentry.el.
5022         (Caching Passphrases): Add xref to the compatibility chapter.
5024 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
5026         Fix Bug#22736
5028         * lisp/filenotify.el (file-notify-callback): Use the proper
5029         descriptor when calling the callback.  (Bug#22736)
5031         * test/automated/file-notify-tests.el
5032         (file-notify--test-event-handler): Deactivate trace.
5033         (file-notify-test08-watched-file-in-watched-dir): Bind
5034         `file-notify--test-tmpfile' temporarily in `dir-callback'.
5036 2016-03-04  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
5038         Grammar fix in doc string
5040         * lisp/custom.el (defgroup): Grammar fix in doc string.
5042 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5044         Naming fix for consistency
5046         * lisp/epg-config.el (epg-find-configuration): Rename from
5047         `epg-configuration-find' to be consistent with other epg-* functions.
5048         Change all callers.
5050 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5052         Prefer customized value for GnuPG executable
5054         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
5055         configuration if it is already set with custom.  (Bug#22747)
5057 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5059         Fix memory reservation on MS-Windows
5061         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
5062         units.  This avoids leaving gaps in reserved memory regions that
5063         no one can use, since memory reservation must produce 64KB-aligned
5064         addresses.  (Bug#22526)
5066 2016-03-04  Anders Lindgren  <andlind@gmail.com>
5068         Update NextStep readme and add wish list.
5070         * nextstep/README: Rewritten from scratch. New sections on
5071         "History", "Overview of Cocoa and Objective-C", "Guidelines",
5072         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
5073         * nextstep/WISHLIST: New file containing list of issues and ideas
5074         associated with the NS port of Emacs.
5076 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
5078         Report also result in `file-notify--test-event-handler'
5080 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
5082         Improve file-notify-test08-watched-file-in-watched-dir
5084         * test/automated/file-notify-tests.el (file-notify--test-desc2):
5085         New variable.
5086         (file-notify--test-cleanup): Use it.
5087         (file-notify--test-event-handler): Enable trace.
5088         (file-notify-test08-watched-file-in-watched-dir): Tag it as
5089         :expensive-test.  Rewrite callbacks to use
5090         `file-notify--test-event-handler'.  Read events in loop.  Check
5091         `file-notify--test-results'.
5092         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
5094 2016-03-04  Stephen Berman  <stephen.berman@gmx.net>
5096         Fix todo-mode item date editing bugs
5098         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
5099         range error by making sure the value of the numerical month date
5100         component cannot be nil.  Prevent wrong type error on trying to edit
5101         day number in February by making sure numerical instead of string
5102         value of the year component is passed to todo-read-date.
5103         (todo-read-date): When using the numerical month date component make
5104         sure to use `*' for an arbitrary month instead of its numerical value.
5106 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5108         Fix "[:upper:]" for non-ASCII characters
5110         * src/regex.c (re_match_2_internal): Support [:upper:] and
5111         [:lower:] for non-ASCII characters.  (Bug#18150)
5113 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
5115         Allow customising the article mode cursor behavior
5117         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
5119         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
5120         (gnus-article-mode): Use it.
5122 2016-03-04  Ari Roponen  <ari.roponen@gmail.com>
5124         Use pop-to-buffer-same-window in woman.el
5126         * lisp/woman.el (woman-really-find-file): Work around going to
5127         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
5128         (WoMan-find-buffer): Ditto.
5130 2016-03-04  Tassilo Horn  <tsdh@gnu.org>
5132         New filenotify test for bug#22736
5134         * test/automated/file-notify-tests.el
5135         (file-notify-test08-watched-file-in-watched-dir):
5136         (file-notify--test-desc1): New filenotify test for bug#22736
5138 2016-03-04  Marcin Borkowski  <mbork@mbork.pl>
5140         Report critical battery errors
5142         * lisp/battery.el (battery-pmset): Report critical battery
5143         errors (bug#18157).
5145 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
5147         Make eww message toggling message clearer
5149         * lisp/net/eww.el (eww-toggle-fonts): Make the message
5150         clearer.
5152 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
5154         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
5156 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
5158         Fix bugs in window resizing code
5160         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
5161         parenthesis.
5162         (shrink-window, enlarge-window): Fix bug#22723 where windows
5163         with preserved size would not get resized.  Also now signal an
5164         error when the window cannot be shrunk or enlarged as requested.
5166 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5168         Fix decoding DOS EOL in a unibyte buffer
5170         * src/coding.c (decode_eol): Loop over bytes, not characters.
5171         (Bug#5251)
5173 2016-03-04  Alan Mackenzie  <acm@muc.de>
5175         Correct c-parse-state cache manipulation error.
5177         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
5178         comparison bound.  Amend comments.
5180 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5182         Take advantage of new GnuPG version check function
5184         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
5185         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
5186         is usable.
5188 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5190         Make GnuPG version check robuster
5192         We changed the default gpg program to "gpg2" from "gpg" in the commit
5193         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
5194         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
5195         series.  Check the actual version of "gpg2" at run time, and properly
5196         divert to "gpg" if necessary.
5197         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
5198         (epg-config--program-alist): New variable.
5199         (epg--configurations): New variable.
5200         (epg-configuration-find): New function.
5201         (epg-config--make-gpg-configuration): New function.
5202         (epg-config--make-gpgsm-configuration): New function.
5203         (epg-configuration): Mark as obsolete.
5204         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
5206 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
5208         Fix x-load-color-file pointer signedness
5210         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
5211         For sscanf and int *, use %d, not %u.
5212         Problem found on Ubuntu 15.10 x32, which lacks X support.
5214 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
5216         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
5218 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
5220         Follow convention for greek letter constants.
5222         * lisp/calc/calc-units.el (math-standard-units):
5223         Add "sigma" and alias σ to it.
5225 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
5227         Add Stefan-Boltzmann constant to calc units table.
5229         * lisp/calc/calc-units.el (math-standard-units):
5230         Add Stefan-Boltzmann constant.
5232 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
5234         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
5236 2016-03-04  Glenn Morris  <rgm@gnu.org>
5238         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
5240         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
5241         Prefill with relevant elements for term/xterm.
5243 2016-03-04  Tassilo Horn  <tsdh@gnu.org>
5245         Fix soffice UserInstallation-URL for Windows
5247         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
5248         UserInstallation-URL when calling soffice on Windows.
5250 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
5252         Fix display of <pre> elements
5254         * lisp/net/eww.el (eww-display-html): Remove CRLF before
5255         parsing so that <pre> elements don't render with ^M at the end
5256         of the lines.
5258 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5260         Minor fixes in global-auto-composition-mode
5262         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
5263         Produce prettier names of globalized minor modes.
5264         * lisp/composite.el (global-auto-composition-mode): Make it a
5265         globalized mode.  (Bug#22682)
5267 2016-03-04  Alan Mackenzie  <acm@muc.de>
5269         Allow arithmetic operators inside C++ template constructs.
5271         Fixes debbugs #22486.  This corrects the previous patch with this message
5272         which was empty.
5274         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
5275         variable.
5276         (c-<>-notable-chars-re): New language variable.
5278         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
5279         c-<>-notable-chars-re in place of the former fixed string in searching for
5280         places to stop and examine.
5281         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
5282         multichar operator in place of the former c->-op-without->-cont-regexp.
5283         Add code to skip forwards over a balanced parenthesized expression.
5285 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5287         Avoid crashes in semi-malformed 'condition-case'
5289         * src/eval.c (internal_lisp_condition_case): Treat a handler
5290         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
5292 2016-03-04  Alan Mackenzie  <acm@muc.de>
5294         Allow arithmetic operators inside C++ template constructs.
5296         Fixes debbugs #22486.
5298         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
5299         variable.
5300         (c-<>-notable-chars-re): New language variable.
5302         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
5303         c-<>-notable-chars-re in place of the former fixed string in searching for
5304         places to stop and examine.
5305         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
5306         multichar operator in place of the former c->-op-without->-cont-regexp.
5307         Add code to skip forwards over a balanced parenthesized expression.
5309 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5311         Fix regression with 'recent-keys' and keyboard macros
5313         * src/keyboard.c (record_char): Don't record in 'recent_keys'
5314         events that come from executing keyboard macros.  (Bug#22674)
5316 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5318         Fix wording in a doc-view.el comment
5320         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
5321         "illegal" for something that is not against the law.
5323 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
5325         CONTRIBUTE cleanups and updates
5327         * CONTRIBUTE: Mention URLs and info nodes more consistently,
5328         avoiding possibly-confusing punctuation adjacent to a URL, and
5329         giving full shell commands for 'info'.  Start with a brief but
5330         complete how-to, for people who want to get started right away.
5331         Then briefly discuss how to join the development process in the
5332         typical order.  Omit needless words.  Update some of the
5333         now-obsolete file names, info node names, and quoting styles.
5334         Better document emacs-NN branches and how they are merged.
5335         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
5336         and trunk to master.  This file still needs work.
5338 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
5340         Port USE_STACK_LISP_OBJECTS fix to Clang
5342         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
5343         Recent versions of Clang claim to be GCC 4.2.1 but do not have
5344         the GCC bug.
5346 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
5348         Port to x86 GCC 4.3.1 and earlier
5350         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
5351         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
5352         for GCC 4.3.1 and earlier.
5354 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5356         Fix point movement under 'scroll-conservatively'
5358         * src/xdisp.c (redisplay_window): Correct a typo in computing the
5359         effective number of text lines in a window.  (Bug#22637)
5361 2016-03-04  Thomas Plass  <thomas.plass@arcor.de>
5363         Replace colon in file name (not legal on Windows)
5365         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
5366         name (not legal on Windows). [tiny change]
5368 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5370         Fix a typo in edt.texi
5372         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
5373         "Herbert J. Skuhra" <herbert@mailbox.org>.
5375 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5377         Make 'mmap_realloc' on MS-Windows more reliable
5379         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
5380         committing fails, return NULL.  Don't call GetLastError twice for
5381         the same API error.
5382         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
5383         before calling VirtualQuery, to avoid using garbled values if the
5384         call fails.  If committing more pages from the same block fails,
5385         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
5386         if the call to VirtualAlloc to commit more pages fails.
5387         (Bug#22526)
5389 2016-03-04  Oscar Fuentes  <ofv@wanadoo.es>
5391         Grep alias `all' shall not match parent directory
5393         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
5394           directory for `all'. Fixes bug#22577
5396 2016-03-04  Nicolas Petton  <nicolas@petton.fr>
5398         Bump version to 25.0.91
5400         * README:
5401         * configure.ac:
5402         * msdos/sed2v2.inp: Bump version to 25.0.91.
5404 2016-03-04  Nicolas Petton  <nicolas@petton.fr>
5406         * etc/AUTHORS: Update the AUTHORS file
5408 2016-03-04  Glenn Morris  <rgm@gnu.org>
5409 2016-02-15  Glenn Morris  <rgm@gnu.org>
5411         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
5413 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5415         Index tilde characters in names of backup files
5417         * doc/emacs/files.texi (Backup Names): Improve indexing.
5418         (Bug#22625)
5420 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5422         Document deprecation of hi-lock-mode's 'C-x w' bindings
5424         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
5425         "C-x w" bindings of hi-lock-mode.
5427         * etc/NEWS: Mark the deprecation entry as documented.
5429 2016-02-15  Stefan Monnier  <monnier@iro.umontreal.ca>
5431         Announce that the `C-x w' bindings are deprecated
5433 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5435         Suppress GNUstep hardening
5437         Fedora 23 normally hardens GNUstep applications, which causes
5438         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
5439         Fix this by eliding the hardening options (Bug#22518).
5440         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
5441         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
5442         (GNU_OBJC_CFLAGS): Omit options like
5443         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
5445 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5447         Fix redisplay after a large insertion
5449         * src/xdisp.c (redisplay_internal): Don't accept the results of
5450         "optimization 3" if the cursor ends up in a partially visible
5451         glyph row.  (Bug22637)
5453 2016-02-15  Andreas Schwab  <schwab@linux-m68k.org>
5455         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
5457         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
5459                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
5460                 change.  (Bug#22634)
5462 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5464         * lib-src/make-docfile.c: Include stdarg.h.
5466 2016-02-15  Alan Mackenzie  <acm@muc.de>
5468         Extend gpm-mouse-mode's doc string and doc to point out limitations.
5470         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
5471         inability to transfer text between Emacs and other programs which use GPM.
5473         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
5474         between Emacs and other progrmas which use GPM.
5476 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5478         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
5480         * lisp/isearch.el: Turn char-folding back oon by default.
5482         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
5484 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
5486         Revert "Support integer image rotation and respect EXIF rotations"
5488         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
5490         This change does not work on Fedora.
5492 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
5494         Revert "Document EXIF image rotation"
5496         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
5498         This change does not work on Fedora, for instance.
5500 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5502         Document OS X LANG default
5504         * doc/emacs/cmdargs.texi (General Variables):
5505         Document OS X Language and Region system preference.
5506         Suggested by Alan Third.
5508 2016-02-15  Alan Third  <alan@idiocy.org>
5510         Set locale when run from OS X GUI
5512         * src/emacs.c (main): Call ns_init_locale.
5513         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
5514         * src/nsterm.h: Include ns_init_locale.
5516 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5518         make-docfile cleanup for I/O, etc.
5520         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
5521         (num_globals_allocated, globals): Now static.
5522         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
5523         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
5524         Use bool for boolean.
5525         (verror): New function.
5526         (fatal, error): Use it.  API is now like printf.  All callers changed.
5527         (main): Remove err_count local that was always 0.
5528         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
5529         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
5530         Return void, not 0.
5531         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
5532         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
5533         (close_emacs_globals): Use ptrdiff_t for index, not int.
5534         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
5535         opened, rather than diagnosing but exiting with status 0.
5536         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
5537         portable now.
5539 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5541         Memory-management cleanup in make-docfile
5543         I compiled it with -fsanitize=address and fixed the leaks it detected.
5544         Also, I changed it to prefer signed to unsigned integer types,
5545         and to check for integer overflow.
5546         * lib-src/make-docfile.c:
5547         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
5548         (memory_exhausted): New function.
5549         (xmalloc, xrealloc): Use it.
5550         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
5551         (uncompiled, scan_lisp_file):
5552         Prefer signed integer types to unsigned.
5553         (xstrdup): Remove.  All uses removed.
5554         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
5555         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
5556         (add_global): Use const to pacify --enable-gcc-warnings.
5557         Make a copy here, rather than relying on strdup calls later.
5558         (add_global, write_globals, scan_c_stream):
5559         Avoid integer overflow when calculating sizes.
5560         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
5561         (scan_c_stream): Check for add_global failure.
5563 2016-02-15  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
5565         Kevin Gallagher has new email address
5567         * lisp/emulation/edt.el:
5568         * lisp/emulation/edt-lk201.el:
5569         * lisp/emulation/edt-mapper.el:
5570         * lisp/emulation/edt-pc.el:
5571         * lisp/emulation/edt-vt100.el:
5572         * etc/edt-user.el:
5573         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
5575 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5577         Improve doc strings of 'forward/backward-word-strictly'
5579         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
5580         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
5581         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
5582         Mention 'subword-mode' in the doc strings.
5584         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
5585         in the doc string.  (Bug#22560)
5587 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
5589         Describe Makefile test targets in test/README
5591         * CONTRIBUTE: Move Makefile test targets to test/README.
5593         * Makefile.in:
5594         * test/README: Describe Makefile test targets.
5596 2016-02-15  Artur Malabarba  <bruce.connor.am@gmail.com>
5598         Backport: * lisp/isearch.el: Turn char-folding off by default
5600         (search-default-mode): Set default value to nil.
5602 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
5604         Document EXIF image rotation
5606         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
5608 2016-02-15  Dima Kogan  <dima@secretsauce.net>
5610         Support integer image rotation and respect EXIF rotations
5612         * src/image.c (imagemagick_load_image): Allow integer rotations in
5613         addition to floating point rotations (bug#22591).
5614         * src/image.c (imagemagick_load_image): Images that have an
5615         orientation given in EXIF and have no explicit :rotation tag are now
5616         pre-rotated.  All information such as width/height is reported for the
5617         rotated image.
5619 2016-02-15  Matthew Carter  <m@ahungry.com>
5621         Quote table names for postgres listings (sql-mode)
5623         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
5624           unquoted table names to the completion list.
5626 2016-02-15  Juri Linkov  <juri@linkov.net>
5628         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
5630         Doc fix.
5631         (replace-search, replace-highlight): Make arg `backward' optional.
5632         (Bug#18388)
5634 2016-02-15  Juri Linkov  <juri@linkov.net>
5636         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
5638         (previous-line-or-history-element): Reset temporary-goal-column.
5639         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
5641 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5643         Suppress ACL ops if configured with --disable-acl
5645         Without this patch, some ACL operations were suppressed, but not all.
5646         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
5647         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
5649 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
5651         Mention web bugs
5653         * doc/misc/emacs-mime.texi (Display Customization):
5654         Mention web bugs in the mm-html-blocked-images section.
5656 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
5658         Make mm-html-blocked-images default to "" again
5660         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
5661         Default to "" that blocks all external images.
5663         * doc/misc/emacs-mime.texi (Display Customization):
5664         Mention that mm-html-blocked-images defaults to "".
5666 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5668         Minor alignas cleanup
5670         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
5671         over from the old way of doing things, before Bug#20862 was fixed.
5673 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5675         Add lmalloc commentary and tweak laligned
5677         * src/alloc.c (laligned): Help compiler in a tiny way by putting
5678         the more-commonly-failing disjunct first.
5680 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5682         Clarify documentation of key binding conventions
5684         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
5685         "punctuation characters" are reserved after "C-c".  (Bug#22604)
5687 2016-02-15  Oscar Fuentes  <ofv@wanadoo.es>
5689         * etc/NEWS: mention the `vc-faces' customization group
5691 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5693         Sync with gnulib
5695         This incorporates:
5696         2016-02-09 stdalign: port to clang 3.7.0
5697         2016-02-06 misc: port better to gcc -fsanitize=address
5698         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
5699         Copy from gnulib.
5701 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
5703         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
5705 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
5707         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
5709         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
5710         (mm-html-blocked-images): Default to nil.
5712         * doc/misc/emacs-mime.texi (Display Customization): Mention that
5713         mm-html-inhibit-images and mm-html-blocked-images default to nil.
5715         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
5716         mm-html-blocked-images.
5718 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5720         Increase success rate of fallback lmalloc
5722         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
5723         larger and larger sizes, to increase the probability that
5724         the allocator will return a Lisp-aligned pointer.
5726 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
5728         Make backgrounds extend to the end of the lines in shr
5730         * lisp/net/shr.el (shr-face-background): Faces can also be on
5731         the form `(:background "#fff)' (bug#22547).
5733 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
5735         Make the `R' command get the correct relative <img>s
5737         * lisp/net/eww.el (eww-readable): Preserve the base URL so
5738         that image expansions are fetched from the right place (bug#22605).
5740         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
5742         Backport:
5744 2016-02-15  Mike Kupfer  <m.kupfer@acm.org>
5746         Fix typos in emacs-mime.texi and gnus.texi
5748         * doc/misc/emacs-mime.texi (Display Customization):
5749         * doc/misc/gnus.texi (HTML): Fix typo.
5751 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
5753         * doc/misc/emacs-mime.texi (Display Customization):
5754         Doc fix for mm-html-inhibit-images.
5756 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
5758         Fix message-cross-post-followup-to group names
5760         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
5761         insert group names like "nntp+foo:zot", because those aren't valid.
5763 2016-02-15  David Edmondson  <dme@dme.org>
5765         Compare recipient and keys case-insensitively
5767         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
5768         recipient address with that from a key, do so in a case insensitive
5769         manner (bug#22603).
5771 2016-02-15  Glenn Morris  <rgm@gnu.org>
5773         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
5775 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
5777         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
5779         * doc/misc/emacs-mime.texi (Display Customization):
5780         Remove mm-inline-text-html-with-images; add documentations for
5781         mm-html-inhibit-images and mm-html-blocked-images.
5783         * lisp/gnus/gnus-art.el (gnus-article-show-images):
5784         No need to bind mm-inline-text-html-with-images.
5785         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
5786         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
5787         bind mm-html-inhibit-images and mm-html-blocked-images.
5788         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
5789         (gnus-mm-display-part, gnus-mime-display-single)
5790         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
5792         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
5793         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
5794         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
5795         mm-html-inhibit-images and mm-html-blocked-images respectively
5796         instead of gnus-inhibit-images and gnus-blocked-images.
5798         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
5799         instead of mm-inline-text-html-with-images.
5801 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5803         Port to FreeBSD 11-CURRENT i386
5805         Problem reported by Herbert J. Skuhra in:
5806         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
5807         Instead of trying
5808         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
5809         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
5810         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
5811         (MALLOC_IS_GC_ALIGNED): New macro.
5812         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
5813         No longer needed now that alloc.c uses lmalloc and lrealloc.
5815 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
5817         Some fixes in file-notify-tests.el
5819         * test/automated/file-notify-tests.el
5820         (file-notify--test-with-events-check)
5821         (file-notify--test-with-events-explainer): New defuns.
5822         (file-notify--test-with-events): Use it.
5823         (file-notify-test07-backup): Fix docstring.  Some of the
5824         backends fire two `changed' events.  Backup by rename doesn't
5825         work for kqueue.
5827 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
5829         Fix Bug#22557
5831         * lisp/filenotify.el (file-notify-callback): Do not send a
5832         `stopped' event in case of backup by renaming.  (Bug#22557)
5834         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
5835         all targets but check and check-maybe.
5837         * test/automated/file-notify-tests.el
5838         (file-notify--test-read-event-timeout): New defconst.
5839         (file-notify--deftest-remote, file-notify--wait-for-events)
5840         (file-notify-test02-events)
5841         (file-notify-test04-file-validity)
5842         (file-notify-test06-many-events): Use it.
5843         (file-notify--test-cleanup): Make it more robust.  Delete also
5844         backup file.
5845         (file-notify-test07-backup): New test.
5847 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5849         Fix test for dladdr
5851         Problem reported by Andreas Schwab in:
5852         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
5853         * configure.ac (dladdr): Link with LIBMODULES when checking for
5854         this function.
5856 2016-02-15  Andreas Schwab  <schwab@linux-m68k.org>
5858         Fix gnus-group-get-new-news-this-group on group with closed server
5860         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
5861         method and pass to nnimap-open-server.
5863 2016-02-15  Artur Malabarba  <bruce.connor.am@gmail.com>
5864 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
5866         * doc/lispref/sequences.texi: Add documentation for seq-map-indexed
5868 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
5870         New function seq-map-indexed
5872         * lisp/emacs-lisp/seq.el (seq-map-indexed): New function.
5873         * test/lisp/emacs-lisp/seq-tests.el: Add tests for seq-map-indexed.
5875 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
5877         * lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias.
5879 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
5881         Fix problem with wrong encoding of non-ASCII message bodies
5883         * lisp/gnus/mml.el (mml-generate-mime-1): Disable
5884         multibyteness before encoding the data.
5886 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
5888         Remove codepage setup code from mm-util
5890         * lisp/gnus/mm-util.el (mm-codepage-setup): Remove.
5891         (mm-codepage-iso-8859-list): Remove.
5892         (mm-codepage-ibm-list, mm-setup-codepage-iso-8859)
5893         (mm-setup-codepage-ibm): Remove.
5894         (mm-charset-eval-alist): Remove the code pages from the
5895         default value.
5897 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
5899         Remove compat code for older Emacsen
5901         * lisp/gnus/gnus-art.el (gnus-button-url-regexp): Remove
5902         XEmacs compat code.
5904         * lisp/gnus/gnus-sync.el (gnus-sync-json-alist-p): Remove
5905         unused compat function.
5906         (gnus-sync-json-plist-p): Ditto.
5908         * lisp/gnus/message.el (message-default-charset): Make obsolete.
5909         (message-info): Remove compat code.
5910         (message-setup-fill-variables): Remove kludge needed earlier
5911         to not overwrite `normal-auto-fill-function'.
5912         (message-split-line): Remove compat code.
5914         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Remove
5915         compat code.
5917 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
5919         Remove some compat functions from gmm-utils.el
5921         * lisp/gnus/gmm-utils.el (gmm-tool-bar-from-list): Remove
5922         compat code.
5923         (gmm-image-search-load-path): Remove.
5924         (gmm-image-load-path-for-library): Remove.
5926 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
5928         Remove the gmm-lazy and nnmail-lazy compat widgets
5930         * lisp/gnus/gmm-utils.el (gmm-lazy): Remove.
5932         * lisp/gnus/nnmail.el (nnmail-lazy): Remove.
5934 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5936         Clean up nnimap-request-move-article slightly
5938         * lisp/gnus/nnheader.el (subr-x): Require.
5940         * lisp/gnus/nnimap.el (nnimap-request-move-article): Clean up
5941         the code slightly.
5943 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5945         Use open-network-stream instead of open-protocol-stream
5947         * lisp/gnus/nnimap.el: Use open-network-stream instead of
5948         open-protocol-stream.
5950         * lisp/gnus/nntp.el: Ditto.
5952         * lisp/gnus/pop3.el: Ditto.
5954         * lisp/gnus/sieve-manage.el: Ditto.
5956         * lisp/net/network-stream.el (open-protocol-stream): Make obsolete.
5958 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5960         Remove compat code that relies on (featurep 'mule)
5962         * lisp/gnus/gnus-group.el (gnus-group-name-decode): Remove
5963         compat code.
5965         * lisp/gnus/gnus-start.el (gnus-read-descriptions-file):
5966         Remove compat code.
5968         * lisp/gnus/mm-bodies.el (mm-decode-body, mm-decode-string):
5969         Remove compat code.
5971         * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
5972         Remove compat code.
5973         (mm-w3m-standalone-supports-m17n-p): Ditto.
5975 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5977         Remove compat functions from starttls.el
5979         * lisp/gnus/starttls.el
5980         (starttls-set-process-query-on-exit-flag): Remove.
5982 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5984         Remove compat functions from smime.el
5986         * lisp/gnus/smime.el (smime-replace-in-string): Remove.
5987         (smime-make-temp-file): Remove.
5989 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5991         Remove compat code from smiley
5993         * lisp/gnus/smiley.el (smiley-style): Remove compat code.
5995 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5997         Remove compat code from rfc2047
5999         * lisp/gnus/rfc2047.el (rfc2047-encode-message-header): Remove
6000         compat code.
6001         (rfc2047-decode-string): Ditto.
6003 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6005         Remove compat function from pop3
6007         * lisp/gnus/pop3.el (pop3-set-process-query-on-exit-flag): Remove.
6009 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6011         Remove compat code in Gnus backends
6013         * lisp/gnus/nndiary.el (nndiary-error): Remove.
6015         * lisp/gnus/nndraft.el (nndraft-request-associate-buffer): Ditto.
6017         * lisp/gnus/nnfolder.el (nnfolder-read-folder): Ditto.
6019         * lisp/gnus/nnheader.el (nnheader-find-file-noselect): Ditto.
6021         * lisp/gnus/nnimap.el (nnimap-log-buffer): Remove compat code.
6023 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6025         Remove compat code from some mml files
6027         * lisp/gnus/mml-sec.el (mml-secure-passphrase-cache-expiry):
6028         Remove compat code.
6030         * lisp/gnus/mml-smime.el (mml-smime-openssl-sign-query):
6031         Always use `mail-extract-address-components', since this isn't
6032         time critical.
6033         (mml-smime-get-dns-cert): Ditto.
6035         * lisp/gnus/mml.el (mml-preview): Remove compat code.
6037 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6039         Remove compat code and compat functions from mm-util.el
6041         * lisp/gnus/mm-util.el (mm-mime-mule-charset-alist): Remove
6042         compat code.
6043         (mm-coding-system-priorities)
6044         (mm-mule-charset-to-mime-charset, mm-charset-after)
6045         (mm-mime-charset, mm-iso-8859-x-to-15-region): Remove compat code.
6046         (mm-detect-coding-region): Define unconditionally.
6047         (mm-detect-mime-charset-region): Ditto.
6048         (mm-coding-system-to-mime-charset): It's 'mime-charset now.
6049         (coding-system-name)
6050         (find-file-coding-system-for-read-from-filename)
6051         (find-operation-coding-system): Remove aliases.
6053 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6055         Remove some compat code from mm-*.el
6057         * lisp/gnus/mm-bodies.el (mm-decode-body): Ditto.
6059         * lisp/gnus/mm-decode.el (mm-tmp-directory)
6060         (mm-valid-image-format-p): Remove compat code.
6062         * lisp/gnus/mm-url.el (mm-url-insert-file-contents): Remove
6063         "Connection" "Close" workaround for older Emacsen.
6065 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6067         Remove compat code and functions from message.el
6069         * lisp/gnus/message.el (message-send-mail-function): Remove
6070         compat code.
6071         (message-dont-reply-to-names, message-mode)
6072         (message-setup-fill-variables, message-fill-paragraph)
6073         (message-remove-blank-cited-lines, message-make-from)
6074         (message-forward-rmail-make-body, message-tool-bar-gnome)
6075         (message-tab): Remove compat code.
6076         (message-completion-in-region): Remove.
6077         (message-read-from-minibuffer): Remove compat code.
6079 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6081         Declare rfc1843 instead of autoloading
6083         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Declare
6084         instead of autoload.
6086 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
6088         Avoid signaling an error in 'dired-do-find-regexp-and-replace'
6090         * lisp/dired-aux.el: Require cl-lib, so that 'cl-mapcan' is
6091         autoloaded correctly.  (Bug#22613)
6093 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
6095         Fix network-stream-tests.el for MS-Windows
6097         * test/lisp/net/network-stream-tests.el
6098         (connect-to-tls-ipv6-nowait): Skip for MS-Windows builds.
6099         (connect-to-tls-ipv4-wait): Add a 0.1 sleep-for.
6101 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6103         Remove some Message compat functions
6105         * lisp/gnus/message.el (message-kill-all-overlays): Define
6106         unconditionally.
6107         (message-window-inside-pixel-edges): Remove.
6108         (mail-dont-reply-to): Remove.
6110 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6112         Remove some Gnus compat code
6114         * lisp/gnus/gnus-art.el (gnus-mime-inline-part): Remove compat code.
6115         (gnus-mm-display-part): Ditto.
6117         * lisp/gnus/gnus-start.el (gnus-dribble-read-file): Remove
6118         compat code.
6120 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6122         Sort groups before inserting them into the group buffer
6124         * lisp/gnus/gnus-group.el (gnus-group-describe-all-groups):
6125         Sort groups before inserting them.
6127 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6129         Make "unseen" tracking work again in Gnus
6131         * lisp/gnus/gnus-sum.el (gnus-update-marks): Make "unseen"
6132         tracking work again.
6134 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6136         Remove Gnus compat functions defined in gnus.el
6138         * lisp/gnus/gnus.el (gnus-extent-detached-p): Remove.
6139         (gnus-extent-start-open, gnus-character-to-event)
6140         (gnus-assq-delete-all, gnus-add-text-properties)
6141         (gnus-put-text-property, gnus-key-press-event-p):
6143 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6145         Remove compat code from gnus-uu and win
6147         * lisp/gnus/gnus-util.el (gnus-image-type-available-p): Remove
6148         compat code.
6150         * lisp/gnus/gnus-uu.el (gnus-uu-tmp-dir): Remove compat code.
6152         * lisp/gnus/gnus-win.el (gnus-frames-on-display-list): Remove.
6154 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6156         Remove several gnus-util compat functions
6158         * lisp/gnus/gnus-util.el (gnus-set-process-query-on-exit-flag): Remove.
6159         (gnus-read-shell-command): Remove.
6160         (gnus-match-substitute-replacement): Remove.
6161         (gnus-string-match-p): Remove.
6162         (gnus-string-prefix-p): Remove.
6164 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6166         Remove the gnus-merge alias
6168         * lisp/gnus/gnus-util.el (gnus-merge): Remove.
6170 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6172         Remove the gnus-union alias
6174         * lisp/gnus/gnus-util.el (gnus-union): Remove.
6176 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6178         Remove the gnus-delete-alist alias
6180         * lisp/gnus/gnus-util.el (gnus-run-mode-hooks): Remove compat code.
6181         (gnus-delete-alist): Remove.
6183 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6185         Remove the gnus-float-time alias
6187         * lisp/gnus/gnus-util.el (gnus-completion-styles): Remove
6188         compat code.
6189         (gnus-float-time): Remove.
6191 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6193         Remove compat code from gnus-srvr, start and sum
6195         * lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Remove
6196         compat code.
6198         * lisp/gnus/gnus-start.el (gnus-check-reasonable-setup):
6199         Remove compat code.
6201         * lisp/gnus/gnus-sum.el (gnus-summary-display-arrow)
6202         (gnus-summary-make-menu-bar, gnus-summary-make-tool-bar)
6203         (gnus-recenter)
6204         (gnus-summary-limit-strange-charsets-predicate)
6205         (gnus-summary-show-thread): Remove compat code.
6207 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6209         Remove compat code from gnus-spec.el
6211         * lisp/gnus/gnus-spec.el (gnus-lrm-string-p): Remove compat code.
6212         (gnus-balloon-face-function): Remove compat code.
6214 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6216         Fix compat change in last check-in
6218         * lisp/gnus/gnus-group.el
6219         (gnus-group-name-charset-group-alist): `find-coding-system'
6220         doesn't exist in Emacs.
6222 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6224         Always use url-queue
6226         * lisp/gnus/gnus-html.el (gnus-html-schedule-image-fetching):
6227         Always use url-queue.
6229 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6231         Remove compat functions from gnus-html.el
6233         * lisp/gnus/gnus-html.el (gnus-html-encode-url-chars): Remove.
6235 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6237         Remove compat code from gnus-group.el
6239         * lisp/gnus/gnus-group.el (gnus-group-name-charset-group-alist)
6240         (gnus-group-make-tool-bar, gnus-group-update-tool-bar): Remove compat code.
6242 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6244         Define gnus-diary-kill-entire-line unconditionally
6246         * lisp/gnus/gnus-diary.el (gnus-diary-kill-entire-line):
6247         Define unconditionally.
6249 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6251         Remove compat code from gnus-cache and gnus-bookmark
6253         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-bmenu-mode-map): Ditto.
6255         * lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-name):
6256         Remove compat code.
6258 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6260         Remove compat code from gnus-art.el
6262         * lisp/gnus/gnus-art.el (gnus-article-prepare)
6263         (gnus-mime-copy-part, gnus-output-to-file)
6264         (gnus-article-reply-with-original)
6265         (gnus-button-handle-apropos-variable)
6266         (gnus-button-handle-apropos-documentation):
6268 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6270         Remove compat code from gnus-agent.el
6272         * lisp/gnus/gnus-agent.el (gnus-agent-make-mode-line-string):
6273         Remove compat code.
6275 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6277         Rewrite gmm-labels usage to use cl-labels
6279         * lisp/gnus/gmm-utils.el (gmm-tool-bar-style): Remove compat code.
6280         (gmm-labels): Remove.
6282 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6284         Remove compat code from canlock.el
6286         * lisp/gnus/canlock.el (defmacro): Remove
6288 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6290         Remove compat code from auth-source
6292         * lisp/gnus/auth-source.el (auth-source-read-char-choice):
6293         Remove compat code.
6295 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6297         Fix gnus-group.el compilation warnings about unprefixed variables
6299         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): Avoid
6300         compilation warnings by passing in the dynamic variables as
6301         explicit lexical parameters to `eval'.
6303 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6305         Fix the :tracker slot name
6307         * lisp/gnus/registry.el (registry-lookup-secondary): The
6308         `tracker' slot is called `tracker', not `:tracker'.
6310 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6312         Fix compilation warnings in gnus-art.el
6314         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Autoload.
6315         (gnus-article-hide): Avoid compilation warnings.
6317 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6319         Fix compilation warning in gnus-score.el
6321         * lisp/gnus/gnus-score.el (gnus-art): Require to silence byte
6322         compiler.
6324 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
6326         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
6328         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
6330         This makes nnimap groups not be activated.
6332 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6334         Fix encoding problem introduced by previous patch series
6336         * lisp/gnus/rfc2047.el: Ditto (bug#22648).
6338         * lisp/gnus/rfc2231.el: Fix problem created by the
6339         mm-replace-in-string conversion.
6341 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6343         Revert "Avoid defvarring prefix-less variables"
6345         This reverts commit 303390bda34f98b400798d5383cf0d722e35ba19.
6347         The defvars are needed if we're doing lexical-binding
6349 2016-02-12  Glenn Morris  <rgm@gnu.org>
6351         * test/lisp/url/url-auth-tests.el (url-auth-test-digest-auth):
6352         Make it pass.
6354         * test/lisp/url/url-auth-tests.el
6355         (url-auth-test-digest-auth-retrieve-cache): Fix obvious typo.
6357 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6359         Finish up cl-defmethoding registry,el
6361         * lisp/gnus/registry.el (initialize-instance): Use cl-defmethod.
6363 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6365         Revert the gnus-replace-in-string change, fix arguments, reapply
6367 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6369         Silence more message.el compilation warnings
6371         * lisp/gnus/message.el (message-generate-headers): Don't use
6372         variable values directly to get the header values, because
6373         that breaks with lexical binding (without unprefixed defvars).
6375 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6377         Fix various compilation warnings in message.el
6379         * lisp/gnus/message.el (message-fix-before-sending): Use
6380         read-multiple-choice instead of gnus-multiple-choice.
6381         (mm-util): Require.
6382         (rfc2047): Require.
6383         (message-remove-blank-cited-lines): Use message instead of
6384         gnus-message.
6385         (message-send): Use y-or-n-p instead of gnus-y-or-n-p.
6387 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6389         Silence compilation warning in mm-view
6391         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Silence
6392         compilation warning.
6394 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6396         Fix epg-related compilation warnings in mml-sec
6398         * lisp/gnus/mml-sec.el: Fix compilation warnings from the epg
6399         library.
6401 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6403         rmail-dont-reply-to-names is obsolete
6405         * lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Don't bind
6406         the obsolete `rmail-dont-reply-to-names' variable.
6408 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6410         Partially revert the defmethod->cl-defmethod change in registry.el
6412         * lisp/gnus/registry.el (initialize-instance): Use defmethod,
6413         since cl-defmethod doesn't work with :after.
6414         (initialize-instance): Ditto, but with :before.
6416 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6418         Avoid obsolete function in plstore
6420         * lisp/gnus/plstore.el (plstore--insert-buffer): Use setf
6421         instead of the obsolete epg-context-set-armor.
6423 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6425         Use cl-defmethod in registry.el
6427         * lisp/gnus/registry.el: Use cl-defmethod instead of the
6428         obsolete defmethod.
6430 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6432         Make sieve-manage require sasl
6434         * lisp/gnus/sieve-manage.el: Fix compilation warning by
6435         requiring sasl.
6437 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6439         Avoid defvarring prefix-less variable
6441         * lisp/gnus/mm-uu.el (mm-uu-entry): Rename from `entry'.
6443 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6445         * lisp/gnus/mailcap.el: Remove usage of mailcap-delete-duplicates.
6447 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6449         Don't use the obsolete char-valid-p function
6451         * lisp/gnus/mm-url.el (mm-url-decode-entities): Don't use the
6452         obsolete char-valid-p function.
6454 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6456         Fix missed translation in a previous commit
6458         * lisp/gnus/mailcap.el (mailcap-mime-types): Fix missed
6459         translation of mailcap-delete-duplicates.
6461 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6463         Avoid using mm-make-temp-file
6465         * lisp/gnus/mail-source.el (mail-source-delete-crash-box): Ditto.
6467         * lisp/gnus/mm-decode.el (mm-display-external): Ditto.
6469         * lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Ditto.
6471 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6473         Fix compilation warning in gnus-start
6475         * lisp/gnus/gnus-start.el (gnus-slave-save-newsrc): Avoid
6476         mm-make-temp-file.
6478 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6480         Avoid the obsoleted defmethod
6482         * lisp/gnus/gnus-icalendar.el: Use cl-defmethod instead of
6483         defmethod.
6485 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6487         Avoid defvarring prefix-less variables
6489         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): We
6490         don't need to `defvar' the short variables to allow `eval' to
6491         use them.
6493 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6495         nnweb doesn't need unibyte buffers
6497         * lisp/gnus/nnweb.el (nnweb-retrieve-headers)
6498         (nnweb-read-overview, nnweb-request-article)
6499         (nnweb-google-reference): Unibyte buffers are not needed here.
6501 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6503         Encode before sending from nnspool
6505         * lisp/gnus/nnspool.el (nnspool-request-post): Encode data
6506         before sending it to the news server.
6508 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6510         nnrss buffers don't have to be unibyte
6512         * lisp/gnus/nnrss.el (nnrss-insert): The buffer doesn't have
6513         to be unibyte just to receive data, I think.
6515 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6517         Don't use mm-with-unibyte-current-buffer in mml2015
6519         * lisp/gnus/mml2015.el (mml2015-mailcrypt-encrypt): Don't use
6520         mm-with-unibyte-current-buffer.
6522 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6524         Don't use mm-with-unibyte-current in mml1991
6526         * lisp/gnus/mml1991.el (mml1991-epg-sign): Don't use
6527         mm-with-unibyte-current.
6529 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6531         Don't use mm-with-unibyte-current in mml1991
6533         * lisp/gnus/mml1991.el (mml1991-pgg-sign): Don't use
6534         mm-with-unibyte-current.
6536 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6538         Don't use mm-with-unibyte-buffer in utf7
6540         * lisp/gnus/utf7.el (utf7-fragment-encode): Don't use
6541         mm-with-unibyte-buffer.
6543 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6545         Remove XEmacs compat code from Gnus helper libraries
6547         * lisp/gnus/plstore.el (plstore-called-interactively-p): Remove.
6549         * lisp/gnus/pop3.el (pop3-make-date): Remove XEmacs compat.
6551         * lisp/gnus/sieve-mode.el: Remove XEmacs compat.
6553         * lisp/gnus/spam-stat.el (spam-stat-called-interactively-p): Remove.
6555 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6557         Remove XEmacs compat code from Gnus backends
6559         * lisp/gnus/mm-view.el (mm-inline-image-xemacs): Remove.
6560         (mm-inline-image): Rename from mm-inline-image-emacs.
6562         * lisp/gnus/mml.el: Remove XEmacs compat code.
6564         * lisp/gnus/nnheader.el: Remove XEmacs compat code.
6566         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Remove
6567         XEmacs compat code.
6569         * lisp/gnus/nnir.el (nnir-run-gmane): Remove XEmacs compat code.
6571         * lisp/gnus/nnmail.el (nnmail-pathname-coding-system): Remove
6572         XEmacs compat code.
6574         * lisp/gnus/nnmairix.el: Remove XEmacs compat code.
6576         * lisp/gnus/nnrss.el: Remove XEmacs compat code.
6578         * lisp/gnus/nntp.el: Remove XEmacs compat code.
6580 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6582         Remove XEmacs compat functions from mm-util.el
6584         * lisp/gnus/mm-util.el (mm-special-display-p): Remove.
6585         (mm-decode-coding-string, mm-encode-coding-string)
6586         (mm-decode-coding-region, mm-encode-coding-region): Remove.
6587         (mm-string-to-multibyte): Remove.
6588         (mm-char-or-char-int-p): Remove.
6589         (mm-ucs-to-char): Remove compat versions of the function.
6590         (mm-read-coding-system): Remove.
6591         (mm-coding-system-p): Remove compat code.
6592         (mm-enrich-utf-8-by-mule-ucs): Remove.
6593         (mm-enable-multibyte, mm-disable-multibyte): Remove compat versions.
6594         (mm-delete-duplicates): Remove.
6595         (mm-multibyte-p): Remove compat versions.
6596         (mm-xemacs-find-mime-charset-1): Remove.
6597         (mm-xemacs-find-mime-charset): Remove.
6598         (mm-make-temp-file): Made obsolete.
6599         (mm-find-buffer-file-coding-system): Remove XEmacs compat.
6601 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6603         Remove Message and mm-decode XEmacs compat code
6605         * lisp/gnus/message.el: Remove XEmacs compat code.
6607         * lisp/gnus/mm-decode.el (mm-create-image-xemacs): Remove.
6609         * lisp/gnus/mm-util.el: Remove some XEmacs compat code.
6611 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6613         Remove som XEmacs compat code from message.el
6615         * lisp/gnus/message.el: Remove some XEmacs compat code.
6617 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6619         Remove XEmacs compat code from ietf-drums.el
6621         * lisp/gnus/ietf-drums.el (ietf-drums-syntax-table): Drop
6622         XEmacs compat.
6624 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6626         Remove XEmacs compat code from gravatar.el
6628         * lisp/gnus/gravatar.el: Remove XEmacs compat code from
6629         gravatar.el.
6631 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6633         Remove more XEmacs compat code from Gnus
6635         * lisp/gnus/gnus-util.el (gnus-bound-and-true-p): Remove.
6636         (gnus-timer--function): Remove.
6638         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Remove XEmacs
6639         19.2 compat.
6641         * lisp/gnus/gnus-win.el: Remove XEmacs compat code.
6643 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6645         Remove more XEmacs compat functions from gnus-util.el
6647         * lisp/gnus/gnus-util.el (gnus-put-display-table): Remove.
6648         (gnus-get-display-table): Remove.
6649         (gnus-format-message): Remove.
6651 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6653         Remove more XEmacs compat functions from Gnus
6655         * lisp/gnus/gnus-util.el (gnus-next-char-property-change): Remove.
6656         (gnus-previous-char-property-change): Remove.
6657         (gnus-graphic-display-p): Remove.
6658         (gnus-select-frame-set-input-focus): Remove.
6660 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6662         Remove more XEmacs compat code from gnus-util
6664         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
6665         all its usages).
6666         (gnus-invisible-p): Remove.
6668 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6670         Remove gnus-make-local-hook
6672         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
6673         all its usages).
6675 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6677         gnus-replace-in-string -> replace-regexp-in-string
6679         * lisp/gnus/gnus-util.el (gnus-replace-in-string): Declare
6680         obsolete.  Transform all usages of it into
6681         replace-regexp-in-string.
6683         * lisp/gnus/mailcap.el (mailcap-replace-in-string): Remove.
6685 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6687         Remove Gnus XEmacs compat
6689         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Remove comment
6690         about code that doesn't work in XEmacs.
6692         * lisp/gnus/gnus-sum.el: Remove XEmacs compat.
6694         * lisp/gnus/gnus-topic.el: Remove XEmacs compat.
6696 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6698         Remove compat functions in gnus-spec.el
6700         * lisp/gnus/gnus-spec.el (gnus-string-width-function): Remove.
6701         (gnus-substring-function): Remove.
6702         (gnus-use-correct-string-widths): Remove.
6703         (gnus-make-format-preserve-properties): Remove.
6704         (gnus-xmas-format): Remove.
6706         * lisp/gnus/gnus-srvr.el (gnus-server-mode): Remove XEmacs compat.
6708 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6710         Remove Gnus XEmacs compat functions
6712         * lisp/gnus/gnus-registry.el: Remove XEmacs compat.
6714         * lisp/gnus/gnus-salt.el: Remove XEmacs compat.
6716         * lisp/gnus/gnus-score.el (gnus-decay-score): Remove XEmacs compat.
6718 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6720         Remove Gnus XEmacs compatibility
6722         * lisp/gnus/gnus-demon.el (gnus-demon-idle-since): Remove
6723         XEmacs compat.
6725         * lisp/gnus/gnus-dired.el: Remove XEmacs compat.
6727         * lisp/gnus/gnus-draft.el: Remove XEmacs compat.
6729         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-insert): Remove
6730         XEmacs compat.
6732         * lisp/gnus/gnus-group.el: Remove XEmacs compat.
6734         * lisp/gnus/gnus-html.el: Remove XEmacs compat.
6736         * lisp/gnus/gnus-ml.el: Remove XEmacs compat.
6738         * lisp/gnus/gnus-picon.el (gnus-picon-style): Remove XEmacs comment.
6740 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6742         Don't use image-map if it isn't defined
6744         * lisp/net/shr.el (shr-image-map): Only use image-map as a
6745         parent if it's defined (bug#22614).
6747 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6749         Check for MagickAutoOrientImage
6751         * configure.ac: Check for MagickAutoOrientImage.
6753         * src/image.c (imagemagick_load_image): Don't use
6754         MagickAutoOrientImage unless it's available.
6756 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6758         Document EXIF image rotation
6760         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
6762 2016-02-10  Dima Kogan  <dima@secretsauce.net>
6764         Support integer image rotation and respect EXIF rotations
6766         * src/image.c (imagemagick_load_image): Allow integer rotations in
6767         addition to floating point rotations (bug#22591).
6768         * src/image.c (imagemagick_load_image): Images that have an
6769         orientation given in EXIF and have no explicit :rotation tag are now
6770         pre-rotated.  All information such as width/height is reported for the
6771         rotated image.
6773 2016-02-10  Wolfgang Jenkner  <wjenkner@inode.at>
6775         * lisp/net/shr.el (image-map): Defvar it.  (Bug#22614)
6777 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6779         * lisp/gnus/gnus-cite.el: Remove XEmacs compat code.
6781 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6783         Remove compat code from gnus-bookmark.el
6785         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-mouse-available-p): Remove.
6786         (gnus-bookmark-remove-properties): Remove.
6788 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6790         Remove XEmacs compat code from gnus-a*.el
6792         * lisp/gnus/gnus-agent.el: Remove compat code.
6794         * lisp/gnus/gnus-art.el: Remove compat code.
6796         * lisp/gnus/gnus-async.el: Remove compat code.
6798 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6800         Remove gmm compat functions
6802         * lisp/gnus/gmm-utils.el (gmm-image-search-load-path): Remove.
6803         (gmm-write-region): Remove.
6804         (gmm-called-interactively-p): Remove.
6806 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6808         * lisp/gnus/ecomplete.el: Remove XEmacs compat code.
6810 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6812         Remove compat code from compface.el
6814         * lisp/gnus/compface.el: Remove XEmacs compat code throughout.
6816 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6818         Remove the now empty gnus-ems.el and references to it
6820 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6822         Remove Gnus compat names for mouse bindings
6824         * lisp/gnus/gnus-ems.el (gnus-widget-button-keymap): Remove.
6825         (gnus-down-mouse-2): Remove.
6826         (gnus-down-mouse-3): Remove.
6828 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6830         Drop Gnus compat functions
6832         * lisp/gnus/gnus-ems.el (gnus-mule-max-width-function): Remove.
6834         * lisp/gnus/gnus-util.el (gnus-kill-all-overlays): Move here.
6836         * lisp/gnus/gnus.el (gnus-mode-line-modified): Remove.
6838 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6840         Get rid of gnus-ems-redefine
6842         * lisp/gnus/gnus-ems.el (gnus-mouse-face-prop): Remove.
6844 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6846         * lisp/gnus/gnus-spec.el: Move definition here from gnus-ems.el.
6848 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6850         Remove Gnus compat code
6852         * lisp/gnus/gnus-ems.el (gnus-ems-redefine): Remove
6853         transitional code from ten years ago.
6855 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6857         Allow interactively scaling past :max-width etc
6859         * lisp/image.el (image--current-scaling)
6860         (image--image-without-parameters): New functions.
6861         (image--change-size): Use them to allow changing the size of a
6862         image even if it has :width/:max-width (etc.) already set.
6864 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6866         * lisp/gnus/mm-decode.el (shr-image-map): Compilation fix.
6868 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6870         Allow accessing the image commands via shr
6872         * lisp/gnus/mm-decode.el (mm-convert-shr-links): Allow
6873         accessing the image commands.
6875         * lisp/net/shr.el (shr-image-map): New map used for images.
6876         (shr-urlify): Don't overwrite image maps when applying URL maps.
6878 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6880         Use a sparse image keymap
6882         * lisp/image.el (image-map): Use a sparse keymap.
6884 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6886         Put a keymap on images created with insert-image and friends
6888         * lisp/image.el (image-save): New command.
6889         (image-rotate): Ditto.
6890         (image-map): New keymap.
6891         (insert-image): Put the image-map on all images.
6892         (insert-sliced-image): Ditto.
6893         * doc/lispref/display.texi (Showing Images): Document the
6894         image map.
6896 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6898         Fix some folding issues in read-multiple-choice
6900         * lisp/subr.el (read-multiple-choice): Fix folding when you
6901         have many items.
6903 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6905         Fix typo in last checkin
6907 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6909         Remove Gnus compat functions
6911         * lisp/gnus/gnus-ems.el (gnus-mark-active-p)
6912         (gnus-region-active-p, gnus-select-lowest-window)
6913         (gnus-summary-display-table, gnus-max-width-function): Remove
6914         compat functions.
6916 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6918         Move non-compat Gnus functions to gnus-util.el
6920         * lisp/gnus/gnus-util.el (gnus-remove-image, gnus-put-image)
6921         (gnus-create-image, gnus-image-type-available-p): Move here
6922         from gnus-ems.el, since these aren't compat functions.
6924 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6926         Omit valloc decl if redundant
6928         * src/gmalloc.c (valloc): Omit decl if malloc.h is included,
6929         to pacify --enable-gcc-warnings.
6931 2016-02-09  Wolfgang Jenkner  <wjenkner@inode.at>
6933         Restore the calloc family.
6935         * src/gmalloc.c (calloc, gcalloc, hybrid_calloc): Restore definitions.
6936         They were lost in a4817d8 but calloc is still (marginally) used in
6937         code statically liked with emacs, so hybrid_calloc is needed.
6938         Also, in the non-hybrid case, we can't get rid of calloc anyway as
6939         other libraries liked with emacs may need it.
6940         * src/conf_post.h: Restore redefinition of calloc to hybrid_calloc.
6942 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6944         Remove some Gnus compat functions
6946         * lisp/gnus/gnus-ems.el (gnus-string-mark-left-to-right)
6947         (gnus-window-inside-pixel-edges, gnus-set-process-plist)
6948         (gnus-process-plist, gnus-process-get, gnus-process-put): Remove.
6950 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6952         -
6954         -
6956 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6958         Merge from origin/emacs-25
6960         4feb962 * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
6961         cc419fb Don't inloop gnus-uu-mark-thread on the last thread
6962         51c77a2 Display non-ASCII group names better in prompts
6963         f93d669 Default to gpg2 instead of gpg
6965 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6967         Merge from origin/emacs-25
6969         9ffe7dd * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
6970         16140f7 * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
6971         3db6adb * lisp/isearch.el (search-default-mode)
6972         4ea1ea7 * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
6973         c77ffc8 Use monitor's resolution for positioning tooltips
6974         49e5749 Fix file-notify-test on MS-Windows
6975         be1d874 Fix issues found by auditing w32notify code
6976         87ae218 Extend etags Ruby support for accessors
6977         aa35257 Update publicsuffix.txt.
6978         6816bff Ensure that Gnus dribble handling allows removing entries
6979         691feae Be consistent when using encoded strings in nnimap data
6980         3ed423b Display the decoded Gnus group name
6981         5428b5b Use completion-ignore-case instead of defining command
6983 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6985         Merge from origin/emacs-25
6987         1eaf68f * test/automated/file-notify-tests.el (file-notify-test06-many-events):
6988         d333716 ; * etc/NEWS: Expand news entry for scss-mode
6989         c32c16f ; Better document changes in ls-lisp default behavior
6990         dc6eed2 Fix doc string of tls-program
6992 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6994         Merge from origin/emacs-25
6996         2c117fc * etc/NEWS: Document new mpc.el features
6997         71a0496 * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
6998         9dfece1 Correctly fontify C++ initializations which "look like" functions.
6999         4485222 Improve newsticker-treeview-selection-face
7000         4236944 Minor fix in tagging Ruby accessors by etags
7001         35fc77d Spelling fixes
7002         3dda110 Remove 'def X' from the example
7004 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7006         Minor alignas cleanup
7008         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
7009         over from the old way of doing things, before Bug#20862 was fixed.
7011 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7013         Add lmalloc commentary and tweak laligned
7015         * src/alloc.c (laligned): Help compiler in a tiny way by putting
7016         the more-commonly-failing disjunct first.
7018 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
7020         Clarify documentation of key binding conventions
7022         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
7023         "punctuation characters" are reserved after "C-c".  (Bug#22604)
7025 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
7027         * etc/NEWS: mention the `vc-faces' customization group
7029 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7031         Sync with gnulib
7033         This incorporates:
7034         2016-02-09 stdalign: port to clang 3.7.0
7035         2016-02-06 misc: port better to gcc -fsanitize=address
7036         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
7037         Copy from gnulib.
7039 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
7041         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
7043 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
7045         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
7047         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
7048         (mm-html-blocked-images): Default to nil.
7050         * doc/misc/emacs-mime.texi (Display Customization): Mention that
7051         mm-html-inhibit-images and mm-html-blocked-images default to nil.
7053         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
7054         mm-html-blocked-images.
7056 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
7058         Increase success rate of fallback lmalloc
7060         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
7061         larger and larger sizes, to increase the probability that
7062         the allocator will return a Lisp-aligned pointer.
7064 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7066         Make backgrounds extend to the end of the lines in shr
7068         * lisp/net/shr.el (shr-face-background): Faces can also be on
7069         the form `(:background "#fff)' (bug#22547).
7071 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7073         Make the `R' command get the correct relative <img>s
7075         * lisp/net/eww.el (eww-readable): Preserve the base URL so
7076         that image expansions are fetched from the right place (bug#22605).
7078         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
7080         Backport:
7082 2016-02-08  Mike Kupfer  <m.kupfer@acm.org>
7084         Fix typos in emacs-mime.texi and gnus.texi
7086         * doc/misc/emacs-mime.texi (Display Customization):
7087         * doc/misc/gnus.texi (HTML): Fix typo.
7089 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
7091         * doc/misc/emacs-mime.texi (Display Customization):
7092         Doc fix for mm-html-inhibit-images.
7094 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7096         Fix message-cross-post-followup-to group names
7098         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
7099         insert group names like "nntp+foo:zot", because those aren't valid.
7101 2016-02-08  David Edmondson  <dme@dme.org>
7103         Compare recipient and keys case-insensitively
7105         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
7106         recipient address with that from a key, do so in a case insensitive
7107         manner (bug#22603).
7109 2016-02-08  Glenn Morris  <rgm@gnu.org>
7111         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
7113 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
7115         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
7117         * doc/misc/emacs-mime.texi (Display Customization):
7118         Remove mm-inline-text-html-with-images; add documentations for
7119         mm-html-inhibit-images and mm-html-blocked-images.
7121         * lisp/gnus/gnus-art.el (gnus-article-show-images):
7122         No need to bind mm-inline-text-html-with-images.
7123         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
7124         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
7125         bind mm-html-inhibit-images and mm-html-blocked-images.
7126         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
7127         (gnus-mm-display-part, gnus-mime-display-single)
7128         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
7130         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
7131         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
7132         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
7133         mm-html-inhibit-images and mm-html-blocked-images respectively
7134         instead of gnus-inhibit-images and gnus-blocked-images.
7136         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
7137         instead of mm-inline-text-html-with-images.
7139 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
7141         Port to FreeBSD 11-CURRENT i386
7143         Problem reported by Herbert J. Skuhra in:
7144         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
7145         Instead of trying
7146         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
7147         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
7148         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
7149         (MALLOC_IS_GC_ALIGNED): New macro.
7150         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
7151         No longer needed now that alloc.c uses lmalloc and lrealloc.
7153 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
7155         Some fixes in file-notify-tests.el
7157         * test/automated/file-notify-tests.el
7158         (file-notify--test-with-events-check)
7159         (file-notify--test-with-events-explainer): New defuns.
7160         (file-notify--test-with-events): Use it.
7161         (file-notify-test07-backup): Fix docstring.  Some of the
7162         backends fire two `changed' events.  Backup by rename doesn't
7163         work for kqueue.
7165 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
7167         Fix Bug#22557
7169         * lisp/filenotify.el (file-notify-callback): Do not send a
7170         `stopped' event in case of backup by renaming.  (Bug#22557)
7172         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
7173         all targets but check and check-maybe.
7175         * test/automated/file-notify-tests.el
7176         (file-notify--test-read-event-timeout): New defconst.
7177         (file-notify--deftest-remote, file-notify--wait-for-events)
7178         (file-notify-test02-events)
7179         (file-notify-test04-file-validity)
7180         (file-notify-test06-many-events): Use it.
7181         (file-notify--test-cleanup): Make it more robust.  Delete also
7182         backup file.
7183         (file-notify-test07-backup): New test.
7185 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
7187         Fix test for dladdr
7189         Problem reported by Andreas Schwab in:
7190         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
7191         * configure.ac (dladdr): Link with LIBMODULES when checking for
7192         this function.
7194 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
7196         Fix gnus-group-get-new-news-this-group on group with closed server
7198         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
7199         method and pass to nnimap-open-server.
7201 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
7203         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
7205         While tabs in code are mostly fine because the Emacs sources have a
7206         .dir-locals file specifying tab-width, the same is not true of tabs in
7207         code examples inside docstrings.  The docstring is printed on a *Help*
7208         buffer, which can be created on any directory and won't necessarily have
7209         the same tab-width set.
7211 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7213         Don't inloop gnus-uu-mark-thread on the last thread
7215         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
7216         final thread in the summary buffer (bug#16666).
7218 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7220         Display non-ASCII group names better in prompts
7222         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
7223         group name, we have to do that before we remove the prefix.
7225 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7227         Default to gpg2 instead of gpg
7229         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
7230         it exists.  This fixes many problems with using the GPG
7231         authentication agent.
7233 2016-02-06  David Edmondson  <dme@dme.org>
7235         src/process.c Correctly convert AF_INET6 addresses
7237         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
7238         converted to a list of 16 bit quantities by
7239         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
7240         same scheme rather than expecting a (longer) list of 8 bit
7241         quantities.
7243         Backport:
7245         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
7247 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7249         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
7251 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7253         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
7255         (menu-bar-search-options-menu): New variable
7257 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7259         * lisp/isearch.el (search-default-mode)
7261         (isearch-regexp-function): Improve docstrings.
7263 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7265         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
7267         (search-default-mode): New variable.
7268         (isearch-mode, isearch-define-mode-toggle)
7269         (isearch--describe-regexp-mode): Update accordingly.
7270         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
7271         * etc/NEWS: Update accordingly.
7272         * doc/emacs/search.texi: Update accordingly.
7274 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
7276         Use monitor's resolution for positioning tooltips
7278         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
7279           the mouse pointer is to avoid placing the tooltip over the border of
7280           the monitor on multi-head displays. Fixes bug#22549.
7282 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
7284         Fix file-notify-test on MS-Windows
7286         * test/automated/file-notify-tests.el (file-notify--test-timeout):
7287         Reduce w32notify timeout to 10 sec.
7288         (file-notify-test06-many-events): Call read-event after each
7289         rename, to keep the w32notify backend happy in batch mode.
7290         (Bug#22534)
7292 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
7294         Fix issues found by auditing w32notify code
7296         * src/w32inevt.c (handle_file_notifications): Count the number of
7297         events to be returned.
7298         * src/w32notify.c (send_notifications): Don't copy to the file
7299         notification buffer more than it can hold.  (Bug#22534)
7301 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
7303         Extend etags Ruby support for accessors
7305         * lib-src/etags.c (Ruby_functions): Support accessors defined with
7306         parentheses.  (Bug#22563)
7308         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
7309         defined with parentheses.
7310         * test/etags/ETAGS.good_1:
7311         * test/etags/ETAGS.good_2:
7312         * test/etags/ETAGS.good_3:
7313         * test/etags/ETAGS.good_4:
7314         * test/etags/ETAGS.good_5:
7315         * test/etags/ETAGS.good_6:
7316         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
7318 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7320         Update publicsuffix.txt.
7322         * etc/publicsuffix.txt: Updated from
7323         https://publicsuffix.org/list/public_suffix_list.dat.
7325 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7327         Ensure that Gnus dribble handling allows removing entries
7329         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
7330         entry is on a single line.
7332 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
7334         Be consistent when using encoded strings in nnimap data
7336         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
7337         (nnimap-request-list): Use it.
7338         (nnimap-request-newgroups): Ditto.
7340 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
7342         Display the decoded Gnus group name
7344         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
7345         decoded group name in the message.
7347 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
7349         Use completion-ignore-case instead of defining command
7351         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
7352         that we get case-insensitive completion.
7353         (erc-completion-at-point): Remove.
7355 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
7357         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
7359 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
7361         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
7363         Reduce the number of iterations to 250 in case of w32notify.
7365 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
7367         Fix problems caused by new implementation of sub-word mode
7369         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
7370         New functions.
7371         (word-move-empty-char-table): New variable.
7373         * etc/NEWS: Mention 'forward-word-strictly' and
7374         'backward-word-strictly'.
7376         * doc/lispref/positions.texi (Word Motion): Document
7377         'find-word-boundary-function-table', 'forward-word-strictly', and
7378         'backward-word-strictly'.  (Bug#22560)
7380         * src/syntax.c (syms_of_syntax)
7381         <find-word-boundary-function-table>: Doc fix.
7383         * lisp/wdired.el (wdired-xcase-word):
7384         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
7385         (texinfo-copy-section-title, texinfo-start-menu-description)
7386         (texinfo-copy-menu-title, texinfo-specific-section-type)
7387         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
7388         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
7389         (texinfo-insert-@end):
7390         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
7391         (texinfo-anchor, texinfo-multitable-widths)
7392         (texinfo-multitable-item):
7393         * lisp/textmodes/tex-mode.el (latex-env-before-change):
7394         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
7395         * lisp/skeleton.el (skeleton-insert):
7396         * lisp/simple.el (count-words):
7397         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
7398         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
7399         (vhdl-update-sensitivity-list, vhdl-template-block)
7400         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
7401         (vhdl-template-default-indent, vhdl-template-for-loop)
7402         (vhdl-template-if-then-use, vhdl-template-bare-loop)
7403         (vhdl-template-nature, vhdl-template-procedural)
7404         (vhdl-template-process, vhdl-template-selected-signal-asst)
7405         (vhdl-template-type, vhdl-template-variable)
7406         (vhdl-template-while-loop, vhdl-beginning-of-block)
7407         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
7408         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
7409         (verilog-forward-sexp, verilog-beg-of-statement)
7410         (verilog-set-auto-endcomments, verilog-backward-token)
7411         (verilog-do-indent):
7412         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
7413         (vera-indent-block-closing):
7414         * lisp/progmodes/simula.el (simula-context)
7415         (simula-backward-up-level, simula-forward-down-level)
7416         (simula-previous-statement, simula-next-statement)
7417         (simula-skip-comment-backward, simula-calculate-indent)
7418         (simula-find-if, simula-electric-keyword):
7419         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
7420         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
7421         (ruby-smie--forward-token, ruby-smie--backward-token)
7422         (ruby-singleton-class-p, ruby-calculate-indent)
7423         (ruby-forward-sexp, ruby-backward-sexp):
7424         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
7425         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
7426         (perl-syntax-propertize-special-constructs)
7427         (perl-backward-to-start-of-continued-exp):
7428         * lisp/progmodes/pascal.el (pascal-indent-declaration):
7429         * lisp/progmodes/octave.el (octave-function-file-p):
7430         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
7431         * lisp/progmodes/js.el (js--forward-function-decl):
7432         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
7433         (idlwave-beginning-of-block, idlwave-end-of-block)
7434         (idlwave-block-jump-out, idlwave-determine-class):
7435         * lisp/progmodes/icon.el (icon-is-continuation-line)
7436         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
7437         * lisp/progmodes/hideif.el (hide-ifdef-define):
7438         * lisp/progmodes/f90.el (f90-change-keywords):
7439         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
7440         (cperl-linefeed, cperl-electric-terminator)
7441         (cperl-find-pods-heres, cperl-fix-line-spacing)
7442         (cperl-invert-if-unless):
7443         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
7444         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
7445         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
7446         (ada-adjust-case-skeleton, ada-create-case-exception)
7447         (ada-create-case-exception-substring)
7448         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
7449         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
7450         (ada-get-indent-if, ada-get-indent-block-start)
7451         (ada-get-indent-loop, ada-get-indent-type)
7452         (ada-search-prev-end-stmt, ada-check-defun-name)
7453         (ada-goto-decl-start, ada-goto-matching-start)
7454         (ada-goto-matching-end, ada-looking-at-semi-or)
7455         (ada-looking-at-semi-private, ada-in-paramlist-p)
7456         (ada-search-ignore-complex-boolean, ada-move-to-start)
7457         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
7458         * lisp/net/quickurl.el (quickurl-grab-url):
7459         * lisp/mail/sendmail.el (mail-do-fcc):
7460         * lisp/mail/rmail.el (rmail-resend):
7461         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
7462         * lisp/mail/mail-extr.el (mail-extract-address-components):
7463         * lisp/json.el (json-read-keyword):
7464         * lisp/files.el (insert-directory):
7465         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
7466         * lisp/completion.el (symbol-under-point, symbol-before-point)
7467         (symbol-before-point-for-complete, next-cdabbrev)
7468         (add-completions-from-c-buffer):
7469         * lisp/cedet/semantic/texi.el (semantic-up-context)
7470         (semantic-beginning-of-context):
7471         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
7472         use 'forward-word-strictly' and 'backward-word-strictly' instead
7473         of 'forward-word' and 'backward-word'.
7475 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
7477         Fix doc string of tls-program
7479         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
7481 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
7483         * etc/NEWS: Document new mpc.el features
7485 2016-02-04  Leo Liu  <sdl.web@gmail.com>
7487         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
7489 2016-02-04  Alan Mackenzie  <acm@muc.de>
7491         Correctly fontify C++ initializations which "look like" functions.
7493         Fixes bug#7579.
7495         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
7496         parameter to enable handling of "anonymous" declarators in declarations.
7498         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
7499         whether a "(" opens a parameter list of a function, or an initialization of a
7500         variable.
7502 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
7504         Improve newsticker-treeview-selection-face
7506         * newst-treeview.el (newsticker-treeview-selection-face): Improve
7507         readability for dark background.
7509 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
7511         Minor fix in tagging Ruby accessors by etags
7513         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
7514         names are not literal symbols.  (Bug#22241)
7516 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
7518         Spelling fixes
7520 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
7522         Remove 'def X' from the example
7524         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
7525         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
7526         * test/etags/CTAGS.good:
7527         * test/etags/ETAGS.good_1:
7528         * test/etags/ETAGS.good_2:
7529         * test/etags/ETAGS.good_3:
7530         * test/etags/ETAGS.good_4:
7531         * test/etags/ETAGS.good_5:
7532         * test/etags/ETAGS.good_6: Adjust accordingly.
7534 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
7536         Fix network-stream-tests on MS-Windows
7538         * test/lisp/net/network-stream-tests.el (make-local-unix-server):
7539         Skip if local sockets are not supported.
7541 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
7543         * admin/notes/bug-triage: Fix bug priorities.  Explain colors in debbugs-gnu.
7545 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
7547         Disable 'timer-list'
7549         * lisp/emacs-lisp/timer-list.el: Make 'timer-list' a disabled
7550         command.
7552 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7554         Avoid aligned_alloc static/extern collision
7556         * src/alloc.c (aligned_alloc): Define to private name when a
7557         static function, to avoid collision with lisp.h extern decl.
7558         Reported by John Yates in:
7559         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00439.html
7561 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
7563         Make `message-beginning-of-line' aware of folded headers
7565         * lisp/gnus/message.pl (message-beginning-of-header): New function which
7566         moves point to the beginning of a mail header.  The function is aware of
7567         folded headers and with non-nil argument looks for the true beginning of
7568         a header while with nil argument moves to the indented text of header's
7569         value.
7570         (message-beginning-of-line): Function is now aware of folded headers and
7571         either moves point to the indention of a header or, in visual-line-mode,
7572         searches for the beginning of the header.
7574 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
7576         Optimise ‘point in message header’ check
7578         * lisp/gnus/message.el (message-point-in-header-p): Replace two unbound
7579         regular expression matches with a single bound string match thus
7580         reducing amount of work the function is doing.
7582 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7584         Make the `R' command get the correct relative <img>s
7586         * lisp/net/eww.el (eww-readable): Preserve the base URL so
7587         that image expansions are fetched from the right place (bug#22605).
7589 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7591         Add a mode to list and cancel timers
7593         * doc/lispref/os.texi (Timers): Menton `timer-list'.
7595         * lisp/emacs-lisp/timer-list.el: New file.
7597 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7599         Add new commands to allow changing the size of images
7601         * lisp/image.el (image-increase-size, image-decrease-size):
7602         New commands.
7603         (image-change-size): New function.
7605 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7607         Allow the image scale to be a floating point number
7609         * src/image.c (compute_image_size): The scale can be a
7610         floating point number.
7612 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7614         Add an IPv6 test
7616         * test/lisp/net/network-stream-tests.el
7617         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
7619 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7621         Use gnutls-serv instead of openssh
7623         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
7624         gnutls-serv instead of openssh.
7626 2016-02-08  Daniel Colascione  <dancol@dancol.org>
7628         Performance improvements for vc-hg
7630         Teach vc-hg how to read some Mercurial internal data structures,
7631         allowing us to avoid the need to run hg status -A, which is very slow
7632         for large repositories.  Fall back to running hg if anything looks
7633         funny.  vc-hg now puts the _working directory_ revision in the
7634         modeline instead of the file revision, which greatly improves
7635         performance and which allows us to again skip running hg in the case
7636         that we have an active bookmark.
7638         * lisp/vc/vc-hg.el (vc-hg-state): Try calling `vc-hg-statefast'
7639         (vc-hg-symbolic-revision-styles)
7640         (vc-hg-use-file-version-for-mode-line-version)
7641         (vc-hg-parse-hg-data-structures): New user preferences
7642         (vc-hg--active-bookmark-internal, vc-hg--run-log)
7643         (vc-hg--symbolic-revision, vc-hg-mode-line-string)
7644         (vc-hg--read-u8, vc-hg--read-u32-be)
7645         (vc-hg--raw-dirstate-search, vc-hg--cached-dirstate-search)
7646         (vc-hg--parts-to-string, vc-hg--pcre-to-elisp-re)
7647         (vc-hg--glob-to-pcre, vc-hg--hgignore-add-pcre)
7648         (vc-hg--hgignore-add-glob, vc-hg--hgignore-add-path)
7649         (vc-hg--slurp-hgignore-1, vc-hg--slurp-hgignore)
7650         (vc-hg--ignore-patterns-valid-p)
7651         (vc-hg--ignore-patterns-ignored-p, vc-hg--time-to-fixnum)
7652         (vc-hg--file-ignored-p, vc-hg--read-repo-requirements)
7653         (vc-hg--requirements-understood-p, vc-hg--dirstate-scan-cache)
7654         (vc-hg-state-fast): New functions.
7655         (vc-hg--hgignore-patterns, vc-hg--hgignore-filenames)
7656         (vc-hg--cached-ignore-patterns, vc-hg--dirstate-scan-cache)
7657         (vc-hg--dirstate-scan-cache): New internal variables.
7658         * lisp/vc/vc-hooks.el (vc-refresh-state): Invoke vc find-file-hook
7659         before updating modeline.
7661 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7663         Skip TLS tests if we don't have openssl
7665         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
7666         TLS tests if we don't have openssl and GnuTLS.
7668 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7670         Automatically scale images up on high-density screens
7672         * doc/lispref/display.texi (ImageMagick Images): Mention :scale.
7673         (Defining Images): Mention image-scaling-factor.
7675         * lisp/image.el (image-compute-scaling-factor): New function
7676         (bug#22172).
7677         (create-image): Use it.
7678         (image-scaling-factor): New variable.
7680         * src/image.c (compute_image_size): Take :scale into account.
7682 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7684         Ensure progress when fetching from the queue
7686         * lisp/url/url-queue.el (url-queue-check-progress): Ensure
7687         that we have progress when fetching queued requests (bug#22576).
7689 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7691         Make mail-extract-address-components return the user name more
7693         * lisp/mail/mail-extr.el (mail-extract-address-components):
7694         Return the name even if it's the same as the mailbox name (if
7695         `mail-extr-ignore-single-names' isn't set) (bug#22594).
7697 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7699         Message no longer warns about unknown top level domains
7701 2016-02-07  Jarno Malmari  <jarno@malmari.fi>
7703         Add tests for url-auth
7705         * test/lisp/url/url-auth-tests.el: New file.
7707 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7709         Add a TLS connection test
7711         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
7712         a TLS connection test.
7714 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7716         Add more network tests
7718         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
7719         New test.
7721 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7723         Add network tests
7725         * test/lisp/net/network-stream-tests.el: New suite of network tests.
7727 2016-02-07  Foo  <rasmus@gmx.us>
7729         Allow various Gnus and Message address variables to be functions
7731         * doc/misc/gnus.texi (To From Newsgroups):
7732         gnus-ignored-from-addresses can be a function.
7734         * doc/misc/message.texi (Wide Reply):
7735         message-dont-reply-to-names can be a function.
7737         * lisp/gnus/gnus-icalendar.el (gnus-icalendar-identities):
7738         message-alternative-emails can be a function.
7740         * lisp/gnus/gnus-notifications.el (gnus-notifications):
7741         message-alternative-emails can be a function (bug#22315).
7743         * lisp/gnus/gnus-sum.el
7744         (gnus-summary-from-or-to-or-newsgroups):
7745         gnus-ignored-from-addresses can be a function (bug#22315).
7747 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7749         Fix typo in Gnus regexp
7751         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Fix
7752         typo in last change to this regexp (bug#22592).
7754 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
7756         Port to FreeBSD x86
7758         Reported by Herbert J. Skuhra in:
7759         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00336.html
7760         * src/lisp.h (NONPOINTER_BITS) [__FreeBSD__]: Zero in this case too,
7761         since malloc always returns a multiple of 8 in FreeBSD.
7763 2016-02-07  Alan Mackenzie  <acm@muc.de>
7765         On leaving CC Mode, clean up by removing character properties.
7767         * lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
7768         all instances of the text properties/extents category, syntax-table,
7769         c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
7771 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7773         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Don't use
7774         the no-longer-existing message-valid-fqdn-regexp variable.
7776 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7778         Remove message-valid-fqdn-regexp, since it changes too much now
7779         * lisp/gnus/message.el (message-valid-fqdn-regexp): Remove.
7780         (message-bogus-recipient-p): Don't use it any more.
7781         (message-make-fqdn): Ditto.  Suggested by Lars-Johan Liman.
7783 2016-02-06  Paul van der Walt  <paul@denknerd.org>  (tiny change)
7785         * lisp/gnus/message.el (message-subject-re-regexp): Also match
7786         "Re :" as a "Re:" prefix (commonly used in France).
7788 2016-02-06  Adam Sjøgren  <asjo@koldfront.dk>
7790         * lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
7792 2016-02-06  David Edmondson  <dme@dme.org>
7794         src/process.c Correctly convert AF_INET6 addresses
7795         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
7796         converted to a list of 16 bit quantities by
7797         conv_sockaddr_to_lisp().  conv_lisp_to_sockaddr() should follow the
7798         same scheme rather than expecting a (longer) list of 8 bit
7799         quantities.
7801 2016-02-06  Martin Jesper Low Madsen  <martin@martinjlowm.dk>  (tiny change)
7803         * lisp/gnus/auth-source.el (auth-source-macos-keychain-search):
7804         Search for all host/port (or protocol) combinations for a match in
7805         the OS X keychain.
7807 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7809         Remove nonsensical setting of gnus-newsgroup-unseen
7811         * lisp/gnus/gnus-sum.el (gnus-update-marks): Remove nonsensical
7812         setting of gnus-newsgroup-unseen.
7814 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
7816         Use underline on all terminals that support it
7818         * lisp/subr.el (read-multiple-choice): Use
7819         display-supports-face-attributes-p instead of
7820         display-graphic-p to determine whether we can use underlining.
7822 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
7824         Make the nsm query say what it did after the user interaction
7826         * lisp/net/nsm.el (nsm-query): Issue a message about
7827         aborting/accepting messages (suggested by N. Jackson)
7828         (bug#22531).
7830 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
7832         Omit XLI (init) == 0 optimization in make-vector
7834         * src/alloc.c (Fmake_vector): Simplify by omitting the (XLI (init)
7835         == 0) case, as this optimization is probably not worth the hassle.
7836         Just for the record, the test for that case could have been
7837         (XLI (init) % ((EMACS_UINT) -1 / UCHAR_MAX) == 0) (!),
7838         assuming the typical platform with no padding bits and where
7839         conversion to int omits the most significant bits.
7841 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
7843         * autogen.sh: Port to dash (Bug#22556).
7845 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
7847         Minor cleanup for Tramp "doas".
7849         * doc/misc/tramp.texi (Inline methods): Add "doas" method.
7851         * etc/NEWS: Add Tramp connection method "doas".
7853         * lisp/net/tramp-sh.el (tramp-methods) <doas>:
7854         Add `tramp-remote-shell-args'.
7856 2016-02-05  Xi Lu  <lx@shellcodes.org>
7858         * lisp/net/tramp-sh.el (tramp-methods) <doas>: Add.  (Bug#22542)
7860         (tramp-default-user-alist): Add rule for "doas".
7861         (top): Completion function for "doas" is
7862         `tramp-completion-function-alist-su'.
7864 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
7866         Restore the window configuration
7868         * lisp/net/nsm.el (nsm-query-user): Restore the window
7869         configuration (bug#22532).
7871 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7873         Use an X popup in read-multiple-choice if running from a mouse command
7875         * lisp/subr.el (read-multiple-choice): Use an X popup if
7876         called from a mouse action (bug#19368).
7878 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7880         Display cursor in echo area when prompting
7882         * lisp/subr.el (read-multiple-choice): Display the cursor in
7883         the echo area when prompting (bug#19368).
7885 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7887         Make NSM prompting clearer
7889         * lisp/net/nsm.el (nsm-query-user): Use read-multiple-choice
7890         to prompt in a nicer way (bug#19368).
7892 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7894         Underline read-multiple-choice-face
7896         * lisp/faces.el (read-multiple-choice-face): Also underline
7897         the choice.
7899 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7901         Make the read-multiple-choice prompt a bit prettier
7903         * doc/lispref/commands.texi (Reading One Event): Mention
7904         read-multiple-choice-face.
7906         * lisp/subr.el (read-multiple-choice): Make the prompting a bit
7907         prettier.
7909 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
7911         Prefer memcpy and memset to doing it by hand
7913         * src/alloc.c (Fmake_vector):
7914         * src/ccl.c (setup_ccl_program):
7915         Use memset to clear array.
7916         * src/alloc.c (Fvector, Fmake_byte_code):
7917         * src/charset.c (Fdefine_charset_internal):
7918         Use memcpy to copy array.
7920 2016-02-04  Nicolas Petton  <nicolas@petton.fr>
7922         Do not ignore redirections of 301, 302 and 307 status codes
7924         The current version of HTTP/1.1 (RFC 7231) no longer requires
7925         confirmation on 301, 302 or 307 status codes, therefore we do not have
7926         to ignore redirects for other requests than GET and HEAD.
7928         * lisp/url/url-http.el (url-http-parse-headers): Do not ignore 301, 302
7929         and 307 redirects for other requests than GET and HEAD.
7931 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
7933         * lisp/net/eww.el (eww-switch-to-buffer): Use pop-to-buffer-same-window instead.
7935 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
7937         Simplify USE_ALIGNED_ALLOC
7939         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify, now that we’ve merged
7940         in the emacs-25 changes.  Omit no-longer-needed decl for aligned_alloc.
7942 2016-02-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
7944         Honor docstring of gnus-group-get-new-news
7946         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg
7947         is t, but non-numeric, unconditionally consider all groups to need
7948         updating.
7950 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7952         New function read-multiple-choice
7954         * doc/lispref/commands.texi (Reading One Event): Document
7955         read-multiple-choice.
7957         * lisp/faces.el (read-multiple-choice-face): New face.
7959         * lisp/subr.el (read-multiple-choice): New function.
7961 2016-02-04  John Wiegley  <johnw@newartisans.com>
7963         Merge from origin/emacs-25
7965         ee73997 Make erc work better when encountering unknown prefix chars
7966         b99141d Make erc completion case-insensitive again
7967         66c4620 Make complection in erc use consistent casing
7968         8c562b2 Make /QUIT in erc more robust
7969         d93d2c5 Make tracking faces in Emacs work more reliably
7970         af6ab7e Make shr not bug out on images on non-graphical displays
7971         3311f40 Fix bookmark display widths
7972         d90ab1e Fix typo in eww-make-unique-file-name
7973         7f81825 Make it possible to TAB to input fields
7974         a43a1dc Insert complete alt texts when images are disabled
7975         56ed4e1 Allow eww text fields to grow
7976         66b315c Make erc work when subword-mode is switched on
7977         255b68f Fix IMAP doc example
7978         91557f5 Quoting fixes in doc strings and diagnostics
7979         2c0dc9f Fix warning message in hack-local-variables
7980         504696d Etags: yet another improvement in Ruby tags
7981         8784ebf Fix x-popup-menu on TTYs without a mouse
7982         8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the
7983                 pcase macro
7984         6191003 Use pop-to-buffer-same-window in eww
7985         fe321fd * autogen.sh: Revert all recent changes.
7986         74ebd4a * make-dist: Updates related to nt/.
7987         737193a * make-dist: Add modules/.
7988         3696bf2 * make-dist: Update for super-special file that can't live in etc/.
7989         a4278e2 Fix failure to compile ns-win.el in parallel builds
7990         860da4d Fix names of tags generated for Ruby accessors
7991         f6213ce Fix file-name recognition in 'etags'
7992         e42e662 Change Ruby file names and extensions recognized by 'etags'
7993         58bfb6a More improvements for Ruby support in 'etags'
7994         c04e911 Add --git-config option to autogen.sh
7995         5713466 Fix editing undo changes in eww fields
7996         51362d6 Allow the user more control of popping up the eww window
7997         ee0fbd8 Make eww-browse-url with new-window parameter work again
7998         9c3142d Clean up eww code slightly
7999         cb035f3 Don't insert nil faces in shr
8000         4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary.
8001         93f2153 Improve the custom type of some user options.
8002         9f60d7e Mark some risky calendar variables.
8003         1d07dcd Highlight two additional SCSS keywords
8004         ee8b466 Recommend enabling integrity-checking in git
8005         e639e10 Some corrections in Elisp manual
8006         d766ca8 Chatter when autogen.sh changes Git configuration
8007         3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
8008         43cb9f8 Omit unnecessary history from Lisp intro
8009         2fbd1da * etc/HISTORY: Add some more history, plus git tags.
8010         c90e1b4 Improve elisp “Security Considerations” doc
8011         cedd7ca autogen.sh now arranges for git to check hashes
8012         86ce76b ; Fix ChangeLog.2 commit ID.
8013         7b1d2b1 Fix (c & 040) typo in emergency escapes
8014         a8273da Fix display of overlay strings with 'display' and 'box' property
8015         fc48106 Fix imap-starttls-open
8016         cdecbed Fix return value of imap-starttls-open
8017         20c7e34 ; * etc/NEWS: Fix renamed command name
8018         98bdbdb Correct reference to DARWIN_OS preprocessor symbol
8019         b250d29 Spelling fix
8020         b920a0e Spelling fixes
8021         93b144b Pacify GCC on C library without glibc API
8023 2016-02-04  John Wiegley  <johnw@newartisans.com>
8025         Merge from origin/emacs-25
8027         ea26c8a * lisp/net/browse-url.el (browse-url-default-browser): Lower
8028                 priority of non-free Chrome.
8029         0fac75f Improve the custom type of some user options.
8030         2df0e04 Highlight CSS variables with variable name face
8031         3cf5e81 * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not
8032                 user-serviceable.
8033         2a5233c Mark some user options that can get evalled as risky.
8034         39b166f Disable DebPrint in sys_read on MS-Windows
8035         9fd0189 ;Fix ChangeLog entry
8036         4bb7233 Fix typos in Introduction to Emacs Lisp manual
8038 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
8040         Allow sending empty hidden values in eww
8042         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
8043         values (bug#22388).
8045         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
8047         Backport:
8049 2016-02-04  David Edmondson  <dme@dme.org>
8051         Make erc work better when encountering unknown prefix chars
8053         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
8054         instead of erroring out on unknown prefix chars (bug#22380).
8056 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
8058         Add a new command to switch between erc buffers
8060         * doc/misc/eww.texi: Document eww-switch-to-buffer and its keybinding
8061         * etc/NEWS: Mention new command
8062         * lisp/net/eww.el (eww-mode-map): Bind eww-switch-to-buffer to "s"
8063         (eww-mode-map): Add menu item
8064         (eww-switch-to-buffer): New command
8066 2016-02-04  David Edmondson  <dme@dme.org>
8068         Make erc work better when encountering unknown prefix chars
8070         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
8071         instead of erroring out on unknown prefix chars (bug#22380).
8073 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
8075         Allow sending empty hidden values in eww
8077         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
8078         values (bug#22388).
8080 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8082         Make erc completion case-insensitive again
8084         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
8085         case-insensitive again (bug#11360).
8087 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
8089         Make complection in erc use consistent casing
8091         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
8092         case in the complection consistent (bug#18509).
8094 2016-02-04  Francis Litterio  <flitterio@gmail.com>
8096         Make /QUIT in erc more robust
8098         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
8099         issuing /QUIT to disconnected servers (bug#22099).
8101 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
8103         Make tracking faces in Emacs work more reliably
8105         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
8106         faces to avoid later ambiguity (bug#22424).
8108 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8110         Make shr not bug out on images on non-graphical displays
8112         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
8113         images on non-graphical displays (bug#22327).
8115 2016-02-04  Andrew Hyatt  <ahyatt@gmail.com>
8117         Remove packages obsoleted before Emacs 24.
8119         In accordance with the policy discussed in the emacs-devel list,
8120         packages that have been obsoleted for a full major release cycle are up
8121         for deletion.
8123         This removes almost all packages that are now eligible for deletion,
8124         with the exception of "cl-compat", which seems it is likely to still be
8125         used, and "optional", which offers some functionality that doesn't have
8126         a replacement yet.
8128 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8130         Fix bookmark display widths
8132         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
8133         preparing it so that the widths are computed correctly (bug#22328).
8135 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8137         Fix typo in eww-make-unique-file-name
8139         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
8140         actually work.
8142 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8144         Make it possible to TAB to input fields
8146         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
8147         input fields (bug#22540).
8149 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8151         Insert complete alt texts when images are disabled
8153         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
8154         the complete alt/title string (bug#22293).
8156 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8158         Allow eww text fields to grow
8160         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
8161         grow when typing in stuff that's longer than the original width.
8163 2016-02-03  Dima Kogan  <dima@secretsauce.net>
8165         Make erc work when subword-mode is switched on
8167         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
8168         (erc-bounds-of-word-at-point): New functions to do word-based
8169         things when subword-mode is switched on.
8171         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
8172         (bug#17558).
8174 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
8176         Fix IMAP doc example
8178         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
8180 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8182         Quoting fixes in doc strings and diagnostics
8184         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
8185         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
8186         (mml-smime-get-ldap-cert):
8187         Follow user style preference when quoting diagnostics.
8189 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8191         Mention context when resume from emergency escape
8193         That way, if the user has been doing something else for a while,
8194         they are reminded of the situation when restarting Emacs,
8195         and are more likely to understand the two questions.
8196         * doc/emacs/trouble.texi (Emergency Escape): Document this.
8197         * src/keyboard.c (handle_interrupt): Implement this.
8199 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
8201         Fix warning message in hack-local-variables
8203         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
8204         the original buffer name in the warning message.  (Bug#21681)
8206 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
8208         Etags: yet another improvement in Ruby tags
8210         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
8211         Ruby accessor definitions.  (Bug#22241)
8213         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
8214         accessors and multiline definitions.
8215         * test/etags/ETAGS.good_1:
8216         * test/etags/ETAGS.good_2:
8217         * test/etags/ETAGS.good_3:
8218         * test/etags/ETAGS.good_4:
8219         * test/etags/ETAGS.good_5:
8220         * test/etags/ETAGS.good_6:
8221         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
8223 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
8225         Fix x-popup-menu on TTYs without a mouse
8227         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
8228         for the TTY case without a mouse.  (Bug#22538)
8230 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
8232         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
8234 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8236         Port aligned_alloc decl to Cygwin.
8238         Problem reported by Ken Brown (Bug#22522#38).
8239         * configure.ac (aligned_alloc): Check for decl too.
8240         * src/lisp.h (aligned_alloc): Declare if not already declared.
8242 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8244         autogen.sh now configures git only on request
8246         * autogen.sh (do_autoconf, do_git): New vars.
8247         Support new arguments --help, all, autoconf, git.
8248         By default, just do autoconf-related configuration, not git.
8249         Prefer 'echo' to 'cat <<EOF ...', as this tends to avoid temp files.
8250         If GNU cp is available, use it to backup .git/config before
8251         changing it.  When configuring git, chatter about what is being
8252         done, and configure git to check hashes.  Avoid some duplicate
8253         file name specification when creating git hooks.
8255         * GNUmakefile (ALL_IF_GIT): New macro.
8256         (configure): Use it.
8257         * INSTALL.REPO: Suggest './autogen.sh all'.
8259 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
8261         Use pop-to-buffer-same-window in eww
8263         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
8264         switch-to-buffer (bug#22244).
8266 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8268         * autogen.sh: Revert all recent changes.
8270 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8272         Build with C11 if available
8274         * admin/merge-gnulib (GNULIB_MODULES): Add std-gnu11.
8275         * m4/std-gnu11.m4: New file, from gnulib.
8276         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
8278 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8280         Update gnulib copy
8282         * doc/misc/texinfo.tex: Copy from gnulib.
8284 2016-02-02  Glenn Morris  <rgm@gnu.org>
8286         * make-dist: Updates related to nt/.
8288         * make-dist: Add modules/.
8290         * make-dist: Update for super-special file that can't live in etc/.
8292 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8294         Fix failure to compile ns-win.el in parallel builds
8296         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
8297         dependency on $(lispsource)/international/charprop.el.
8298         (Bug#22501)
8300 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8302         Fix names of tags generated for Ruby accessors
8304         * lib-src/etags.c (Ruby_functions): Don't include the leading
8305         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
8307         * test/etags/ETAGS.good_1:
8308         * test/etags/ETAGS.good_2:
8309         * test/etags/ETAGS.good_3:
8310         * test/etags/ETAGS.good_4:
8311         * test/etags/ETAGS.good_5:
8312         * test/etags/ETAGS.good_6:
8313         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
8315 2016-02-02  Glenn Morris  <rgm@gnu.org>
8317         * lisp/vc/add-log.el (change-log-directory-files, find-change-log):
8318         Doc tweaks.
8320 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8322         Fix file-name recognition in 'etags'
8324         * lib-src/etags.c (get_language_from_filename): If FILE includes a
8325         leading directory, compare only its basename to the known file
8326         names in lang_names[].
8328         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
8329         renaming.
8330         * test/etags/ETAGS.good_1:
8331         * test/etags/ETAGS.good_2:
8332         * test/etags/ETAGS.good_3:
8333         * test/etags/ETAGS.good_4:
8334         * test/etags/ETAGS.good_5:
8335         * test/etags/ETAGS.good_6:
8336         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
8337         to the results in Makefile due to the above etags.c fix.
8339 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8341         Change Ruby file names and extensions recognized by 'etags'
8343         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
8344         of Ruby files.
8345         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
8346         <lang_names>: Add Ruby_filenames to the Ruby entry.
8347         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
8348         (Bug#22241)
8350 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8352         Port better to platforms lacking aligned_alloc
8354         Problem reported by Ken Brown (Bug#22522).
8355         * src/lisp.h (hybrid_aligned_alloc)
8356         [HYBRID_MALLOC && !HAVE_ALIGNED_ALLOC]: New decl.
8358 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8360         Port malloc.h hygiene fix to LTO
8362         * src/alloc.c (__malloc_initialize_hook):
8363         Make it externally visible (Bug#22522).
8365 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8367         More improvements for Ruby support in 'etags'
8369         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
8370         alias_method.  Identify constants even if the assignment is not
8371         followed by whitespace.  (Bug#22241)
8373         * test/etags/ruby-src/test1.ruby: Add tests for constants,
8374         accessors, and alias_method.
8375         * test/etags/ETAGS.good_1:
8376         * test/etags/ETAGS.good_2:
8377         * test/etags/ETAGS.good_3:
8378         * test/etags/ETAGS.good_4:
8379         * test/etags/ETAGS.good_5:
8380         * test/etags/ETAGS.good_6:
8381         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
8383 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8385         Add --git-config option to autogen.sh
8387         * autogen.sh: New options --git-config, --help.
8388         (git_config): New shell var.  Alter function to respect this var.
8390 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
8392         Fix editing undo changes in eww fields
8394         * eww.el (eww-tag-form): Don't overwrite initial form data in text
8395         fields.
8396         (eww-process-text-input): Make `M-t' at the end of text fields work
8397         better (bug#19085).
8399 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8401         Allow the user more control of popping up the eww window
8403         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
8404         Michael Heerdegen) (bug#22244).
8406 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8408         Make eww-browse-url with new-window parameter work again
8410         * eww.el (eww-browse-url): Stay in the same buffer if we're
8411         already in a eww mode buffer so that eww-browse-url with a
8412         new-window parameter works (bug#22244).
8414 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8416         Clean up eww code slightly
8418         * eww.el (eww-browse-url): Clean up code slightly.
8420 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8422         Don't insert nil faces in shr
8424         * shr.el (shr-insert-table): Don't add nil faces, because that
8425         will show up in *Messages* as "Invalid face reference: nil [32
8426         times]".
8428 2016-02-01  Glenn Morris  <rgm@gnu.org>
8430         Make find-change-log prefer a VCS root, if no ChangeLog exists.
8432         * lisp/vc/add-log.el (change-log-directory-files): New option.
8433         (find-change-log): Respect change-log-directory-files.
8434         * doc/emacs/maintaining.texi (Change Log Commands):
8435         Mention change-log-directory-files.
8437 2016-02-01  Glenn Morris  <rgm@gnu.org>
8439         Improve the custom type of some user options.
8441         * lisp/autoinsert.el (auto-insert-alist):
8442         * lisp/replace.el (query-replace-from-to-separator):
8443         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
8444         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
8445         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
8446         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
8447         (prolog-mode-specificators, prolog-determinism-specificators)
8448         (prolog-directives, prolog-program-name, prolog-program-switches)
8449         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
8450         (prolog-prompt-regexp): Improve custom type.
8452 2016-02-01  Glenn Morris  <rgm@gnu.org>
8454         Mark some risky calendar variables.
8456         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
8457         Remove risky setting for deleted obsolete alias.
8458         (calendar-chinese-standard-time-zone-name)
8459         (calendar-chinese-daylight-saving-start)
8460         (calendar-chinese-daylight-saving-end):
8461         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
8462         (calendar-european-date-display-form)
8463         (calendar-american-date-display-form, calendar-date-display-form):
8464         * lisp/calendar/diary-lib.el (diary-remind-message)
8465         (diary-header-line-format):
8466         * lisp/calendar/solar.el (calendar-time-display-form)
8467         (calendar-location-name): Mark as risky.
8469 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
8471         Highlight two additional SCSS keywords
8473         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
8474         identifiers on the form !foo.
8475         (scss-bang-ids): New defconst holding SCSS identifiers on the form
8476         !foo.
8477         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
8478         `font-lock-builtin-face'.
8480         * test/indent/css-mode.css: Add bang rule test case.
8482         * test/indent/scss-mode.css: Add test cases for the introduced bang
8483         rules.
8485 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
8487         Recommend enabling integrity-checking in git
8489         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
8491         This is related to the autogen.sh changes made by Paul Eggert in
8492         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
8493         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
8494         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
8495         "Recommend these .gitconfig settings for git integrity." at
8496         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
8498 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
8500         Some corrections in Elisp manual
8502         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
8503         argument POSITION.
8504         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
8505         is an option.
8506         * doc/lispref/display.texi (Refresh Screen): Describe optional
8507         argument FRAME of `redraw-frame'.
8508         (Attribute Functions): Describe optional argument CHARACTER of
8509         `face-font'.
8510         (Defining Images): `image-load-path' is an option.
8511         (Beeping): `ring-bell-function' is an option.
8512         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
8513         argument of `set-frame-size' is optional.
8514         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
8515         is optional.
8516         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
8517         `set-transient-map'.
8518         * doc/lispref/minibuf.texi (Text from Minibuffer):
8519         `read-regexp-defaults-function' is an option.
8520         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
8521         * doc/lispref/modes.texi (Mode Line Variables):
8522         `mode-line-position' and `mode-line-modes' are variables, not
8523         options.
8524         * doc/lispref/strings.texi (Creating Strings): The START argument
8525         of `substring' is optional.
8526         * doc/lispref/text.texi (Buffer Contents): Describe optional
8527         argument NO-PROPERTIES of `thing-at-point'.
8528         (User-Level Deletion): Both arguments of
8529         `delete-trailing-whitespace' are optional.
8530         (Margins): Use @key{RET} instead of @kbd{RET}.
8531         * doc/lispref/windows.texi (Display Action Functions): Write
8532         non-@code{nil} instead of non-nil.
8533         (Choosing Window Options): The WINDOW arg of
8534         `split-window-sensibly' is optional.
8535         (Choosing Window Options): Write non-@code{nil} instead of
8536         non-nil.
8537         (Window Start and End): Both args of `window-group-end' are
8538         optional.
8540         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
8541         to POSITION to keep consisteny with doc-string.
8543 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
8545         Double static heap size.
8547         * src/sheap.h (STATIC_HEAP_SIZE): Double it, since it was too
8548         small on FreeBSD (Bug#22086).
8550 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
8552         Chatter when autogen.sh changes Git configuration
8554         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
8556 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
8558         * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
8560 2016-02-01  Michael Albinus  <michael.albinus@gmx.de>
8562         Fix Bug#20821
8564         * lisp/net/tramp.el (tramp-file-name-handler):
8565         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
8566         Use `tramp-drop-volume-letter'.  (Bug#20821)
8568 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8570         Omit unnecessary history from Lisp intro
8572         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
8573         (Conclusion): Reword so as not to talk about earlier versions
8574         of Emacs in what should be an intro.
8576 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8578         * etc/HISTORY: Add some more history, plus git tags.
8580 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8582         Improve elisp “Security Considerations” doc
8584         * doc/lispref/os.texi (Security Considerations):
8585         Mention call-process and rename-file as opposed to shell commands.
8586         Add some more cross-references.
8588 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8590         autogen.sh now arranges for git to check hashes
8592         Suggested by Karl Fogel in:
8593         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
8594         * autogen.sh: Do "git config transfer.fsckObjects true".
8596 2016-01-31  Dave Barker  <kzar@kzar.co.uk>
8598         Add ability to give rcirc servers an alias name
8600         * lisp/net/rcirc.el (rcirc-server-alist): Add :server-alias
8601         customization option.
8602         (rcirc, rcirc-connect): Take server alias into account.
8604 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8606         Fix (c & 040) typo in emergency escapes
8608         * src/keyboard.c (handle_interrupt): Fix recently-introduced
8609         typo (040 should have been ~040) that silently suppressed
8610         auto-saves after emergency escapes.  Redo comparison to avoid
8611         similar problems.
8613 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8615         Port new hybrid malloc to FreeBSD
8617         Problem reported by Wolfgang Jenkner in: http://bugs.gnu.org/22086#118
8618         * src/gmalloc.c (__malloc_initialize_hook, __after_morecore_hook)
8619         (__morecore) [HYBRID_MALLOC]: Define in this case too.
8621 2016-01-31  Wolfgang Jenkner  <wjenkner@inode.at>
8623         * configure.ac: Stop using mmap for buffers for FreeBSD.
8625 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
8627         Fix display of overlay strings with 'display' and 'box' property
8629         * src/xdisp.c (get_next_display_element): Take the box face from
8630         display stack level that comes from a buffer, not an overlay
8631         string.  (Bug#22499)
8633 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
8635         Fix imap-starttls-open
8637         * lisp/net/imap.el (imap-starttls-open): Log imap process
8638         output.  Call imap-parse-greeting.  (Bug#22500)
8640 2016-01-31  Michael Albinus  <michael.albinus@gmx.de>
8642         Merge changes from Tramp repository
8644         * doc/misc/Makefile.in (${buildinfodir}/tramp.info tramp.html):
8645         No EXTRA_OPTS needed.
8647         * doc/misc/tramp.texi: Merge changes from Emacsemacs-25
8648         branch, especially for @trampfn{}.
8649         (Top): Move @ifnottex down.
8650         (History): XEmacs support has been removed.
8651         (GVFS based methods, Remote processes): Do not use emacsgvfs flag.
8652         (Auto-save and Backup): Use both syntax versions.
8653         (File name Syntax): Remark on IPv6 adresses is valid for
8654         unified syntax only.
8656         * doc/misc/trampver.texi: Do not set emacsgvfs flag.
8658 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
8660         Fix return value of imap-starttls-open
8662         * lisp/net/imap.el (imap-starttls-open): Fix return value.
8664 2016-01-31  John Wiegley  <johnw@newartisans.com>
8666         Correct reference to DARWIN_OS preprocessor symbol
8668         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
8669           not be defined.
8671 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8673         Spelling fixes
8675         Spelling fix
8677         Spelling fixes
8679 2016-01-30  Glenn Morris  <rgm@gnu.org>
8681         * lisp/vc/add-log.el (find-change-log): Use locate-dominating-file.
8683 2016-01-30  Matthew Carter  <m@ahungry.com>
8685         Quote table names for postgres listings (sql-mode)
8687         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
8688           unquoted table names to the completion list.
8690 2016-01-30  Glenn Morris  <rgm@gnu.org>
8692         Change Smerge "Mine" and "Other" for "Upper" and "Lower.  (Bug#20878)
8694         * lisp/vc/smerge-mode.el (smerge-diff-switches)
8695         (smerge-context-menu, smerge-match-conflict, smerge-swap): Doc fixes.
8696         (smerge-upper, smerge-upper-face, smerge-keep-upper)
8697         (smerge-diff-base-upper): Rename from smerge-mine, smerge-mine-face,
8698         smerge-keep-mine, smerge-diff-base-mine.  Update all uses.
8699         (smerge-mine-face, smerge-other-face): Remove obsolete face aliases.
8700         (smerge-lower, smerge-lower-face, smerge-lower-re, smerge-keep-lower)
8701         (smerge-diff-base-lower): Rename from smerge-other, smerge-other-face,
8702         smerge-other-re, smerge-keep-other, smerge-diff-base-lower.
8703         Update all uses.
8704         (smerge-basic-map): Add "l" and "u" bindings.
8705         (smerge-mode-menu): Update menu bindings for renaming.
8706         (smerge-font-lock-keywords): Update face names.
8707         (smerge-match-names): Update names.
8708         (smerge-diff-upper-lower): Rename from smerge-diff-mine-other.
8709         (smerge-match-conflict, smerge-ediff): Rename local variables.
8710         (smerge-makeup-conflict): Relabel markers.
8711         (smerge-parsep-re): Use renamed variables.
8713 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8715         Port recent my_edata change to MS-Windows
8717         * src/lastfile.c (my_edata): Also define if WINDOWSNT.
8719 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8721         Pacify GCC on C library without glibc API
8723         Without this change, with --enable-gcc-warnings GCC would complain
8724         “error: redundant redeclaration of ‘aligned_alloc’”.
8725         * configure.ac: Simplify aligned_alloc testing.
8726         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
8727         since the simplified configure.ac no longer checks for that.
8728         Don’t declare if HAVE_ALIGNED_ALLOC.
8729         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
8731 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8733         Tell Automake the new lib/Makefile.am is OK
8735         * lib/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
8737 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8739         Make it easy to override preferred-branch test
8741         * Makefile.in (preferred-branch-is-current):
8742         Rename from emacs-25-branch-is-current.  All uses changed.
8743         (PREFERRED_BRANCH): New macro.
8745 2016-01-30  Glenn Morris  <rgm@gnu.org>
8747         * lisp/net/browse-url.el (browse-url-default-browser):
8748         Lower priority of non-free Chrome.
8750 2016-01-30  Glenn Morris  <rgm@gnu.org>
8752         Improve the custom type of some user options.
8754         * lisp/desktop.el (desktop-minor-mode-table):
8755         * lisp/man.el (Man-frame-parameters):
8756         * lisp/midnight.el (midnight-delay):
8757         * lisp/speedbar.el (speedbar-select-frame-method):
8758         * lisp/tooltip.el (tooltip-frame-parameters):
8759         * lisp/tree-widget.el (tree-widget-space-width):
8760         * lisp/type-break.el (type-break-keystroke-threshold):
8761         * lisp/woman.el (woman-imenu-generic-expression):
8762         * lisp/cedet/ede.el (ede-debug-program-function):
8763         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
8764         * lisp/emulation/viper-keym.el (viper-toggle-key):
8765         * lisp/erc/erc-networks.el (erc-server-alist):
8766         * lisp/gnus/message.el (message-deletable-headers, message-signature):
8767         * lisp/mail/mailalias.el (mail-directory-stream):
8768         * lisp/play/tetris.el (tetris-x-colors):
8769         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
8771 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
8773         Highlight CSS variables with variable name face
8775         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
8776         (css--font-lock-keywords): Highlight variables in
8777         `font-lock-variable-name-face'.
8779 2016-01-30  Glenn Morris  <rgm@gnu.org>
8781         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
8783 2016-01-30  Glenn Morris  <rgm@gnu.org>
8785         Mark some user options that can get evalled as risky.
8787         * lisp/allout.el (allout-title):
8788         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
8789         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
8790         * lisp/progmodes/gud.el (gud-tooltip-display):
8791         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
8792         Mark as risky.
8794 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
8796         Disable DebPrint in sys_read on MS-Windows
8798         * src/w32.c (sys_read): Disable a debugging print that is normal
8799         when non-blocking reads are retried.
8801 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
8803         ;Fix ChangeLog entry
8805 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
8807         Fix typos in Introduction to Emacs Lisp manual
8809         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
8810         (kill-new function, Digression into C)
8811         (Complete forward-sentence, Divide and Conquer, Find a File)
8812         (lengths-list-many-files, Columns of a graph, defcustom)
8813         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
8814         <dbastos@toledo.com>.
8816 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8818         Shrink static heap a bit
8820         * src/sheap.h: Include lisp.h, for Lisp_Object.
8821         (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
8822         Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
8823         conservative than the old value.
8824         (Bug#22086)
8826 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8828         Fix extern symbols defined and not used
8830         * src/alloc.c: Always include <signal.h>.
8831         (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
8832         Do not define; unused.
8833         * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
8834         * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
8835         to avoid collision with glibc.  Now static.  All uses changed.
8836         * src/lastfile.c (my_edata): Define only if
8837         ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
8838         WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
8839         (Bug#22086)
8841 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8843         Build lib/e-*.o only on platforms that need it
8845         * configure.ac (hybrid malloc): Simplify configuration.
8846         (SHEAP_OBJ): Remove; no longer needed.
8847         (HYBRID_MALLOC): New var. Subst it.
8848         (HYBRID_MALLOC_LIB): New Automake conditional.
8849         * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
8850         HYBRID_MALLOC_LIB.
8851         (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
8852         (MOSTLYCLEANFILES): Add libegnu.a.
8853         * src/Makefile.in (SHEAP_OBJ): Remove.
8854         (HYBRID_MALLOC): New macro.
8855         (base_obj): Use it to conditionally add sheap.o.
8856         (LIBEGNU_ARCHIVE): New macro.
8857         ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
8858         All uses of the latter replaced by the former.
8859         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
8860         Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
8861         * src/gmalloc.c: Update comment.
8862         * src/lisp.h (aligned_alloc)
8863         [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
8864         New decl.
8865         (Bug#22086)
8867 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8869         Include <malloc.h> when advisable
8871         This should help insulate us better from future glibc changes.
8872         It is good hygiene to include .h files for APIs that Emacs uses.
8873         Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
8874         * configure.ac: Check for malloc.h.
8875         * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
8876         not on DOUG_LEA_MALLOC.
8877         * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
8878         Remove decl (now in lisp.h).
8879         * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
8880         [emacs]: Include lisp.h.
8881         [HAVE_MALLOC_H]: Include <malloc.h>.
8882         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
8883         (__after_morecore_hook, __malloc_initialize_hook, __morecore)
8884         (__default_morecore):
8885         [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
8886         (calloc): Make it clear that the macro should not be used.
8887         Remove unused decl.
8888         (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
8889         (__morecore, __default_morecore, __after_morecore_hook)
8890         (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
8891         (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
8892         Remove later decls.
8893         (gmalloc_hook, gfree_hook, grealloc_hook):
8894         Rename from __malloc_hook, __free_hook, __realloc_hook to
8895         avoid type collision with glibc <malloc.h>.  All uses changed.
8896         (gmalloc_hook):
8897         (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
8898         Now static.
8899         (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
8900         (__malloc_initialize_hook, __after_morecore_hook):
8901         Declare with types compatible with glibc.
8902         (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
8903         Remove.  All uses removed.
8904         * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
8905         * src/ralloc.c, src/vm-limit.c:
8906         Simplify includes and include <malloc.h> if available.
8908 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8910         * src/alloc.c: Include "sheap.h".
8912         (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
8913         Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
8914         * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
8915         Declare unconditionally.
8916         * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
8917         (unexec): Don’t set or clear bss_sbrk_did_unexec;
8918         the caller now does this.
8919         (Bug#22086)
8921 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8923         Pacify --enable-gcc-warnings when HYBRID_MALLOC
8925         * src/buffer.c (init_buffer):
8926         * src/emacs.c (main):
8927         * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
8928         Use emacs_get_current_dir_name, not get_current_dir_name.
8929         * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
8930         (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
8931         * src/emacs.c: Include "sheap.h".
8932         (report_sheap_usage): Remove decl.
8933         (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
8934         Don't assume ptrdiff_t can be printed as int.
8935         * src/gmalloc.c [HYBRID_MALLOC]:
8936         Include "sheap.h" rather than declaring its contents by hand.
8937         (get_current_dir_name, gget_current_dir_name)
8938         (hybrid_get_current_dir_name): Remove.
8939         (emacs_abort): Remove duplicate decl.
8940         (aligned_alloc): Undef, like malloc etc.
8941         (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
8942         Make it a bit more efficient.
8943         (malloc_find_object_address): Remove unused decl.
8944         (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
8945         (mstats, memory_warnings): Declare only if GC_MCHECK.
8946         * src/lisp.h (emacs_get_current_dir_name):
8947         New decl, replacing get_current_dir_name.
8948         * src/sheap.c: Include sheap.h first.
8949         (STATIC_HEAP_SIZE): Remove; now in sheap.h.
8950         (debug_sheap): Now static.
8951         (bss_sbrk_buffer_end): Remove; no longer used.
8952         (bss_sbrk_ptr): Now static and private.
8953         (bss_sbrk_did_unexec): Now bool.
8954         (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
8955         (bss_sbrk): Don't treat request_size 0 as special, since the code
8956         works without this being a special case.
8957         Avoid overflow if request size exceeds INT_MAX.
8958         (report_sheap_usage): Remove; now done in emacs.c.
8959         * src/sheap.h: New file.
8960         * src/sysdep.c (get_current_dir_name): Remove macro.
8961         Include "sheap.h".
8962         (emacs_get_current_dir_name): Rename function from
8963         get_current_dir_name.  Handle HYBRID_MALLOC here;
8964         this is simpler.
8965         (Bug#22086)
8967 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8969         Report static heap usage on non-Cygwin, too
8971         * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
8972         * src/unexcw.c (unexec): ... instead of here, since sheap can be used
8973         on platforms other than Cygwin (Bug#22086).
8975 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8977         Pacify GCC on extern decls
8979         * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
8980         to pacify recent GCC (Bug#22086).
8982 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
8984         Add musl patch to support HYBRID_MALLOC on elf systems
8986         * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
8987         (__default_morecore): Here, in particular.
8988         * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
8989         New variable SHEAP_OBJ.
8990         * src/Makefile.in: Use it.
8991         (Bug#22086)
8993 2016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
8995         unexelf.c hook to support HYBRID_MALLOC on ELF
8997         * src/unexelf.c (unexec) [HYBRID_MALLOC]:
8998         Define bss_sbrk_did_unexec (Bug#22086).
9000 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
9002         Link temacs with gnulib compiled with -Demacs
9004         This is done to support HYBRID_MALLOC, since some static variables
9005         (e.g., last_environ in putenv.c) hold pointers to memory malloced
9006         before dumping (Bug#22086).
9007         * lib/Makefile.am: Add incantation to install libegnu.a.
9008         * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
9009         (temacs$(EXEEXT)): Use it.
9011 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
9013         Internal linkage for gmalloc etc. if HYBRID_MALLOC
9015         This avoids clashes with symbols if the after-dump malloc is
9016         derived from Doug Lea's implementation (Bug#22086).
9018         * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
9019         Move declarations up.  For HYBRID_MALLOC, turn all `extern'
9020         declarations below to `static' ones.
9021         (aligned_alloc): Declare for !MSDOS as well.
9022         (heapsize, _fraghead): Move resp. copy declaration downwards.
9023         For HYBRID_MALLOC, conditionalize out the other definitions,
9024         since the previous `static' declarations double as tentative
9025         definitions, anyway.
9026         (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
9027         (__realloc_hook, __memalign_hook): Conditionalize out.
9028         (cfree, memalign, valloc): Ditto.
9030 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9032         Merge from origin/emacs-25
9034         3f481ad Rename xref-query-replace to xref-query-replace-in-results
9035         62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
9036         2111e0e Comment out next-error-function integration in xref
9037         4e11ad3 Correct a use of "which" in intro.texi
9038         a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
9039         76045f7 Don't operate on menu bar of nonexistent frame
9040         c32f3bc Unbreak the GNUstep build.
9042 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
9044         Re-enable checks in member, memql, delete to complain about non-lists
9046         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
9048 2016-02-04  Martin Rudalics  <rudalics@gmx.at>
9050         Minor doc(-string) tweaks
9052         * lisp/window.el (window-in-direction): Fix doc-string typo.
9053         * doc/lispref/frames.texi (Frame Font): Mention canonical
9054         character width/height.
9055         * doc/lispref/windows.texi (Windows and Frames): Clarify
9056         handling of minibuffer window for `window-in-direction'.
9057         (Window Sizes): Minor tweaks in descriptions of
9058         `window-max-chars-per-line', `window-min-width' and
9059         `window-min-size'.
9060         (Deleting Windows): Minor tweak in `delete-window' description.
9061         (Selecting Windows): Clarify window use time description.
9062         (Cyclic Window Ordering): Minor tweak.
9063         (Switching Buffers): Clarify description of
9064         `switch-to-buffer-in-dedicated-window'.
9066 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
9068         Remove some useless-use-of eval.
9070         * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
9071         * lisp/gnus/nnrss.el (xml): Simply require it.
9072         (xml-rpc-method-call): Use declare-function.
9074 2016-01-28  Glenn Morris  <rgm@gnu.org>
9076         Don't use eval to quieten prolog.el compilation.
9078         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
9079         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
9081 2016-01-28  Glenn Morris  <rgm@gnu.org>
9083         Mark some risky prolog variables.
9085         * lisp/progmodes/prolog.el (prolog-system-version)
9086         (prolog-keywords, prolog-types, prolog-mode-specificators)
9087         (prolog-determinism-specificators, prolog-directives)
9088         (prolog-program-name, prolog-program-switches)
9089         (prolog-consult-string, prolog-compile-string)
9090         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
9091         Mark anything processed by prolog-find-value-by-system as risky.
9093 2016-01-28  Glenn Morris  <rgm@gnu.org>
9095         * lisp/custom.el (defcustom): Doc fix.
9097         * doc/lispref/customize.texi (Variable Definitions):
9098         Defcustom should always have a type.
9100 2016-01-28  Glenn Morris  <rgm@gnu.org>
9102         * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
9103         Warn if defcustom has no type.  (Bug#16276)
9105         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
9106         Fix :type.
9108         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
9110 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
9112         Fix Bug#22452
9114         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
9115         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
9116         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
9117         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
9118         Mark it as connected.
9120         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
9121         connection property "connected" is set.  (Bug#22452)
9123 2016-01-27  Glenn Morris  <rgm@gnu.org>
9125         * test/lisp/vc/vc-hg.el: Move from test/automated/.
9127         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
9129         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
9130         if not compiled with xwidgets.
9132 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9134         C-u C-x = example doc fix
9136         * doc/emacs/mule.texi (International Chars):
9137         Adjust example to match current behavior of C-u C-x =.
9139 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9141         malloc.h hygiene
9143         This attempts to future-proof Emacs a bit against possible glibc
9144         changes, by having Emacs use <malloc.h> declarations rather than
9145         coding them up by hand.  Problem noted by Florian Weimer in:
9146         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
9147         Implement this mainly by moving malloc.h-related functions from
9148         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
9149         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
9150         New function.
9151         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
9152         (alloc_unexec_pre, alloc_unexec_post): New functions.
9153         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
9154         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
9155         (__malloc_initialize_hook): Use it.
9156         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
9157         Move here from ...
9158         * src/emacs.c: ... here.
9159         (malloc_get_state, malloc_set_state): Remove extern decls.
9160         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
9161         All uses changed to similarly-named new function.
9162         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
9163         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
9164         New decls.
9166 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
9168         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
9170 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9172         Remove never-set var handle_user_signal_hook
9174         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
9175         Remove never-set var.  All uses removed.
9177 2016-01-26  Anders Lindgren  <andlind@gmail.com>
9179         Fixed NextStep fullscreen issue (bug#22468)
9181         When in fullscreen mode, `[screen visibleFrame]' sometimes
9182         includes, sometimes excludes the menu bar. This could cause
9183         a frame to be placed too low when in fullscreen mode.
9185         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
9186         (constrain_frame_rect): New parameter, isFullscreen, when true don't
9187         query the height of the menu bar.
9188         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
9189         `constrain_frame_rect'.
9190         ([EmacsView initFrameFromEmacs:]): Trace.
9191         ([EmacsView isFullscreen]): Trace.
9192         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
9193         state to `constrain_frame_rect'.
9195 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9197         * lisp/files.el: Use a fixed file name for the second dir-locals file
9199         (dir-locals-file): Revert to its original fixed value.
9200         (dir-locals-file-2): New const.
9201         (dir-locals--all-files): Don't use `file-name-all-completions'.
9202         Instead, just check for the 2 dir-locals files and return a list
9203         of the ones that exit (if any).
9205         * etc/NEWS: Document the change.
9207         * doc/emacs/custom.texi (Directory Variables): Document the change.
9209         * doc/lispref/variables.texi (Directory Local Variables): Update
9210         accordingly.
9212 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9214         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
9216         Change a variable name to be more meaningful, and reorder some of
9217         the code with no change in behavior.
9219 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9221         * lisp/files.el (dir-locals-find-file): Refactor return values
9223         Returning a cache remains unchanged, but the case of returning a
9224         file (or pattern) is now changed to return the contaning
9225         directory.
9227         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
9228         and make obsolete.
9229         (dir-locals-read-from-dir): Simplify accordingly.
9230         (hack-dir-local-variables): Simplify accordingly and rename a
9231         variable.
9233 2016-01-25  Glenn Morris  <rgm@gnu.org>
9235         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
9236         Declare.
9238         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
9240         * configure.ac (--with-cairo): Say it's experimental.
9242         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
9243         Rename using American spelling.  Update all uses.
9245 2016-01-25  Glenn Morris  <rgm@gnu.org>
9247         Yet more xwidget doc fixes.
9249         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
9250         (xwidget-insert, xwidget-webkit-browse-url)
9251         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
9252         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
9253         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9254         (xwidget-webkit-show-id-element)
9255         (xwidget-webkit-show-id-or-named-element)
9256         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
9257         (xwidget-webkit-execute-script-rv)
9258         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
9259         (xwidget-put):  Doc fixes.
9260         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9261         (xwidget-webkit-show-id-element)
9262         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
9264 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
9266         * lisp/gnus/gnus-art.el (gnus-blocked-images):
9267         Add explicit nil choice and tags.
9269 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9271         Spelling fixes
9273 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9275         (rng-c-fix-escaped-newlines): Use subst-char-in-string
9277         * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
9278         Use subst-char-in-string.
9280 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9282         * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
9284         (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
9285         (sgml-calculate-indent): Use it.
9287 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9289         * lisp/org: Fix some compiler warnings
9291         * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
9292         (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
9293         (*this*): Declare as dyn-bound.
9294         (org-babel-expand-src-block, org-babel-load-in-session)
9295         (org-babel-switch-to-session-with-code, org-babel-get-rownames):
9296         Mark unused args.
9297         (org-babel-combine-header-arg-lists): Remove unused var `args'.
9298         (org-babel-find-named-block): Remove unused var `msg'.
9300         * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
9301         Declare as dyn-bound.
9302         (org-edit-src-code): Remove unused var `lfmt'.
9303         (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
9305 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9307         * lisp/font-lock.el: Use #' to quote function symbols
9309 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9311         (font-lock-ensure-function): Fix bug#22399
9313         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
9314         font-lock-mode is not enabled (bug#22399).
9316 2016-01-25  Alan Mackenzie  <acm@muc.de>
9318         Expunge "allow" + infinitive from source and doc, part 2.
9320         Do the same for "permit", "enable", "prevent", and (where appropriate)
9321         "require".
9323         doc/misc/reftex.texi:
9324         doc/misc/url.texi:
9325         lib/get-permissions.c:
9326         lib/strftime.c:
9327         lisp/org/org-element.el:
9328         lisp/org/org-mobile.el:
9329         lisp/textmodes/reftex-vars.el:
9330         src/bidi.c:
9331         src/emacs.c:
9332         src/xdisp.c:
9333         test/etags/c-src/emacs/src/lisp.h:
9335         Expunge the likes of "This allows to do something" from the above files.
9337 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9339         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
9341         `special-mode' is already read-only.
9343 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9345         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
9347 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9349         Port "$@" to OpenIndiana ksh93
9351         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
9352         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
9353         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
9354         bug in long-dead shells, so remove the workaround.
9355         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
9356         Use plain "$@" rather than ${1+"$@"}.
9358 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9360         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
9362 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9364         Improve wording for SMB support
9366         * doc/misc/tramp.texi (External methods): Improve and modernize
9367         wording for discussion of smbclient.  There is no longer any
9368         need to mention the laundry list of old MS Windows implementations
9369         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
9371 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9373         Merge from gnulib
9375         This incorporates:
9376         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
9377         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
9378         2016-01-15 detect utimes() correctly on OS/2 kLIBC
9379         2016-01-15 openat_proc_name: port to OS/2 kLIBC
9380         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
9381         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
9382         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
9383         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
9384         2016-01-14 sig2str: list all signals on FreeBSD >= 7
9385         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
9386         2016-01-12 mktime: rename macro to avoid glibc clash
9387         2016-01-12 Port "$@" to OpenIndiana ksh93
9388         2016-01-12 Port Universal Time settings to strict POSIX
9389         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
9390         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
9391         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
9392         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
9393         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
9394         * m4/fcntl.m4, m4/utimes.m4:
9395         Copy from gnulib.
9396         * m4/gnulib-comp.m4: Regenerate.
9398 2016-01-24  Alan Mackenzie  <acm@muc.de>
9400         Expunge "allow" + infinitive without direct object from source and doc.
9402         Do the same for "permit", "enable", and "prevent".
9404         * doc/emacs/mule.texi:
9405         * doc/lispref/control.texi:
9406         * doc/lispref/display.texi:
9407         * doc/lispref/frames.texi:
9408         * doc/lispref/functions.texi:
9409         * doc/lispref/nonascii.texi:
9410         * doc/lispref/streams.texi:
9411         * doc/lispref/windows.texi:
9412         * doc/misc/dbus.texi:
9413         * doc/misc/eww.texi:
9414         * doc/misc/flymake.texi:
9415         * doc/misc/octave-mode.texi:
9416         * doc/misc/org.texi:
9417         * doc/misc/reftex.texi:
9418         * doc/misc/tramp.texi:
9419         * doc/misc/wisent.texi:
9420         * etc/NEWS:
9421         * lisp/autorevert.el:
9422         * lisp/cedet/mode-local.el:
9423         * lisp/cedet/semantic/senator.el:
9424         * lisp/cedet/semantic/wisent.el:
9425         * lisp/dos-fns.el:
9426         * lisp/frameset.el:
9427         * lisp/gnus/gnus-agent.el:
9428         * lisp/gnus/mm-util.el:
9429         * lisp/international/characters.el:
9430         * lisp/ldefs-boot.el:
9431         * lisp/mail/mailclient.el:
9432         * lisp/man.el:
9433         * lisp/mh-e/mh-search.el:
9434         * lisp/net/tramp-cmds.el:
9435         * lisp/net/tramp-gvfs.el:
9436         * lisp/org/org-crypt.el:
9437         * lisp/org/org-element.el:
9438         * lisp/org/org-feed.el:
9439         * lisp/org/org.el:
9440         * lisp/org/ox-ascii.el:
9441         * lisp/org/ox-icalendar.el:
9442         * lisp/org/ox-publish.el:
9443         * lisp/org/ox.el:
9444         * lisp/play/gamegrid.el:
9445         * lisp/play/gomoku.el:
9446         * lisp/progmodes/antlr-mode.el:
9447         * lisp/progmodes/python.el:
9448         * lisp/progmodes/vhdl-mode.el:
9449         * lisp/strokes.el:
9450         * lisp/textmodes/ispell.el:
9451         * lisp/tree-widget.el:
9452         * lisp/vc/pcvs.el:
9453         * lisp/window.el:
9454         * src/lisp.h:
9455         * src/w32.c:
9456         * src/w32heap.c:
9457         * src/w32term.c:
9458         * src/window.c:
9459         * src/xfaces.c:
9461         Replace solecisms like "This allow to do something" with a correct
9462         alternative, such as "This allow you to do something", "This allows
9463         something to be done" or "This allows the doing of something".
9465 2016-01-24  l3thal  <kwhite@gnu.org>
9467         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
9469 2016-01-24  Kelvin White  <kwhite@gnu.org>
9471         Add NEWS entry for asynchronous reconnect in ERC
9473 2016-01-24  l3thal  <kwhite@gnu.org>
9475         Add NEWS entry for asynchronous reconnect in ERC
9477 2016-01-24  Kelvin White  <kwhite@gnu.org>
9479         browse-url.el: Add 'google-chrome' to supported browsers.
9481 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9483         Port Tramp manual to latest Texinfo
9485         Otherwise, 'make pdf' did not work (Bug#22416).
9486         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
9487         (trampfn): Specialize to the case where METHOD is nonempty.
9488         The 2nd argument is now user@host, not 2nd user and 3rd host args.
9489         All uses changed.
9490         (trampf): New macro.
9492 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
9494         * eww.el (eww-render): Protect against empty content-types.
9496 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
9498         authors.el updates
9500         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
9501           Additions.
9503 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
9505         Rename xref-query-replace to xref-query-replace-in-results
9507         * lisp/progmodes/xref.el(xref-query-replace):
9508         Rename to xref-query-replace-in-results.
9509         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
9511         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
9512         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
9513         * doc/emacs/dired.texi (Operating on Files):
9514         * doc/emacs/maintaining.texi (Xref Commands)
9515         (Identifier Search, Identifier Search): Update accordingly.
9517 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
9519         Update cl-defgeneric and cl-defmethod docstrings
9521         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
9522         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
9523         (cl-defmethod): Mention that multiple dispatch arguments are
9524         allowed.  Document supported types.  (Bug#22336)
9526 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
9528         Comment out next-error-function integration in xref
9530         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
9531         Comment out next-error-function integration
9532         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
9534 2016-01-23  John Wiegley  <johnw@newartisans.com>
9536         Correct a use of "which" in intro.texi
9538 2016-01-23  Alan Mackenzie  <acm@muc.de>
9540         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
9542         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
9543         context of case labels (including "default") more rigorously.
9544         (c-guess-basic-syntax CASE 15): Consequential amendment.
9546         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
9548 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
9550         Don't operate on menu bar of nonexistent frame
9552         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
9553         is valid before redisplaying its menu. Fixes bug#22438.
9555 2016-01-23  Anders Lindgren  <andlind@gmail.com>
9557         Unbreak the GNUstep build.
9559         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
9560         predefined "caution" image. Add trace.
9561         (x_set_window_size): Remove unused variables `cols' and `rows'.
9562         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
9563         GNUstep is used.
9564         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
9565         ([EmacsWindow zoom:]): Remove unused variable `f'.
9567 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
9568             John Wiegley  <johnw@gnu.org>
9569             Michael Heerdegen  <michael_heerdegen@web.de>
9571         Improve documentation of 'pcase'
9573         * doc/lispref/control.texi (Pattern matching case statement):
9574         Reorganize, expand, and improve wording.
9576         * etc/NEWS: Mention that 'pcase' changes are documented.
9578 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9580         * etc/NEWS: Say that Cairo is experimental.
9582 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9584         Report error for PNG under Cairo
9586         * src/image.c (lookup_rgb_color): Signal a file error instead
9587         of dumping core when mishandling an image.
9589 2016-01-23  Arash Esbati  <esbati@gmx.de>
9591         Delete a spurious backquote (tiny change)
9593         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
9594         spurious backquote which raises an error with emacs 25.
9596 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9598         Pacify --enable-gcc-warnings --with-cairo
9600         Problem reported by Alexander Kuleshov in:
9601         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
9602         * src/gtkutil.c (xg_get_page_setup):
9603         Use switch rather than if-then-else.
9604         * src/image.c (COLOR_TABLE_SUPPORT):
9605         Define directly rather than via #define and optional later #undef.
9606         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
9607         Crash when the pixel is undefined, as there is a genuine bug
9608         here (Bug#22442).
9609         * src/image.c (tiff_load, gif_load, svg_load_image)
9610         (x_kill_gs_process) [USE_CAIRO]:
9611         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
9612         Omit unused locals, or move them to where they’re needed.
9613         (x_clear_area1): Now ATTRIBUTE_UNUSED.
9615 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9617         Update documentation for Dired search and replace
9619         * doc/emacs/dired.texi (Operating on Files): Update descriptions
9620         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
9621         'dired-do-find-regexp-and-replace'.
9623         * etc/NEWS: Mention xref-related changes in Dired.
9625 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
9627         Port recent xdisp.c fix to picky C compilers
9629         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
9630         putting #if inside the arguments to a standard function, which
9631         the C standard says has undefined behavior.
9633 2016-01-22  Alan Mackenzie  <acm@muc.de>
9635         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
9637         * cc-engine.el (c-forward-declarator): New function.
9638         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
9639         contained in the preceding arg list.
9641         * cc-fonts.el (c-font-lock-declarators): Use the new function
9642         `c-forward-declarator' in place of inline code.
9644 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9646         Fix the build with --enable-checking=glyphs
9648         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
9649         build without xwidget support.
9651 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9653         Document cl-generic.el
9655         * doc/lispref/functions.texi (Generic Functions): New section.
9656         (Bug#22336)
9657         (Functions): Update the chapter menu.
9658         * doc/lispref/elisp.texi: Update the master menu.
9660 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
9662         xwidgets style cleanup
9664         Adjust the newly-added Xwidgets code so that it uses a more-typical
9665         Emacs style.  This should not affect behavior, except that in
9666         a few places it adds runtime checks that Lisp arguments are of
9667         the proper type, and in one place it uses more-precise arithmetic.
9668         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
9669         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
9670         Include xwidget.h unconditionally.
9671         * src/buffer.c (Fkill_buffer):
9672         * src/dispnew.c (update_window):
9673         * src/emacs.c (main):
9674         * src/print.c (print_object):
9675         * src/window.c (Fdelete_window_internal):
9676         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
9677         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
9678         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
9679         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
9680         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
9681         Call xwidget functions and macros without worrying about
9682         HAVE_XWIDGETS when the code is a no-op on non-xwidget
9683         platforms.
9684         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
9685         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
9686         (struct it.xwidget):
9687         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
9688         Always define.
9689         * src/emacsgtkfixed.h: Omit unnecessary comment.
9690         * src/keyboard.c: Fix spacing.
9691         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
9692         Define to be a no-op if not HAVE_XWIDGETS.
9693         * src/xwidget.c: Include xwidget.h first (after config.h)
9694         to make sure that it can stand by itself.
9695         (Fmake_xwidget, Fxwidget_webkit_execute_script):
9696         Fix typo in doc string.
9697         (Fmake_xwidget): Check type of args.
9698         (Fmake_xwidget, offscreen_damage_event)
9699         (webkit_document_load_finished_cb, webkit_download_cb)
9700         (webkit_new_window_policy_decision_requested_cb)
9701         (webkit_navigation_policy_decision_requested_cb)
9702         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
9703         (xwidget_osr_event_set_embedder, xwidget_init_view):
9704         Omit unnecessary casts.
9705         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
9706         (xwidget_show_view, xwidget_hide_view)
9707         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
9708         (xwidget_touched):
9709         * src/xwidget.h (struct xwidget.kill_without_query)
9710         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
9711         Use bool for boolean.
9712         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
9713         Simplify by using list functions.
9714         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
9715         (Fxwidget_resize): Check type of integer args
9716         before doing any work.  Check that they are nonnegative.
9717         (Fxwidget_set_adjustment): Check type of integer arg.
9718         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
9719         Simplify.  Use double, not float.
9720         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
9721         (valid_xwidget_spec_p): Simplify.
9722         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
9723         * src/xwidget.h: Include lisp.h first, so that includers do
9724         not need to worry about doing that before including this file.
9725         Make this .h file safe to include even on non-HAVE_XWIDGETS
9726         configurations, to simplify the includers.
9727         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
9728         (xwidget_end_redisplay, lookup_xwidget)
9729         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
9730         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
9731         (struct glyph_matrix, struct glyph_string, struct xwidget)
9732         (struct xwidget_view, struct window):
9733         New forward or incomplete decls, so that includers need not
9734         assume the corresponding .h files are already included, or that
9735         HAVE_XWIDGETS is defined.
9736         (struct xwidget_type, xwidget_from_id): Remove; unused.
9738 2016-01-22  John Wiegley  <johnw@newartisans.com>
9740         Further corrections to the pcase docstring
9742 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9744         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
9746 2016-01-21  Stephen Leake  <stephen_leake@stephe-leake.org>
9748         In xref-collect-references, force backends to respect the 'dir' arg
9750         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
9751         to use `default-directory'.
9753 2016-01-21  John Wiegley  <johnw@newartisans.com>
9755         Minor correction to pcase docstring
9757 2016-01-21  John Wiegley  <johnw@newartisans.com>
9759         Write a new docstring for the pcase macro
9761         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
9763 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
9765         Avoid byte-compiler warning in todo-mode (bug#21953)
9767         * todo-mode.el (todo-convert-legacy-files): Add limit argument
9768         to looking-back to comply with advertised-calling-convention.
9770 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
9772         Fix desktop support in todo-mode and doc-view (bug#22377)
9774         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
9775         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
9777         * lisp/calendar/todo-mode.el (todo-modes-set-2):
9778         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
9780 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
9782         No need to configure gobject-introspection
9784         It wasn’t needed for the recently-installed xwidget_mvp code; see:
9785         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
9786         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
9787         (HAVE_GIR):
9788         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
9789         Remove.  All uses removed.
9790         * configure.ac (emacs_config_features): Don’t worry about GIR.
9792 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
9794         Don’t export C symbols not used elsewhere
9796         These were recently added, mostly as part of xwidget code.
9797         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
9798         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
9799         Now static functions here, not macros in emacsgtkfixed.h.
9800         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
9801         Remove.  All uses replaced by definiens.
9802         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
9803         Remove; these are now static functions in emacsgtkfixed.c.
9804         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
9805         Remove; unused.
9806         (emacs_fixed_get_type): Remove decl; no longer extern.
9807         * src/xwidget.c (offscreen_damage_event)
9808         (webkit_mime_type_policy_typedecision_requested_cb)
9809         (webkit_new_window_policy_decision_requested_cb)
9810         (webkit_navigation_policy_decision_requested_cb)
9811         (xwidget_spec_value, xwidget_view_lookup)
9812         (xwidget_start_redisplay, xwidget_touch):
9813         Now static.
9814         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
9815         Remove decls.
9817 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
9819         Support squiggly heredocs in ruby-mode
9821         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
9822         Support squiggly heredocs added in Ruby 2.3.
9824         * test/indent/ruby.rb: Add squiggly example.
9826 2016-01-20  Glenn Morris  <rgm@gnu.org>
9828         * configure.ac (emacs_config_features): Remove WEBKIT.
9830 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
9832         Port to platforms with gtk3 but not webkitgtk3
9834         I ran into this problem on my Fedora 23 installation;
9835         Emacs configured but did not build when --with-xwidgets was specified.
9836         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
9837         (DOES_XWIDGETS_USE_GIR): New var.
9838         If --with-xwidgets is specified, report an error if not
9839         doable, to be consistent with the other --with options.
9840         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
9841         not work at all without webkitgtk3.  Simplify use of
9842         EMACS_CHECK_MODULES.  Output message about gobject
9843         introspection only if xwidgets are used.
9844         * etc/NEWS: Users need webkitgtk3, not merely webkit.
9845         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
9846         since this file is no longer compiled if webkitgtk3 is not available.
9848 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
9850         Fix doc string of 'isearch-search-fun-function'
9852         * lisp/isearch.el (isearch-search-fun-function)
9853         (isearch-search-string): Doc fixes.  (Bug#22411)
9855 2016-01-19  Stefan Monnier  <monnier@iro.umontreal.ca>
9857         * lisp/xwidget.el: Nitpicks
9859         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
9860         Use with-current-buffer rather than save-excursion + set-buffer.
9862 2016-01-19  Glenn Morris  <rgm@gnu.org>
9864         Don't hard-code 1 as point-min.
9866         * lisp/image-mode.el (image-display-size):
9867         * lisp/xwidget.el (xwidget-webkit-last-session)
9868         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
9870 2016-01-19  Glenn Morris  <rgm@gnu.org>
9872         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
9874 2016-01-19  Glenn Morris  <rgm@gnu.org>
9876         Trivial doc copyedits.
9878         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
9879         (Fxwidget_webkit_get_title, Fxwidget_resize)
9880         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
9881         (Fxwidget_info, Fxwidget_view_lookup)
9882         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
9884 2016-01-19  Glenn Morris  <rgm@gnu.org>
9886         Avoid advising image-display-size for xwidgets.
9888         * lisp/xwidget.el (xwidget-image-display-size): Remove.
9889         (image-display-size): Remove advice.
9890         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
9891         (image-display-size): Incorporate xwidget code directly.
9893 2016-01-19  Glenn Morris  <rgm@gnu.org>
9895         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
9897         * lisp/xwidget.el (window-configuration-change-hook)
9898         (kill-buffer-query-functions): Only modify these hooks if
9899         compiled with xwidget support.
9901 2016-01-19  Glenn Morris  <rgm@gnu.org>
9903         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
9905         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
9907         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
9909         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
9911 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
9913         * lisp/gnus/nnir.el (nnir-request-update-mark):
9914         Default to the original mark.
9915         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
9916         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
9918 2016-01-19  Glenn Morris  <rgm@gnu.org>
9920         * lisp/xwidget.el (report-xwidget-bug): Remove.
9922         (top-level): No longer require reporter.
9924 2016-01-19  Joakim Verona  <joakim@verona.se>
9925             Grégoire Jadi  <daimrod@gmail.com>
9927         Support for the new Xwidget feature.
9929         * configure.ac:
9930         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
9931         * xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
9932         * xdisp.c:
9933         (handle_display_spec, handle_single_display_spec, push_it)
9934         (pop_it, set_iterator_to_next, dump_glyph)
9935         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
9936         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
9937         (produce_xwidget_glyph, x_produce_glyphs)
9938         (get_window_cursor_type):
9939         * window.c (Fdelete_window_internal):
9940         * termhooks.h (e):
9941         * print.c (print_object):
9942         * lisp.h (ptrdiff_t):
9943         * keyboard.c (kbd_buffer_get_event, make_lispy_event)
9944         (syms_of_keyboard):
9945         * emacs.c (main):
9946         * dispnew.c (update_window, scrolling_window):
9947         * dispextern.h (g, i):
9948         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
9949         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
9950         * keyboard.c (kbd_buffer_get_event):
9951         * emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
9952         (emacs_fixed_class_init): Add case for an xwidget view.
9954         * xwidget.c, xwidget.h, xwidget.el: New files for xwidgets
9957         Various improvements to the Xwidget feature.
9958         * xwidgets.c:
9959         * emacsgtkfixed.c:
9960         * xwidget.el:
9962 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
9964         Improve documentation of 'alist-get'
9966         * doc/lispref/variables.texi (Setting Generalized Variables): Add
9967         'alist-get' to the list of functions that can appear in PLACE
9968         argument of 'setf'.
9970 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
9972         Minor copyedits of doc/emacs/maintaining.texi
9974         * doc/emacs/maintaining.texi (List Identifiers): More accurate
9975         description of "C-M-i" wrt tags tables.
9976         (Tags Tables): Move the definition of "tag" to a footnote.
9978 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
9980         Unbreak the Cygwin-w32 build
9982         * src/w32fns.c (globals_of_w32fns): Move the initialization of
9983         resetstkoflw into a part that isn't compiled on Cygwin.
9984         (Bug#22403)
9986 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9988         * shr.el (shr-table-body): Allow tables to have text children.
9990 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
9992         Cope with multiple overlapping faces.
9994         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
9995           left.
9996           (hfy-face-resolve-face): Handle font specification as well as font
9997           name. Documentation update. (Bug#21990)
9999 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10001         Fix spurious escapes in describe-input-method
10003         Problem reported by Vincent Belaïche (Bug#22309).
10004         * lisp/international/mule-cmds.el (describe-language-environment):
10005         * lisp/international/quail.el (quail-help):
10006         Apply substitute-command-keys to doc strings before displaying them.
10008 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
10010         Bump version to 25.0.90
10012         * README:
10013         * configure.ac:
10014         * msdos/sed2v2.inp: Bump version to 25.0.90.
10016 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
10018         * etc/AUTHORS: Update the AUTHORS file
10020 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
10022         authors.el updates
10024         * admin/authors.el (authors-renamed-files-alist): Additions.
10026 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
10028         Make it possible to run make change-history on emacs-25
10030         * Makefile.in: Check if the current branch is emacs-25 instead of
10031           master.
10033 2016-01-30  lu4nx  <lx@shellcodes.org>
10035         Support Go language in 'etags'
10037         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
10038         <Go_help>: New help.
10039         <Go_suffixes>: New variable.
10040         (Go_functions): New function.
10041         <lang_names>: Add entry for Go.  (Bug#22370)
10043         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
10044         * doc/man/etags.1: Mention Go support.
10046         * etc/NEWS: Mention Go support.
10048         * test/etags/go-src/test.go:
10049         * test/etags/go-src/test1.go: New test files.
10050         * test/etags/Makefile (GOSRC): New variable.
10051         (SRCS): Add $(GOSRC).
10052         * test/etags/ETAGS.good_1:
10053         * test/etags/ETAGS.good_2:
10054         * test/etags/ETAGS.good_3:
10055         * test/etags/ETAGS.good_4:
10056         * test/etags/ETAGS.good_5:
10057         * test/etags/ETAGS.good_6:
10058         * test/etags/CTAGS.good: Adapt to addition of Go tests.
10060 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
10062         Improve Ruby support in 'etags'
10064         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
10065         singleton classes.  Remove class qualifiers from tags generated
10066         for method and constant names.  (Bug#22241)
10068         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
10069         are tagged by etags in Ruby.
10071         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
10073         * test/etags/ruby-src/test1.ruby: Add more tests.
10074         * test/etags/ETAGS.good_1:
10075         * test/etags/ETAGS.good_2:
10076         * test/etags/ETAGS.good_3:
10077         * test/etags/ETAGS.good_4:
10078         * test/etags/ETAGS.good_5:
10079         * test/etags/ETAGS.good_6:
10080         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
10081         tests.
10083 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
10085         Adjust etags test results to changes in copyright years
10087         * test/etags/CTAGS.good:
10088         * test/etags/ETAGS.good_1:
10089         * test/etags/ETAGS.good_2:
10090         * test/etags/ETAGS.good_3:
10091         * test/etags/ETAGS.good_4:
10092         * test/etags/ETAGS.good_5:
10093         * test/etags/ETAGS.good_6: Adjust to shift in characters and
10094         in line numbers.
10096 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
10098         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
10100         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
10102 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
10104         Make it possible to run make change-history on emacs-25
10106         * Makefile.in: Check if the current branch is emacs-25 instead of
10107           master.
10109 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
10111         Don't fiddle with DEFAULT
10113         * lisp/progmodes/project.el (project--completing-read-strict):
10114         Don't change DEFAULT, whether is has any matches in
10115         COLLECTION, or not.
10117 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
10119         Document xwidget commands and functions
10121         * doc/lispref/display.texi (Xwidgets): New section, describes some
10122         of the xwidget primitives.
10123         * doc/lispref/display.texi (Display): Update the chapter menu.
10124         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
10125         * doc/emacs/emacs.texi (Top): Update the master menu to include
10126         the xwidget node.
10128 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
10130         Build fix for shr.el
10132         * shr.el (seq): Require.
10134 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
10136         Improve project-find-file yet again!
10138         * lisp/progmodes/project.el (project--completing-read-strict):
10139         New function.
10140         (project-find-file-in): Use it.
10141         (project-file-completion-table): Move the default
10142         implementation inside the cl-defgeneric form.
10143         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
10145 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
10147         Don't pass DIR to 'hg status'
10149         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
10150         Don't pass DIR to 'hg status' (bug#22481).
10152 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
10154         Fix typo in previous commits
10156         * lisp/progmodes/project.el (project-find-file-in):
10157         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
10158         commit.
10160 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
10162         Improve project-find-file
10164         * lisp/progmodes/project.el (project-file-completion-table): New.
10165         (project-find-file, project-or-external-find-file): Default to filename
10166         at point.
10167         (project-file-completion-table): New, split out from
10168         project--find-file-in.
10169         (project-find-file-in): Renamed from project--find-file-in, use
10170         project-file-completion-table.
10172         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
10173         (xref--find-ignores-arguments): Add doc string.
10175 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
10177         Implement vc-mtn-find-ignore-file, fix some doc strings
10179         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
10181         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
10183         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
10185         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
10187 2016-01-23  Michael Albinus  <michael.albinus@gmx.de>
10189         Improve user name completion in Tramp
10191         * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
10192         Call also "getent passwd" or "getent group", if possible.
10193         (tramp-parse-putty): Cache the result.
10195 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
10197         * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
10199 2016-01-20  Glenn Morris  <rgm@gnu.org>
10201         Remove handling of non-string time-stamp formats, obsolete for 20 years.
10203         * lisp/time-stamp.el (time-stamp-format): Doc fix.
10204         (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
10205         (time-stamp-string): Ignore non-string formats.
10207 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
10209         Anoter fix for problematic merge from emacs-25
10211         * src/w32fns.c (globals_of_w32fns): Move initialization of
10212         resetstkoflw to a non-Cygwin part.
10214 2016-01-20  Michael Albinus  <michael.albinus@gmx.de>
10216         * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
10218 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
10220         Fix MS-Windows build broken by a botched merge from emacs-25
10222         * src/w32.c (w32_crypto_hprov): New static variable.
10223         (globals_of_w32): Initialize w32_crypto_hprov.
10224         (w32_init_crypt_random, w32_init_random): New functions.
10225         Include wincrypt.h.
10226         * src/w32.h (w32_init_random): Add prototype.
10228 2016-01-20  Vincent Belaïche  <vincentb1@users.sourceforge.net>
10230         Correct a whole bunch of bugs coming with renamed cell relocation.
10232         * lisp/ses.el (ses-localvars): rename variable
10233         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
10234         and adjust the comment about it.
10235         (ses-plist-delq): new defun.
10236         (ses--ses-buffer-list): new defvar.
10237         (ses--unbind-cell-name): new defun.
10238         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
10239         (ses-relocate-formula): Undo change of
10240         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
10241         preventing relocation for named cell --- now doing this is delegated
10242         to function `ses-relocate-symbol'.
10243         (ses-relocate-range): In docstring, undo change of
10244         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
10245         lower case as it is not a variable.
10246         (ses-relocate-all): Cell name relocation : 1) check that cell is a
10247         renamed cell by testing `ses-cell' property to :ses-named, rather than
10248         comparing name to corresponding standard name. Set rowcol of renamed
10249         cell into the hashmap --- `ses-cell' property must not be used for
10250         that as the same name can be used for different locations in different
10251         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
10252         `local-variable-p' to check if cell name is already in use in this
10253         sheet or needs initialization.
10254         (ses-relocate-all): Cell value relocation : 1) like for name
10255         relocation use the `ses-cell' property rather than comparing actual
10256         name to corresponding standard name. 2) Correct bug introduced in
10257         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
10258         made the other way round than the intention --- ie value relocation
10259         was disabled for standard cell, not for renamed cell as was the
10260         intention.
10261         (ses-relocate-all): Add loop for unbinding deleted renamed cells
10262         names.
10263         (ses-killbuffer-hook): new defun.
10264         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
10265         kill buffer hook, plus pushing current buffer if new in list.
10266         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
10267         into `ses--in-killing-named-cell-list'.
10268         (ses-rename-cell): Remove update of variable
10269         `ses--renamed-cell-symb-list', this variable is renamed to
10270         `ses--in-killing-named-cell-list', and its setting is done in
10271         functions `ses-delete-row' and , `ses-delete-column' now.
10272         (ses-rename-cell): Make cell new name a buffer local variable.
10273         (ses-rename-cell): Change correction of
10274         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
10275         computation of the range over which `cursor-intangible' property was
10276         to be updated. This correction was ok for non spilling cells, but not
10277         for cells spilling over following blank cells. Simply use
10278         `next-single-property-change' rather than computing the end column
10279         from column widths.
10281 2016-01-19  John Wiegley  <johnw@newartisans.com>
10283         Merge from origin/emacs-25
10285         3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
10286         6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
10287         2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
10288         71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
10289         f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
10290         86e4513 Fix incompatbilities with MS-Windows 2000 and older
10291         4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
10292         15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
10293         39afa42 Fix tests for active region in hideif.el
10294         05df666 Fix interactive specs in some hideif.el commands
10296 2016-01-19  John Wiegley  <johnw@newartisans.com>
10298         -
10300 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10302         Avoid stdio in SIGINT handler
10304         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
10305         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
10306         * lib/ignore-value.h: New file, from gnulib.
10307         * src/keyboard.c: Include it.
10308         (write_stdout, read_stdin): New functions.
10309         (handle_interrupt): Use them instead of printf and getchar,
10310         and avoid fflush when handling signals.
10312 2016-01-19  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
10314         Refactor mml-smime.el, mml1991.el, mml2015.el
10316         (Maybe this is the last merge from Gnus git to Emacs git)
10318         Cf. discussion on ding mailing list, messages in
10319         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
10320         Common code from the three files mml-smime.el, mml1991.el, and
10321         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
10322         to gnus-util.el.
10324         The code is supported by test cases with necessary test keys.
10326         Documentation in message.texi is updated.
10328         * doc/misc/message.texi (Security, Using S/MIME):
10329         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
10330         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
10331         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
10333         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
10334         New functions.
10336         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
10337         (epa--select-keys): Autoload.
10338         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
10339         (mml-secure-openpgp-signers): New user option;
10340         make mml1991-signers and mml2015-signers obsolete aliases to it.
10341         (mml-secure-smime-signers): New user option;
10342         make mml-smime-signers an obsolete alias to it.
10343         (mml-secure-openpgp-encrypt-to-self): New user option;
10344         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
10345         aliases to it.
10346         (mml-secure-smime-encrypt-to-self): New user option;
10347         make mml-smime-encrypt-to-self an obsolete alias to it.
10348         (mml-secure-openpgp-sign-with-sender): New user option;
10349         make mml2015-sign-with-sender an obsolete alias to it.
10350         (mml-secure-smime-sign-with-sender): New user option;
10351         make mml-smime-sign-with-sender an obsolete alias to it.
10352         (mml-secure-openpgp-always-trust): New user option;
10353         make mml2015-always-trust an obsolete alias to it.
10354         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
10355         New user options.
10356         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
10357         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
10358         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
10359         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
10360         (mml-secure-passphrase-callback, mml-secure-check-user-id)
10361         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
10362         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
10363         (mml-secure-fingerprint, mml-secure-filter-keys)
10364         (mml-secure-normalize-cust-name, mml-secure-select-keys)
10365         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
10366         (mml-secure-self-recipients, mml-secure-recipients)
10367         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
10369         * lisp/gnus/mml-smime.el: Require epg;
10370         refactor declaration and autoloading of epg functions.
10371         (mml-smime-use): Doc fix.
10372         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
10373         Obsolete.
10374         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
10375         Use format instead of gnus-format-message.
10376         (mml-smime-epg-secret-key-id-list): Remove variable.
10377         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
10378         (mml-smime-epg-find-usable-secret-key): Remove functions.
10379         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
10381         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
10382         (mml1991-passphrase-cache-expiry): Obsolete.
10383         (mml1991-epg-secret-key-id-list): Remove variable.
10384         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
10385         (mml1991-epg-find-usable-secret-key): Remove functions.
10386         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
10388         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
10389         (mml2015-passphrase-cache-expiry): Obsolete.
10390         (mml2015-epg-secret-key-id-list): Remove variable.
10391         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
10392         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
10393         (mml2015-epg-find-usable-secret-key): Remove functions.
10394         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
10395         (mml2015-epg-encrypt): Refactor.
10397 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10399         Merge from gnulib
10401         This mostly just updates copyright dates of gnulib files.
10402         It also updates to the latest version of texinfo.tex.
10404 2016-01-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10406         Move variables to inner loop, preparing for Mac port merge
10408         * src/keyboard.c (command_loop_1): Move variables `cmd',
10409         `keybuf', and `i' to inner loop.
10411 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10413         Minor improvements to (random t) documentation
10415         * doc/lispref/numbers.texi (Random Numbers):
10416         * src/fns.c (Frandom):
10417         Omit unnecessary details about randomness fallback.
10418         Say that it is a fallback.
10420 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
10422         Rename methods in Ruby etags example file
10424         * test/etags/ruby-src/test.rb: Rename the example methods to
10425         correspond to the common terminology used in Ruby.
10426         * test/etags/CTAGS.good:
10427         * test/etags/ETAGS.good_1:
10428         * test/etags/ETAGS.good_2:
10429         * test/etags/ETAGS.good_3:
10430         * test/etags/ETAGS.good_4:
10431         * test/etags/ETAGS.good_5:
10432         * test/etags/ETAGS.good_6: Adjust accordingly.
10434 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10436         Propertize backtick in 'def `(abc)' as symbol constituent
10438         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
10439         Propertize backtick in 'def `(abc)' as symbol constituent.
10440         (ruby-syntax-propertize-function):
10441         Rename to ruby-syntax-propertize.
10443 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10445         Fix scrolling under scroll-preserve-screen-position on TTY
10447         * src/window.c (window_scroll_line_based): When setting point to
10448         preserve screen coordinates, don't let cursor enter either of the
10449         two scroll margins.  (Bug#22395)
10451 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10453         Fix shr table rendering of nested tables
10455         * shr.el (shr-table-body): Don't include all tbodies in nested
10456         tables in the levels above.
10458 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10460         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
10462 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10464         Add xref-based replacements for Dired search commands
10466         * lisp/dired-aux.el (dired-do-find-regexp)
10467         (dired-do-find-regexp-and-replace): New commands.
10468         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
10470         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
10471         `Q' to the new commands.
10473         * lisp/progmodes/xref.el (xref-query-replace)
10474         (xref-collect-matches): Add progress reporters.
10475         (xref--find-ignores-arguments): Return nil for zero ignores.
10476         (xref--show-xrefs): Add an optional argument.
10477         (xref-collect-matches): Drop the assert.  'find' accepts a
10478         regular file in place of directory argument, too.
10480 2016-01-18  Alan Mackenzie  <acm@muc.de>
10482         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
10484 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10486         Improve user documentation of Xref
10488         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
10489         (Looking Up Identifiers, Identifier Search, List Identifiers):
10490         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
10491         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
10492         for the details.
10494 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10496         Fix scrolling under scroll-preserve-screen-position and margins
10498         * src/window.c (window_scroll_pixel_based): When setting point to
10499         preserve screen coordinates, don't let cursor enter either of the
10500         two scroll margins.  Fix incorrect usage of
10501         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
10502         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
10504 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10506         Unbreak the MS-Windows build
10508         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
10509         WINDOWSNT, to avoid link failure.  (Bug#22202)
10511 2016-01-18  Alan Mackenzie  <acm@muc.de>
10513         Desktop: protect users against inadvertant upgrading of desktop file.
10515         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
10517         * etc/NEWS: Add an entry about upgrading a desktop file.
10519         * lisp/desktop.el (desktop-file-version): Amend doc string.
10520         (desktop-native-file-version, desktop-io-file-version): new variables.
10521         (desktop-clear): Set desktop-io-file-version to nil.
10522         (desktop-buffer-info): make the presence of the last item on the list
10523         conditional on (>= desktop-io-file-version 208).
10524         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
10525         Amend the doc string.  Add code to determine the output file version.
10526         (desktop-create-buffer): Set desktop-io-file-version to the input file's
10527         version.
10529 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10531         Initialize GnuTLS before calling gnutls_rnd
10533         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
10534         Don’t set gnutls_global_initialized if gnutls_global_init fails.
10535         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
10536         if 2.12 or later, which has gnutls_rnd.
10537         (emacs_gnutls_global_init, gnutls_rnd): New fallback
10538         placeholder macros if before 2.12.
10539         (init_random): Initialize gnutls globals before trying to
10540         use gnutls_rnd.
10542 2016-01-17  Andreas Schwab  <schwab@linux-m68k.org>
10544         Don't use GnuTLS before it is initialized
10546                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
10548 2016-01-17  Bill Wohler  <wohler@newt.com>
10550         * mh-e.el (mh-version): Add +git to version.
10552 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10554         Port cleanup attribute to OpenBSD
10556         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
10557         sprintf, and this messes up 'configure' when it tests for the cleanup
10558         attribute.  Work around the problem by using __has_attribute directly.
10559         Problem reported by Joakim Jalap (Bug#22385).
10560         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
10561         * m4/ax_gcc_var_attribute.m4: Remove.
10562         * src/conf_post.h (__has_attribute): Provide a substitute, for
10563         non-GCC or older GCC compilers.  All uses changed to assume
10564         the substitute.  Check for the cleanup attribute.
10565         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
10567 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10569         Prefer GnuTLS when acquiring random seed
10571         This attempts to improve on the fix for Bug#22202.
10572         * configure.ac (HAVE_DEV_URANDOM): Remove.
10573         Check /dev/urandom existence at run time, not at build time,
10574         since the device could exist in the former but not the latter.
10575         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
10576         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
10577         (random_seed): New typedef.
10578         (set_random_seed): New static function.
10579         (seed_random): Use them.
10580         (init_random): Use random_seed instead of uintmax_t, so as to
10581         not consume more entropy than needed.  Prefer gnutls_rnd if it
10582         works; this avoids a redundant open of /dev/urandom on
10583         GNU/Linux with modern GnuTLS.
10585 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10587         Improve documentation of dynamic modules
10589         * doc/lispref/loading.texi (How Programs Do Loading): Update the
10590         description of searching for files in 'load' when Emacs was built
10591         with support for dynamic modules.
10593 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10595         * INSTALL: Document --with-modules.
10597 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10599         Document 'function-put'
10601         * doc/lispref/symbols.texi (Symbol Plists): Document
10602         'function-put'.  Update documentation of 'function-get'.
10604 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10606         Document 'funcall-interactively'
10608         * doc/lispref/commands.texi (Interactive Call): Document
10609         'funcall-interactively'.
10610         * doc/lispref/functions.texi (Calling Functions): Mention
10611         'funcall-interactively' and provide a cross-reference.
10613 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10615         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
10617         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
10619 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10621         Document renaming of selection-related functions
10623         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
10624         functions into the corresponding "gui-*" functions.  Make the
10625         description slightly less X-centric.
10627 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10629         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
10631 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10633         Document 'define-inline'
10635         * doc/lispref/functions.texi (Defining Functions): Document
10636         'define-inline' and related macros.
10638         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
10640 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10642         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
10644         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
10646 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10648         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
10650         instead of manually writing a dir-locals file.
10652 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10654         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
10656         (dir-locals-file)
10657         * lisp/files-x.el (modify-dir-local-variable)
10658         * lisp/dos-fns.el (dosified-file-name)
10659         * lisp/help-fns.el (describe-variable): Change accordingly.
10661 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
10663         Fix incompatbilities with MS-Windows 2000 and older
10665         * src/w32.c <multiByteToWideCharFlags>: New global variable.
10666         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
10667         Use it instead of the literal MB_ERR_INVALID_CHARS.
10668         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
10669         appropriate for the underlying OS version.  For details, see
10670         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
10671         * src/w32.h: Declare multiByteToWideCharFlags.
10672         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
10673         (add_tray_notification): Use multiByteToWideCharFlags instead of
10674         the literal MB_ERR_INVALID_CHARS.
10675         (_resetstkoflw_proc): New typedef.
10676         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
10677         pointer, as this function is absent in msvcrt.dll shipped with W2K
10678         and older systems.
10680 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10682         Mention in PROBLEMS an issue with MS-Windows NT4
10684         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
10685         on Windows NT4.  For the details, see
10686         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
10688 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
10690         Ensure 8-byte aligned memory allocation on MS-Windows 9X
10692         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
10693         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
10694         (malloc_after_dump_9x, realloc_after_dump_9x)
10695         (free_after_dump_9x): New functions.  (Bug#22379)  See also
10696         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
10697         for more details about the original problem.
10699         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
10700         (free_after_dump_9x): Add prototypes.
10702 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10704         Fix tests for active region in hideif.el
10706         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
10707         'use-region-p' to test whether to operate on region, instead of
10708         testing 'mark-active'.
10710 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10712         Fix interactive specs in some hideif.el commands
10714         * lisp/progmodes/hideif.el (hif-evaluate-macro)
10715         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
10716         in commands that should only act on the region if it's active.
10718 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
10720         Enable test selector from command line
10722         * test/automated/Makefile.in: Change variable manipulation to avoid
10723           over-writing selector.
10725 2016-01-15  Alan Mackenzie  <acm@muc.de>
10727         Don't confuse "::" with ":" when trying to parse member initializers.
10729         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
10730         more robustly for ":" token when searching backwards for it.
10732         * lisp/progmodes/cc-langs (c-:$-multichar-token-regexp): New language
10733         variable.
10735 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10737         Ensure positive number of glyphs for margins of positive width
10739         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
10740         positive value when a non-zero width of the marginal area was
10741         requested.  (Bug#22356)
10743 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10745         Fix crashes when mini-window has non-zero margins
10747         * src/window.c (resize_frame_windows): Use 'new_size' to set
10748         minibuffer window's 'total_cols' value, as 'size' might be in
10749         pixels.  (Bug#22356)
10751 2016-01-15  Alan Mackenzie  <acm@muc.de>
10753         In comment-dwim with style `extra-line', respect indent-tabs-mode.
10755         This fixes bug #22369.
10757         * lisp/newcomment.el (comment-make-bol-ws): New function.
10758         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
10760 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10762         Make 'random' seeds cryptographically secure if possible
10764         * configure.ac: Check for "/dev/urandom".
10766         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
10767         for the seed from "/dev/urandom".
10768         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
10769         * src/fns.c (Frandom): Update the doc string to indicate that
10770         system entropy is used when available.
10771         * src/w32.c: Include wincrypt.h.
10772         (w32_init_crypt_random, w32_init_random): New functions, use the
10773         CryptGenRandom API.
10774         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
10775         * src/w32.h (w32_init_random): Add prototype.
10777         * doc/lispref/numbers.texi (Random Numbers): Document more details
10778         about 't' as the argument to 'random'.
10780         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
10781         strong seed if possible.
10783         (Bug#22202)
10785 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10787         Unhide the --no-line-directive option to 'etags'
10789         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
10790         option.  (Bug#22306)
10792         * doc/man/etags.1: Document the --no-line-directive option.
10794 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
10796         Fix picture-mode wrt double-width characters
10798         * lisp/textmodes/picture.el (picture-insert): Check the width of
10799         the character being replaced, not just that of the replacement.
10800         (Bug#1808)
10802 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
10804         Honor docstring of gnus-group-get-new-news
10806         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
10807         but non-numeric, unconditionally consider all groups to need updating.
10809 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
10811         Disallow parenthesis in non-pseudo CSS selectors
10813         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
10814         parenthesis in selectors except for in the function notation that
10815         might appear right after a pseudo-class.
10816         * test/indent/scss-mode.scss: Add a test for it.
10818 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
10820         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
10822 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
10824         check-maybe shall run only default tests
10826         * test/automated/Makefile.in (check, check-expensive): Depend on
10827         mostlyclean.
10828         (check-maybe): Re-run only default tests.
10829         (check-doit): Use code of check-maybe.
10830         (mostlyclean): Move *.log files away.
10832 2016-01-13  Mark Oteiza  <mvoteiza@udel.edu>
10834         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
10836 2016-01-13  Dmitry Gutov  <dgutov@yandex.ru>
10838         Un-obsolete tags-loop-continue
10840         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
10841         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
10843 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10845         Document obsoletion of 'intangible' and 'point-entered/left'
10847         * doc/lispref/text.texi (Special Properties): Document the new
10848         properties 'cursor-intangible' and 'cursor-sensor-functions'.
10849         Document the obsolete status of 'intangible', 'pointer-left',
10850         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
10851         * doc/lispref/display.texi (Overlay Properties): Document that
10852         'intangible' overlay property is obsolete.
10854         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
10856 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10858         Updater documentation of 'looking-back'
10860         * doc/lispref/searching.texi (Regexp Search): Update documentation
10861         of 'looking-back'.  Fix markup.
10863 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10865         Document 'pre-redisplay-functions'
10867         * doc/lispref/hooks.texi (Standard Hooks):
10868         * doc/lispref/display.texi (Forcing Redisplay): Document
10869         'pre-redisplay-functions'.
10871 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10873         Document the new deafault value of 'load-read-function'
10875         * doc/lispref/loading.texi (How Programs Do Loading): Document the
10876         change in the default value of 'load-read-function'.
10878 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10880         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
10882         * doc/lispref/nonascii.texi (Text Representations): Document
10883         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
10885 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10887         Document the new prefix-command hooks
10889         * doc/lispref/hooks.texi (Standard Hooks): Document
10890         `prefix-command-echo-keystrokes-functions' and
10891         `prefix-command-preserve-state-hook'.
10893 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
10895         Fix one more misuse of time-stamp-time-zone
10897         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
10898         than the unportable "GMT" for time zone.
10900 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
10902         Fix NNTP NEWGROUPS off-by-a-few-hours bug
10904         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
10905         in Universal Time, since we’re telling the server “GMT”.
10907 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
10909         Update publicsuffix.txt from upstream
10911         * etc/publicsuffix.txt: Update from
10912         https://publicsuffix.org/list/effective_tld_names.dat
10913         dated 2016-01-12 11:52:01 UTC.
10915 2016-01-12  Glenn Morris  <rgm@gnu.org>
10917         Fix some declarations.
10919         * lisp/descr-text.el (internal-char-font):
10920         * lisp/cedet/mode-local.el (xref-item-location):
10921         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
10922         (epg-sub-key-capability, epg-sub-key-validity):
10923         * lisp/international/mule-util.el (internal-char-font):
10924         Fix declarations.
10926 2016-01-12  Glenn Morris  <rgm@gnu.org>
10928         Fix some custom types.
10930         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
10931         * lisp/gnus/gnus.el (gnus-valid-select-methods):
10932         * lisp/mail/rmail.el (rmail-get-coding-function):
10933         * lisp/net/newst-treeview.el (newsticker-groups-filename):
10934         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
10935         * lisp/textmodes/tildify.el (tildify-space-predicates):
10936         * lisp/url/url-tramp.el (url-tramp-protocols):
10937         Fix custom types.
10939 2016-01-12  Glenn Morris  <rgm@gnu.org>
10941         Add some missing version tags.
10943         * lisp/electric.el (electric-quote-comment)
10944         (electric-quote-string, electric-quote-paragraph):
10945         * lisp/epg-config.el (epg-gpgconf-program):
10946         * lisp/rect.el (rectangle-preview):
10947         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
10948         * lisp/emacs-lisp/package.el (package-selected-packages)
10949         (package-hidden-regexps):
10950         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
10951         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
10952         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
10953         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
10954         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
10955         (mml-smime-sign-with-sender, mml2015-always-trust)
10956         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
10957         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
10958         (browse-url-conkeror-arguments):
10959         * lisp/net/newst-reader.el (newsticker-download-logos):
10960         * lisp/progmodes/gud.el (gud-guiler-command-name):
10961         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
10962         * lisp/progmodes/project.el (project-vc):
10963         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
10964         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
10965         (python-shell-completion-native-disabled-interpreters)
10966         (python-shell-completion-native-enable)
10967         (python-shell-completion-native-output-timeout)
10968         (python-shell-completion-native-try-output-timeout):
10969         * lisp/progmodes/xref.el (xref):
10970         * lisp/term/screen.el (xterm-screen-extra-capabilities):
10971         * lisp/term/xterm.el (xterm-max-cut-length):
10972         Add missing version tags.
10974 2016-01-12  Glenn Morris  <rgm@gnu.org>
10976         * test/automated/core-elisp-tests.el
10977         (core-elisp-tests-1-defvar-in-let): Add a custom type.
10979 2016-01-12  Glenn Morris  <rgm@gnu.org>
10981         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
10983         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
10985 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
10987         Merge from gnulib
10989         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
10990         It also updates to the latest version of texinfo.tex.
10991         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
10992         * build-aux/update-copyright, doc/misc/texinfo.tex:
10993         Update from gnulib.
10995 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10997         Update documentation of 'process-running-child-p'
10999         * doc/lispref/processes.texi (Input to Processes): Document the
11000         changes in return value of 'process-running-child-p'.
11002 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11004         Update documentation of 'deactivate-mark'.
11006         * doc/lispref/markers.texi (The Mark): Document that
11007         'deactivate-mark' is now buffer-local when set.
11009 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11011         Update documentation of 'completion-table-dynamic'
11013         * doc/lispref/minibuf.texi (Programmed Completion): Document the
11014         new optional argument to 'completion-table-dynamic'.
11016 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11018         Document changes in 'read-buffer' and 'read-buffer-function'
11020         * doc/lispref/minibuf.texi (High-Level Completion): Document the
11021         4th argument to 'read-buffer' and 'read-buffer-function'.
11023 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11025         Fix time-stamp-time-zone bugs introduced in July
11027         This fixes a bug introduced when the July changes to
11028         format-time-string installed, as the changes were not
11029         correctly handled in this module (Bug#22302).
11030         Also, document time stamp time zones.
11031         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
11032         (time-stamp--format): New private function.
11033         (time-stamp-string, time-stamp-string-preprocess)
11034         (time-stamp-do-number): Use it.
11035         * doc/emacs/files.texi (Time Stamps): Mention time zones.
11036         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
11038 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11040         Make piping to subprocesses more robust on MS-Windows
11042         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
11043         buffer can hold.  Don't return -1 if something has been written to
11044         the pipe.  Zero out 'errno' before calling '_write', to avoid
11045         returning a stale value.  (Bug#22344)
11046         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
11047         * src/w32.c (pipe2): Use it to request a user-defined size for the
11048         pipe being created.
11050         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
11052         * doc/emacs/msdos.texi (Windows Processes): Document
11053         'w32-pipe-buffer-size'.
11055 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11057         * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
11059         (syntax-ppss):
11060         * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
11062 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11064         lisp/nxml: Use syntax-tables for comments
11066         * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
11067         (nxml-mode): Set syntax-ppss-table.
11068         Use sgml-syntax-propertize-function for syntax-propertize-function.
11069         Let font-lock highlight strings and comments.
11070         (nxml-degrade): Don't touch "nxml-inside" property any more.
11071         (nxml-after-change, nxml-after-change1): Remove functions.
11072         (comment): Don't set fontify rule any more.
11073         (nxml-fontify-attribute): Don't highlight the value any more.
11074         (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
11075         (nxml-comment-delimiter, nxml-comment-content): Remove faces.
11077         * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
11078         (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
11079         (nxml-clear-inside, nxml-set-inside): Remove.
11080         (nxml-scan-after-change): Remove function.
11081         (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
11082         (nxml-ensure-scan-up-to-date): Use syntax-propertize.
11083         (nxml-move-outside-backwards):
11084         * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
11085         nxml-inside-start behavior.
11087         * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
11088         (nxml-debug-clear-inside): Remove macros.
11090         * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
11091         (xmltok-scan-after-comment-open): Simplify.
11093 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11095         * elisp-mode.el (elisp--font-lock-flush-elisp-buffers): Fix comment
11097 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11099         * lisp/nxml: Use standard completion; it also works for company-mode
11101         * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
11102         (nxml-completion-at-point-function): Remove.
11103         (nxml-mode): Don't set completion-at-point-functions.
11104         * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
11105         (rng-completion-at-point): Rename from rng-complete and mark it
11106         non-interactive.  It is now to be used as completion-at-point-function.
11107         (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
11108         (rng-complete-attribute-value): Don't perform completion, but return
11109         completion data instead.
11110         (rng-complete-qname-function, rng-generate-qname-list): Add a few
11111         arguments, previously passed via dynamic coping.
11112         (rng-strings-to-completion-table): Rename from
11113         rng-strings-to-completion-alist.  Don't return an alist.  Don't both
11114         sorting and uniquifying.
11116         * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
11117         (rng-completion-exact-p, rng-quote-string): Delete functions.
11119         * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
11120         (rng-missing-attributes-message, rng-missing-element-message)
11121         (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
11122         calling rng-quote-string everywhere.
11124 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11126         Use sgml-electric-tag-pair-mode also in nxml-mode
11128         * lisp/nxml/rng-nxml.el: Require sgml-mode.
11129         (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
11130         (rng-complete-qname-function): Use complete-with-action.
11132         * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
11133         Let-bind forward-sexp-function, since nxml-mode binds it to
11134         something incompatible.
11136         * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
11138 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
11140         * xmltok.el: Mark the "sole --" rather than the comment opener
11142         * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
11143         marker on the "sole --" rather than on the comment opener.
11145 2016-01-15  Sam Steingold  <sds@gnu.org>
11147         replace `tramp-compat-split-string' (removed) with `split-string'
11149         (python-shell-tramp-refresh-process-environment)
11150         (python-shell-calculate-pythonpath): use `split-string'
11151         instead of defunct `tramp-compat-split-string'
11153 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
11155         Update nXML to use Emacs's Unicode support, and lexical-binding
11157         * etc/nxml/*.el: Remove obsolete char-name files.
11158         * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
11159         var `next'.
11160         * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
11161         * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
11162         * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
11163         (nxml-target-section-pos, nxml-depth-in-target-section)
11164         (nxml-outline-state-transform-alist)
11165         (nxml-outline-display-section-tag-function): Move decl before first use.
11166         * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
11167         (nxml-char-name-alist, nxml-char-name-table)
11168         (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
11169         (nxml-enable-char-name-set, nxml-disable-char-name-set)
11170         (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
11171         (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
11172         (nxml-insert-named-char): Use read-char-by-name instead.
11173         (nxml-char-ref-display-extra): Use get-char-code-property.
11174         * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
11175         Remove function.
11176         * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
11178 2016-01-15  Michael Albinus  <michael.albinus@gmx.de>
11180         Add "sg" method to Tramp
11182         * doc/misc/tramp.texi (Inline methods): Add "sg" method.
11183         (Customizing Completion): Add function `tramp-parse-etc-group'.
11185         * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
11186         (tramp-completion-function-alist-sg): New defconst.
11187         (top): Completion function for "sg" is
11188         `tramp-completion-function-alist-sg'.
11190         * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
11191         (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
11193 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
11195         Remove XEmacs compatibility in Tramp
11197         * doc/misc/tramp.texi: Replace flags by their hard coded name.
11198         Remove unused flags and the enclosed alternative text for XEmacs.
11200         * doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
11201         and "xemacs" flags to "unified" and "separate".  Remove flags
11202         "emacsgw", "emacsname", "emacsdir", "ftppackagename",
11203         "emacsothername", "emacsotherdir" and "emacsotherfilename".
11204         (trampver):
11205         * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
11207         * lisp/net/tramp.el (bkup-backup-directory-info)
11208         (directory-sep-char, ls-lisp-use-insert-directory-program)
11209         (outline-regexp, tramp-backup-directory-alist)
11210         (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
11211         (tramp-file-name-regexp-unified)
11212         (tramp-file-name-regexp-separate)
11213         (tramp-completion-file-name-regexp-unified)
11214         (tramp-completion-file-name-regexp-separate, tramp-chunksize)
11215         (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
11216         (tramp-debug-message, tramp-progress-reporter-update)
11217         (with-tramp-progress-reporter)
11218         (tramp-rfn-eshadow-setup-minibuffer)
11219         (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
11220         (tramp-rfn-eshadow-update-overlay)
11221         (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
11222         (tramp-file-name-for-operation)
11223         (tramp-completion-file-name-handler)
11224         (tramp-autoload-file-name-handler, tramp-completion-mode-p)
11225         (tramp-handle-directory-files)
11226         (tramp-handle-directory-files-and-attributes)
11227         (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
11228         (tramp-handle-insert-file-contents, tramp-handle-load)
11229         (tramp-handle-shell-command)
11230         (tramp-handle-verify-visited-file-modtime)
11231         (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
11232         (tramp-check-for-regexp, tramp-wait-for-regexp)
11233         (tramp-send-string, tramp-mode-string-to-int)
11234         (tramp-get-local-gid, tramp-check-cached-permissions)
11235         (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
11236         (auto-save-file-name-transforms)
11237         (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
11238         (tramp-clear-passwd, tramp-time-diff):
11239         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
11240         (directory-sep-char, tramp-adb-file-name-handler-alist)
11241         (tramp-adb-parse-device-names)
11242         (tramp-adb-handle-expand-file-name)
11243         (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
11244         (tramp-adb-handle-file-local-copy)
11245         (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
11246         (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
11247         (tramp-adb-handle-shell-command)
11248         (tramp-adb-handle-start-file-process, tramp-adb-get-device)
11249         (tramp-adb-maybe-open-connection):
11250         * lisp/net/tramp-cache.el (tramp-persistency-file-name)
11251         (tramp-cache-print):
11252         * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
11253         (tramp-bug, tramp-reporter-dump-variable)
11254         (tramp-load-report-modules, tramp-append-tramp-buffers):
11255         * lisp/net/tramp-compat.el (tramp-compat-funcall)
11256         (tramp-advice-file-expand-wildcards)
11257         (tramp-compat-temporary-file-directory)
11258         (tramp-compat-make-temp-file, tramp-compat-copy-file)
11259         (tramp-compat-delete-directory, )
11260         (tramp-compat-process-running-p):
11261         * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
11262         (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
11263         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
11264         (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
11265         (tramp-gvfs-handle-file-local-copy)
11266         (tramp-gvfs-handle-file-name-all-completions)
11267         (tramp-gvfs-handle-file-notify-add-watch)
11268         (tramp-gvfs-monitor-file-process-filter)
11269         (tramp-gvfs-handle-file-readable-p)
11270         (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
11271         (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
11272         (tramp-gvfs-maybe-open-connection)
11273         (tramp-gvfs-parse-device-names):
11274         * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
11275         (tramp-gw-open-connection, tramp-gw-open-network-stream):
11276         * lisp/net/tramp-sh.el (directory-sep-char)
11277         (tramp-sh-file-name-handler-alist)
11278         (tramp-sh-handle-file-truename)
11279         (tramp-sh-handle-set-visited-file-modtime)
11280         (tramp-sh-handle-verify-visited-file-modtime)
11281         (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
11282         (tramp-sh-handle-file-acl)
11283         (tramp-sh-handle-file-name-all-completions)
11284         (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
11285         (tramp-do-copy-or-rename-file-directly)
11286         (tramp-do-copy-or-rename-file-out-of-band)
11287         (dired-compress-file-suffixes, dired-remove-file)
11288         (tramp-sh-handle-dired-compress-file)
11289         (tramp-sh-handle-insert-directory)
11290         (tramp-sh-handle-expand-file-name)
11291         (tramp-sh-handle-start-file-process)
11292         (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
11293         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
11294         (tramp-sh-handle-file-notify-add-watch)
11295         (tramp-sh-gvfs-monitor-dir-process-filter)
11296         (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
11297         (tramp-find-executable)
11298         (tramp-open-connection-setup-interactive-shell)
11299         (tramp-find-inline-encoding, tramp-compute-multi-hops)
11300         (tramp-maybe-open-connection, tramp-convert-file-attributes)
11301         (tramp-get-remote-path, tramp-get-remote-touch):
11302         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
11303         (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
11304         (tramp-smb-handle-delete-directory)
11305         (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
11306         (tramp-smb-handle-make-directory-internal)
11307         (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
11308         (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
11309         (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
11310         (tramp-smb-get-cifs-capabilities)
11311         (tramp-smb-maybe-open-connection):
11312         * lisp/net/trampver.el (tramp-repository-get-version):
11313         Remove XEmacs compat code.
11315         * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
11316         (reporter-dump-variable): Declare functions.
11318         * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
11319         (tramp-advice-minibuffer-electric-separator)
11320         (tramp-advice-minibuffer-electric-tilde)
11321         (tramp-handle-unhandled-file-name-directory):
11322         * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
11323         (tramp-compat-font-lock-add-keywords)
11324         (tramp-compat-load, tramp-compat-number-sequence)
11325         (tramp-compat-split-string, tramp-compat-delete-dups):
11326         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
11327         Remove.
11329         * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
11330         recursively.
11332 2016-01-14  K. Handa  <handa@gnu.org>
11334         fix previous change of src/ftfont.c (ftfont_shape_by_flt)
11336         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
11337         second glyph only when there are enough glyphs.
11339 2016-01-13  Glenn Morris  <rgm@gnu.org>
11341         * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
11343         or its hook, to move point.  (Bug#22348)
11345 2016-01-12  Michael Albinus  <michael.albinus@gmx.de>
11347         Merge missing commit from emacs-25 branch
11349         * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
11350         New variables.
11351         (check-expensive, check-doit): New targets.
11353         * Makefile.in (check-expensive): New target.
11355         * test/lisp/autorevert-tests.el
11356         (auto-revert-test01-auto-revert-several-files):
11357         * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
11358         (file-notify-test06-many-events):
11359         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
11360         (tramp-test27-start-file-process, tramp-test28-shell-command)
11361         (tramp-test29-vc-registered)
11362         (tramp-test31-special-characters-with-stat)
11363         (tramp-test31-special-characters-with-perl)
11364         (tramp-test31-special-characters-with-ls)
11365         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
11366         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
11367         (tramp-test35-unload): Tag the tests as :expensive-test.
11369 2016-01-12  John Wiegley  <johnw@newartisans.com>
11371         Merge from origin/emacs-25
11373         1f6898d test/automated/vc-hg.el: Support out-of-tree build
11374         3adb56e Minor change in tramp-tests.el
11375         2b535ba ; * etc/NEWS: Update the js.el entry.
11376         76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
11377         b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
11378         36b9539 Avoid an infloop when we run out of memory
11379         2006752 Avoid unnecessary failures of auto-saving after fatal error
11380         eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
11381         552694a Revert attempt to use 'noexcept' in typedef
11382         6ad0d39 Update documentation of 'indirect-function'
11383         c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
11384         303141a Update documentation for obsoleting 'syntax-begin-function'
11385         4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
11386         e667bbb Document new features if Eshell
11387         9c4e4e0 ; * etc/NEWS: Update EUDC entries.
11388         1089dc9 Handle too long commands in Tramp
11389         684eb58 * .gitattributes: *.cur and *.pif are binary files too.
11390         d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
11391         bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
11392         09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
11393         cca0f93 ; Account for spaces before the filename
11394         c71e1e8 Use short date for 'hg annotate', and output the author
11395         f50027b Spelling fix
11396         c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
11397         cc140bc Document user-level functions in project.el
11398         f8208b6 Document the user-level features of the Xref package
11399         b131fb8 * loading.texi: Add `define-type' entry for load-history
11400         db3c2a8 Improve doc strings and prompts in xref.el
11401         f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
11402         90fd798 Fix coding system for Tramp on OS X.
11403         e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
11404         9dfcbf0 Update 'load-history' docs
11405         207e191 Fix (error ...) error
11406         457738f Correctly analyze brace arguments in templated C++ function declarations.
11407         d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
11408         2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
11409         1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
11410         8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
11411         4b37cba Improve documentation of Delete Selection mode
11412         a034dd3 Fix two project-find-file issues
11413         30abf29 Clarify doc string of 'dired-current-directory'
11414         e990bb2 Use the face of preceding text for displaying the ellipsis
11415         5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
11416         eeb710a ; * lisp/startup.el: Sentences end with two spaces.
11417         428b3de * admin/admin.el (set-version): Also handle the NEWS file.
11418         648de81 ; Add NEWS entry for project.el
11419         671862f apropos-library: Skip obvious duplicates; don't error on generics
11420         51668a5 ; Grammar fix
11421         ed41d11 Add project-find-file and project-or-external-find-file
11422         056da45 ; Improve commentary in 'setup_for_ellipsis'
11423         269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
11425 2016-01-12  John Wiegley  <johnw@newartisans.com>
11427         Merge from origin/emacs-25
11429         ce4a052 Add defvar-local to lisp-imenu-generic-expression
11430         a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
11431         76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
11432         1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
11433         b6b47af Properly encode/decode base64Binary data in SOAP
11434         c632466 Obey coding-system-for-write when writing stdout/stderr in batch
11435         2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
11436                 Update the URI of MELPA and marmalade-repo.
11437                 Reported by CHENG Goa <chenggao@royau.me> in
11438                 https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
11439         d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
11440         5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
11441         7380990 Remove function wrongly on AWK Mode value of context
11442         fontification hook.
11443         d400753 * src/buffer.c: Stick with ASCII in doc string.
11444         221240c Reword transient-mark-mode doc string
11445         977d3ea Update doc string of 'selective-display'
11446         229c3fa Make C++ buffers writeable when writing their initial text
11447                 properties.
11448         f5c762c Additional changes for "make check-expensive"
11449         1729cf3 ; * admin/MAINTAINERS: Remove myself.
11450         33219d3 Apply text properties for <, > in new after-change function
11451                 (C++ Java Modes).
11453 2016-01-12  John Wiegley  <johnw@newartisans.com>
11455         Merge from origin/emacs-25
11457         9fb185a shr-tag-video bug fix
11458         6300655 Minor fixes in tramp-tests.el
11459         50575b1 Ensure redisplay when 'truncate-lines' is set
11460         0d9e80d Fix a doc string of 'transient-mark-mode'
11461         0000ae5 MS-Windows followup to latest gnulib update
11462         4bc5e02 Spelling fix
11463         f1093f7 Do secure signed Bcc handling
11465 2016-01-12  John Wiegley  <johnw@newartisans.com>
11467         Merge from origin/emacs-25
11469         861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
11470         46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
11471         71ea138 * lisp/align.el (align): Simplify a lambda
11472         5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
11473         1f680db Fix compilation next-error in buffers with selective-display
11474         d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
11475         1da116f Add SHA1 warnings for high network security settings
11476         e48bacd ; * etc/NEWS: Typo fix.
11478 2016-01-12  John Wiegley  <johnw@newartisans.com>
11480         Merge from origin/emacs-25
11482         43662a2 ; Clarify that xref is still experimental
11483         0a6e6ca ; * admin/release-process: Remove some obsolete records.
11484         c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
11485         8637f3d (semantic-symref-derive-find-filepatterns): Return a list
11486         0a7ad07 ; Re-arrange xref-related entries in NEWS.
11487         fe903ef Fix xref-find-references on MS-Windows
11488         55a28d8 ; Fixed visual bell artifact problem on NextStep.
11489         d064034 Document new features of tildify-mode
11490         964bea7 Document new features of Whitespace mode
11491         cd68f47 Improve documentation of new Hide-IfDef features
11492         723b8bf Fix regression in font-locking cl-assert and cl-check-type
11494 2016-01-12  John Wiegley  <johnw@newartisans.com>
11496         Merge from origin/emacs-25
11498         ef33bc7 Spelling and grammar fixes
11499         9c3dbab Fix copyright years by hand
11500         0e96320 Update copyright year to 2016
11502 2016-01-12  John Wiegley  <johnw@newartisans.com>
11504         Merge from origin/emacs-25
11506         9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
11507         526d80c Port chart.el methods to cl-generic.
11508         410bb69 Add nt/INSTALL.W64 build instructions
11509         8f5b524 Add new input method 'programmer-dvorak'
11510         6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
11511         bb83bb1 Fix EWW rendering of long RTL lines
11512         b1a8509 fix  bug#21054
11513         ce5ad12 Clean up cairo printing code
11515 2016-01-12  John Wiegley  <johnw@newartisans.com>
11517         Merge from origin/emacs-25
11519         6ee327d Add handle_user_signal_hook
11520         47580e0 Avoid writing to purespace
11521         0588be7 Remove unused variable
11522         89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
11523         3b95e9c Use posix_openpt instead of openpty on Darwin
11524         86312ff Document support for ':documentation' in Lisp mode
11525         c930e75b Document new features of TeX mode
11526         7c83d84 Clarify docs of hscroll in RTL text
11527         4c8f8db Fix rendering of HTML pages that use character composition
11528         a8d37ca Avoid some compiler warnings in w32.c
11529         ce106f3de Undo ill-advised change
11530         be0bba4 Unbreak completion in python-mode buffers
11532 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
11534         test/automated/vc-hg.el: Support out-of-tree build
11536         * test/automated/vc-hg.el
11537         (vc-hg-annotate-extract-revision-at-line-with-filename)
11538         (vc-hg-annotate-extract-revision-at-line-with-both):
11539         Don't refer to source-directory.
11540         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
11542 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
11544         Minor change in tramp-tests.el
11546         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11547         Use `dired-uncache' instead of a Tramp internal function.
11549 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
11551         * etc/HELLO: Add Armenian and Mongolian greetings.
11553         (Bug#22346)
11555 2016-01-11  Alan Mackenzie  <acm@muc.de>
11557         Java Mode: Fontify identifiers in the presence of annotations.
11559         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
11560         Don't move point when the defun fails.
11561         (c-forward-decl-or-cast-1): Correct a usage of match data.
11563         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
11564         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
11565         removed variable.
11567         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
11569 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
11571         Avoid an infloop when we run out of memory
11573         * src/alloc.c (garbage_collect_1): Don't bother saving and
11574         restoring the echo-area message if we are GC'ing after running out
11575         of memory.  This avoids an infloop due to repeated attempts to
11576         allocate memory for the cons cell needed to save the message,
11577         which signals the memory-full error, which attempts to save the
11578         echo-area message, which signals memory-full again, etc.
11580 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
11582         Avoid unnecessary failures of auto-saving after fatal error
11584         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
11585         the benefit of FAT volumes if we are called as part of shutting
11586         down due to a fatal error, which probably means we are trying to
11587         auto-save the session.
11588         * src/lread.c (check_obarray): Don't bother making the obarray
11589         valid if we are shutting down due to a fatal error.  This avoids
11590         interfering with auto-saving the crashed session.
11592 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
11594         Simplify HAVE_MODULES use in mark_maybe_pointer
11596         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
11597         so that later code can use 'if' rather than '#ifdef'.
11598         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
11599         always working.
11601 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
11603         Revert attempt to use 'noexcept' in typedef
11605         This use of 'noexcept' runs afoul of the C++11 standard.
11606         Problem reported by Philipp Stephani in:
11607         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
11608         * src/emacs-module.c (emacs_finalizer_function):
11609         Move this typedef here ...
11610         * src/emacs-module.h: ... from here, and use only the C
11611         version of the typedef.  The typedef is now private since it
11612         is never used in the .h file now and anyway it seemed to be
11613         causing more confusion than it cured.
11614         (make_user_ptr, get_user_finalizer, set_user_finalizer):
11615         Open-code the type instead.
11617 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11619         Update documentation of 'indirect-function'
11621         * doc/lispref/eval.texi (Function Indirection): Update the
11622         documentation of 'indirect-function'.
11624 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11626         Update documentation for obsoleting 'syntax-begin-function'
11628         * doc/lispref/syntax.texi (Position Parse): Undocument
11629         'syntax-begin-function' that is now obsolete.
11631 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11633         Document new features if Eshell
11635         * doc/misc/eshell.texi (Input/Output): Document the new
11636         '#<bufname>' syntax.
11637         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
11638         Disable "Key Index" generation, as there are no @kindex entries in
11639         this manual.
11641 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
11643         Handle too long commands in Tramp
11645         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
11646         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
11647         order to not exceed shell command line limit.
11649         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
11650         (tramp--test-utf8): Include Arabic file name, again.
11652 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
11654         * .gitattributes: *.cur and *.pif are binary files too.
11656 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11658         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
11660 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11662         * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
11664         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
11665         within $(...).
11666         * test/indent/shell.sh: Add corresponding test.
11668 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
11670         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
11672         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
11673         cast to Lisp_Object.
11675 2016-01-09  Dmitry Gutov  <dgutov@yandex.ru>
11677         Use short date for 'hg annotate', and output the author
11679         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
11680         Change '-d' to '-dq'.  (Bug#21805)
11681         (vc-hg-annotate-switches): Default to "-u" "--follow".
11682         (vc-hg-annotate-re): Update to recognize the short date format
11683         and the optional username.
11684         (vc-hg-annotate-time)
11685         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
11687         * test/automated/vc-hg.el: New file.
11689 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
11691         Spelling fix
11693 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11695         Document user-level functions in project.el
11697         * lisp/progmodes/project.el (project-find-file)
11698         (project-or-external-find-file): Add doc strings.
11700 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11702         Document the user-level features of the Xref package
11704         * doc/emacs/maintaining.texi (Maintaining): Add a list of
11705         described features.
11706         (Xref): New section, made out of thoroughly rewritten "Tags"
11707         section.
11708         (Find Identifiers, Looking Up Identifiers, Xref Commands)
11709         (Identifier Search, List Identifiers): New subsections,
11710         incorporating the old tags commands and the new xref commands.
11711         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
11712         Section and subsections demoted to a lower level.
11713         * doc/emacs/search.texi (Search):
11714         * doc/emacs/windows.texi (Pop Up Window):
11715         * doc/emacs/frames.texi (Creating Frames):
11716         * doc/emacs/programs.texi (Imenu, Symbol Completion):
11717         * doc/emacs/building.texi (Grep Searching):
11718         * doc/emacs/dired.texi (Operating on Files):
11719         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
11721 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
11723         * loading.texi: Add `define-type' entry for load-history
11725         * doc/lispref/loading.texi (Where Defined): Remove incorrect
11726         cl-defmethod description, and add missing define-type entry.
11728 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11730         Improve doc strings and prompts in xref.el
11732         * lisp/progmodes/xref.el (xref-backend-functions)
11733         (xref-find-definitions): Doc fixes.
11734         (xref-query-replace): Doc fix.  Improve prompts for arguments.
11736 2016-01-09  Alan Mackenzie  <acm@muc.de>
11738         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
11740         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
11741         `font-lock-extend-regions-wholelines' from
11742         `font-lock-extend-region-functions' rather than setting the latter to
11743         nil.
11745 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
11747         Fix coding system for Tramp on OS X.
11749         * lisp/net/tramp-compat.el: Require ucs-normalize.
11751         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11752         Set coding system to `utf-8-hfs' for Mac OS X.
11754         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11755         Flush directory properties when needed.
11756         (tramp--test-utf8): Include Chinese file name, again.
11758 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11760         Update 'load-history' docs
11762         * doc/lispref/loading.texi (Where Defined): Update the list of
11763         forms in 'load-history' by adding the forms created for the
11764         'cl-generic' generics.  (Bug#21422)
11766 2016-01-08  Paul Eggert  <eggert@cs.ucla.edu>
11768         Fix (error ...) error
11770         Problem reported by Glenn Morris in:
11771         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
11772         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
11773         introduced in my Aug 28 change, where I got confused by the
11774         two meanings of (error ...).
11776 2016-01-08  Alan Mackenzie  <acm@muc.de>
11778         Correctly analyze brace arguments in templated C++ function declarations.
11780         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
11781         POS and LIMIT parameters, like the other c-go-list-* functions have.
11783         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
11784         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
11785         followed by template specifiers.
11787 2016-01-08  Glenn Morris  <rgm@gnu.org>
11789         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
11791         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
11793 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
11795         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
11797 2016-01-08  Alan Mackenzie  <acm@muc.de>
11799         Respect fontification region calculated by major mode.  Fixes bug #22316.
11801         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
11802         fontification region has been calculated by a function on
11803         font-lock-extend-after-change-region-function use this region rather than
11804         changing the end position to somewhere else.
11806 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11808         Improve documentation of Delete Selection mode
11810         * lisp/delsel.el (delete-selection-mode)
11811         (delete-selection-helper): Update and expand the doc strings.
11812         (Bug#22296)
11814         * doc/emacs/mark.texi (Using Region): Document the behavior of
11815         delete commands in Delete Selection mode.  (Bug#22296)
11817         * doc/lispref/markers.texi (The Mark): Document how to add the
11818         support for Delete Selection mode to Lisp programs. (Bug#22296)
11820 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
11822         Fix two project-find-file issues
11824         * lisp/progmodes/project.el (project--value-in-dir):
11825         Temporarily set enable-local-variables to :all.
11826         (project-find-file, project-or-external-find-file):
11827         All autoloads.
11828         (project--find-file-in): Require xref.
11830 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11832         Clarify doc string of 'dired-current-directory'
11834         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
11835         the return value might not end in a slash when called with the
11836         optional argument non-nil.  (Bug#6273)
11838 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11840         Use the face of preceding text for displaying the ellipsis
11842         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
11843         text in it->saved_face_id for displaying the ellipsis, and ignore
11844         the face, if any, of the invisible text.  (Bug#22320)
11846 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
11848         Suppress Chinese file name test for OSX in tramp-tests.el
11850         * test/automated/tramp-tests.el (tramp--test-utf8):
11851         Remove instrumentation.  Suppress Chinese file name test for OSX.
11853 2016-01-07  Glenn Morris  <rgm@gnu.org>
11855         * admin/admin.el (set-version): Also handle the NEWS file.
11857 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
11859         apropos-library: Skip obvious duplicates; don't error on generics
11861         * lisp/apropos.el (apropos-library): Skip "was an autoload"
11862         entries, to avoid obvious duplicates.  For each cl-defmethod
11863         entry, take just its function symbol (bug#21422).
11865 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
11867         Add project-find-file and project-or-external-find-file
11869         * lisp/minibuffer.el (completion-category-defaults):
11870         Add `project-file' category.
11872         * lisp/progmodes/project.el (project-find-file)
11873         (project-or-external-find-file): New commands.
11874         (project--find-file-in): New private function.
11876         * lisp/progmodes/xref.el (xref-collect-matches): Use
11877         `expand-file-name' on DIR, to expand the tildes.
11878         (xref--find-ignores-arguments): Extract from
11879         `xref--rgrep-command'.
11881 2016-01-06  Leo Liu  <sdl.web@gmail.com>
11883         Add defvar-local to lisp-imenu-generic-expression
11885         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
11886           defvar-local.
11888 2016-01-06  Leo Liu  <sdl.web@gmail.com>
11890         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
11892         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
11893           Don't declare (indent 1).
11895 2016-01-06  Glenn Morris  <rgm@gnu.org>
11897         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
11899 2016-01-06  Glenn Morris  <rgm@gnu.org>
11901         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
11903         Avoid specifying the length of a time object (it has not been "2"
11904         for some time).
11906 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
11908         Properly encode/decode base64Binary data in SOAP
11910                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
11911                 base64Binary value as utf-8.
11912                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
11914 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
11916         Obey coding-system-for-write when writing stdout/stderr in batch
11918         * src/print.c (printchar_to_stream):
11919         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
11920         a non-nil value, use it to encode output in preference to
11921         locale-coding-system.  See the discussions in
11922         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
11923         for the details.
11925         * doc/lispref/os.texi (Terminal Output): Document how to send
11926         non-ASCII text via 'send-string-to-terminal'.
11927         (Batch Mode): Document how text written to standard streams is
11928         encoded.  Fix inaccuracy regarding which output streams are used
11929         by output functions in batch mode.
11931 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
11933         * doc/misc/efaq.texi (Packages that do not come with Emacs):
11934         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
11935         <chenggao@royau.me> in
11936         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
11938 2016-01-05  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
11940         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
11942         Fix backslash.  (Bug#22224)
11944 2016-01-05  Federico Beffa  <beffa@ieee.org>  (tiny change)
11946         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
11948         Make it actually work.  (Bug#22265)
11950 2016-01-05  Alan Mackenzie  <acm@muc.de>
11952         Remove function wrongly on AWK Mode value of context fontification hook.
11954         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
11955         swap order of entries so that awk's entry isn't superseded by the default.
11957         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
11958         to handle nil value of c-before-context-fontification-functions.
11960 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11962         * src/buffer.c: Stick with ASCII in doc string.
11964 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11966         Reword transient-mark-mode doc string
11968         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
11969         The value 'lambda (literally) can be interpreted as (quote lambda),
11970         which is not intended here; we want just the lambda symbol.
11972 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
11974         Update doc string of 'selective-display'
11976         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
11977         using it with the value of 't' is obsolete.  (Bug#1092)
11979 2016-01-05  Alan Mackenzie  <acm@muc.de>
11981         Make C++ buffers writeable when writing their initial text properties.
11983         This is a correction to yesterday's CC Mode patch.
11985         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
11986         c-save-buffer-state around the function rather than a mere `let'.
11988 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
11990         Additional changes for "make check-expensive"
11992         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
11993         Explain make target `check-expensive'.
11995         * etc/NEWS: Mention new make target `check-expensive'.
11997         * test/automated/Makefile.in (check-doit): New target.
11998         (check, check-expensive): Use it.
12000 2016-01-04  Alan Mackenzie  <acm@muc.de>
12002         Apply text properties for <, > in new after-change function (C++ Java Modes).
12004         These are category/syntax-table properties to give < and > paren syntax.
12005         Also apply certain `c-type' text properties to the insides of <..> constructs
12006         to ensure that identifiers contained by them get fontified.  This patch fixes
12007         bug #681.
12009         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
12010         after-change action.
12012         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
12013         change region to include <s and >s which might not be already marked as
12014         parens, rather than just when paren text properties are removed.
12015         (c-restore-<>-properties): New after-change function, which applies text
12016         properties marking < and > with paren syntax.
12018         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
12019         properties are applied to the interiors of <...> constructs, to ensure
12020         fontification of identifiers there.
12022         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
12023         c-restore-<>-properties to this list for C++ and Java.
12025         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
12026         c-before-font-lock-functions, exclude c-restore-<>-properties from the
12027         functions invoked.
12028         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
12029         to allow modification by before-change functions.
12030         (c-after-change): Amend c-new-END here, rather than initializing it and
12031         c-new-BEG.
12033 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
12035         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
12037 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
12039         Introduce check-expensive tests.
12041         * Makefile.in (check-expensive):
12042         * test/automated/Makefile.in (check-expensive): New target.
12044         * test/automated/auto-revert-tests.el
12045         (auto-revert-test01-auto-revert-several-files):
12046         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
12047         * test/automated/tramp-tests.el (tramp-test26-process-file)
12048         (tramp-test27-start-file-process, tramp-test28-shell-command)
12049         (tramp-test29-vc-registered)
12050         (tramp-test31-special-characters-with-stat)
12051         (tramp-test31-special-characters-with-perl)
12052         (tramp-test31-special-characters-with-ls)
12053         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
12054         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
12055         (tramp-test35-unload): Tag the tests as :expensive-test.
12057 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12059         shr-tag-video bug fix
12061         * shr.el (shr-tag-video): Protect against the `poster' being
12062         empty.
12064 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
12066         Minor fixes in tramp-tests.el
12068         * test/automated/tramp-tests.el (tramp-test26-process-file):
12069         Move point properly.
12070         (tramp-test29-vc-registered): Work with relative file names.
12072 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
12074         Ensure redisplay when 'truncate-lines' is set
12076         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
12077         (Bug#22303)
12079 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
12081         Fix a doc string of 'transient-mark-mode'
12083         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
12084         "lambda" in doc string from becoming a link to lambda expressions.
12086 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
12088         MS-Windows followup to latest gnulib update
12090         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
12092 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
12094         Spelling fix
12096 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12098         Do secure signed Bcc handling
12100         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
12101         (bug#18718).
12103 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
12105         Avoid stdio in SIGINT handler
12107         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
12108         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
12109         * lib/ignore-value.h: New file, from gnulib.
12110         * src/keyboard.c: Include it.
12111         (write_stdout, read_stdin): New functions.
12112         (handle_interrupt): Use them instead of printf and getchar,
12113         and avoid fflush when handling signals.
12115 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
12117         * doc/misc/texinfo.tex: Revert unwanted copyright change.
12119 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
12121         * lisp/align.el (align): Simplify a lambda
12123         * lisp/align.el (align): Fix arg order in call to `align-region'
12125 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
12127         Fix compilation next-error in buffers with selective-display
12129         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
12130         function.
12131         (compilation-internal-error-properties)
12132         (compilation-next-error-function, compilation-set-window): Use
12133         it.  (Bug#1092)
12135 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12137         * nsm.el (nsm-check-protocol): Fix typo in the message.
12139 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12141         Add SHA1 warnings for high network security settings
12143         * nsm.el (nsm-check-protocol): When using high security, warn
12144         about SHA1 certificates, which are now believed to be open to
12145         spoofing.
12147 2016-01-02  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12149         Refactor mml-smime.el, mml1991.el, mml2015.el
12151         (Maybe this is the last merge from Gnus git to Emacs git)
12153         Cf. discussion on ding mailing list, messages in
12154         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
12155         Common code from the three files mml-smime.el, mml1991.el, and
12156         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
12157         to gnus-util.el.
12159         The code is supported by test cases with necessary test keys.
12161         Documentation in message.texi is updated.
12163         * doc/misc/message.texi (Security, Using S/MIME):
12164         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
12165         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
12166         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
12168         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
12169         New functions.
12171         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
12172         (epa--select-keys): Autoload.
12173         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
12174         (mml-secure-openpgp-signers): New user option;
12175         make mml1991-signers and mml2015-signers obsolete aliases to it.
12176         (mml-secure-smime-signers): New user option;
12177         make mml-smime-signers an obsolete alias to it.
12178         (mml-secure-openpgp-encrypt-to-self): New user option;
12179         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
12180         aliases to it.
12181         (mml-secure-smime-encrypt-to-self): New user option;
12182         make mml-smime-encrypt-to-self an obsolete alias to it.
12183         (mml-secure-openpgp-sign-with-sender): New user option;
12184         make mml2015-sign-with-sender an obsolete alias to it.
12185         (mml-secure-smime-sign-with-sender): New user option;
12186         make mml-smime-sign-with-sender an obsolete alias to it.
12187         (mml-secure-openpgp-always-trust): New user option;
12188         make mml2015-always-trust an obsolete alias to it.
12189         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
12190         New user options.
12191         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
12192         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
12193         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
12194         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
12195         (mml-secure-passphrase-callback, mml-secure-check-user-id)
12196         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
12197         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
12198         (mml-secure-fingerprint, mml-secure-filter-keys)
12199         (mml-secure-normalize-cust-name, mml-secure-select-keys)
12200         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
12201         (mml-secure-self-recipients, mml-secure-recipients)
12202         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
12204         * lisp/gnus/mml-smime.el: Require epg;
12205         refactor declaration and autoloading of epg functions.
12206         (mml-smime-use): Doc fix.
12207         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
12208         Obsolete.
12209         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
12210         Use format instead of gnus-format-message.
12211         (mml-smime-epg-secret-key-id-list): Remove variable.
12212         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
12213         (mml-smime-epg-find-usable-secret-key): Remove functions.
12214         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
12216         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
12217         (mml1991-passphrase-cache-expiry): Obsolete.
12218         (mml1991-epg-secret-key-id-list): Remove variable.
12219         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
12220         (mml1991-epg-find-usable-secret-key): Remove functions.
12221         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
12223         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
12224         (mml2015-passphrase-cache-expiry): Obsolete.
12225         (mml2015-epg-secret-key-id-list): Remove variable.
12226         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
12227         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
12228         (mml2015-epg-find-usable-secret-key): Remove functions.
12229         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
12230         (mml2015-epg-encrypt): Refactor.
12232 2016-01-02  Glenn Morris  <rgm@gnu.org>
12234         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
12236         Explicitly ignore case.  (Bug#22262)
12238 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
12240         (semantic-symref-derive-find-filepatterns): Return a list
12242         * lisp/cedet/semantic/symref/grep.el
12243         (semantic-symref-derive-find-filepatterns): Return a list.
12244         (semantic-symref-perform-search): Quote the result here once and for all.
12246 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12248         Fix xref-find-references on MS-Windows
12250         * lisp/cedet/semantic/symref/grep.el
12251         (semantic-symref-derive-find-filepatterns): Use
12252         'shell-quote-argument' instead of manually quoting in a way that
12253         only works with Posix shells.  (Bug#22289)
12255 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12257         Document new features of tildify-mode
12259         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
12260         (tildify-mode): Spelling fixes in doc strings.
12262         * etc/NEWS: Reformat the tildify-mode entry.
12264 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12266         Document new features of Whitespace mode
12268         * doc/emacs/display.texi (Useless Whitespace): Document
12269         'whitespace-toggle-options' and the new 'big-indent' style.
12270         Document 'whitespace-big-indent-regexp'.  Document the Global
12271         Whitespace mode.
12273 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12275         Improve documentation of new Hide-IfDef features
12277         * etc/NEWS: Expand and reword Hide-IfDef section.
12279 2016-01-02  Leo Liu  <sdl.web@gmail.com>
12281         Fix regression in font-locking cl-assert and cl-check-type
12283         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
12284           el-errs-re.
12286 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12288         Spelling and grammar fixes
12290 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12292         Fix copyright years by hand
12294         These are dates that admin/update-copyright did not update, or
12295         updated incorrectly.
12297 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12299         Update copyright year to 2016
12301         Run admin/update-copyright.
12303 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12305         Merge from gnulib
12307         This mostly just updates copyright dates of gnulib files.
12308         It also updates to the latest version of texinfo.tex.
12310 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
12312         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
12314 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
12316         Port chart.el methods to cl-generic.
12318         cl-call-next-method cannot be used inside EIEIO's defmethod.
12319         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
12320         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
12321         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
12322         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
12323         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
12324         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
12326 2015-12-31  Brian Burns  <bburns.km@gmail.com>
12328         Add nt/INSTALL.W64 build instructions
12330         * nt/INSTALL.W64: New file.
12331         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
12333 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
12335         Add new input method 'programmer-dvorak'
12337         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
12338         input method.
12340         * etc/NEWS: Mention it.
12342 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
12344         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
12346         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
12347         original M-TAB binding in a buffer-local variable.
12348         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
12349         if that is recorded, when point is in a place where flyspell
12350         should not be active (e.g., because the user turned on
12351         'flyspell-prog-mode').  (Bug#18533)
12353 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
12355         Fix EWW rendering of long RTL lines
12357         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
12358         of the selected window before filling its lines.  (Bug#22250)
12360 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12362         fix  bug#21054
12364         * ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
12366 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12368         Clean up cairo printing code
12370         * src/gtkutil.c (xg_get_page_setup): Use listn.
12371         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
12372         decode_window_system_frame and FRAME_VISIBLE_P.
12373         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
12374         of Fdisplay.
12375         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
12376         instead of Fdisplay.  Temporarily unblock_input around QUIT.
12378 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12380         Add handle_user_signal_hook
12382         * src/keyboard.h (handle_user_signal_hook): New declaration.
12383         * src/keyboard.c (handle_user_signal_hook): New variable.
12384         (handle_user_signal): Call it.
12386 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12388         Avoid writing to purespace
12390         * src/alloc.c (Fmake_string): Don't write to empty string contents.
12391         (allocate_vector): Don't write to empty vector size.
12392         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
12393         Don't call unnecessary XSETCAR or XSETCDR.
12394         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
12395         write to empty string size_byte.
12397 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12399         Remove unused variable
12401         * lisp/international/mule-cmds.el: Remove unused variable
12402         `mac-system-coding-system'.
12404 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12406         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
12408 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12410         Use posix_openpt instead of openpty on Darwin
12412         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
12413         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
12414         Darwin-specific definitions.  Use posix_openpt instead.
12416 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
12418         Document support for ':documentation' in Lisp mode
12420         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
12421         (lisp-string-after-doc-keyword-p)
12422         (lisp-font-lock-syntactic-face-function): Add doc strings.
12424 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
12426         Document new features of TeX mode
12428         * doc/emacs/text.texi (TeX Print): Document
12429         'tex-print-file-extension'.
12430         * doc/emacs/programs.texi (Misc for Programs): Document support
12431         for Prettify Symbols mode in TeX mode.
12433 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12435         Clarify docs of hscroll in RTL text
12437         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
12438         meaning of a window's horizontal scroll amount for RTL paragraphs.
12440 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12442         Fix rendering of HTML pages that use character composition
12444         * src/indent.c (Fvertical_motion): Fix the case when point starts
12445         in the middle of a composition, as in shr-vertical-motion.
12446         (Bug#22250)
12448 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12450         Avoid some compiler warnings in w32.c
12452         * src/w32.c (codepage_for_filenames, crlf_to_lf)
12453         (ansi_encode_filename, socket_to_fd, sys_write)
12454         (check_windows_init_file): Avoid compiler warnings about
12455         differences in pointer signedness.
12457 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
12459         Undo ill-advised change
12461         * lisp/progmodes/xref.el (xref-collect-matches): Undo
12462         ill-advised change.  The hits come in the order that `find'
12463         produces them in, which isn't alphabetical.
12465 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
12467         Unbreak completion in python-mode buffers
12469         * lisp/progmodes/python.el (python-shell-completion-at-point):
12470         Unbreak in python-mode buffers.
12472 2016-01-09  Andrew Hyatt  <ahyatt@gmail.com>
12474         Adding example replies to bug-triage.
12476         * admin/notes/bug-triage: Added example replies. Also, as requested,
12477           making the process notes into more of a checklist.
12479 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
12481         Rename the notes/admin/triage file to bug-triage.
12483         * CONTRIBUTE: Change reference to the triage file name.
12484         * admin/notes/triage: Rename file to admin/notes/bug-triage.
12486 2016-01-07  Glenn Morris  <rgm@gnu.org>
12488         Allow creation of loaddefs files without timestamps.
12490         * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
12491         (autoload-generate-file-autoloads, update-directory-autoloads):
12492         If autoload-timestamps is nil, write "t" instead of file timestamp.
12493         (autoload-find-destination, update-directory-autoloads):
12494         If timestamp is "t", use the modtime of the output file instead.
12496 2016-01-06  Glenn Morris  <rgm@gnu.org>
12498         Doc tweaks.
12500         * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
12501         * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
12502         (calendar-iso-from-absolute):
12503         * lisp/calendar/cal-tex.el (cal-tex-comment):
12504         * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
12506 2016-01-06  Glenn Morris  <rgm@gnu.org>
12508         Build tweaks related to tags files.
12510         * lib-src/Makefile.in (tagsfiles): New variable.
12511         (TAGS): Also depend on the source files.  Use our own etags program.
12512         * lisp/Makefile.in (ETAGS): Add EXEEXT.
12513         (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
12514         Remove.
12515         (tagsfiles): New, replacing lisptagsfiles1 etc.
12516         Remove irrelevant source files here rather than in the TAGS rule.
12517         (${ETAGS}): New rule.
12518         (TAGS): Also depend on the etags executable.
12519         * lwlib/Makefile.in (EXEEXT): New, set by configure.
12520         (ETAGS): Add EXEEXT.
12521         (${ETAGS}): New rule.
12522         (ctagsfiles): Use "wildcard".
12523         (TAGS): Also depend on the etags executable.
12524         * nt/Makefile.in (ETAGS, tagsfiles): New variables.
12525         (${ETAGS}): New rule.
12526         (TAGS): Fix dependencies.
12527         * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
12528         (ETAGS): New variable, replacing $TAGS.  Use our own etags program.
12529         Remove "-t" argument.
12530         (${ETAGS}): New rule.
12531         (tagsfiles): New variable.
12532         (TAGS): New rule, with proper dependencies.
12533         * src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
12534         (ctagsfiles1, ctagsfiles2): Use "wildcard".
12535         (ctagsfiles3): Remove.
12536         (TAGS): Depend on etags.
12537         (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
12538         directories decide if updates are needed.
12540 2016-01-06  Glenn Morris  <rgm@gnu.org>
12542         * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
12544 2016-01-06  Glenn Morris  <rgm@gnu.org>
12546         * test/lisp/emacs-lisp/package-tests.el
12548         (package-test-macro-compilation): Fixup branch merge.
12550 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
12552         Fix fallout from merging emacs-25 branch in test/
12554         * .gitignore: Update for the new place of biditest.txt.
12555         * test/automated/: Directory removed.  All files moved to their
12556         proper places.
12557         * test/etags/: Directory removed.  All files moved to their proper
12558         places.
12559         * test/automated/url-parse-tests.el: File removed; it was an exact
12560         copy of the same file in test/lisp/url/.
12561         * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
12563 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
12565         Spelling fixes.
12567 2016-01-04  Daniel Colascione  <dancol@dancol.org>
12569         Let users disable unsafe signal handling code
12571         * src/keyboard.c (syms_of_keyboard): New user variables
12572         `attempt-stack-overflow-recovery' and
12573         `attempt-orderly-shutdown-on-fatal-signal'.
12574         * src/sysdep.c (stack_overflow): Check
12575         `attempt-stack-overflow-recovery'.
12576         * src/emacs.c (terminate_due_to_signal): Check
12577         `attempt-orderly-shutdown-on-fatal-signal'.
12579 2016-01-03  Michael Albinus  <michael.albinus@gmx.de>
12581         * configure.ac: Add error message for gfile on Nextstep.
12583 2016-01-03  John Wiegley  <johnw@newartisans.com>
12585         Merge branch 'emacs-25-merge'
12587 2016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12589         Align textually on fix done for emacs-25 branch for bug#21054
12591         * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
12592         and useless `(if t ...)' in order to align textually on fix done for
12593         emacs-25 branch for bug#21054.
12595 2016-01-02  K. Handa  <handa@gnu.org>
12597         support rendering of wider range of combinging characters by ftfont backend
12599         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
12600         supports rendering of combining characters, call
12601         font-shape-gstring.
12603         * src/font.c (Ffont_get): Handle `combining-capability' property.
12604         (syms_of_font): New symbol ":combining-capability'.
12606         * src/font.h (struct font_driver): New member combining_capability.
12608         * src/ftfont.c: Include "category.h".
12609         (ftfont_driver): Initialize combining_capability to
12610         ftfont_combining_capability.
12611         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
12612         FLT in advance.
12613         (ftfont_combining_capability): New function.
12615 2016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
12617         Add notes on bug triage procedure
12619         * CONTRIBUTE: In section on the issue tracker, point to new triage file.
12620         * admin/notes/triage: New file explaining triage procedure.
12622 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12624         Correct ses-rename-cell cursor-intangible text prop updating.
12626         There were two problems:
12628         - First ses-rename-cell has to work when called non interactively
12629           (with non-nil CELL argument), so in this case the start pos of
12630           put-text-property cannot be plainly (point), you need a
12631           ses-goto-print call before
12633         - Second, the range itself was computed erronously, only the first
12634           char was affected instead of the full cell width. This was not
12635           noticeable prior to changes (Deprecate `intangible' and
12636           `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
12638         * lisp/ses.el (ses-rename-cell): Correct computation of position range
12639         to which the 'cursor-intangible text property has to be set to cell
12640         new name.
12642 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12644         Don't fake empty cells value by "" when printing with a lambda.
12646         When using a lambda expression printer function the user should be
12647         free to format differently a really empty cell, ie. containing nil,
12648         from a cell containing an empty string "".
12650         * ses.el (ses-call-printer): Replace `(or value "")' by just `value'
12651         in the case of a lambda expression printer function.
12653         * ses.texi (Printer functions): Add example and description about
12654         lambda expression printer function handling all the possible values,
12655         including unexpected ones.
12657 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12659         Quick temporary hack to fix curcell refreshing.
12661         The problem was caused by change: 2015-04-13 Deprecate `intangible'
12662         and `point-entered' properties. The problem is that this change has
12663         removed the (setq ses--curcell t) setting in the ses-command-hook
12664         function.
12666         * ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
12667         a condition to call function `ses-set-curcell'. Comment this as a quick
12668         temporary hack to make it work, as I don't know yet whether a definite
12669         correction would be to make the ses-set-curcell at every ses-check-curcell,
12670         or to revert to the previous approach, ie marking ses--curcell as out-of-date
12671         at every potentially cursor motion command.
12673 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12675         Restrictive URL checking tweaks
12677         * lisp/net/eww.el (eww): Check whether the domain is
12678         restrictive instead of the string
12679         (http://македонија.icom.museum is restrictive even if each
12680         part is from a different script).
12682 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12684         New function `puny-highly-restrictive-domain-p'
12686         * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
12687         (puny-highly-restrictive-domain-p): New function.
12689 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12691         eww build fix (require puny)
12693 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12695         Transform non-restrictive domains to punycode for display
12697         * lisp/net/eww.el (eww): Check whether the domain is Highly
12698         Restrictive in the Unicode IDNA sense.
12700 2015-12-30  John Wiegley  <johnw@newartisans.com>
12702         Merge emacs-25 into master (using imerge)
12704 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12706         Fix typos in CC Mode manual
12708         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
12709         typos.  (Bug#22267)
12711 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12713         Avoid assertion violations in compact_font_cache_entry
12715         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
12716         avoid assertion violation in ASIZE.  (Bug#22263)
12718 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12720         Fix filling text with bidirectional characters in shr.el
12722         * lisp/net/shr.el (shr-insert-document): Bind
12723         bidi-display-reordering to nil while filling lines.  This is
12724         required for when a line includes characters whose bidi
12725         directionality is opposite to the base paragraph direction,
12726         because columns are counted in the logical order.  (Bug#22250)
12728 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12730         Further Unicode restrictive fixups
12732         * puny.el (puny-highly-restrictive-p): Include the extra
12733         identifier characters from table 3.
12735 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
12737         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
12739 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
12741         Sync with Tramp 2.2.13
12743         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
12745         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
12746         Use `tramp-compat-funcall'.
12748         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
12749         Make `split-string' call compatible with older Emacsen.
12751         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
12753 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
12755         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
12757 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12759         Mention that tls.el is secure by default, and will fail
12761 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12763         Make tls.el use trustfiles by default
12765         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
12766         (open-tls-stream): Insert the trustfile by looking at
12767         `gnutls-trustfiles'.
12769 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12771         Refactor out gnutls-trustfiles
12773         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
12775 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12777         Remove --insecure from gnutls-cli invocation
12779         * tls.el (tls-program): Default to using secure TLS
12780         connections (bug#19284).
12782 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12784         Add a new function to say whether a string is restrictive
12786         * puny.el (puny-highly-restrictive-p): New function.
12788 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
12790         Spelling fix
12792 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
12794         Port report-emacs-bug to deterministic builds
12796         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
12797         recent "built on" change to deterministic builds where
12798         emacs-build-system will be nil.  See:
12799         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
12801 2015-12-28  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
12803         Fix URL auth error message
12805         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
12806         message more correct (bug#20069).
12808 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12810         Mention the new puny.el library
12812 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12814         IDNA-related fixes for the URL library
12816         * lisp/url/url-http.el (url-http-create-request): IDNA-encode
12817         the Host: header.
12819         * lisp/url/url-util.el (url-encode-url): Don't hex-encode
12820         domain names, but leave them as UTF-8, so that they can be
12821         IDNA-encoded later when contacting the host.
12823 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12825         IDNA-encode all domain names in `open-network-stream'
12827         * network-stream.el (open-network-stream)
12828         (network-stream-open-plain, network-stream-open-starttls):
12829         IDNA-encode all domain names, if needed.
12831 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12833         Fix puny-encoding all-non-ASCII domains
12835         * puny.el (puny-encode-string): Fix the all-non-ASCII encoding case.
12837 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12839         * lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
12841 2015-12-28  Tom Tromey  <tom@tromey.com>
12843         set :safe on css-indent-offset
12845         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
12847 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12849         * eww.el (eww-mode): Remove superfluous bidi reset.
12851 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
12853         Make chunked encoding trailer detection more compliant
12855         * lisp/url/url-http.el
12856         (url-http-chunked-encoding-after-change-function): Make
12857         trailer detection more compliant (bug#16345).
12859 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12861         Reconnect erc even on server errors
12863         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
12864         reconnect even if a server error has occurred (bug#18527).
12866 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12868         Fix punycode short circuit logic
12870         * puny.el (puny-encode-domain): Fix short-circuit logic.
12872 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
12874         Fix Bug#10873 in `report-emacs-bug'
12876         * lisp/mail/emacsbug.el (report-emacs-bug): If
12877         `report-emacs-bug-no-explanations' is nil, make sure we can show
12878         mail and warnings buffer on this frame (Bug#10873).
12880 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12882         IDNA speed up
12884         * puny.el (puny-encode-domain): Make the common non-IDNA case faster
12886 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12888         Add IDNA domain encode/decode functions
12890         * puny.el (puny-decode-domain): New function.
12891         (puny-encode-domain): Ditto.
12892         (puny-decode-digit): Fix digit decoding error.
12894 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12896         Rename idna.el to puny.el
12898         * puny.el: Renamed from idna.el to avoid name collisions with
12899         the external idna.el library.
12901 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12903         Always reset the bidi direction
12905         * eww.el (eww-display-html): Always reset the bidi direction
12906         to `left-to-right' (bug#22257).
12908 2015-12-28  Alan Mackenzie  <acm@muc.de>
12910         Allow line comments ending with escaped NL to be continued to the next line.
12912         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
12914         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
12915         (forw-comment, back-comment): On encountering an end of comment character,
12916         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
12918         * doc/lispref/syntax.texi (Control Parsing): Describe
12919         `comment-end-can-be-escaped'.
12921         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
12923         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
12925 2015-12-28  Katsumi Yamaoka  <yamaoka@jpl.org>
12927         lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
12929         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
12930         Don't use split-string with 4th arg for old Emacsen compatibility.
12932 2015-12-27  Dmitry Gutov  <dgutov@yandex.ru>
12934         Rename project-library-roots to project-external-roots
12936         * lisp/progmodes/project.el (project-library-roots): Rename to
12937         project-external-roots.
12938         (project-library-roots-function): Rename to
12939         project-vc-external-roots-function.  Only use it in the VC
12940         backend, for now.  Update project-external-roots accordingly.
12941         (project-vc-library-roots): Remove.
12942         (project-or-libraries-find-regexp):
12943         Rename to project-or-external-find-regexp.
12945         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
12946         Rename to elisp-load-path-roots.
12948         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
12949         an anonymous function for the default value of
12950         project-vc-external-roots-function.
12952 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12954         * idna.el (idna-decode-string-internal): Implement decoding.
12956 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12958         Further IDNA tweaks
12960         (idna-encode-string): Make idna-encode-string safe for
12961         non-ASCII use.
12963 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12965         Clean up the code slightly
12967 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12969         Added basic idna encoding support
12971         * lisp/net/idna.el: New file.
12973 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
12975         Disconnection fixes for erc
12977         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
12978         reconnect if the user has disconnected explicitly (bug#4589).
12980 2015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
12982         Further erc asynch fixes
12984         * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
12985         erc-server-connect to return even if the connection is not
12986         ready.  Then erc-open and erc-server-reconnect do the
12987         same. (bug#5650).
12989 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
12991         Make erc connect asynchronously
12993         * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
12994         reconnect asynchronously.
12996         * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
12998 2015-12-27  Deniz Dogan  <deniz@dogan.se>
13000         Clear erc user list upon disconnection
13002         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
13003         lists upon disconnection.  This prevents invalid channel
13004         user lists when reconnecting (bug#10947).
13006 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13008         Don't bug out in erc after waking from sleep
13010         * erc-backend.el (erc-server-send-ping): If the server has
13011         closed connection, this may already have been detected and
13012         `erc-server-last-received-time' has been set to nil (bug#13608).
13014 2015-12-27  David Edmondson  <dme@dme.org>
13016         Proxy error in erc with multiple clients
13018         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
13019         generated when multiple IRC clients talk to a single IRC proxy
13020         (bug#19034).
13022 2015-12-27  Dima Kogan  <dima@secretsauce.net>
13024         Ensure that we don't have several timers in erc
13026         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
13027         for existing timers in the alist before adding new ones.  If a
13028         timer already exists, it is cancelled and
13029         overwritten. (bug#19292).
13031 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
13033         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
13034         (bug#18718).
13036 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13038         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
13039         at the start of the buffer, not at the end (bug#20496).
13041 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13043         * lisp/net/eww.el (eww-setup-buffer): Restore left-to-right defaults.
13045 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13047         Don't join erc channels doubly
13049         * erc-join.el (erc-autojoin-channels): Don't join channels
13050         more than once (if you have several nicks) (bug#20695).
13052 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
13054         Avoid leaving "ghost" of mouse pointer on MS-Windows
13056         * src/w32term.c (frame_set_mouse_pixel_position):
13057         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
13058         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
13059         * src/w32term.c (frame_set_mouse_pixel_position): Include
13060         w32common.h.
13062 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13064         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
13066 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
13068         Identify unsafe combinations of Bcc and encryption
13070         * lisp/gnus/gnus-util.el (gnus-subsetp): New function
13071         * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
13072         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
13074 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
13076         Fix auth source lookups from erc with port numbers
13078         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
13079         numbers (bug#20541).
13081 2015-12-27  Fran Litterio  <flitterio@gmail.com>
13083         Run erc-kill-channel-hook always on exit
13085         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
13086         when erc-kill-queries-on-quit is set (bug#21187).
13088 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
13090         Spelling fix
13092         * test/automated/url-parse-tests.el:
13093         (url-generic-parse-url/same-document-reference):
13094         Rename from url-generic-parse-url/same-decument-reference.
13096 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
13098         Reword initial *scratch* for brevity, appearance
13100         * lisp/startup.el (initial-scratch-message):
13101         Reword to avoid apostrophes, and to make it shorter.
13102         See the thread starting in:
13103         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
13105 2015-12-26  Leo Liu  <sdl.web@gmail.com>
13107         Add ert-deftest to lisp-mode.el
13109         * lisp-mode.el (lisp-imenu-generic-expression,
13110           lisp-el-font-lock-keywords-1): Add ert-deftest.
13112 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
13114         Mark imap changes as not needing doc changes
13116         * imap.el (imap-ssl-open): Remove
13118 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
13120         Use built-in encryption in imap.el
13122         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
13123         (imap-starttls-open): Use open-network-stream instead of starttls.el.
13124         (imap-tls-open): Use open-network-stream instead of tls.el.
13126 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13128         Don't try using /bin/sh in artist.el on MS-Windows
13130         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
13131         New function.
13132         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
13133         (Bug#20167)
13135 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
13137         Always define gmalloc etc. in src/gmalloc.c
13139         This is a work-around to prevent the compiler from using semantic
13140         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
13141         with -O2 replaces most of calloc's definition by a call to calloc;
13142         see Bug#22085.
13143         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
13144         (aligned_alloc, free): Do not undef.  Instead, define these as
13145         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
13147 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13149         Fix documentation of browse-url browser-related functions
13151         * lisp/net/browse-url.el (browse-url)
13152         (browse-url-default-browser, browse-url-default-windows-browser)
13153         (browse-url-default-macosx-browser, browse-url-chromium)
13154         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
13155         and NEW-WINDOW arguments in these functions.  (Bug#19421)
13157 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
13159         Propagate Bug#14412 fix to backtrace_eval_unrewind
13161         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
13162         becomes accurate again. This shouldn’t affect behavior.
13163         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
13165 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13167         Don't produce non-ASCII characters in *scratch*
13169         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
13170         avoid producing non-ASCII characters in the *scratch* buffer's
13171         commentary.
13173 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13175         Document changes in 'compare-windows'
13177         * lisp/vc/compare-w.el (compare-windows-removed)
13178         (compare-windows-added): Doc fix.
13180         * doc/emacs/files.texi (Comparing Files): Document the changes in
13181         window selection by 'compare-windows'.
13183 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13185         Document 'vc-annotate-background-mode'
13187         * doc/emacs/maintaining.texi (Old Revisions): Document
13188         'vc-annotate-background-mode'.
13190 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13192         Document 'vc-region-history'
13194         * doc/emacs/maintaining.texi (VC Change Log): Document
13195         'vc-region-history'.
13197 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13199         Improve documentation of 'vc-push'
13201         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
13202         improve the documentation of 'vc-push'.
13204         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
13206 2015-12-26  Alain Schneble  <a.s@realize.ch>
13208         Include the tests for the URL parsing fixes
13210 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13212         Document 'url-user-agent'.
13214         * lisp/url/url-http.el (url-user-agent): Move from here...
13215         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
13216         keep all the URL defcustoms in one place, and also have it defined
13217         whenever the URL library is loaded.
13219         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
13221 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13223         Document protocols supported by URL library via Tramp
13225         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
13226         supported via Tramp.
13227         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
13228         Tramp.
13230 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13232         Document changes in Shell-script mode
13234         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
13235         the 'sh-shell' file-local variable.
13236         (top level): Add an auto-load form to avoid byte-compiler warning
13237         about 'comint-send-string'.
13239 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13241         Fix documentation of 'ses-define-local-printer'
13243         * doc/misc/ses.texi (Printer functions): Fix whitespace between
13244         sentences and punctuation.  Add an index entry for
13245         'ses-define-local-printer'.
13247 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
13249         Document 'ert-summarize-tests-batch-and-exit'
13251         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
13252         'ert-summarize-tests-batch-and-exit'.
13254 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13256         Avoid assertion violation in unbind_to
13258         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
13259         if we get here with an object that is not a symbol.  (Bug#14412)
13261 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
13263         Don't treat /foo/bar:mumble as ange-ftp address
13264         * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
13265         only in the first component.  (bug#5362)
13267 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
13269         Make sure *scratch* etc. use forward slashes in its default-directory
13271         * lisp/startup.el (normal-top-level): On MS-Windows, convert
13272         backslashes to forward slashes while decoding default-directory
13273         of the initially-created buffers.
13275 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
13277         Restore info about the build host in bug reports
13279         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
13280         which Emacs was built.  This is important information for
13281         investigating bug reports reported by users who don't build their
13282         Emacs.
13284 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
13286         Fix bootstrap broken by changes related to OS X file-name encoding
13288         * lisp/international/ucs-normalize.el (eval-when-compile): Make
13289         sure char-code-property-alist includes elements that allow access
13290         to 'decomposition' and 'canonical-combining-class' Unicode
13291         properties, as compiling ucs-normalize.el requires that.
13292         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
13293         only of charprop.el was already loaded.
13295         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
13296         New order-only dependency.
13298 2015-12-25  Leo Liu  <sdl.web@gmail.com>
13300         * lisp/ido.el (ido-add-virtual-buffers-to-list):
13301         Use bookmark-get-filename.
13303 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
13305         Make tramp-test29-vc-registered more robust
13307         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
13308         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
13309         Remove instrumentation.
13311 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13313         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
13315 2015-12-23  Katsumi Yamaoka  <yamaoka@jpl.org>
13317         Fix `gnus-union' so as to behave like `cl-union'
13319         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
13320         Make gnus-union use `equal' to compare items in lists.
13322         * lisp/gnus/gnus-util.el (gnus-union):
13323         Make it behave like cl-union partially.
13325 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
13327         Fix dired.c typo with ptrdiff_t vs Lisp_Object
13329         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
13330         an integer type, fixing a problem introduced in the recent fix for
13331         Bug#22169.
13333 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
13335         Document default process sentinel more prominently
13337         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
13338         defaults for process filter and sentinel.  Provide cross-references.
13339         (Process Information): Provide cross-references to where filters
13340         and sentinels are described.
13341         (Filter Functions): Add an index entry for "default filter".
13342         (Sentinels): Add a few status messages not documented previously.
13343         Resolve the "killed" confusion.  Document and describe the default
13344         sentinel.  (Bug#22220)
13346 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
13348         Fix file-name completion on OS X
13350         * src/dired.c (file_name_completion): Reject false matches due to
13351         file-name-coding-systems that decompose characters when encoding
13352         file names, by comparing decoded file names as well.  (Bug#22169)
13353         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
13355         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
13356         non-nil 'decomposed-characters' property.
13358 2015-12-23  Anders Lindgren  <andlind@gmail.com>
13360         File-name completion of non-ASCII characters on OS X (bug#22169)
13362         The coding system `utf-8-nfd', locally defined in ns-win.el,
13363         didn't provide a :pre-write-conversion method, causing file name
13364         completion of non-ASCII characters to fail.  Solved by using the
13365         `utf-8-hfs' coding system provided by `ucs-normalize'.
13367         * lisp/loadup.el: Load international/ucs-normalize (when building
13368         for ns).
13370         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
13371         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
13372         as the file name coding system.
13374         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
13376 2015-12-22  Tom Tromey  <tom@tromey.com>
13378         Fix bug #18588 by making bug-reference-bug-regexp more lenient
13380         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
13381         "bug NNNN".  (Bug #18588)
13383 2015-12-22  Tom Tromey  <tom@tromey.com>
13385         add some cl-* aliases to lisp-mode imenu
13387         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
13388         cl-defgeneric, and cl-defmethod.
13390 2015-12-22  Tom Tromey  <tom@tromey.com>
13392         Make a variable buffer-local
13394         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
13395         font-lock-syntax-table buffer-local.  (Bug #21627)
13397 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
13399         Fix decoding of text in URLs retrieved by EWW
13401         * lisp/net/eww.el (eww-render): Pass 'charset' to
13402         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
13403         non-nil, to set 'buffer-file-coding-system' of the buffer where we
13404         show the URL.
13405         (eww-display-html, eww-display-raw): Decode the text correctly,
13406         using the charset found in the headers, and defaulting to UTF-8.
13407         If the user told us to use a specific encoding, override the
13408         charset from the headers.  (Bug#22222)
13410 2015-12-22  Alan Mackenzie  <acm@muc.de>
13412         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
13414         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
13415         variable `tmp'.
13416         After a failed search for a matching ">", restore point before continuing.
13418 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
13420         Instrument Tramp tests
13422         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
13423         (tramp--test-utf8): Instrument tests.
13425 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
13427         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
13429         * lisp/simple.el (display-message-or-buffer): Call
13430         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
13431         (Bug#22221).
13433 2015-12-21  Juri Linkov  <juri@linkov.net>
13435         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
13437         (save-places-to-alist, save-place-dired-hook):
13438         Check for dired-subdir-alist.  (Bug#19851)
13440 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13442         Add FIXME comment re stack overflow and modules
13444 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
13446         Revert some recent emacs-module commentary
13448         Most of the recently-added commentary was incorrect, due to the
13449         possibility of stack overflow.
13451 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
13453         Spelling fix: prefer "cooperate" to "co-operate"
13455 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
13457         Port undo fixes to -fno-common
13459         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
13460         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
13461         (buffer_before_last_command_or_undo):
13462         Declare in keyboard.h, and define in keyboard.c,
13463         instead of assuming the traditional Unix relaxed ref-def linkage.
13465 2015-12-20  Philipp Stephani  <phst@google.com>
13467         Improve commentary for emacs-module.c
13469         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
13470         * src/emacs-module.c (module_non_local_exit_get): Document that we
13471         cannot use the current implementation.
13472         (module_is_not_nil, module_eq): Document assumptions about EQ and
13473         NILP.
13475 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
13477         Suppress test on Mac OS X
13479         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
13480         (tramp--test-utf8): Use it.
13482 2015-12-20  Alan Mackenzie  <acm@muc.de>
13484         Merge branch 'scratch/follow' into emacs-25
13486         This allows Isearch, etc., to work well when Follow Mode is active.
13488 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
13490         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option):
13491         Improve check.
13493 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13495         Fix last commit
13497         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
13498         with numeric argument.
13500 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13502         Document new features of Rmail
13504         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
13505         Document new behavior of 'd' and 'C-d' with numeric argument.
13506         (Rmail Display): Document the rendering of HTML MIME parts.
13508 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13510         Improve documentation of new cl-lib functions
13512         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
13513         Fix wording.
13515 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13517         Document the new feature of 'minibuffer-with-setup-hook'
13519         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
13520         added to `minibuffer-setup-hook'.
13522 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13524         Document new features of Font Lock
13526         * doc/lispref/modes.texi (Other Font Lock Variables): Document
13527         'font-lock-flush-function' and 'font-lock-ensure-function'.
13528         (Font Lock Basics): Document the basic fontification functions
13529         referenced in "Other Font Lock Variables".
13531         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
13533 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13535         Document new features of Rectangle mode
13537         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
13538         rectangle-mark-mode.
13540 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13542         Manual followup to last change
13544         * doc/lispref/display.texi (Displaying Messages): Sync with the
13545         doc string.  (Bug#22210)
13547 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13549         Clarify doc string of 'display-message-or-buffer'
13551         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
13552         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
13554 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13556         * doc/emacs/emacs.texi (Top): Update top-level menus.
13558         * doc/lispref/elisp.texi (Top): Update top-level menus.
13560 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13562         Document how to avoid file-local variables that aren't
13564         * doc/emacs/custom.texi (Specifying File Variables): Describe how
13565         to prevent Emacs from interpreting unrelated text as file-local
13566         variables.  (Bug#22166)
13568 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
13570         Fix a typo in eterm-color's termcap entry
13572         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
13573         entry.  (Bug#22184)
13575 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13577         Allow 'browse-url-emacs' visit non-existent URLs
13579         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
13580         signal an error if VISIT is non-nil, to more faithfully emulate
13581         the behavior of 'insert-file-contents'.  (Bug#22160)
13583 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
13585         Remove SunOS 4.x cruft
13587         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
13588         * lib-src/pop.c [sun]: Remove no-longer-needed include.
13589         * lwlib/xlwmenu.c (SUNSO41): Remove.
13591 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
13593         Merge from gnulib
13595         This mostly commentary fixes.
13596         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
13597         * lib/gnulib.mk: Regenerate with new gnulib-tool.
13599 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
13601         Minor fixes in Tramp
13603         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
13604         Reorder ls arguments.
13606         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
13608 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
13610         Make tramp a built-in package
13612         * lisp/finder.el (finder-compile-keywords): Update
13613         `package--builtins' also when Version: keyword is available.
13615         * lisp/net/trampver.el: Add Version: keyword.
13616         (tramp-version): Change it to "2.2.13.25.1", in order to be
13617         compatible with `version-to-list'.
13619 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
13621         * etc/tutorials/TUTORIAL.it: Update and fix typos.  (Bug#22187)
13623 2015-12-18  Alan Mackenzie  <acm@muc.de>
13625         Rename `recenter-group' to `recenter-window-group'
13627         * doc/lispref/windows.texi (Textual Scrolling)
13628         * lisp/window.el (top level, recenter-group)
13629         * lisp/follow.el (follow-mode)
13630         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
13631         `recenter-window-group' and `recenter-group-function' to
13632         `recenter-window-group-function'.
13634 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
13636         Fix vertical-motion in tabulated-list mode
13638         * src/indent.c (Fvertical_motion): When moving from line beginning
13639         to point under line truncation, assume overshoot by one line only
13640         if point actually lies beyond the window's right margin.
13641         (Bug#22194)
13643 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
13645         Don't have help functions call x-display-pixel-width/-height on ttys
13647         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
13648         Don't call x-display-pixel-width/-height on ttys.
13650 2015-12-17  Dmitry Gutov  <dgutov@yandex.ru>
13652         Use 'hg id' in vc-hg-previous-revision
13654         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
13655         Use 'hg id' to retrieve it (bug#22032).
13657 2015-12-17  Alan Mackenzie  <acm@muc.de>
13659         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
13661 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
13663         Fix a typo in the Emacs manual
13665         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
13666         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
13668 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
13670         Fix parsing netrc entries with ports
13672         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
13673         make a list out of 't'.  (Bug#22188)
13675         * test/automated/auth-source-tests.el
13676         (auth-source-test-netrc-parse-entry): New test.
13678 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
13680         Fix typo in Doug Lea malloc configure log
13682         * configure.ac (emacs_cv_var_doug_lea_malloc):
13683         Fix typo that confused the log output of 'configure'.
13685 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
13687         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
13689 2015-12-16  Alan Mackenzie  <acm@muc.de>
13691         * etc/NEWS: Move entry on pcase to correct section
13693         (Accidentally omitted from previous commit)
13695 2015-12-16  Alan Mackenzie  <acm@muc.de>
13697         Add documentation for changes to Show Paren mode.
13699         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
13701         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
13702         options, including the new show-paren-when-point-inside-paren and
13703         show-paren-when-point-in-periphery.
13705         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
13706         Move an entry on pcase to the Lisp Changes section.
13708 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
13710         Document Eldoc changes
13712         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
13714 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
13716         Fix invocation of Python and Guile interpreters from gdb-mi
13718         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
13719         commands for interactive Python and Guile interpreters.
13720         (gdb-send): Recognize various ways of exiting from Python and
13721         Guile interpreters and returning to GDB.  For details, see
13722         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
13723         and http://stackoverflow.com/questions/31514741.
13725 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
13727         Remove attempt to use C11 threads
13729         C11 threads are not needed for Emacs now, and their use is causing
13730         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
13731         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
13732         * configure.ac: Do not check for C11 threads. Remove unnecessary
13733         fiddling with CPPFLAGS when configuring pthreads.
13734         * src/emacs-module.c (main_thread, check_main_thread)
13735         (module_init): Do not worry about C11 threads.
13737 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13739         Set utf8 encoding with stty in Tramp
13741         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13742         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
13743         encoding with stty.
13745 2015-12-15  Alan Mackenzie  <acm@muc.de>
13747         Tidy up documentation associated with window groups.
13749         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
13750         Groups".  Correct example function to `window-group-start'.
13751         (Window Start and End, Textual scrolling): Point to the new anchor.  State
13752         that (most of) the args in window group functions have the same meaning as for
13753         the corresponding window primitives.
13755         * doc/lispref/positions.texi (Screen Lines).  Same as above.
13757 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13759         Complete last commit
13761         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13762         Move uname check up.  Handle Mac OS X eol encoding.
13764 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13766         Handle Mac OS X eol encoding in Tramp
13768         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13769         Handle Mac OS X eol encoding.
13771 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13773         Fix variable name typo in compute_tip_xy
13775         * src/w32fns.c (compute_tip_xy):
13776         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
13777         when `right' is integer.
13779 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>  (tiny change)
13781         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
13783 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13785         Revert "Fix rx matcher overflow without limiting"
13787         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
13789 2015-12-14  Alan Mackenzie  <acm@muc.de>
13791         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
13793         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
13794         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
13796 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13798         Fix rx matcher overflow without limiting
13800         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
13801         change to the regexp without imposing a limit on the length of the
13802         options.
13804 2015-12-14  Alan Mackenzie  <acm@muc.de>
13806         Enhance ispell-skip-region-alist by generating part of it at runtime.
13808         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
13809         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
13810         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
13811         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
13812         Include the result of ispell--make-filename-or-URL-re in regexps.
13814 2015-12-14  Glenn Morris  <rgm@gnu.org>
13816         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
13818 2015-12-14  Alan Mackenzie  <acm@muc.de>
13820         Replace GROUP argument in six window primitives by new functions.
13822         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
13823         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
13824         from description of six window functions.  Add in description of new functions
13825         window-group-start, window-group-end, set-window-group-start,
13826         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
13827         together with the six variables indirecting to the pertinent group
13828         functions.
13830         * src/window.c
13831         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
13832         applies to these two files, which added the GROUP argument to six window
13833         primitives.
13835         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
13836         functions.
13838         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
13839         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
13840         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
13841         to window primitives (e.g. window-start) with a GROUP argument by calls to
13842         new functions (e.g. window-group-start).
13844         * lisp/ispell.el (ispell-command-loop): Replace call to
13845         pos-visible-in-window-p with pos-visible-in-window-group-p.
13847         * lisp/window.el (window-group-start, window-group-end)
13848         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
13849         (selected-window-group, move-to-window-group-line): New functions.
13850         (window-group-start-function, window-group-end-function)
13851         (set-window-group-start-function, recenter-group-function)
13852         (pos-visible-in-window-group-p-function, selected-window-group-function)
13853         (move-to-window-group-line-function): New variables.
13855 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
13857         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
13859 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
13861         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
13863 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13865         Improve regex to not trigger stack overflow
13867         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
13868         order not to trigger a stack overflow in regex matcher with unbalanced
13869         brackets (bug#22146).
13871 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
13873         Fix visiting files with raw-text
13875         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
13876         when some stuff was actually read.  (Bug#22162)
13878 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13880         Fix regex matching keyval labels
13882         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
13883         matching keyval labels.
13885 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
13887         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
13889         ... in case of Tramp.  (Bug#20821)
13891 2015-12-12  Paul Eggert  <eggert@cs.ucla.edu>
13893         Fix performance regression with gcc -O0
13895         This fixes the smaller performance hit that I noted in:
13896         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
13897         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
13898         * src/puresize.h (puresize_h_PURE_P)
13899         (puresize_h_CHECK_IMPURE):
13900         New macros, with the old contents of the functions.
13901         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
13902         * src/puresize.h (PURE_P, CHECK_IMPURE):
13903         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
13904         * src/conf_post.h (ATTRIBUTE_UNUSED):
13905         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
13907 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13909         * lisp/emacs-lisp/package.el (package-unpack): Security check
13911         Check that we received the package we were offered.
13913 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13915         * lisp/emacs-lisp/package.el (package--compile): Don't activate
13917         `package-unpack' takes care of all activations now (other than
13918         `package-initialize).  `package--compile' now only compiles.
13920 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13922         Document the new bindings of <UP> and <DOWN> in the minibuffer
13924         * doc/emacs/mini.texi (Minibuffer History): Describe the new
13925         bindings of <UP> and <DOWN> in the minibuffer.
13927 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13929         Document new features of Ido
13931         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
13933 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
13935         Fix frame height calculations with added menu bar on Windows (Bug#22105)
13937         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
13938         when simultaneously specifying multiple parameters for
13939         `modify-frame-parameters' that all may change the frame's size.
13940         * src/w32fns.c (x_set_menu_bar_lines): Don't set
13941         windows_or_buffers_changed here.
13942         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
13943         with third argument false.
13944         * src/w32menu.c (set_frame_menubar): Set
13945         windows_or_buffers_changed here.
13946         * src/w32term.c (x_set_window_size): Determine third argument of
13947         AdjustWindowRect from whether the frame has a menu bar and not
13948         from whether it wants one.
13950 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13952         Document the change in interactive shell mode
13954         * doc/emacs/misc.texi (Interactive Shell): Document that the
13955         '*shell*' buffer by default displays in a new window.
13957 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13959         Document new features of package.el
13961         * doc/emacs/package.texi (Package Menu): Document the 'external'
13962         status and the new menu commands.
13963         (Package Installation): Document archive priorities.
13965         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
13966         (package-menu-hide-low-priority): Doc fix.
13968 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13970         Update and document new features of xterm support
13972         * doc/emacs/frames.texi (Text-Only Mouse): Document that
13973         track-mouse is supported by newer xterm versions.
13975 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13977         Document new features of Prettify Mode
13979         * doc/emacs/programs.texi (Misc for Programs): Document
13980         'prettify-symbols-compose-predicate' and
13981         'prettify-symbols-unprettify-at-point'.
13983         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
13984         (prettify-symbols-default-compose-p)
13985         (prettify-symbols-compose-predicate)
13986         (prettify-symbols--compose-symbol): Doc fixes.
13988 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13990         Document multi-mode indentation facilities
13992         * doc/lispref/text.texi (Mode-Specific Indent): Document
13993         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
13995         * lisp/progmodes/prog-mode.el (prog-indentation-context)
13996         (prog-widen): Doc fixes.
13998 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
14000         Document 'vc-refresh-state'
14002         * doc/emacs/maintaining.texi (Version Control): Document
14003         'vc-refresh-state'.
14005         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
14007 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
14009         Fix echo for "C-u"
14011         * src/keyboard.c (command_loop_1): Undo last change.  It caused
14012         duplicate echo of C-u.  (Bug#22107)
14014 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14016         Avoid errors when creating files under SVN in new directory
14018         * lisp/vc/vc-svn.el (vc-svn-registered): Use
14019         file-accessible-directory-p, to avoid cd'ing to a non-existing
14020         directory, which signals an error on some systems.  (Bug#21984)
14021         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
14022         Use declare-function to avoid byte-compiler warnings.
14024 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14026         Improve Lua support in etags
14028         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
14029         "function".
14031         * etc/NEWS: Mention improved Lua support by 'etags'.
14033         * test/etags/lua-src/test.lua (test): Add tests for indented
14034         function definitions.
14035         * test/etags/ETAGS.good_1:
14036         * test/etags/ETAGS.good_2:
14037         * test/etags/ETAGS.good_3:
14038         * test/etags/ETAGS.good_4:
14039         * test/etags/ETAGS.good_5:
14040         * test/etags/ETAGS.good_6:
14041         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
14043 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14045         Fix 'this-command-keys' wrt prefix argument
14047         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
14048         was part of this-command-keys, but not of this-single-command-keys.
14049         (Bug#22107)
14051         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
14052         commentary about the function's return value.
14054 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14056         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
14058 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14060         Improve and document Ruby support in 'etags'
14062         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
14063         (Ruby_functions): Support "module" and overloaded operators.
14064         (Ruby_help): Mention "module".
14066         * test/etags/ruby-src/test.rb:
14067         * test/etags/ruby-src/test1.ruby: New files.
14068         * test/etags/Makefile (RBSRC): New tests.
14069         (SRCS): Add ${RBSRC}.
14070         * test/etags/ETAGS.good_1:
14071         * test/etags/ETAGS.good_2:
14072         * test/etags/ETAGS.good_3:
14073         * test/etags/ETAGS.good_4:
14074         * test/etags/ETAGS.good_5:
14075         * test/etags/ETAGS.good_6:
14076         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
14078         * doc/man/etags.1: Mention Ruby support.
14079         * etc/NEWS: Mention Ruby support.
14081 2015-12-11  Xi Lu  <lx@shellcodes.org>
14083         Initial support for Ruby in 'etags'
14085         * lib-src/etags.c <Ruby_suffixes>: New variable.
14086         (lang_names): Add an entry for Ruby.
14087         (Ruby_functions): New function.  (Bug#22116)
14089 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14091         Clarify documentation of 'modify-frame-parameters'
14093         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
14094         PARMs" mean for 'modify-frame-parameters'.
14096         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
14097         PARMs" mean for this function.  (Bug#22104)
14099 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14101         Fix setting buffer unibyte when reading from a device
14103         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
14104         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
14106 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14108         Clarify documentation of 'values'
14110         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
14111         updated by any evaluation commands in 'lisp-interaction-mode'.
14112         (Bug#22056)
14114 2015-12-11  Anders Lindgren  <andlind@gmail.com>
14116         Fixed subversion vc error when opening file in new directory (bug#21984).
14118         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
14120 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
14122         Yet another fix for when point ends up in invisible text
14124         * src/xdisp.c (redisplay_window): When someone forced
14125         window-start, and honoring that failed to show the cursor, try
14126         moving out of invisible text, before falling back to the middle of
14127         the window.  (Bug#22098)
14129 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
14131         Fix error in Tramp perl script for cygwin
14133         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
14134         error if file doesn't exist.
14136 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14138         Remove font workaround for limited outdated versions
14140         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
14141         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
14143 2015-12-09  Anders Lindgren  <andlind@gmail.com>
14145         Don't add "." to load path (bug#21104)
14147         When configured with --enable-locallisppath=no, which is the
14148         default for OS X, the load-path incorrectly was populated with ".".
14150         * src/lread.c (init_lread): Don't call `decode_env_path' when
14151         PATH_SITELOADSEARCH is empty.
14153 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
14155         * lisp/emacs-lisp/package.el (package--with-response-buffer):
14157         Search for the blank-line in the right buffer.
14159 2015-12-08  Glenn Morris  <rgm@gnu.org>
14161         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
14162         for recent change.
14164 2015-12-08  Glenn Morris  <rgm@gnu.org>
14166         Fix some display-warning usage.
14168         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
14169         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
14170         * lisp/calendar/holidays.el (calendar-holiday-list):
14171         * lisp/mail/rmailout.el (rmail-output-read-file-name):
14172         Fix display-warning usage.
14174 2015-12-07  Glenn Morris  <rgm@gnu.org>
14176         * lisp/calendar/cal-html.el: Require diary-lib.
14178         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
14180 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14182         Add Obsolete-since header to eudcb-ph.el
14184         * eudcb-ph.el: Add Obsolete-since header.
14186 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
14188         Spelling fixes
14190         * doc/misc/calc.texi (Predefined Units): Use the bland modern
14191         scientific style for spelling the units “ampere” and
14192         “angstrom” rather than the older style “Ampere” and
14193         “Ångstrom”.  The latter spelling was wrong anyway (it should
14194         have been “Ångström”).
14195         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
14196         Fix misspelling of ‘atom’ in code.
14198 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
14200         Improve documentation of kill commands
14202         * lisp/simple.el (region-extract-function, delete-backward-char)
14203         (delete-forward-char, kill-region, copy-region-as-kill)
14204         (kill-ring-save): Better document the optional argument REGION in
14205         the doc strings.  Mention in the doc strings that text put in the
14206         kill-ring can be filtered by 'filter-buffer-substring'.
14208         * doc/lispref/text.texi (Kill Functions): Mention that functions
14209         described in this subsection can filter text they put in the
14210         kill-ring.  Add a cross-reference to "Buffer Contents" and an
14211         index entry.  Document the optional argument 'region' and its
14212         effect.
14213         (Bug#21315)
14215 2015-12-07  Alan Mackenzie  <acm@muc.de>
14217         Further progress making Isearch, Ispell, Replace work with Follow Mode.
14219         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
14220         no longer exists.  Add follow-post-command-hook to  three special purpose
14221         hooks at setup, and remove them at tear down.
14223         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
14224         isearch-lazy-highlight-new-loop.
14225         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
14226         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
14227         it.
14228         (isearch-lazy-highlight-maybe-new-loop): function removed.
14230         * lisp/replace.el: (replace-update-post-hook): New hook variable.
14231         (perform-replace): Add second (nil) argument to looking-back.  Invoke
14232         replace-update-post-hook before calling replace-highlight.
14234         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
14235         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
14236         call of pos-visible-in-window-p.
14237         (ispell-display-buffer): Place *Choices* window at the top of the last window
14238         in a window group.
14240 2015-12-07  Alan Mackenzie  <acm@muc.de>
14242         Amend doc of `mapconcat': it can take sequences, not merely strings.
14244         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
14245         to say that SEPARATOR and the results from FUNCTION may be any character
14246         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
14248 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
14250         Fix an utf8 problem for Tramp on BSD
14252         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
14253         Make lax check for utf8.
14254         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
14256 2015-12-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14258         Make eudcb-ph.el obsolete
14260         * doc/misc/eudc.texi: Bump version to 1.40.0.
14261         Remove PH/QI sections and mentions.
14262         * lisp/obsolete/eudcb-ph.el: Make obsolete.
14263         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
14264         (eudc-ph-bbdb-conversion-alist): Make obsolete.
14265         * etc/NEWS: Mention this.  (Bug#21191)
14267 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14269         Remove overenthusiastic eassert
14271         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
14272         previous change.  It breaks on MS-Windows --with-wide-int.
14273         Problem reported by Eli Zaretskii in:
14274         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
14276 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14278         Pacify gcc -Wparentheses
14280         * src/xdisp.c (row_containing_pos): Reparenthesize.
14282 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14284         Port mod-test to 32-bit Emacs --without-wide-int
14286         * modules/mod-test/test.el (mod-test-sum-test):
14287         Bring back the 2**29 tests, but port them to 32-bit Emacs
14288         --without-wide-int.
14290 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
14292         Fix minor Tramp problems found on BSD
14294         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
14295         trailing slash.  Quote apostrophes.
14296         (tramp-sh-handle-file-truename): Do not append trailing slash in
14297         the "ls" case.
14298         (tramp-get-ls-command-with-w-option): New defun.
14299         (tramp-do-file-attributes-with-ls)
14300         (tramp-do-directory-files-and-attributes-with-stat): Use it.
14302         * test/automated/tramp-tests.el
14303         (tramp-test31-special-characters-with-perl)
14304         (tramp-test31-special-characters-with-ls)
14305         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
14306         Suppress also readlink.
14308 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
14310         Fix cursor display when invisible text is at line beginning
14312         * src/xdisp.c (redisplay_window): When scrolling fails to show
14313         point, prefer using the desired matrix if possible for finding the
14314         fallback glyph row for displaying the cursor.  (Bug#22098)
14315         (row_containing_pos): Exit the loop as soon as we hit the first
14316         disabled glyph row.  Otherwise we risk accessing garbled data and
14317         departing to the no-no land.
14319 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14321         Improve module interface when WIDE_EMACS_INT
14323         * src/emacs-module.c (plain_values): New constant.
14324         (module_nil): Now a constant.
14325         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
14326         (syms_of_module): Use if, not #ifdef, so that both sides are
14327         checked at compile-time, and so that GCC doesn’t complain
14328         about an unused var in the typical case.  Also, depend on
14329         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
14330         that WIDE_EMACS_INT implies !USE_LSB_TAG.
14331         (value_to_lisp_bits, lisp_to_value_bits): New functions.
14332         Sign-extend integers rather than zero-extending them, as small
14333         negative integers are more likely.
14334         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
14335         functions.
14336         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
14337         (mark_modules): Remove.  All uses removed.
14338         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
14339         to GCALIGNMENT.
14340         (syms_of_module): Check that module_nil converts to Qnil.
14341         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
14342         we prefer signed to unsigned when either will do.
14343         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
14344         a bit better for emacs-module.c.
14346 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14348         Port mod-test to x86-64 GNU/Linux running 32-bit
14350         * modules/mod-test/test.el (mod-test-sum-test):
14351         Don’t attempt to match descriptions to operating systems.
14352         It didn’t work on Fedora x86-64 running a 32-bit executable,
14353         and it’s not worth the trouble anyway.
14354         Port to 32-bit platforms by removing an assumption about
14355         fixnum widths.
14357 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
14359         Fix auto-revert-tests.el when filenotify isn't used
14361         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
14362         Make it working also when filenotify isn't used.
14364 2015-12-05  Juri Linkov  <juri@linkov.net>
14366         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
14368         Let-bind isearch-regexp-function to nil.  (Bug#22097)
14370 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
14372         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
14374         (package--with-response-buffer): NOERROR and ERROR-FORM only
14375         handle connection errors.
14376         (bad-signature): New error type.
14377         (package--check-signature-content): Use it.
14378         (package--check-signature): Properly distinguish connection errors
14379         from bad-signature errors.  Do the check for
14380         `package-check-signature' `allow-unsigned' here instead of forcing
14381         the callbacks to do it.  Add a new argument, UNWIND.
14382         (package--download-one-archive, package-install-from-archive):
14383         Update usage of `package--check-signature'.
14385 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
14387         Fix Bug#22092.
14389         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
14390           Clean up inconsistent line endings. (Bug#22092)
14391           (icalendar--clean-up-line-endings): New.
14392         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
14393           for Bug#22092.
14395 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14397         Document 'bookmark-set-no-overwrite'
14399         * doc/emacs/regs.texi (Bookmarks): Document the new command
14400         'bookmark-set-no-overwrite' and its keybinding.
14402 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14404         Document new binding of 'mouse-buffer-menu'
14406         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
14407         now also on C-F10.
14409 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14411         Initial documentation of dynamic modules
14413         * doc/lispref/loading.texi (Dynamic Modules): New section with
14414         initial documentation for dynamic modules.
14415         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
14416         detailed menu
14418         * etc/NEWS: Fix typos in dynamic modules' entry.
14420 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
14422         Remove copyright statements from trivial test files
14424 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14426         Add "Preliminaries" section to etc/DEBUG
14428         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
14429         Most of the content was suggested by Phillip Lord
14430         <phillip.lord@russet.org.uk>.  Remove the section about debugging
14431         with the Visual Studio, as building Emacs with the Microsoft
14432         compilers is no longer supported.  Minor fixes in some other
14433         sections.
14435 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
14437         Improve parsing of version strings
14439         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
14440         (version-to-list): More helpful error messages.
14441         (version-to-list): ".5" is valid (update docstring).  Make
14442         "22.8X3" invalid, as the doc string says.
14444         * test/automated/subr-tests.el (ert-test-version-parsing): New
14445         tests for version string processing.
14447 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14449         Fix documentation of 'undo' changes
14451         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
14452         English conventions for spelling and whitespace between sentences.
14454         * etc/NEWS: Fix wording and spelling of undo-related entries.
14455         Mark them as documented.
14457 2015-12-04  Glenn Morris  <rgm@gnu.org>
14459         * lisp/net/net-utils.el: Small improvements.
14461         (net-utils--executable-find-sbin): New function.
14462         (ifconfig-program): Check sbin directories.
14463         Fallback to "ip".  (Bug#22091)
14464         (ifconfig-program-options): Check the actual program in use.
14465         (arp-program): Check sbin directories.
14467 2015-12-04  Arash Esbati  <esbati@gmx.de>  (tiny change)
14469         Fix wrong-type-argument integer-or-marker-p nil error
14471         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
14472         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
14474 2015-12-04  Alan Mackenzie  <acm@muc.de>
14476         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
14478         Merge necessitated by a rebase operation.
14480 2015-12-04  Alan Mackenzie  <acm@muc.de>
14482         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
14484 2015-12-04  Alan Mackenzie  <acm@muc.de>
14486         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
14488         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
14489         Windows" and new @defun selected-window-group.
14490         (Window Start and End): Describe new &optional parameter GROUP and
14491         ...-group-function for window-start, window-end, set-window-start, and
14492         pos-visible-in-window-p.
14493         (Textual Scrolling) Describe the same for recenter.
14494         doc/lispref/positions.texi (Screen Lines): Describe the same for
14495         move-to-window-line.
14497         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
14498         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
14499         new optional parameter "group".  At the beginning of each, check whether the
14500         corresponding ...-group-function is set to a function, and if so execute this
14501         function in place of the normal processing.
14502         (syms_of_window): Define symbols for the six new variables below.
14503         (window-start-group-function, window-end-group-function)
14504         (set-window-start-group-function, recenter-group-function)
14505         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
14506         New permanent local buffer local variables.
14507         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
14508         Fpos_visible_in_window_p.
14510         lisp/window.el (selected-window-group-function): New permanent local buffer
14511         local variable.
14512         (selected-window-group): New function.
14514         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
14515         enable, kill them at mode disable.  Add/remove follow-after-change to/from
14516         after-change-functions.
14517         (follow-start-end-invalid): New variable.
14518         (follow-redisplay): Manipulate follow-start-end-invalid.
14519         (follow-after-change, follow-window-start, follow-window-end)
14520         (follow-set-window-start, follow-pos-visible-in-window-p)
14521         (follow-move-to-window-line, follow-sit-for): New functions.
14523         lisp/isearch.el (isearch-call-message): New macro.
14524         (isearch-update, with-isearch-suspended, isearch-del-char)
14525         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
14526         (with-isearch-suspended): Rearrange code such that isearch-call-message is
14527         invoked before point is moved.
14528         (isearch-message): Add comment about where point must be at function call.
14529         (isearch-search): Remove call to isearch-message.
14530         (isearch-lazy-highlight-window-group): New variable.
14531         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
14532         the battery of tests to ...
14533         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
14534         Note: (sit-for 0) is still called.
14535         (isearch-lazy-highlight-update): Check membership of
14536         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
14537         property.
14538         (isearch-update, isearch-done, isearch-string-out-of-window)
14539         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
14540         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
14541         (isearch-lazy-highlight-update): Call the six amended primitives (see
14542         src/window.c above) with the new `group' argument set to t, to cooperate
14543         with Follow Mode.
14545 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14547         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
14549         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
14550         (ert--explain-format-atom, ert--explain-equal-rec)
14551         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
14552         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
14554 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14556         * lisp/character-fold.el: Remove special case-folding support
14558         (character-fold-to-regexp): Remove special code for
14559         case-folding.  Char-fold search still respects the
14560         `case-fold-search' variable (i.e., f matches F).  This only
14561         removes the code that was added to ensure that f also matched
14562         all chars that F matched.  For instance, after this commit, f
14563         no longer matches 𝔽.
14565         This was necessary because the logic created a regexp with
14566         2^(length of the string) redundant paths.  So, when a very
14567         long string "almost" matched, Emacs took a very long time to
14568         figure out that it didn't.  This became particularly relevant
14569         because isearch's lazy-highlight does a search bounded by (1-
14570         match-end) (which, in most circumstances, is a search that
14571         almost matches).  A recipe for this can be found in bug#22090.
14573 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14575         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
14576         Fixes (bug#21701)
14578 2015-12-04  Daiki Ueno  <ueno@gnu.org>
14580         lisp/gnus/qp.el: Don't replace "from " at bol
14582         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
14583         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
14585 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
14587         Externalize some symbols in undo-auto
14589          * doc/lispref/text.texi: Update symbols.
14590          * lisp/simple.el (undo-auto--amalgamate,
14591            undo-auto--current-boundary-timer): Make symbols public.
14592          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
14593            updated symbol.
14595 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
14597         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
14599 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
14601         Some error message improvements in tramp-sh.el
14603         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
14604         Suppress error messages for "mesg" and "biff" calls.
14605         (tramp-get-remote-path): Ignore errors when expanding
14606         `tramp-own-remote-path'.  Raise a warning instead.
14608 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14610         Document 'nacl' value for 'system-type'
14612         * doc/lispref/os.texi (System Environment): Document the 'nacl'
14613         value of 'system-type'.
14615 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14617         Document 'window-max-chars-per-line'
14619         * doc/lispref/windows.texi (Window Sizes): Document
14620         'window-max-chars-per-line'.
14622 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14624         Fix some file headers for the purpose of `package--builtins'
14626         * lisp/emacs-lisp/cl-preloaded.el
14627         * lisp/emacs-lisp/eieio-compat.el
14628         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
14630         * lisp/ielm.el: Fix summary line.
14632 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14634         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
14636         Reload any previously loaded package files before compiling
14637         the package (also reload the same files after compiling).
14638         This ensures that we have the most recent definitions during
14639         compilation, and avoids generating bad elc files when a macro
14640         changes and it is used in a different file from the one it's
14641         defined in.
14643 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14645         * lisp/emacs-lisp/package.el: Refactor package activation code
14647         (package-activate): Move code that activates dependencies into
14648         package-activate-1.
14649         (package--load-files-for-activation): New function.
14650         (package-activate-1): Add code for (optionally) activating
14651         dependencies, and move file-loading code into
14652         `package--load-files-for-activation'.
14654 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14656         Document new font-related functionality
14658         * doc/lispref/display.texi (Low-Level Font): Document
14659         'default-font-width', 'default-font-height', 'window-font-width',
14660         and 'window-font-height'.
14662         * etc/NEWS: Move entries for 'default-font-width',
14663         'default-font-height', 'window-font-width', and 'window-font-height'
14664         to their place and mark them documented.
14666 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14668         Fix documentation and implementation of 'directory-name-p'
14670         * lisp/files.el (directory-name-p): Modify to recognize
14671         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
14672         accordingly.  Use '=', not char-equal, for comparison, as
14673         letter-case cannot possibly be an issue here.
14675         * doc/lispref/files.texi (Directory Names): Move the documentation
14676         of directory-name-p here from "Relative File Names".  Update the
14677         description per the changes in implementation.
14679         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
14680         place and mark it documented.
14682 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
14684         Minor copyedit in Emacs manual
14686         * doc/emacs/search.texi (Lax Search): Make wording about character
14687         folding by default less definitive.  (Bug#22043)
14689 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
14691         More emacs-module.c fixes for wide ints
14693         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
14694         unsigned data types to manipulate pointers, to avoid sign
14695         extension coming after us with a vengeance.
14697         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14698         Emacs with wide ints that verify integer values near the critical
14699         value that requires us to switch to a cons cell.
14701 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
14703         Fix bug#22069 in cl-generic.el
14705         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
14706         not run thru `format'.
14708 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
14710         APPEND etags--xref-backend to xref-backend-functions
14712         * lisp/progmodes/xref.el (xref-backend-functions):
14713         Use APPEND when adding the default element
14714         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
14716 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14718         More accurate documentation of lax whitespace matching
14720         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
14721         (word-search-backward, word-search-forward)
14722         (word-search-backward-lax, word-search-forward-lax): Mention in
14723         doc strings that toggling lax whitespace matching has no effect on
14724         these commands.
14726         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
14727         lax whitespace matching has no effect on these commands.
14729 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14731         Fix emacs-module.c for wide ints
14733         * src/emacs-module.c (lisp_to_value): Compare the produced value
14734         with the original Lisp object, not with the one potentially
14735         converted into a Lisp_Cons.  Fixes assertion violations when
14736         working with integers larger than fit into a 32-bit value.
14738         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14739         large integers, to test --with-wide-int.
14741 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14743         Document 'directory-files-recursively'
14745         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
14746         the argument MATCH to REGEXP, to be more explicit about its form.
14748         * doc/lispref/files.texi (Contents of Directories): Improve the
14749         documentation of 'directory-files-recursively'.  Add
14750         cross-references.
14752         * etc/NEWS: Move the entry for 'directory-files-recursively' to
14753         its place and mark it documented.
14755 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14757         Document 'inhibit-read-only' property
14759         * doc/lispref/text.texi (Special Properties): Describe the new
14760         'inhibit-read-only' text property.  Add cross-reference to where
14761         read-only buffers are described.
14762         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
14763         'inhibit-read-only' property exempts text from being read-only.
14764         Add cross-reference to "Special Properties".
14766         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
14767         its place and mark it documented.
14769 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14771         * lisp/emacs-lisp/package.el: Update header comments
14773 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14775         * lisp/character-fold.el: Add back multi-char matching
14777         (character-fold-to-regexp): Uncomment recently commented code
14778         and make the algorithm "dummer" by not checking every possible
14779         combination.  This will miss some possible matches, but it
14780         greatly reduces regexp size.
14782         * test/automated/character-fold-tests.el
14783         (character-fold--test-fold-to-regexp): Comment out test of
14784         functionality no longer supported.
14786 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
14788         * doc/emacs/ack.texi (Acknowledgments): Update.
14790 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
14792         Check `file-remote-p' over absolute files names in files.el
14794         * lisp/files.el (directory-files-recursively)
14795         (get-free-disk-space): Check `file-remote-p' over absolute files names.
14797 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
14799                 * src/lread.c (syms_of_lread): Doc fix.
14801 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
14803         Don't mistake certain JS method calls for keywords
14805         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
14806         Braceless keyword can't come after a period (bug#22063).
14808 2015-11-30  David Reitter  <david.reitter@gmail.com>
14810         Read frame_title_format from buffer-local variable for NS port
14812         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
14813         icon-title-format variables from buffer in appropriate window.
14814         (Bug#22048)
14816 2015-11-30  Juri Linkov  <juri@linkov.net>
14818         * lisp/replace.el (occur-engine): Count matches in empty lines.
14820         (Bug#22062)
14822 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
14824         * src/emacs-module.h: Fix finalizer typedef for C++11
14826         C++11 standard doesn't allow exception-specification in typedef.
14827         The workaround is to declare a dummy function prototype and use
14828         decltype on it.
14830 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14832         Fix last change
14834         * src/emacs-module.c (lisp_to_value, value_to_lisp)
14835         [WIDE_EMACS_INT]: Avoid compiler warnings.
14837 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
14839         Rely on conservative stack scanning to find "emacs_value"s
14841         * src/emacs-module.c (struct emacs_value_tag)
14842         (struct emacs_value_frame, struct emacs_value_storage): Remove.
14843         (value_frame_size): Remove constant.
14844         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
14845         (lisp_to_value): Remove first arg.
14846         (module_nil): New constant.
14847         Use it instead of NULL when returning an emacs_value.
14848         (module_make_function): Adjust to new calling convention of
14849         Qinternal_module_call.
14850         (DEFUN): Receive args in an array rather than a list.
14851         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
14852         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
14853         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
14854         Adjust to new type of non_local_exit info.
14855         (ltv_mark) [WIDE_EMACS_INT]: New constant.
14856         (value_to_lisp, lisp_to_value): Rewrite.
14857         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
14858         (allocate_emacs_value): Remove function.
14859         (mark_modules): Gut it.
14860         (initialize_environment): Don't initialize storage any more.
14861         Keep the actual env object on Vmodule_environments.
14862         (finalize_environment): Don't finalize storage any more.
14863         (syms_of_module): Initialize ltv_mark and module_nil.
14865         * src/emacs-module.h (emacs_value): Make it more clear that this type
14866         is really opaque, including the fact that NULL may not be valid.
14868         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
14869         Don't assume that NULL is a valid emacs_value.
14871 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14873         Yet another doc improvement for search commands
14875         * doc/emacs/search.texi (Word Search, Symbol Search)
14876         (Regexp Search): Document commands that don't support lax
14877         whitespace matching or character folding.
14878         (Nonincremental Search): Mention the search commands that can be
14879         invoked from the menu bar.
14881         * lisp/isearch.el (isearch-define-mode-toggle-word)
14882         (isearch-define-mode-toggle-symbol)
14883         (isearch-define-mode-toggle-character-fold): Note in the doc
14884         string that turning these on exits the regexp mode.
14885         (isearch-forward-regexp, isearch-forward-word)
14886         (isearch-forward-symbol, isearch-backward-regexp)
14887         (word-search-backward, word-search-forward)
14888         (word-search-backward-lax, word-search-forward-lax): State in the
14889         doc string which commands don't support character folding and/or
14890         lax-whitespace matching.
14892 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
14894         Run `window-size-change-functions' also when reading from minibuffer
14896         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
14897         also when reading from minibuffer.
14899 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
14901         Fix scrambling of html-rendered item buffers
14903         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
14904           scrambling of contents by wrapping call to html-renderer in
14905           save-selected-window.
14907 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14909         Fix font typo in previous doc fix.
14911 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14913         A bit more security doc, esp. file local vars
14915         * doc/emacs/emacs.texi (Top):
14916         * doc/emacs/misc.texi (Miscellaneous Commands):
14917         Refer to new Host Security section.
14918         (Host Security): New section.
14919         * doc/lispref/os.texi (Security Considerations):
14920         Mention file local variables.
14922 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14924         * lisp/character-fold.el: Comment out branching code
14926         (character-fold-to-regexp): Comment out code that uses multi-char
14927         table.  The branching caused by this induces absurdly long regexps,
14928         up to 10k chars for as little as 25 input characters.
14930 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14932         Spelling and grammar fixes
14934 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
14936         Make lisp-completion-at-point a wrapper instead of an alias
14938         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
14939         Turn into an obsolete wrapper around elisp-completion-at-point
14940         (bug#20455).
14942 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14944         * lisp/isearch.el (isearch-search-fun-default): Nicer error
14946         message when the search fails.
14948 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
14950         Update menu-bar-goto-uses-etags-p for the current xref API
14952         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
14953         xref-backend-functions, instead of now-nonexistent
14954         xref-find-function.
14956 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14958         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
14960 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14962         * lisp/menu-bar.el: Use folding in searches
14964         (nonincremental-search-forward): Use `isearch-search-fun-default'
14965         to determine the search function.
14966         (nonincremental-search-backward)
14967         (nonincremental-repeat-search-forward)
14968         (nonincremental-repeat-search-backward): Use it.
14970 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14972         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
14974 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14976         * lisp/character-fold.el (character-fold-to-regexp): Be careful
14978         not to return huge regexps.
14980 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14982         Improve documentation of string-collate-* functions
14984         * doc/lispref/strings.texi (Text Comparison): Improve wording and
14985         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
14987         * etc/NEWS: Move the entry of 'string-collate-equalp' and
14988         'string-collate-lessp' to "Lisp Changes" section and mark it as
14989         documented.
14991 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14993         Document truncate-string-ellipsis
14995         * doc/lispref/display.texi (Size of Displayed Text): Document
14996         'truncate-string-ellipsis'.
14998         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
14999         (truncate-string-to-width): Mention in the doc string that the
15000         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
15002         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
15003         Changes" section.
15005 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
15007         Fix confusion wrt character folding in the Emacs manual
15009         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
15010         Document that invoking search-forward/backward and
15011         re-search-forward/backward supports only case folding, but not the
15012         rest of the lax-search features.  Reported by Mike Kupfer
15013         <m.kupfer@acm.org>.
15015 2015-11-29  Ken Brown  <kbrown@cornell.edu>
15017         Update mod-test-sum-test
15019         * modules/mod-test/test.el (mod-test-sum-test): Update to
15020         accommodate the lack of dladdr on Cygwin.
15022 2015-11-29  Alan Mackenzie  <acm@muc.de>
15024         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
15026         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
15027         to `funcall', (i) Output an error message; (ii) Generate code to signal a
15028         `wrong-number-of-arguments' error.
15030 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
15032         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
15034 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15036         * lisp/character-fold.el (character-fold-to-regexp)
15038         Warn about using long strings.
15040         * test/automated/character-fold-tests.el
15041         (character-fold--test-lax-whitespace)
15042         (character-fold--test-consistency): Reduce string size for tests.
15044 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15046         Document renaming of x-select-enable-* variables
15048         * doc/emacs/killing.texi (Clipboard): Rename
15049         x-select-enable-clipboard to select-enable-clipboard and
15050         x-select-enable-primary to select-enable-primary.  Update index
15051         entries.
15053         * etc/NEWS: Mark entry as documented.
15055 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15057         Document the shorthand hints displayed by M-x
15059         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
15060         suggest-key-bindings.  Document the shorthand hints for commands
15061         that have no key bindings.  Document that M-x completion ignores
15062         obsolete commands.
15064         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
15065         documented.
15067 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15069         Update docs of character folding
15071         * doc/emacs/search.texi (Lax Search): Update the description of
15072         character folding for the latest changes.
15074 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15076         * lisp/character-fold.el: Also play nice with case-folding
15078         (character-fold-to-regexp): Take `case-fold-search' into account.
15080 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15082         * lisp/character-fold.el: Add support for multi-char matches
15084         (character-fold-table): Now has an extra-slot. This is a second
15085         char-table that holds multi-character matches.  See docstring for
15086         details.
15087         (character-fold-to-regexp): Can build branching regexps when a
15088         character's entry the extra slot of `character-fold-table' matches the
15089         characters that succeed it.
15091 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15093         * lisp/character-fold.el: Code simplifications
15095         (character-fold-table): Reduce the scope of a variable.
15096         (character-fold-to-regexp): Change logic to work directly on the
15097         input string.  It's a little easier to understand, probably
15098         faster, and sets us up for implementing multi-char matches.
15100         * test/automated/character-fold-tests.el
15101         (character-fold--test-fold-to-regexp): New test.
15103 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15105         Document changes in "C-h l"
15107         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
15109         * etc/NEWS: mark "C-h l" changes as documented.
15111 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15113         Finalize documentation of 'custom-prompt-customize-unsaved-options'
15115         * doc/emacs/custom.texi (Saving Customizations): Index the new
15116         function 'custom-prompt-customize-unsaved-options'.
15118         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
15119         is useful.
15121 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15123         Document 'comment-line'
15125         * doc/emacs/programs.texi (Comment Commands): Document
15126         'comment-line'.
15128         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
15130 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15132         Document new checkdoc features
15134         * doc/lispref/tips.texi (Tips, Library Headers): Document the
15135         keyword-checking features of checkdoc and the commands
15136         'checkdoc-file' and 'checkdoc-current-buffer'.
15138         * etc/NEWS: Move the checkdoc-related entries to their own
15139         section.
15141 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
15143         Simplify the prologue of emacs-module.c functions
15145         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
15146         (module_make_global_ref)
15147         (module_free_global_ref, module_make_function, module_funcall)
15148         (module_intern, module_type_of, module_extract_integer)
15149         (module_make_integer, module_extract_float, module_make_float)
15150         (module_copy_string_contents, module_make_string)
15151         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
15152         (module_get_user_finalizer, module_set_user_finalizer)
15153         (module_vec_set, module_vec_get, module_vec_size): Use new helper
15154         macro MODULE_FUNCTION_BEGIN.
15156 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15158         Don't reject module calls with no arguments
15160         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
15162 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
15164         Make module-call be visible from Lisp
15166         * src/emacs-module.c (module_make_function): Use internal--module-call.
15167         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
15168         checks.
15169         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
15170         defsubr internal--module-call.
15172 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15174         Add etags tests for the recent Lua-related bugfix
15176         * test/etags/lua-src/test.lua: New file, tests the issues raised
15177         by bug#21934.
15178         * test/etags/Makefile (LUASRC): Add test.lua.
15179         * test/etags/ETAGS.good_1:
15180         * test/etags/ETAGS.good_2:
15181         * test/etags/ETAGS.good_3:
15182         * test/etags/ETAGS.good_4:
15183         * test/etags/ETAGS.good_5:
15184         * test/etags/ETAGS.good_6:
15185         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
15186         regression fix, resolved around 25 May 2015, required changes to
15187         the "good" ETAGS files.
15189 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15191         Fix Lua tags when a function name includes '.' or ':'
15193         * lib-src/etags.c (Lua_functions): Add a tag for the last element
15194         of a function name after a dot or a colon.  (Bug#21934)
15196 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15198         Improve documentation of search and replace commands
15200         * doc/emacs/search.texi (Replacement and Lax Matches): Document
15201         which commands are affected by 'replace-character-fold'.
15202         (Lax Search): Add a cross reference to "Replacement and Lax
15203         Matches".  Improve wording.  Fix lost extra whitespace.
15204         (Search Customizations): Improve wording.  (Bug#22036)
15205         See also comments in
15206         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
15208         * lisp/replace.el (query-replace, query-replace-regexp)
15209         (query-replace-regexp-eval, replace-string, replace-regexp):
15210         Mention 'replace-character-fold' in the doc strings.
15212 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
15214         Fix minor problems found by static checking
15216         * src/undo.c (prepare_record): Add proper prototype for C.
15218 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15220         * src/emacs-module.c (struct env_storage): Delete
15222         (struct emacs_runtime_private): Keep an emacs_env instead.
15223         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
15224         (initialize_environment): Split the arg in two.  Adjust all callers.
15225         Only store the private part in Vmodule_environments.
15226         (finalize_environment): Change the arg to only be the private env.
15227         Adjust all callers.
15229 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15231         Improve documentation of 'replace-character-fold'
15233         * lisp/replace.el (replace-character-fold): Clarify which commands
15234         are affected by this variable.
15236 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
15238         Autoload etags when using its xref backend
15240         * lisp/progmodes/xref.el (xref--etags-backend):
15241         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
15242         (Bug#22026)
15244 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
15246         * lisp/character-fold.el: Allow complex chars to match their decomposition
15248         (character-fold-table): When a character's decomposition does not
15249         involve a formatting tag (i.e., if it has an "exact" description via
15250         other characters), then this character is allowed to match the
15251         decomposition.
15253 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
15255         * lisp/character-fold.el: More descriptive variable names
15257         (character-fold-table): Rename a lot of the lexical variables to
15258         make the code easier to read.
15260 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
15262         * lisp/isearch.el: Ensure we still support `isearch-new-word'
15264         (isearch-new-regexp-function): Define variable.
15265         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
15267 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15269         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
15271 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
15273         * test/lisp/abbrev-tests.el: Define more tests
15275         (abbrev-table-name-test, kill-all-abbrevs-test)
15276         (clear-abbrev-table-test): New tests.
15278 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15280         Add module tests for wrong-type-argument
15282         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
15283         wrong-type-argument.
15285 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15287         Improve handling of signals and 'throw' in modules
15289         * src/emacs-module.c: Add commentary explaining how to write
15290         functions in this file.
15291         (module_make_global_ref, module_free_global_ref)
15292         (module_non_local_exit_signal, module_non_local_exit_throw)
15293         (module_make_function, module_funcall, module_intern)
15294         (module_type_of, module_is_not_nil, module_eq)
15295         (module_extract_integer, module_make_integer)
15296         (module_extract_float, module_make_float)
15297         (module_copy_string_contents, module_make_string)
15298         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
15299         (module_get_user_finalizer, module_set_user_finalizer)
15300         (module_vec_set, module_vec_get, module_vec_size)
15301         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
15302         Do nothing and return with failure indication immediately, if some
15303         previous module call signaled an error or wants to throw.  See
15304         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
15305         for the relevant discussions.
15307 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15309         Add ':version' tag to 'checkdoc-package-keywords-flag'
15311         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
15312         Add a ':version' tag.
15314 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15316         Improve documentation of 'eval-buffer' and 'eval-region'
15318         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
15320         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
15321         "accessible portion of buffer".
15323 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15325         Unbreak the Cygwin w32 build
15327         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
15328         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
15330 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15332         Improve commentary in character-fold.el
15334         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
15335         description from commit log message to comments.  (Bug#22019)
15337 2015-11-26  Alan Mackenzie  <acm@muc.de>
15339         Byte Compiler: generate code to adjust stack count after call to `signal'.
15341         Corrects change from earlier today.
15343         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
15344         `byte-compile--for-effect' as argument to `byte-compile-form'.
15346 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
15348         Improve commentary of prepare_to_modify_buffer_1
15350         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
15351         that this function runs Lisp.  Suggested by Richard Stallman
15352         <rms@gnu.org>.
15354 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15356         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
15358 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15360         Fix regression after merge.
15362          * src/undo.c (prepare_record): Remove call to run_undoable_change.
15364 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15366         After delete, record point location in undo.
15368         Addresses Bug #21968.
15370                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
15371                 better support intercalating calls.
15372                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
15373                 point and current buffer before each command.
15374                 * src/undo.c (record_point): Now only record the point.
15375                 * src/undo.c (prepare_record): Functionality removed form
15376                 record_point.
15377                 * src/undo.c (record_delete): Check if point needs recording.
15378                 * src/undo.c (undo-boundary): Record value of point before each
15379                 boundary.
15380                 * test/automated/simple-test.el: New tests.
15382         Conflicts:
15383                 src/undo.c
15385 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
15387         Fix compiler warnings in w32.c
15389         * src/w32.c (sys_socket): In case of error, use -1 as return
15390         value, not INVALID_SOCKET, which causes compiler warnings.
15391         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
15392         to the appropriate function signature, to avoid compiler errors.
15393         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
15395 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
15397         Check if the file exists on disk before producing the revert diff
15399         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
15400         exists on disk (bug#20558).
15402 2015-11-26  Alan Mackenzie  <acm@muc.de>
15404         Byte compiler: on setq with an odd number of arguments, generate a `signal'
15406         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
15407         it has an odd number of arguments, to allow bytecomp to handle the error.
15409         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
15410         odd number of arguments, generate a `signal' instead of the normal code.
15412 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
15414         Use find-tag-default for xref-backend-identifier-at-point
15416         * lisp/progmodes/etags.el (find-tag-tag)
15417         (tags-completion-at-point-function): Extract common code as
15418         find-tag--default.
15419         (xref-backend-identifier-at-point): Define in terms of the new
15420         function.
15422 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15424         * src/undo.c (record_property_change): Remove now-unused local.
15426 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
15428         run_undoable_changes now called from insdel.
15430         The original calls from inside undo.c are not always at a safe position
15431         to call lisp, as they originate in varied positions within insdel.c.
15432         Calling them directly from prepare_to_modify_buffer_1 ensures that they
15433         are always run at the same point.
15435          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
15436          and symbol used.
15437          * src/insdel.c (run_undoable_changes): Add function and symbol.
15439 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
15441         Improve and update documentation of search commands
15443         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
15444         all references changed.  Move the description of lax-whitespace
15445         here.  Add description of the new character folding features and
15446         additional customizable options.
15447         (Isearch Yank): Move before "Error in Search".
15448         (Basic Isearch): Improve wording.  Add index entries.  Add short
15449         description of how to abandon search, making this subsection a
15450         complete introduction to search basics.
15451         (Repeat Isearch): Add index entries.  Describe additional
15452         customizable options.  Describe mouse clicks.
15453         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
15454         area.  Describe more customizable options.
15455         (Error in Isearch): Add index entries.
15456         (Special Isearch): Move actual description of some isearch
15457         commands to other sections, leaving here just the summary of the
15458         commands.  Add command that toggles character folding.  Describe
15459         commands, like "C-h C-h", that were previously omitted for some
15460         reason.
15461         (Not Exiting Isearch): Describe search-exit-option.  Add index
15462         entries.
15463         (Word Search): Describe eww-search-word and eww-search-prefix.
15464         (Symbol Search): Add index entries.
15465         (Regexp Search): Describe regexp-search-ring-max.
15466         (Replacement and Lax Matches): Renamed from "Replacement and
15467         Case"; all references changed.  Describe lax-whitespace matching
15468         in replace commands and related options.  Describe character
15469         folding in replace commands and related options.
15470         (Query Replace): Describe query-replace-from-to-separator and the
15471         new history features.  Add index entries for highlighted text.
15472         Describe query-replace-skip-read-only.  Describe more keys
15473         accepted by query-replace.
15474         (Other Repeating Search): More index entries for Occur.  Describe
15475         list-matching-lines-default-context-lines.
15476         (Search Customizations): New section, documents customizable
15477         options that were not documented until now.
15478         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
15479         "Character Folding".
15481         * etc/NEWS: Move search- and replace-related entries to a single
15482         parent section.
15484         * lisp/replace.el (query-replace-show-replacement): Doc fix.
15485         * lisp/isearch.el (search-nonincremental-instead)
15486         (isearch-hide-immediately): Doc fixes.
15488 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
15490         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
15492         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
15493         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
15494         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
15496 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15498         Fix module_format_fun_env when dynlib_addr fails
15500         * src/emacs-module.c (module_format_fun_env):
15501         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
15502         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
15504 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15506         Disambiguate variable help a bit better
15508         * lisp/help-fns.el (describe-variable): Quote the
15509         variable’s value if it is a symbol other than t or nil.
15510         See: T.V Raman in:
15511         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
15513 2015-11-24  Dmitry Gutov  <dgutov@yandex.ru>
15515         Pass SVN commit message through log-edit-extract-headers
15517         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
15518         log-edit-extract-headers (bug#18954).
15520 2015-11-24  Alan Mackenzie  <acm@muc.de>
15522         CC Mode: Eliminate compiler warning messages.
15524         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
15525         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
15526         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
15527         (c-awk-set-syntax-table-properties): Clarify comments about
15528         `font-lock-syntactic-keywords'.
15530         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
15531         of this before the real (interpreted) one, to satisfy the byte compiler.
15533 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
15535         Extend the test suite for json.el
15537         * lisp/json.el (json-plist-p): Clarify docstring.
15539         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
15540         macro.
15541         (test-json-join, test-json-alist-p)
15542         (test-json-plist-p, test-json-advance, test-json-peek)
15543         (test-json-pop, test-json-skip-whitespace)
15544         (test-json-read-keyword, test-json-encode-keyword)
15545         (test-json-read-number, test-json-encode-number)
15546         (test-json-read-escaped-char, test-json-read-string)
15547         (test-json-encode-string, test-json-encode-key)
15548         (test-json-new-object, test-json-add-to-object)
15549         (test-json-read-object, test-json-encode-list)
15550         (test-json-read-array, test-json-encode-array)
15551         (test-json-read, test-json-read-from-string)
15552         (test-json-encode): New tests.
15553         (json-read-simple-alist): Merged into `test-json-read-object'.
15554         (json-encode-string-with-special-chars): Merged into
15555         `test-json-encode-string'.
15556         (json-read-string-with-special-chars): Split into
15557         `test-json-encode-string' and `test-json-read-from-string'.
15559 2015-11-24  Anders Lindgren  <andlind@gmail.com>
15561         Fixed bug#18283: Enable applescript in NextStep.
15563         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
15565 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15567         Allow completion on dynamic module files in load-library
15569         * lisp/files.el (load-library): Bind completion-ignored-extensions
15570         to nil, to allow completion on dynamic modules typed as file
15571         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
15573 2015-11-24  Alan Mackenzie  <acm@muc.de>
15575         CC Mode: eliminate almost all byte compilation warnings
15577         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
15578         (cc-require): Remove the crude hack that saved and restored
15579         byte-compile-noruntime-functions.
15580         (cc-conditional-require, cc-conditional-require-after-load): New macros.
15582         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
15583         cc-fix.el using the new macros in cc-bytecomp.el.
15585         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
15586         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
15587         forms to remove the superflous quotes.
15589 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15591         Add one more mod-test test
15593         * modules/mod-test/test.el (mod-test-sum-test): Test the error
15594         signaled when the function is invoked with a wrong number of
15595         arguments.
15597 2015-11-24  Philipp Stephani  <phst@google.com>
15599         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
15601 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15603         Implement dynlib_addr for MS-Windows
15605         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
15606         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
15607         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
15608         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
15609         if undefined.
15610         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
15611         zero.
15612         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
15613         the full file name of the module for a given address.
15615 2015-11-24  Alan Mackenzie  <acm@muc.de>
15617         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
15619 2015-11-24  Alan Mackenzie  <acm@muc.de>
15621         Squashed commit of the following:
15623         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
15624         Author: Alan Mackenzie <acm@muc.de>
15625         Date:   Tue Nov 24 16:50:09 2015 +0000
15627             Byte compile: minor amendments.
15629             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
15630             add a comment to explain the binding of variables around a subsidiary
15631             compilation.
15632             (byte-compile-new-defuns): Amend the doc string.
15634         commit c537bfed1dda1593d218956ff00c6105a3ff0316
15635         Author: Alan Mackenzie <acm@muc.de>
15636         Date:   Sat Nov 21 18:43:57 2015 +0000
15638             Byte compiler: fix spurious warnings "might not be defined at runtime".
15640             Also initialize byte-compile-noruntime-functions between runs.
15642             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
15643             (byte-compile-initial-macro-environment): For eval-when-compile: bind
15644             byte-compile-unresolved-functions and byte-compile-new-defuns around
15645             byte-compile-top-level, to prevent spurious entries being made.
15646             (byte-compile-warn-about-unresolved-functions): Check whether function is
15647             in byte-compile-new-defuns before emitting a warning about it.
15648             (byte-compile-from-buffer): Initialize new variable and
15649             byte-compile-noruntime-functions to nil.
15650             (byte-compile-file-form-require): record all new functions defined by a
15651             `require' in byte-compile-new-defuns.
15652             (byte-compile-file-form-defmumble): record the new alias in
15653             byte-compile-new-defuns.
15655 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15657         Fix crash at startup related to GC of font entities
15659         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
15660         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
15661         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
15662         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
15663         Don't ifdef away font cache compaction on NT_GUI, as the problems
15664         which led to that seem to have been solved.
15665         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
15666         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
15667         cousins.  (Bug#21999)
15669 2015-11-24  Alan Mackenzie  <acm@muc.de>
15671         Byte compile: Output an error, not a warning, for odd number of args to setq
15673         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
15675 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
15677         Fix kbd_buffer iteration loop in readable_events
15679         * src/keyboard.c (readable_events): Wrap the event pointer back to the
15680         start of the kbd_buffer array inside the top of the loop instead of
15681         right before checking the loop condition, since kbd_fetch_ptr and
15682         kbd_store_ptr point past the end of the array to mean that element 0
15683         is next. (bug#21935)
15685 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15687         Improve text-quoting-style doc again
15689         * doc/lispref/help.texi (Keys in Documentation):
15690         Omit overkill discussion of ‘setq’.  Mention Emacs versions
15691         where ‘grave’ style was standard.
15693 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15695         Improve text-quoting-style doc
15697 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15699         Simplify module_make_function
15701         * src/emacs-module.c (module_make_function):
15702         Simplify by calling build_unibyte_string.
15704 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15706         Port better to FreeBSD’s dlfunc vs dlsym
15708         This avoids warnings when converting between void * and
15709         function pointers, which strict C11 does not allow.
15710         * configure.ac (dlfunc): Check for existence.
15711         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
15712         (dynlib_func): New function.
15713         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
15714         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
15715         dynlib_sym, for function pointers.
15717 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15719         Simplify use of emacs_finalizer_function type
15721         * src/emacs-module.h (emacs_finalizer_function):
15722         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
15723         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
15725 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15727         module_format_fun_env fixes
15729         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
15730         * src/emacs-module.c (module_format_fun_env):
15731         Convert path and sym to UTF-8.
15732         Don’t use VLAs, as the C11 standard says they’re optional,
15733         and anyway they can cause core dumps with large allocations.
15734         Use exprintf rather than snprintf, as exprintf handles arbitrarily
15735         long strings.  Simplify the code a bit.
15737 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
15739         Don't use package-user-dir in elisp-library-roots if it's not bound
15741         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
15742         use package-user-dir if it's not bound (bug#19759).
15744 2015-11-23  Anders Lindgren  <andlind@gmail.com>
15746         New visible-bell for NextStep (OS X El Capitan compatible).
15748         Instead of inverting a rectangle in the middle of the frame, use
15749         the standard NextStep image "caution", represented using an
15750         warning sign with an exclamation mark.  (Bug#21662)
15752         Implemented based on a suggestion drafted by Mustafa Kocaturk.
15754         * src/nsterm.m (EmacsBell): New class for managing the caution
15755         image.  Support multiple active bells, the image is removed once
15756         all bells have timed out.
15757         (ns_timeout): Removed, no longer used.
15758         (ns_ring_bell): Reimplemented to use EmacsBell.
15760 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
15762         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
15764         (remove-function): Ditto. (Bug#20376)
15766 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
15768         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
15770 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
15772         Improve how non-ASCII strings are accepted from modules
15774         * src/emacs-module.c (module_make_function, module_make_string):
15775         Build a unibyte Lisp string and then decode it by UTF-8, instead
15776         of building a multibyte string without decoding.  This is more
15777         tolerant to deviations from UTF-8.
15779 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15781         Port recent module changes to pickier compilers
15783         * src/emacs-module.c (module_make_function)
15784         (module_make_string): Add casts to fix pointer signedness issues.
15786 2015-11-23  Philipp Stephani  <phst@google.com>
15788         Fix how strings are accepted from modules
15790         * emacs-module.c (module_make_function, module_make_string): Use
15791         make_multibyte_string.
15792         (module_copy_string_contents): Encode before reading the byte
15793         size.  Return false if and only if an error occurred.
15795 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
15797         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
15799 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
15801         Add the tamil-dvorak input method
15803         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
15805         * etc/NEWS: Mention the new input method.
15807 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15809         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
15811         * src/frame.c (adjust_frame_size): Don't set
15812         FRAME_WINDOW_SIZES_CHANGED here ...
15813         * src/window.c (resize_frame_windows): ... but here, as suggested
15814         by Stefan Monnier.  Also remove some dead code along the way.
15816 2015-11-23  Alan Mackenzie  <acm@muc.de>
15818         * /etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
15820 2015-11-23  Alan Mackenzie  <acm@muc.de>
15822         Signal an error when `setf' gets an odd number of arguments.
15824         * lisp/emacs-lisp/gv.el (setf): Amend.
15826 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15828         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
15830 2015-11-23  Alan Mackenzie  <acm@muc.de>
15832         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
15834 2015-11-23  Alan Mackenzie  <acm@muc.de>
15836         Expunge occurrences of `setq' with an odd number of arguments.
15838         * lisp/apropos.el (apropos-documentation):
15839         * lisp/obsolete/complete.el (PC-include-file-all-completions):
15840         * lisp/progmodes/compile.el (compilation-goto-locus):
15841         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
15842         Insert missing nil at end of `setq' forms.
15844         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
15845         erroneous trailing variable name from a setq, thus allowing a compilation
15846         properly to track functions not defined at runtime.
15848 2015-11-23  John Wiegley  <johnw@newartisans.com>
15850         Add a note about a questionable use of bool in xdisp.c
15852 2015-11-23  Alan Mackenzie  <acm@muc.de>
15854         Issue a warning from the byte compiler on a malformed `setq' form.
15856         Partly fixes bug#20241.
15857         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
15858         `setq' form with an odd number of arguments is compiled.
15860 2015-11-23  Alan Mackenzie  <acm@muc.de>
15862         Don't let cconv_convert insert a nil argument into a `setq' form.
15864         Fixes bug#21983.
15865         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
15866         argument into a `setq' when there're an odd number of args.  This enables the
15867         byte compiler to issue a message in this case.
15869 2015-11-23  Alan Mackenzie  <acm@muc.de>
15871         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
15873         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
15874         (syms_of_eval): Add a DEFSYM for Qsetq.
15876 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15878         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
15880         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
15882 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15884         Add EUDC BBDB 3 entry in NEWS
15886         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
15888 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15890         Improve EUDC to BBDB 3 export
15892         * eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
15893         entry to single item.  Add company conversion.
15894         * eudc-export.el (eudc-bbdbify-company): New function.
15895         (bbdb-parse-phone): Declare function.
15896         (eudc-bbdbify-phone): Add BBDB 3 support.
15897         (Bug#21971)
15899 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15901         Add BBDB 3 support for EUDC export
15903         * eudc.el: Add bbdb-version defvar.
15904         (eudc--using-bbdb-3-or-newer-p): New function.
15905         * eudc-export.el (eudc-create-bbdb-record): Add support for
15906         bbdb-create-internal argument list changes introduced in BBDB 3.
15907         * eudcb-bbdb.el: Remove bbdb-version defvar.
15908         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
15909         (Bug#21971)
15911 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15913         Allow loading modules by 'load-file'
15915         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
15916         2nd arg, to avoid the "binding stack not balanced" error.
15917         (syms_of_lread) <module-file-suffix>: New Lisp variable.
15919         * lisp/files.el (module-file-suffix): Declare.
15920         (load-file): Remove 'module-file-suffix' from
15921         'completion-ignored-extensions', to allow completion on modules.
15923         * etc/NEWS: Mention 'module-file-suffix'.
15925 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15927         Fix unoptimized builds
15929         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
15930         builds.
15932 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
15934         Work around the asynchronous-empty-diff problem
15936         * lisp/vc/vc-rcs.el (vc-rcs-diff):
15937         * lisp/vc/vc-mtn.el (vc-mtn-diff):
15938         * lisp/vc/vc-hg.el (vc-hg-diff):
15939         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
15940         do a synchronous process call (bug#21969).
15942 2015-11-21  Karl Fogel  <kfogel@red-bean.com>
15944         Finish excising electric indent from `open-line'
15946         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
15948         * test/automated/simple-test.el (open-line-indent, open-line-hook):
15949           Adjust accordingly.
15951         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
15952         (git commit c59353896) started.  It turns out that having INTERACTIVE
15953         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
15954         still had the electric indent behavior, as `post-self-insert-hook'
15955         normally contains `electric-indent-post-self-insert-function' ever
15956         since `electric-indent-mode' has been on by default.  Tracing the code
15957         change in `open-line' is mildly twisty, because Artur Malabarba's
15958         earliest two commits of 24 Oct 2015 first removed the `interactive'
15959         form entirely (git commit 6939896e2) and then restored it with the new
15960         extra "p" already added (git commit bd4f04f86), such that there is no
15961         single-commit diff in which one sees the second "p" appear.  Thus this
15962         change is effectively a reversion of parts of each of those commits.
15964         This could close bug#21884, at least until further discussion.
15966 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
15968         Adhere closer to the "implicit tag name" definition
15970         * lisp/progmodes/etags.el (etags-tags-completion-table):
15971         Adhere closer to the "implicit tag name" definition.  Simplify
15972         the regexp.  Search for the explicit tag name first, and when
15973         not found, search locally for the implicit one.  (Bug#21934)
15975 2015-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
15977         Unrevert most of regexp reentrancy abort patch
15979         The problem was in:
15980           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
15981         which is hence not unreverted.
15982         The rest is:
15983         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15984         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
15985         All callers in regex.c changed back to the _FAST versions.
15987         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
15988         propertization in backward-sexp.
15990 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15992         Revert regexp reentrancy abort patch
15994         Although the patch does fix Bug#21688 and prevents a core dump,
15995         it also makes the message-mode-propertize test fail; see:
15996         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
15997         Perhaps someone else can come up with a better fix some day.
15998         * src/syntax.c (update_syntax_table_forward):
15999         Propertize even when truncated.
16000         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
16001         (UPDATE_SYNTAX_TABLE_FAST): Remove.
16002         All callers changed back to the non-_FAST versions.
16004 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
16006         Add a few safety checks when ENABLE_CHECKING
16008         This was motivated by the recent addition of module code,
16009         which added some ENABLE_CHECKING-enabled checks that are
16010         useful elsewhere too.
16011         * src/alloc.c (compact_font_cache_entry):
16012         * src/fns.c (sweep_weak_table):
16013         * src/lread.c (oblookup):
16014         Use gc_asize rather than doing it by hand.
16015         * src/emacs-module.c (module_make_global_ref)
16016         (module_free_global_ref, module_vec_size):
16017         Omit assertions that lisp.h now checks.
16018         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
16019         check that the result is nonnegative.  Use eassume, as this
16020         info can help a bit when optimizing production code.
16021         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
16022         to be consistent with the USE_LSB_TAG case.
16023         (gc_asize): New function, when ASIZE is needed in the gc.
16024         (gc_aset): Use it.
16025         (HASH_TABLE_P): Move definition up, so that it can be used ...
16026         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
16028 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
16030         Simplify recording of main thread's ID on MS-Windows
16032         * src/w32term.c (w32_initialize):
16033         * src/w32console.c (initialize_w32_display):
16034         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
16035         ID independently for each type of session (GUI, TTY, batch).
16036         * src/w32term.c (w32_init_main_thread): New function, records the
16037         main thread's thread ID.
16038         * src/w32term.h: Add prototype for w32_init_main_thread.
16039         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
16041         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
16042         main_thread, for consistency with other threading libraries.  All
16043         users changed.  Include w32term.h.
16044         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
16045         make sure the main thread is alive, as we hold a handle on it
16046         opened by w32_init_main_thread.
16047         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
16048         w32_init_main_thread, instead of calling the requisite APIs once
16049         more.
16051 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
16053         Call 'window-size-change-functions' for mini-windows
16055         * src/window.c (grow_mini_window, shrink_mini_window): Set the
16056         frame's 'window_sizes_changed' flag.
16057         * src/xdisp.c (redisplay_internal): Call the hooks on
16058         'window-size-change-functions' if the call to 'echo_area_display'
16059         sets the frame's 'window_sizes_changed' flag.
16060         (syms_of_xdisp) <window-size-change-functions>:
16061         Update doc string to indicate the mini-window resizes trigger a
16062         call to the hooks, and don't promise that will happen "before
16063         redisplay".  (Bug#19576, Bug#21333)
16065         * doc/lispref/windows.texi (Window Hooks): Update the description
16066         of 'window-size-change-functions'.
16068 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
16070         Improve documentation of dynamic modules
16072         * src/fns.c (Frequire): Doc fix to include the dynamic module
16073         support.
16074         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
16075         dynamic module support.
16076         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
16077         wrt the MUST-SUFFIX argument.
16079         * etc/NEWS: Expand documentation of dynamically loaded modules.
16081 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
16083         Initial documentation for dynamic modules
16085         * etc/NEWS: Mention the new support for dynamically loaded modules.
16087 2015-11-20  Dmitry Gutov  <dgutov@yandex.ru>
16089         Add xref--etags-backend to xref-backing-functions using add-hook
16091         * lisp/progmodes/xref.el (xref-backend-functions): Move the
16092         default value into a separate `add-hook' call (bug#21964).
16094         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
16095         Don't declare the xref-backend-functions variable.
16096         It doesn't make any difference.
16098 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16100         Fix double-decrement bug when freeing global refs
16102         * src/emacs-module.c (module_free_global_ref): Add a FIXME
16103         comment about error reporting.  Fix a recently-introduced typo
16104         that double-decremented the refcount.
16106 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16108         Declare emacs_module_init in the module API
16110         * src/emacs-module.h (emacs_module_init): New decl.
16111         Without it, GCC might complain about a module that defines
16112         emacs_module_init without using it.  This also checks the
16113         API better.
16115 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16117         Fix module test to use ptrdiff_t nargs too
16119         * modules/mod-test/mod-test.c (Fmod_test_return_t)
16120         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
16121         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
16122         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
16123         (Fmod_test_userptr_get, Fmod_test_vector_fill)
16124         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
16125         (finalizer): Remove; no longer used.
16127 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16129         Fix reindent-introduced typo in module code
16131         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
16132         introduced while reindenting the code earlier, and add a
16133         comment explaining the unusual use of do-while here.
16135 2015-11-20  Anders Lindgren  <andlind@gmail.com>
16137         Fixed bug#19576: `write-file' saves wrong buffer.
16139         If a function on the hook `window-size-change-functions' doesn't
16140         restore the current buffer, functions that save and restore the
16141         current window configuration (like `y-or-no-p') could silently
16142         change the current buffer.  When `write-file' asked the user
16143         confirmation to overwrite a file, `y-or-no-p' changed the current
16144         buffer, and the wrong buffer was saved to the file.
16146         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
16147         using the `norecord' parameter.
16148         (follow-window-size-change): Restore current buffer. Call
16149         `select-frame' using the `norecord' parameter. Cleanup.
16151 2015-11-20  John Wiegley  <johnw@newartisans.com>
16153         Correct a documentation error in frames.texi
16155 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
16157         * lisp/cedet/mode-local.el: Delete obsolete comment
16159 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16161         Module function arg counts are ptrdiff_t, not int
16163         * src/emacs-module.c (struct module_fun_env)
16164         (module_make_function, module_funcall, Fmodule_call):
16165         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
16166         Use ptrdiff_t, not int, for arg counts.
16167         * src/emacs-module.c (module_make_function): Don’t bother
16168         checking arity against MOST_POSITIVE_FIXNUM, as that’s
16169         unnecessary here.  Make the checking clearer by negating it.
16170         (module_make_function, Fmodule_call): No need to use xzalloc
16171         since the storage doesn’t need to be cleared.
16172         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
16173         for it, and many implementations are buggy with large VLAs anyway.
16174         Use SAFE_ALLOCA_LISP instead.
16175         (module_vec_set): Don’t crash if i < 0.
16176         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
16177         (module_vec_set, module_vec_get): Do fixnum checks only when
16178         i is out of array bounds, for efficiency in the usual case.
16179         (Fmodule_load): Simplify fixnum range check.
16180         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
16181         integer overflow in array allocation size.
16183 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
16185         Minor improvements in module test
16187         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
16188         about missing prototype of malloc.
16189         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
16190         compiler warnings.
16192 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
16194         Improve MS-Windows implementation in dynlib.c
16196         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
16197         No need to include windows.h, as w32.h already does that.
16198         <dynlib_last_err>: New static variable.
16199         (dynlib_reset_last_error): New function.
16200         (dynlib_open): Convert forward slashes to backslashes.  Convert
16201         file names from UTF-8 to either UTF-16 or the current ANSI
16202         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
16203         argument is NULL, return a handle to the main module, like
16204         'dlopen' does.  Record the error, if any, for use by dynlib_error.
16205         (dynlib_sym): Check the handle for validity. Record the error, if
16206         any, for use by dynlib_error.
16207         (dynlib_error): Call w32_strerror to produce the error string, and
16208         zero out the last error code, like dlerror does.
16209         (dynlib_close): Check the handle for validity.  Record the error,
16210         if any, for use by dynlib_error.  Don't call FreeLibrary with a
16211         handle for the main module.
16212         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
16214 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16216         Include-file tweaks for modules
16218         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
16219         * src/dynlib.h: Do not include config.h.
16220         It’s every .c file’s responsibility to include config.h first.
16221         * src/emacs-module.c: Include emacs-module.h immediately after
16222         config.h, to test that emacs-module.h doesn’t depend on
16223         include files other than config.h.
16225 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16227         Simplify push_handler and profile its malloc
16229         * src/lisp.h (PUSH_HANDLER): Remove.
16230         All callers changed to use push_handler directly.
16231         * src/eval.c (internal_condition_case)
16232         (internal_condition_case_1, internal_condition_case_2)
16233         (internal_condition_case_n):
16234         Use same pattern as for other invokers of push_handler.
16235         (push_handler, push_handler_nosignal): Use call-by-value
16236         instead of call-by-reference.  All uses changed.
16237         (push_handler): Simplify by rewriting in terms of
16238         push_handler_nosignal.
16239         (push_handler_nosignal): Profile any newly allocated memory.
16241 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16243         * src/emacs-module.h: Include stddef.h, not stdlib.h.
16245 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
16247         Discover repository version in linked worktrees (bug#21930)
16249         * lisp/version.el (emacs-repository--version-git-1): Do not assume
16250         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
16251         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
16252         is nil too.
16254 2015-11-19  Juri Linkov  <juri@linkov.net>
16256         * lisp/replace.el (occur-regexp-descr): New function.
16257         (occur-1, occur-engine): Use it.
16259         * lisp/isearch.el (isearch-occur): Propertize regexp with
16260         isearch-string and isearch-regexp-function-descr for
16261         occur-regexp-descr to display the correct description
16262         message in the header (bug#21176, bug#21180).
16264 2015-11-19  Karl Fogel  <kfogel@red-bean.com>
16266         Revert `open-line' electric-indent sensitivity
16268         * lisp/simple.el (open-line): Remove electric indent code.
16269           (electric-indent-just-newline): Don't declare.
16271         * test/automated/simple-test.el (open-line-indent): Adjust test.
16273         This partly reverts Artur Malabarba's change that added electric
16274         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
16275         commit bd4f04f86), and adjusts a new test he added right afterwards
16276         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
16277         However, the new INTERACTIVE argument to `open-line', which he also
16278         added in the first commit, is not reverted here.
16280         See the thread "Questioning the new behavior of `open-line'." on the
16281         Emacs Devel mailing list, and in particular this message:
16283           From: Artur Malabarba
16284           Subject: Re: Questioning the new behavior of `open-line'.
16285           To: Karl Fogel
16286           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
16287           Date: Wed, 18 Nov 2015 21:03:58 +0000
16288           Message-ID: \
16289             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
16291           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
16293 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16295         Omit unnecessary clear in Fmodule_load
16297         * src/emacs-module.c (Fmodule_load):
16298         Simplify and avoid unnecessary initialization of priv member to 0.
16300         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
16302 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16304         Prefer signed integer types in module code
16306         Generally speaking, at the C level the Emacs source code prefers
16307         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
16308         partly to avoid the usual signedness confusion when comparing values.
16309         Change the module API to follow this convention.
16310         Use ‘int’ for small values that can’t exceed INT_MAX.
16311         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
16312         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
16313         (Fmod_test_vector_eq):
16314         * src/emacs-module.c (struct emacs_value_frame)
16315         (module_make_global_ref, module_free_global_ref)
16316         (module_copy_string_contents, module_make_string)
16317         (module_vec_set, module_vec_get, module_vec_size):
16318         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
16319         * src/lread.c (suffix_p):
16320         Prefer signed to unsigned integer types.
16322 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16324         Omit ‘const’ on locals
16326         Remove ‘const’ qualifier from locals that were newly added.
16327         We don’t normally bother declaring locals with ‘const’ even
16328         though they are not modified, for the same reason we don’t
16329         bother declaring them with ‘register’ even though their
16330         addresses are not taken; the advantage in compile-time
16331         checking isn’t worth the loss of readability.
16332         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
16333         (Fmod_test_vector_fill, Fmod_test_vector_eq):
16334         * src/emacs-module.c (MODULE_SETJMP_1)
16335         (module_make_global_ref, module_free_global_ref)
16336         (module_non_local_exit_get, module_make_function)
16337         (module_extract_integer, module_extract_float)
16338         (module_get_user_ptr, module_set_user_ptr)
16339         (module_get_user_finalizer, module_set_user_finalizer)
16340         (module_vec_get, Fmodule_call)
16341         (module_non_local_exit_signal_1)
16342         (module_non_local_exit_throw_1, lisp_to_value)
16343         (finalize_storage, allocate_emacs_value, mark_modules)
16344         (module_handle_signal, module_handle_throw)
16345         (module_format_fun_env):
16346         * src/eval.c (push_handler, push_handler_nosignal)
16347         (init_handler):
16348         * src/lread.c (suffix_p):
16349         Omit unnecessary ‘const’.
16351 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16353         Prefer intmax_t to int64_t in module code
16355         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
16356         * src/emacs-module.c (module_extract_integer)
16357         (module_make_integer):
16358         * src/emacs-module.h (struct emacs_env_25):
16359         Prefer intmax_t to int64_t.  This doesn’t change the generated
16360         code on any of the machines Emacs currently ports to, but it’s
16361         at least in theory more future-proof as C99 doesn’t guarantee
16362         that int64_t exists.
16364 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16366         Rename module.c to emacs-module.c, etc.
16368         * src/emacs-module.c: Rename from src/module.c.
16369         * src/emacs-module.h: Rename from src/module.h.
16370         All uses changed.
16372 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16374         Fix minor module problems found by static checking
16376         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
16377         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
16378         * src/module.c (Fmodule_load): Fix pointer signedness bug.
16379         (Fmodule_call): Tell GCC that the default case is unreachable.
16381 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16383         Style fixes for indenting etc. in module code
16385         This is mostly indenting and spacing changes.  Also, remove
16386         some unnecessary static decls instead of bothering to reindent them.
16387         * src/module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
16388         as most other Emacs files do for this sort of thing.
16390 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
16392         Minor improvements in modules testing Makefile
16394         * modules/mod-test/Makefile (EMACS, SO): New variables.
16395         (CFLAGS): When SO = dll, don't use -fPIC.
16396         (check): New target, runs the test.
16398 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
16400         * .gitignore: Add "*.dll".
16402 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16404         Migrate modules/.gitignore into .gitignore
16406         * .gitignore: Add former contents of modules/.gitignore.
16407         * modules/.gitignore: Remove.
16409 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16411         Add copyright notices to module code
16413         Put them in the usual format for GNU Emacs copyright notices.
16415 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16417         Rename emacs_module.h to module.h
16419         * src/module.h: Rename from src/emacs_module.h.
16420         All uses changed.
16422 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
16424         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
16426         * src/lread.c (Fload): Remove unused variable `size'
16428 2015-11-19  Alan Mackenzie  <acm@muc.de>
16430         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
16432 2015-11-18  Dmitry Gutov  <dgutov@yandex.ru>
16434         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
16436         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
16437         vc-parent-buffer over log-view-mode fallback (bug#21955).
16439 2015-11-18  Alan Mackenzie  <acm@muc.de>
16441         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
16443 2015-11-18  Ken Brown  <kbrown@cornell.edu>
16445         * configure.ac (LIBMODULES): Don’t define on Cygwin
16447 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
16449         Fix MS-Windows build --with-modules
16451         * src/module.c: Reformat copyright commentary.
16452         (module_vec_get): Use explicit cast to size_t to avoid compiler
16453         warning in 32-bit builds.
16454         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
16455         Compare thread IDs directly, as GetThreadId is not available
16456         before Windows Vista.
16457         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
16458         without using APIs and constants not available on XP and older
16459         systems.  Obtain and store the thread ID as well.
16461 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16462             Philipp Stephani  <phst@google.com>
16464         Add dynamic module test and helper script
16466         Add 'modhelp.py' script (python2) to automate module testing and
16467         module generation.
16469         To build and test all modules in the modules/ dir
16470           $ ./modhelp.py test
16472         To generate a module from template code (good starting point)
16473           $ ./modhelp init mynewtestmodule
16475         See the script -h option for more documentation.
16477         * modules/modhelp.py: New module helper script.
16478         * modules/mod-test/Makefile: New file. Makefile for the test module.
16479         * modules/mod-test/mod-test.c: New file. Test module source file.
16480         * modules/mod-test/test.el: New file. ert test suite for the test module.
16481         * modules/.gitignore: New file. Local .gitignore file.
16483 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16485         Make 'Fload' look for modules
16487         'Fload' can now load dynamic modules. This also makes 'require' work.
16489         * src/lread.c:
16490           (suffix_p): New function.
16491           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
16492           with a module suffix.
16493           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
16495 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16496             Philipp Stephani  <phst@google.com>
16498         Add dynamic module module support
16500         * configure.ac: Add '--with-modules' option.  Conditionally add
16501           dynlib.o and module.o to the list of objects.  Add any system
16502           specific flags to the linker flags to support dynamic libraries.
16503         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
16504           attributes.
16505         * src/Makefile.in: Conditionally add module objects and linker flags.
16506         * src/alloc.c (garbage_collect_1): protect module local values from
16507           GC.
16508         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
16509         * src/emacs_module.h: New header file included by modules.  Public
16510           module API.
16511         * src/module.c: New module implementation file.
16513 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16515         Add new User Pointer (User_Ptr) type
16517         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
16518         (XUSER_PTR): New User_Ptr accessor.
16519         * src/alloc.c (make_user_ptr): New function.
16520         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
16521         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
16522         (Fuser-ptrp): New user pointer type predicate function.
16523         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
16524         subr.
16525         * src/print.c (print_object): Add printer for User_Ptr type.
16527 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16528             Philipp Stephani  <phst@google.com>
16530         Add portable layer for dynamic loading
16532         * src/dynlib.h: New file.
16533         * src/dynlib.c: New file.
16535 2015-11-18  Philipp Stephani  <phst@google.com>
16537         Add catch-all & no-signal version of PUSH_HANDLER
16539         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
16540         a new "catch-all" handler type.
16542         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
16543           functions.
16544         * src/fns.c (hash_remove_from_table): Expose function public.
16545         * src/lisp.h: New handler type, define macro to push_handler call.
16547 2015-11-18  Ken Brown  <kbrown@cornell.edu>
16549         Silence byte-compiler warning
16551         * lisp/server.el (server-process-filter): Silence byte-compiler
16552         warning.
16554 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
16556         Quote symbols in docstrings using `'
16558         Be more systematic about quoting symbols `like-this' rather than
16559         `like-this or 'like-this' in docstrings.  This follows up Artur
16560         Malabarba's email in:
16561         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
16563 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
16565         Fix savegames in dunnet
16567         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
16568           of separate implementation.
16570 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
16572         * lisp/emacs-lisp/package.el (package--with-response-buffer):
16574         Ensure we're at the start of the buffer before searching for
16575         the end of headers.
16577 2015-11-17  Xue Fuqiao  <xfq.free@gmail.com>
16579         * admin/release-process: Improve wording.
16581 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16583         Fix docstring quoting problems with ‘ '’
16585         Problem reported by Artur Malabarba in:
16586         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
16587         Most of these fixes are to documentation; many involve fixing
16588         longstanding quoting glitches that are independent of the
16589         recent substitute-command-keys changes.  The changes to code are:
16590         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
16591         (describe-mode-local-overload):
16592         Substitute docstrings before displaying them.
16593         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
16594         Quote the generated docstring for later substitution.
16596 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
16598         Improve configure --help text for wide ints
16600         * configure.ac (wide-int): Clarify user-level advantages and
16601         disadvantages.
16603 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
16605         Improve doc string
16607         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
16609 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16611         eval_sub followed dangling pointer when debugging
16613         Problem reported by Pip Cet (Bug#21245).
16614         This bug could occur in eval_sub if the C compiler reused
16615         storage associated with the ‘argvals’ local after ‘argvals’
16616         went out of scope, and if the Elisp debugger stopped on Elisp
16617         function exit and accessed ‘argvals’.  It could also occur if
16618         a variadic function was called with so many arguments (over
16619         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
16620         SAFE_FREE freed the arguments, then the memory manager used
16621         the storage for other purposes, then the debugger accessed the
16622         arguments.
16623         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
16624         function body.  Simplify local decls.
16625         When allocating args via SAFE_ALLOCA, call
16626         debugger before invoking SAFE_FREE, as the debugger needs
16627         access to the args.
16628         (eval_sub, apply_lambda): Rework to avoid need for
16629         set_backtrace_debug_on_exit hack.  This is cleaner,
16630         and should work better with buggy custom debuggers.
16632 2015-11-16  Daiki Ueno  <ueno@gnu.org>
16634         * lisp/image-mode.el: Support encrypted file
16636         (image-toggle-display-image): Read content from the buffer instead
16637         of the file, if the buffer holds a decrypted data.  (Bug#21870)
16639 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
16641         ELF unexec: align section header
16643         This ports the recent unexelf.c changes to Fedora x86-64
16644         when configured with GCC’s -fsanitize=undefined option.
16645         * src/unexelf.c (unexec): Align new_data2_size to a multiple
16646         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
16647         pointer aligned appropriately for its type.
16649 2015-11-16  Andreas Schwab  <schwab@linux-m68k.org>
16651         Do more checks on bytecode objects (Bug#21929)
16653         * src/eval.c (funcall_lambda): Check size of compiled function
16654         object.
16655         (Ffetch_bytecode): Likewise.
16657 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
16659         pcase.el: Fix edebugging of backquoted cons patterns
16661         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
16662         cons patterns. (Bug#21920)
16664 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
16666         Improve fix for regex reentrancy abort
16668         Suggested by Stefan Monnier (Bug#21688).
16669         * src/syntax.c (update_syntax_table_forward):
16670         Remove recently-added PROPERTIZE arg, and assume it is true.
16671         All callers changed.
16672         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
16673         Invoke update_syntax_table directly.
16675 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16677         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
16679         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
16681         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
16683 2015-11-15  Vasily Korytov  <vasily.korytov@yahoo.com>
16685         Recognize .rbw and .pyw files (bug#18753)
16687         * lisp/progmodes/python.el (auto-mode-alist):
16688         Recognize .pyw files.
16690         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
16691         Recognize .rbw files.
16693 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16695         Fix ruby-mode auto-mode-alist entry
16697         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
16698         around the extensions (bug#21257).
16700 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16702         Fix etags completion near eob
16704         * lisp/progmodes/etags.el (tags-completion-at-point-function):
16705         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
16707 2015-11-15  Alan Mackenzie  <acm@muc.de>
16709         De-pessimize detection of C++ member initialization lists.
16711         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
16712         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
16713         is only called when a construct "looks right" rather than continually.
16714         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
16716 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
16718         Improve a few doc strings, comments
16720         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
16721         * lisp/cedet/ede/locate.el (ede-locate-base):
16722         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
16723         * src/fns.c (Fdelq): Improve doc string.
16725         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
16727 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16729         Enhance NSTRACE (trace output for NextStep).
16731         Trace can be disabled for groups of functions. By default, event
16732         functions and functions that generate lots of output are disabled.
16734         Trace output of Objective-C functions now use the "[ClassName
16735         parameter:]" form.
16737         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
16738         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
16739         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
16740         controlling in which function groups trace should be active.
16741         (NSTRACE_WHEN): Support for silencing a function, this also
16742         silencing all called functions.
16743         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
16744         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
16745         print the full screen state in NSTRACE functions.
16747         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
16748         can be accessed from multiple threads.
16749         (nstrace_enabled_global): New variable, when FALSE, trace is
16750         silenced.
16751         (nstrace_restore_global_trace_state): New function, used to
16752         restore `nstrace_enabled_global' at end of block.
16753         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
16754         ([EmacsWindow setFrame:display:animation:])
16755         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
16756         and call corresponding super function.
16757         (Many functions): Add or enhance trace output.
16759         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
16761         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
16763         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
16764         and call corresponding super function.
16766 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16768         Fixed a toolbar related issue on OS X.
16770         Earlier, when toggling the tool-bar in a maximized frame, the
16771         frame size didn't match the number of text lines, leaving an
16772         unused area at the bottom of the frame.
16774         * nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
16775         fullscreen modes when tool bar is disabled.
16777 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16779         Fixed OS X 10.6.8 build issue (bug#21862).
16781         * src/nsterm.h (EmacsView): Add missing declarations.
16782         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
16783         the standard method but without the notification parameter.
16784         Intended to be used for direct calls.
16785         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
16786         version of `windowDidBecomeKey'. Made the notification method call
16787         the non-notification method instead of the vice versa.
16788         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
16789         needed.
16791 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16793         * lisp/faces.el (faces--attribute-at-point): Fix an issue
16795         Previous code would signal an error when the face at point was
16796         a manually built list of attributes such as '(:foregroud "white").
16798         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
16800 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
16802         Fix regex abort when it tries to reenter itself
16804         Problem reported by Ken Raeburn.
16805         Solution suggested by Stefan Monnier (Bug#21688).
16806         * src/regex.c (re_match_2_internal):
16807         Use new _FAST functions to avoid regex code reentering itself.
16808         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
16809         All callers changed.
16810         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
16811         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
16813 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16815         Improve Ruby 1.9-style keyword keys highlighting
16817         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
16818         Handle required keyword arguments (bug#21367).
16819         And highlight the colon together with the name.
16821 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16823         Unify the absolutely equal xref-backend-references implementations
16825         * lisp/progmodes/elisp-mode.el (xref-backend-references):
16826         Remove.
16828         * lisp/progmodes/etags.el (xref-backend-references):
16829         Remove.
16831         * lisp/progmodes/xref.el (xref-backend-references):
16832         Define the default implementation.
16834 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16836         Update project-find-regexp for the new xref API
16838         * lisp/progmodes/project.el (project--read-regexp):
16839         Update to use the new xref API methods.
16841         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
16843 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16845         Fix replacing a match with a shorter string
16847         In effect, partially reverting fe973fc.
16849         * lisp/progmodes/xref.el (xref-query-replace): Store the end
16850         of each match as a marker again, instead of length.
16851         (xref--query-replace-1): Update accordingly.
16853 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
16855         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
16857         Signal user-errors instead.
16859 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16861         Document 'describe-symbol'
16863         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
16864         (Name Help): Document "C-h o" and describe-symbol.
16866         * lisp/help-fns.el (describe-symbol): Doc fix.
16868 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
16870         Change test name to avoid spellcheck issue.
16872 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16874         Avoid signaling an error in 'describe-symbol'
16876         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
16877         exists as a function/variable/face/etc., but is undocumented.
16879         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
16880         test.
16882 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16884         * INSTALL (--with-cairo): Document this new configure option.
16886 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16888         Document that GNU Make >= 3.81 is required to build Emacs
16890         * doc/lispref/internals.texi (Building Emacs): Document that GNU
16891         Make 3.81 or later is now required.
16893 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16895         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
16897 2015-11-13  l3thal  <kwhite@gnu.org>
16899         Merge branch 'erc-async-reconnect' into emacs-25
16901         Reconnect asynchronously.
16903 2015-11-11  Alan Mackenzie  <acm@muc.de>
16905         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
16907         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
16908         Windows" and new @defun selected-window-group.
16909         (Window Start and End): Describe new &optional parameter GROUP and
16910         ...-group-function for window-start, window-end, set-window-start, and
16911         pos-visible-in-window-p.
16912         (Textual Scrolling) Describe the same for recenter.
16913         doc/lispref/positions.texi (Screen Lines): Describe the same for
16914         move-to-window-line.
16916         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
16917         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
16918         new optional parameter "group".  At the beginning of each, check whether the
16919         corresponding ...-group-function is set to a function, and if so execute this
16920         function in place of the normal processing.
16921         (syms_of_window): Define symbols for the six new variables below.
16922         (window-start-group-function, window-end-group-function)
16923         (set-window-start-group-function, recenter-group-function)
16924         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
16925         New permanent local buffer local variables.
16926         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
16927         Fpos_visible_in_window_p.
16929         lisp/window.el (selected-window-group-function): New permanent local buffer
16930         local variable.
16931         (selected-window-group): New function.
16933         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
16934         enable, kill them at mode disable.  Add/remove follow-after-change to/from
16935         after-change-functions.
16936         (follow-start-end-invalid): New variable.
16937         (follow-redisplay): Manipulate follow-start-end-invalid.
16938         (follow-after-change, follow-window-start, follow-window-end)
16939         (follow-set-window-start, follow-pos-visible-in-window-p)
16940         (follow-move-to-window-line, follow-sit-for): New functions.
16942         lisp/isearch.el (isearch-call-message): New macro.
16943         (isearch-update, with-isearch-suspended, isearch-del-char)
16944         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
16945         (with-isearch-suspended): Rearrange code such that isearch-call-message is
16946         invoked before point is moved.
16947         (isearch-message): Add comment about where point must be at function call.
16948         (isearch-search): Remove call to isearch-message.
16949         (isearch-lazy-highlight-window-group): New variable.
16950         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
16951         the battery of tests to ...
16952         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
16953         Note: (sit-for 0) is still called.
16954         (isearch-lazy-highlight-update): Check membership of
16955         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
16956         property.
16957         (isearch-update, isearch-done, isearch-string-out-of-window)
16958         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
16959         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
16960         (isearch-lazy-highlight-update): Call the six amended primitives (see
16961         src/window.c above) with the new `group' argument set to t, to cooperate
16962         with Follow Mode.
16964 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
16966         * shr.el (shr-descend): Allow using lambdas in external functions.
16968 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
16970         * admin/gitmerge.el: Tweaks that seemed necessary
16972         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
16973         (gitmerge-maybe-resume): Provide explicit empty commit message.
16975 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
16977         Use a different port for TLS erc
16979         * lisp/erc/erc.el (erc-default-port-tls): New variable
16980         (bug#19497).
16981         * lisp/erc/erc.el (erc-tls): Use it.
16983 2015-12-25  Alain Schneble  <a.s@realize.ch>
16985         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
16987         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
16988         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
16989         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
16990         information in URL-struct.
16991         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
16992         path and query into nil path and query, respectively.
16993         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
16994         empty path into an absolute ("/") path.
16995         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
16996         fragment-only URIs. Do not just return them unchanged.
16997         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
16998         reference URI should not drop the last segment.
17000 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17002         Let url use default file modes when copying files
17004         * lisp/url/url-handlers.el (url-copy-file): Use default file
17005         modes when copying files (bug#11400).
17007 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
17009         Doc fix for url-http
17011         * lisp/url/url-http.el (url-http): Document better return values
17012           (bug#13187) (tiny change)
17014 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17016         * eww.el (eww-display-html): Support <button> tags (bug#20485).
17018 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17020         Made ffap-url-p a defun instead of a defsubst
17022         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
17023         since there doesn't seem to be much of a reason for it to be a
17024         defsubst (bug#18203).
17026 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17028         Add a command to view files in the browser to dired
17030         * lisp/dired.el (dired-mode-map): Add the `W' command
17031         (bug#18810).
17033 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17035         Allow http://user:pass@foo/ URLs again
17037         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
17038         user/passwords in URLs (bug#19046).
17040 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17042         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
17044 2015-12-25  Samer Masterson  <samer@samertm.com>
17046         Autoload url-insert-buffer-contents
17048         * lisp/url/url-handlers.el: Add autoload cookie so that
17049         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
17051 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17053         Allow toggling colors in eww
17055         * doc/misc/eww.texi (Basics): Mention "C".
17057         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
17059         * lisp/net/shr.el (shr-use-colors): New variable.
17060         (shr-colorize-region): Use it.
17062 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17064         Follow meta refresh tags in eww
17066         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
17068 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17070         More eww file name coding fixes
17072         * eww.el (eww-decode-url-file-name): Use the base coding
17073         system to check for encodability.
17075 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17077         Always save eww history
17079         * eww.el (eww-setup-buffer): Always save history, even when
17080         called from outside the eww buffer (bug#19638).
17082 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17084         Default web pages to right-to-left
17086         * eww.el (eww-mode): Most web pages are left-to-right, so make
17087         that the default (bug#19801).
17089         * shr.el (shr-tag-html): Respect "dir" attributes
17090         (left-to-right, right-to-left).
17092 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17094         Make toggling checkboxes work again
17096         * eww.el (eww-update-field): Make toggling checkboxes work
17097         again (bug#21881).
17099 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17101         Don't store cookies with empty names
17103         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
17104         cookies with empty names (bug#21936).
17106 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17108         * shr.el (shr-descend): Stop rendering before we run out of
17109         specpdl room (bug#22117).
17111 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17113         Use cl-reduce, not reduce.
17115 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17117         Allow several <tbody> tags in shr
17119         * shr.el (shr-table-body): New function to find the real body
17120         of a table.
17121         (shr-tag-table): Use it to render several <tbody> tags in a
17122         table (bug#22170).
17124 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
17126         Make prettier unique file names in eww
17128         (eww-make-unique-file-name): Make unique file names by making
17129         files like foo(2).jpg instead of foo(1)(2).jpg.
17131 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
17133         Decode hex-encoded URLs before using them as file names
17135         * eww.el (eww-decode-url-file-name): New function.
17136         (eww-download-callback): Use it to decode file names before
17137         saving them.
17139 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>  (tiny change)
17141         * doc/misc/emacs-gnutls.texi (Help For Users): Document FreeBSD bundle.
17142         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
17144 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
17146         Allow overriding shr functions from eww
17148         * eww.el (eww-display-html): Allow overriding elements in
17149         `shr-external-rendering-functions'.
17151 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
17153         Ignore invalid SVG images
17155         * shr.el (shr-tag-svg): Ignore SVG images that have no width
17156         or height, because these can't be displayed by ImageMagick,
17157         anyway.
17159 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
17161         shr table rendering fix
17163         * shr.el (shr-tag-table): Allow rendering body-less tables
17164         that have headers.
17166 2015-12-22  Sam Steingold  <sds@gnu.org>
17168         clipboard should still work even if interprogram-* is disabled
17170         (clipboard-yank): When `interprogram-cut-function' is nil,
17171         bind it to `gui-selection-value' - the default value.
17172         (clipboard-kill-region, clipboard-kill-ring-save): When
17173         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
17174         the default value.
17176 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
17178         Fix bootstrap issue with dired-loaddefs
17180         * lisp/dired.el: Autoloads for secondary files loaded optionally.
17182 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17184         dired generate autoloads to non-versioned file.
17186         * lisp/dired.el: Remove autoloads.
17187         * lisp/Makefile.in: Add dired to autogenel.
17188         * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
17189         * test/lisp/dired-tests.el: Add new test.
17191 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17193         eieio generate autoloads to non-versioned file.
17195         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
17196         * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
17197           Remove autoloads.
17198         * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
17199           lisp/emacs-lisp/eieio-opt.el: Update file local.
17200         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
17202 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17204         htmlfontify generate autoload to non-versioned file.
17206         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
17207         * lisp/hfy-cmap.el: Update file local.
17208         * lisp/htmlfontify.el: Remove autoloads, add require.
17209         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
17211 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17213         ibuffer generate autoloads to non-versioned file.
17215         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
17216         * lisp/ibuf-ext.el: Update file local.
17217         * lisp/ibuffer.el: Remove autoloads and add a require.
17218         * test/lisp/ibuffer-tests.el: Test that autoload is working.
17220 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17222         rmail generate autoloads to non-versioned file.
17224         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
17225         * lisp/mail/rmail.el: Remove autoloads, add require.
17226         * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
17227           lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
17228           lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
17229           lisp/mail/undigest.el: Update file-local.
17230         * test/lisp/mail/rmail-tests.el:
17232 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17234         Add autoload-force target.
17236         * lisp/Makefile.in (autoload-force): New target.
17238 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17240         ps-print generate autoloads to non versioned file.
17242         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
17243         * lisp/ps-print.el: Remove autoloads.
17244         * lisp/ps-mule.el: Update file-local.
17245         * test/lisp/ps-print-tests.el: Test autoload functionality.
17247 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17249         reftex generate autoloads to non versioned file.
17251         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
17252         * lisp/textmodes/reftex.el: Remove autoloads.
17253         * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
17254           lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
17255           lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
17256           lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
17257           lisp/textmodes/reftex-toc.el: Update autoload file-local.
17258         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
17259           function.
17261 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
17263         * lisp/calculator.el (calculator-define-key): Undo last change
17265         Make map argument mandatory instead (bug#22106).
17266         (calculator-add-operators): Pass the argument that's not optional any more.
17268 2015-12-03  Glenn Morris  <rgm@gnu.org>
17270         * Makefile.in: Avoid duplication.
17272         (have-tests): New rule.
17273         (check, check-maybe): Use it.
17275 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
17277         make check unconditional, check-maybe top-level.
17279          * Makefile.in: Add check-maybe target.
17280          * test/Makefile.in: Restore unconditional behavior to make check.
17282 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
17284         Tests now support out-of-source-build.
17286          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
17287            about current working directory.
17289 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
17291         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
17293 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
17295         Improve documentation and clean up.
17297          * test/Makefile.in: Improve documentation, use EMACS variable
17298            correctly, and clean up makefile rules.
17300 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
17302         Update file headers for name change.
17304          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
17306 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
17308         Test files renamed to new scheme.
17310          * (finalizer-tests.el): Now renamed alloc-tests.el
17311          * (zlib-tests.el): Now renamed decompress-tests.el.
17313 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
17315         Tests now depend on source files
17317          * test/Makefile.in: Include dependences from tests to source files.
17318          * test/make-test-deps.emacs-lisp: New file
17319          * .gitignore: Ignore generated make include file
17321 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
17323         * lisp/progmodes/which-func.el: Improve disabling the mode
17325         Use lexical-binding.
17326         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
17327         (which-func, which-func-format): Remove redundant :group arg.
17328         (which-func-try-to-enable): New function.
17329         (which-func-ff-hook, which-function-mode): Use it.
17330         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
17331         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
17333 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
17335         * lisp/calculator.el (calculator-define-key): Silence warning
17337         ...about unknown calculator-mode-map.
17339 2015-11-29  Eli Barzilay  <eli@barzilay.org>
17341         * lisp/calculator.el: more improvements and bugfixes.
17343         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
17344           effect anyway.)
17346         - Simplify `calculator-number-to-string' by throwing most of the work
17347           onto `number-to-string', leaving just some tweaks for decimal inputs.
17348           This leads to some minor changes, for example, pasting "1x1" in hex
17349           mode would warn that "x" is ignored and result in "11" (and it wasn't
17350           done in decimal mode), whereas now it just ignores everything from the
17351           "x" and on and result in a "1" just like in decimal input mode.  Also,
17352           overflows are left for `number-to-string' to deal with.
17354         - `calculator-paste' is very simple as a result.
17356         - Extend the simplified `calculator-paste': with a prefix argument it
17357           pastes a string as if the characters were entered.  This can be used
17358           to reduce expressions, but note that it's a simple literal operation,
17359           so precedence can be messed, a number can be paster while entering a
17360           number, spaces and newlines matter, etc.
17362         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
17363           operator.
17365         - Fix a bug in `calculator-put-value': avoid grouping in the display
17366           that is used to construct `calculator-curnum'.  This would trigger
17367           when pasting or getting a value from a register in some radix mode
17368           with a large enough value.  Another fix: make the output radix equal
17369           the input one, otherwise numbers could be converted twice.
17371 2015-11-29  Eli Barzilay  <eli@barzilay.org>
17373         * lisp/calculator.el: Re-do key bindings.
17375         Use a helper function that arranges a parent keymap that binds alternate
17376         case keys so if some letter key is unbound and it's un/shifted version
17377         is, it will get used.  This makes the global-map trickery unnecessary.
17379         Also switch to passing strings that name keys through `kbd'.
17381 2015-11-29  Eli Barzilay  <eli@barzilay.org>
17383         * lisp/calculator.el: improve radix modes
17385         Fix prompt for some input radix with decimal output (eg, "BD" instead of
17386         the incorrect "B="); also, some minor docstring tweaks for these.
17388 2015-11-29  Eli Barzilay  <eli@barzilay.org>
17390         * lisp/calculator.el: better reading of register names
17392         Use `register-read-with-preview' with a dynamically bound
17393         `register-alist' and a proper preview function to read register names.
17395 2015-11-29  Eli Barzilay  <eli@barzilay.org>
17397         * lisp/calculator.el: General improvements
17399         Use things like `when', `unless', and `push'.
17401         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
17402         non-electric mode.
17404 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
17406         Fix a problem with gfilenotify in filenotify-tests.el
17408         * test/lisp/filenotify-tests.el
17409         (file-notify--test-expected-events): Remove.
17410         (file-notify--test-cleanup): Do not set that variable.
17411         (file-notify--test-with-events): EVENTS can also be a list of lists.
17412         (file-notify-test02-events, file-notify-test04-file-validity):
17413         Adapt expected result.
17415 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
17417         * .gitignore: Adjust to changes in 'test' directory structure.
17419 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
17421         Fix test/manual/etags/Makefile
17423         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
17424         changes in 'test' directory structure.
17426 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
17428         Exclude resource dirs from search for tests.
17430         * test/Makefile.in: Test file locations are now found with find
17431           rather than using finds native functions.
17433 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
17435         Add test targets without directory names.
17437          * (test/Makefile.in): Extend test_template to add two targets for each
17438            file.
17440 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
17442         * lisp/emacs-lisp/package.el: Require url-handlers
17444 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
17446         Move elisp-mode-tests to new function names.
17448          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
17449          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
17451 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
17453         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
17455 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
17457         Merge branch 'feature/standard-test-location'
17459 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
17461         * lisp/emacs-lisp/eieio.el: Add some default implementations
17463         (standard-class): Mark it obsolete.
17464         (slot-missing): Give it a default implementation.
17465         (destructor): Simplify and mark it obsolete.
17466         (object-print): Give it a default implementation.
17467         (eieio-change-class): Rename from change-class.
17468         (change-class): Redefine as obsolete alias.
17470 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17472         Some final fixes in file notification before merging with master
17474         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
17475         (file-notify-callback): Improve check for `stopped' event.  Call
17476         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
17477         (file-notify-add-watch): In case FILE is not a directory, call the
17478         file monitor for the kqueue backend.  Otherwise, call the
17479         directory monitor for the upper directory.
17481         * src/inotify.c (inotifyevent_to_event): Extract file name from
17482         watch_object if the event doesn't provide it.
17483         (Finotify_add_watch): Add file name to watch_object.
17485         * test/automated/file-notify-tests.el (file-notify--test-timeout):
17486         Use different timeouts for different libraries.
17487         (file-notify--test-with-events): Suppress lock files.  Flush
17488         outstanding events before running the body.
17489         (file-notify-test02-events, file-notify-test04-file-validity): Do
17490         not skip cygwin tests.  Add additional test for file creation.
17491         Adapt expected result for different backends.
17492         (file-notify-test03-autorevert): Some of the tests don't work for
17493         w32notify.
17494         (file-notify-test06-many-events): Rename into both directions.
17496 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17498         Rework file notifications, kqueue has problems with directory monitors
17500         * lisp/filenotify.el (file-notify-add-watch): Call the native
17501         add-watch function on the file, not on the dir.
17503         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
17504         about already deleted entries.
17506         * test/automated/auto-revert-tests.el
17507         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
17508         since this deletes the target file first.
17510         * test/automated/file-notify-tests.el (file-notify--test-event-test):
17511         Make stronger checks.
17512         (file-notify-test01-add-watch, file-notify-test02-events)
17513         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
17514         Rewrite in order to call file monitors but directory monitors.
17515         (file-notify-test06-many-events): Ler rename work in both directions.
17517 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17519         Continue with pending events
17521         * src/kqueue.c (pending_events): Remove global variable.
17522         (kqueue_compare_dir_list): Create `write' event for not used
17523         pending events.
17524         (globals_of_kqueue): Remove initialization of pending_events.
17526 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17528         Improve loops in file-notify-test06-many-events
17530         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
17531         Use `read-event' pauses for the `write-file' loops; otherwise
17532         events are lost in inotify and gfilenotify cases.
17534 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17536         Handle more complex rename operation in kqueue
17538         * src/kqueue.c (pending_events): New variable.
17539         (kqueue_compare_dir_list): Handle more complex rename operation.
17540         (globals_of_kqueue): Initialize pending_events.
17542         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
17543         Adapt expected events in the `rename-file' case.
17544         (file-notify-test06-many-events-remote): Declare.
17546 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
17548         New test with a larger number of events
17550         * test/automated/file-notify-tests.el (file-notify--test-with-events):
17551         Make timeout heuristically depend on the number of events.
17553         (file-notify-test06-many-events): Use it for new test.
17555 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17557         Further fixes for kqueue
17559         * lisp/filenotify.el (file-notify-callback): Raise also event if
17560         directory name matches.
17561         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
17563         * src/kqueue.c (kqueue_generate_event): Use watch_object as
17564         argument instead of ident.  Remove callback argument.  Adapt
17565         callees.  Check actions whether they are monitored flags.
17567         * test/automated/file-notify-tests.el (file-notify--test-library):
17568         New defun.
17569         (file-notify-test00-availability, file-notify-test02-events)
17570         (file-notify-test04-file-validity)
17571         (file-notify-test05-dir-validity): Use it.
17572         (file-notify-test02-events, file-notify-test04-file-validity): Add
17573         `read-event' calls between different file actions, in order to
17574         give the backends a chance to rais an event.  Needed especially
17575         for kqueue.  In case of deleting a directory, there are two
17576         `deleted' events.
17578 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17580         Code cleanup of kqueue.c
17582         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
17583         (kqueue_compare_dir_list): Do not loop when calling
17584         directory_files_internal.  Remove checks for "." and "..", this is
17585         done in kqueue_directory_listing now.
17586         (Fkqueue_add_watch): Check for proper emacs_open flags.
17588 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17590         Doc changes for kqueue
17592         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
17593         Fix some glitches in the example.
17595 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17597         Finish implementation in kqueue.c
17599         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
17600         Simplify access to list.
17601         (kqueue_compare_dir_list): Simplify access to list.  Raise
17602         `delete' event if directory does not exist any longer.  Otherwise,
17603         wait until directory contents has changed.  Fix error in check.
17605 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17607         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
17609 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17611         More work on kqueue
17613         * lisp/filenotify.el (file-notify-callback): Handle also the
17614         `rename' event from kqueue.
17615         (file-notify-add-watch): Do not register an entry twice.
17617         * src/kqueue.c (kqueue_directory_listing): New function.
17618         (kqueue_generate_event): New argument FILE1.  Adapt callees.
17619         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
17621 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17623         Implement directory events
17625         * lisp/filenotify.el (file-notify-handle-event)
17626         (file-notify-callback): Remove traces.
17628         * src/kqueue.c: Include <sys/time.h>.
17629         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
17630         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
17631         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
17632         Compute initial directory listing.  Close file descriptor in case
17633         of errors.
17634         (syms_of_kqueue): Declare Qcreate.
17636 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
17638         Build fixes for kqueue support
17640         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
17641         flag.
17643         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
17644         kqueue on *BSD.
17646 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17648         Continue kqueue implementation
17650         * lisp/filenotify.el (file-notify-handle-event)
17651         (file-notify-callback): Enable trace messages.
17653         * src/kqueue.c: Include also <sys/types.h>.
17654         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
17655         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
17656         (syms_of_kqueue): Add them.
17658 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17660         Work on kqueue
17662         * lisp/filenotify.el (file-notify--library)
17663         (file-notify-descriptors, file-notify-callback)
17664         (file-notify-add-watch, file-notify-rm-watch)
17665         (file-notify-valid-p): Add kqueue support.
17667         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
17669 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17671         Add kqueue support
17673         * configure.ac (--with-file-notification): Add kqueue.
17674         (top): Remove special test for "${HAVE_NS}" and
17675         ${with_file_notification}, this is handled inside gfilenotify
17676         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
17677         instead of library specific variables.
17679         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
17681         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
17683         * src/kqueue.c: New file.
17685         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
17687 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
17689         Update elisp-mode-tests for changed file location.
17691          * test/lisp/progmodes/elisp-mode-tests.el:
17693 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
17695         Exclude manual tests from Makefile
17697          * test/Makefile.in:
17699 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
17701         Move package test files to new directory.
17703          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
17704          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
17706 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
17708         Restore delete Makefiles and fix .gitignore.
17710          * .gitignore: Update Makefiles to changed locations
17711          * test/lisp/progmodes/flymake-resources/Makefile,
17712            test/manual/etags/Makefile,
17713            test/manual/etags/make-src/Makefile,
17714            test/manual/indent/Makefile: Restored and moved to new location.
17716 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
17718         Test infrastructure: updates after directory move
17720          * (test/Makefile.in): Support directories several levels deep.
17721          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
17722          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
17724 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
17726         Rename all test files to reflect source layout.
17728          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
17729            test directory moves.
17730          * test/file-organisation.org: New file.
17731          * test/automated/Makefile.in
17732            test/automated/data/decompress/foo.gz
17733            test/automated/data/epg/pubkey.asc
17734            test/automated/data/epg/seckey.asc
17735            test/automated/data/files-bug18141.el.gz
17736            test/automated/data/flymake/test.c
17737            test/automated/data/flymake/test.pl
17738            test/automated/data/package/archive-contents
17739            test/automated/data/package/key.pub
17740            test/automated/data/package/key.sec
17741            test/automated/data/package/multi-file-0.2.3.tar
17742            test/automated/data/package/multi-file-readme.txt
17743            test/automated/data/package/newer-versions/archive-contents
17744            test/automated/data/package/newer-versions/new-pkg-1.0.el
17745            test/automated/data/package/newer-versions/simple-single-1.4.el
17746            test/automated/data/package/package-test-server.py
17747            test/automated/data/package/signed/archive-contents
17748            test/automated/data/package/signed/archive-contents.sig
17749            test/automated/data/package/signed/signed-bad-1.0.el
17750            test/automated/data/package/signed/signed-bad-1.0.el.sig
17751            test/automated/data/package/signed/signed-good-1.0.el
17752            test/automated/data/package/signed/signed-good-1.0.el.sig
17753            test/automated/data/package/simple-depend-1.0.el
17754            test/automated/data/package/simple-single-1.3.el
17755            test/automated/data/package/simple-single-readme.txt
17756            test/automated/data/package/simple-two-depend-1.1.el
17757            test/automated/abbrev-tests.el
17758            test/automated/auto-revert-tests.el
17759            test/automated/calc-tests.el
17760            test/automated/icalendar-tests.el
17761            test/automated/character-fold-tests.el
17762            test/automated/comint-testsuite.el
17763            test/automated/descr-text-test.el
17764            test/automated/electric-tests.el
17765            test/automated/cl-generic-tests.el
17766            test/automated/cl-lib-tests.el
17767            test/automated/eieio-test-methodinvoke.el
17768            test/automated/eieio-test-persist.el
17769            test/automated/eieio-tests.el
17770            test/automated/ert-tests.el
17771            test/automated/ert-x-tests.el
17772            test/automated/generator-tests.el
17773            test/automated/let-alist.el
17774            test/automated/map-tests.el
17775            test/automated/advice-tests.el
17776            test/automated/package-test.el
17777            test/automated/pcase-tests.el
17778            test/automated/regexp-tests.el
17779            test/automated/seq-tests.el
17780            test/automated/subr-x-tests.el
17781            test/automated/tabulated-list-test.el
17782            test/automated/thunk-tests.el
17783            test/automated/timer-tests.el
17784            test/automated/epg-tests.el
17785            test/automated/eshell.el
17786            test/automated/faces-tests.el
17787            test/automated/file-notify-tests.el
17788            test/automated/auth-source-tests.el
17789            test/automated/gnus-tests.el
17790            test/automated/message-mode-tests.el
17791            test/automated/help-fns.el
17792            test/automated/imenu-test.el
17793            test/automated/info-xref.el
17794            test/automated/mule-util.el
17795            test/automated/isearch-tests.el
17796            test/automated/json-tests.el
17797            test/automated/bytecomp-tests.el
17798            test/automated/coding-tests.el
17799            test/automated/core-elisp-tests.el
17800            test/automated/decoder-tests.el
17801            test/automated/files.el
17802            test/automated/font-parse-tests.el
17803            test/automated/lexbind-tests.el
17804            test/automated/occur-tests.el
17805            test/automated/process-tests.el
17806            test/automated/syntax-tests.el
17807            test/automated/textprop-tests.el
17808            test/automated/undo-tests.el
17809            test/automated/man-tests.el
17810            test/automated/completion-tests.el
17811            test/automated/dbus-tests.el
17812            test/automated/newsticker-tests.el
17813            test/automated/sasl-scram-rfc-tests.el
17814            test/automated/tramp-tests.el
17815            test/automated/obarray-tests.el
17816            test/automated/compile-tests.el
17817            test/automated/elisp-mode-tests.el
17818            test/automated/f90.el
17819            test/automated/flymake-tests.el
17820            test/automated/python-tests.el
17821            test/automated/ruby-mode-tests.el
17822            test/automated/subword-tests.el
17823            test/automated/replace-tests.el
17824            test/automated/simple-test.el
17825            test/automated/sort-tests.el
17826            test/automated/subr-tests.el
17827            test/automated/reftex-tests.el
17828            test/automated/sgml-mode-tests.el
17829            test/automated/tildify-tests.el
17830            test/automated/thingatpt.el
17831            test/automated/url-future-tests.el
17832            test/automated/url-util-tests.el
17833            test/automated/add-log-tests.el
17834            test/automated/vc-bzr.el
17835            test/automated/vc-tests.el
17836            test/automated/xml-parse-tests.el
17837            test/BidiCharacterTest.txt
17838            test/biditest.el
17839            test/cedet/cedet-utests.el
17840            test/cedet/ede-tests.el
17841            test/cedet/semantic-ia-utest.el
17842            test/cedet/semantic-tests.el
17843            test/cedet/semantic-utest-c.el
17844            test/cedet/semantic-utest.el
17845            test/cedet/srecode-tests.el
17846            test/cedet/tests/test.c
17847            test/cedet/tests/test.el
17848            test/cedet/tests/test.make
17849            test/cedet/tests/testdoublens.cpp
17850            test/cedet/tests/testdoublens.hpp
17851            test/cedet/tests/testfriends.cpp
17852            test/cedet/tests/testjavacomp.java
17853            test/cedet/tests/testnsp.cpp
17854            test/cedet/tests/testpolymorph.cpp
17855            test/cedet/tests/testspp.c
17856            test/cedet/tests/testsppcomplete.c
17857            test/cedet/tests/testsppreplace.c
17858            test/cedet/tests/testsppreplaced.c
17859            test/cedet/tests/testsubclass.cpp
17860            test/cedet/tests/testsubclass.hh
17861            test/cedet/tests/testtypedefs.cpp
17862            test/cedet/tests/testvarnames.c
17863            test/etags/CTAGS.good
17864            test/etags/ETAGS.good_1
17865            test/etags/ETAGS.good_2
17866            test/etags/ETAGS.good_3
17867            test/etags/ETAGS.good_4
17868            test/etags/ETAGS.good_5
17869            test/etags/ETAGS.good_6
17870            test/etags/a-src/empty.zz
17871            test/etags/a-src/empty.zz.gz
17872            test/etags/ada-src/2ataspri.adb
17873            test/etags/ada-src/2ataspri.ads
17874            test/etags/ada-src/etags-test-for.ada
17875            test/etags/ada-src/waroquiers.ada
17876            test/etags/c-src/a/b/b.c
17877            test/etags/c-src/abbrev.c
17878            test/etags/c-src/c.c
17879            test/etags/c-src/dostorture.c
17880            test/etags/c-src/emacs/src/gmalloc.c
17881            test/etags/c-src/emacs/src/keyboard.c
17882            test/etags/c-src/emacs/src/lisp.h
17883            test/etags/c-src/emacs/src/regex.h
17884            test/etags/c-src/etags.c
17885            test/etags/c-src/exit.c
17886            test/etags/c-src/exit.strange_suffix
17887            test/etags/c-src/fail.c
17888            test/etags/c-src/getopt.h
17889            test/etags/c-src/h.h
17890            test/etags/c-src/machsyscalls.c
17891            test/etags/c-src/machsyscalls.h
17892            test/etags/c-src/sysdep.h
17893            test/etags/c-src/tab.c
17894            test/etags/c-src/torture.c
17895            test/etags/cp-src/MDiagArray2.h
17896            test/etags/cp-src/Range.h
17897            test/etags/cp-src/burton.cpp
17898            test/etags/cp-src/c.C
17899            test/etags/cp-src/clheir.cpp.gz
17900            test/etags/cp-src/clheir.hpp
17901            test/etags/cp-src/conway.cpp
17902            test/etags/cp-src/conway.hpp
17903            test/etags/cp-src/fail.C
17904            test/etags/cp-src/functions.cpp
17905            test/etags/cp-src/screen.cpp
17906            test/etags/cp-src/screen.hpp
17907            test/etags/cp-src/x.cc
17908            test/etags/el-src/TAGTEST.EL
17909            test/etags/el-src/emacs/lisp/progmodes/etags.el
17910            test/etags/erl-src/gs_dialog.erl
17911            test/etags/f-src/entry.for
17912            test/etags/f-src/entry.strange.gz
17913            test/etags/f-src/entry.strange_suffix
17914            test/etags/forth-src/test-forth.fth
17915            test/etags/html-src/algrthms.html
17916            test/etags/html-src/index.shtml
17917            test/etags/html-src/software.html
17918            test/etags/html-src/softwarelibero.html
17919            test/etags/lua-src/allegro.lua
17920            test/etags/objc-src/PackInsp.h
17921            test/etags/objc-src/PackInsp.m
17922            test/etags/objc-src/Subprocess.h
17923            test/etags/objc-src/Subprocess.m
17924            test/etags/objcpp-src/SimpleCalc.H
17925            test/etags/objcpp-src/SimpleCalc.M
17926            test/etags/pas-src/common.pas
17927            test/etags/perl-src/htlmify-cystic
17928            test/etags/perl-src/kai-test.pl
17929            test/etags/perl-src/yagrip.pl
17930            test/etags/php-src/lce_functions.php
17931            test/etags/php-src/ptest.php
17932            test/etags/php-src/sendmail.php
17933            test/etags/prol-src/natded.prolog
17934            test/etags/prol-src/ordsets.prolog
17935            test/etags/ps-src/rfc1245.ps
17936            test/etags/pyt-src/server.py
17937            test/etags/tex-src/gzip.texi
17938            test/etags/tex-src/nonewline.tex
17939            test/etags/tex-src/testenv.tex
17940            test/etags/tex-src/texinfo.tex
17941            test/etags/y-src/atest.y
17942            test/etags/y-src/cccp.c
17943            test/etags/y-src/cccp.y
17944            test/etags/y-src/parse.c
17945            test/etags/y-src/parse.y
17946            test/indent/css-mode.css
17947            test/indent/js-indent-init-dynamic.js
17948            test/indent/js-indent-init-t.js
17949            test/indent/js-jsx.js
17950            test/indent/js.js
17951            test/indent/latex-mode.tex
17952            test/indent/modula2.mod
17953            test/indent/nxml.xml
17954            test/indent/octave.m
17955            test/indent/pascal.pas
17956            test/indent/perl.perl
17957            test/indent/prolog.prolog
17958            test/indent/ps-mode.ps
17959            test/indent/ruby.rb
17960            test/indent/scheme.scm
17961            test/indent/scss-mode.scss
17962            test/indent/sgml-mode-attribute.html
17963            test/indent/shell.rc
17964            test/indent/shell.sh
17965            test/redisplay-testsuite.el
17966            test/rmailmm.el
17967            test/automated/buffer-tests.el
17968            test/automated/cmds-tests.el
17969            test/automated/data-tests.el
17970            test/automated/finalizer-tests.el
17971            test/automated/fns-tests.el
17972            test/automated/inotify-test.el
17973            test/automated/keymap-tests.el
17974            test/automated/print-tests.el
17975            test/automated/libxml-tests.el
17976            test/automated/zlib-tests.el: Files Moved.
17978 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
17980         Rework file notifications, kqueue has problems with directory monitors
17982         * lisp/filenotify.el (file-notify-add-watch): Call the native
17983         add-watch function on the file, not on the dir.
17985         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
17986         about already deleted entries.
17988         * test/automated/auto-revert-tests.el
17989         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
17990         since this deletes the target file first.
17992         * test/automated/file-notify-tests.el (file-notify--test-event-test):
17993         Make stronger checks.
17994         (file-notify-test01-add-watch, file-notify-test02-events)
17995         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
17996         Rewrite in order to call file monitors but directory monitors.
17997         (file-notify-test06-many-events): Ler rename work in both directions.
17999 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
18001         Continie with pending events
18003         * src/kqueue.c (pending_events): Remove global variable.
18004         (kqueue_compare_dir_list): Create `write' event for not used
18005         pending events.
18006         (globals_of_kqueue): Remove initialization of pending_events.
18008 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
18010         Improve loops in file-notify-test06-many-events
18012         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
18013         Use `read-event' pauses for the `write-file' loops; otherwise
18014         events are lost in inotify and gfilenotify cases.
18016 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
18018         Handle more complex rename operation in kqueue
18020         * src/kqueue.c (pending_events): New variable.
18021         (kqueue_compare_dir_list): Handle more complex rename operation.
18022         (globals_of_kqueue): Initialize pending_events.
18024         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
18025         Adapt expected events in the `rename-file' case.
18026         (file-notify-test06-many-events-remote): Declare.
18028 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
18030         New test with a larger number of events.
18032         * test/automated/file-notify-tests.el (file-notify--test-with-events):
18033         Make timeout heuristically depend on the number of events.
18035         (file-notify-test06-many-events): Use it for new test.
18037 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
18039         Further fixes for kqueue.
18041         * lisp/filenotify.el (file-notify-callback): Raise also event if
18042         directory name matches.
18043         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
18045         * src/kqueue.c (kqueue_generate_event): Use watch_object as
18046         argument instead of ident.  Remove callback argument.  Adapt
18047         callees.  Check actions whether they are monitored flags.
18049         * test/automated/file-notify-tests.el (file-notify--test-library):
18050         New defun.
18051         (file-notify-test00-availability, file-notify-test02-events)
18052         (file-notify-test04-file-validity)
18053         (file-notify-test05-dir-validity): Use it.
18054         (file-notify-test02-events, file-notify-test04-file-validity): Add
18055         `read-event' calls between different file actions, in order to
18056         give the backends a chance to rais an event.  Needed especially
18057         for kqueue.  In case of deleting a directory, there are two
18058         `deleted' events.
18060 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
18062         Code cleanup of kqueue.c
18064         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
18065         (kqueue_compare_dir_list): Do not loop when calling
18066         directory_files_internal.  Remove checks for "." and "..", this is
18067         done in kqueue_directory_listing now.
18068         (Fkqueue_add_watch): Check for proper emacs_open flags.
18070 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
18072         Doc changes for kqueue
18074         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
18075         Fix some glitches in the example.
18077 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
18079         Finish implementation in kqueue.c
18081         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
18082         Simplify access to list.
18083         (kqueue_compare_dir_list): Simplify access to list.  Raise
18084         `delete' event if directory does not exist any longer.  Otherwise,
18085         wait until directory contents has changed.  Fix error in check.
18087 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
18089         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
18091 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
18093         More work on kqueue
18095         * lisp/filenotify.el (file-notify-callback): Handle also the
18096         `rename' event from kqueue.
18097         (file-notify-add-watch): Do not register an entry twice.
18099         * src/kqueue.c (kqueue_directory_listing): New function.
18100         (kqueue_generate_event): New argument FILE1.  Adapt callees.
18101         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
18103 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
18105         Implement directory events
18107         * lisp/filenotify.el (file-notify-handle-event)
18108         (file-notify-callback): Remove traces.
18110         * src/kqueue.c: Include <sys/time.h>.
18111         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
18112         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
18113         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
18114         Compute initial directory listing.  Close file descriptor in case
18115         of errors.
18116         (syms_of_kqueue): Declare Qcreate.
18118 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
18120         Build fixes for kqueue support.
18122         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
18123         flag.
18125         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
18126         kqueue on *BSD.
18128 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
18130         Continue kqueue implementation
18132         * lisp/filenotify.el (file-notify-handle-event)
18133         (file-notify-callback): Enable trace messages.
18135         * src/kqueue.c: Include also <sys/types.h>.
18136         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
18137         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
18138         (syms_of_kqueue): Add them.
18140 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
18142         Work on kqueue
18144         * lisp/filenotify.el (file-notify--library)
18145         (file-notify-descriptors, file-notify-callback)
18146         (file-notify-add-watch, file-notify-rm-watch)
18147         (file-notify-valid-p): Add kqueue support.
18149         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
18151 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
18153         Add kqueue support
18155         * configure.ac (--with-file-notification): Add kqueue.
18156         (top): Remove special test for "${HAVE_NS}" and
18157         ${with_file_notification}, this is handled inside gfilenotify
18158         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
18159         instead of library specific variables.
18161         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
18163         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
18165         * src/kqueue.c: New file.
18167         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
18169 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
18171         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
18173         * verilog-mode.el (verilog-save-font-no-change-functions):
18174         Commentary and fix pre-Emacs 21 behavior.
18176 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
18178         Use obarray functions from obarray.
18180         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
18181           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
18182           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
18183           delegate to obarray.el functions.
18184         * lisp/loadup.el: load obarray before abbrev
18185         * test/automated/abbrev-tests.el: new tests
18187 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
18189         epa.el: Add option to replace original text
18191         * lisp/epa.el (epa-replace-original-text): New user option.
18192         (Bug#21947)
18194 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
18196         Add interactive seek command.
18198         * lisp/mpc.el (mpc-cmd-seekcur): New function.
18199         (mpc-seek-current): New command.
18200         (mpc-mode-menu): Add entry for mpc-seek-current
18201         (mpc-mode-map): Bind mpc-seek-current to "g"
18203 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
18205         Fix issue where a new tempfile was created every refresh
18207         * lisp/mpc.el (mpc-format): Leave dir as relative path
18209 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
18211         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
18213         (c-save-buffer-state): Use with-silent-modifications when available.
18214         (c--macroexpand-all): Check macroexpand-all directly rather than
18215         c--mapcan-status.
18217 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
18219         * lisp/loadup.el: Set max-lisp-eval-depth here
18221         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
18222         (BYTE_COMPILE_FLAGS): Adjust accordingly.
18224 2015-11-17  João Távora  <joaotavora@gmail.com>
18226         Minor fix to comment indentation and typo in last commit
18228         * linum.el (linum-update-window): Fix comment indentation and a
18229         typo.
18231 2015-11-17  João Távora  <joaotavora@gmail.com>
18233         linum-mode plays more nicely with other margin-setting extensions
18235         linum.el will only modify the left margin if it needs to, and will
18236         only reset the it back to 0 if it guesses that no-one has touched that
18237         margin in the meantime.
18239         As such, this is a more of a workaround than an actual fix, but fixes
18240         the problems described in bug#20674 regarding the interaction with
18241         modes such as darkroom-mode and olivetti-mode.
18243         A similar fix was commited to nlinum.el in ELPA.git's
18244         e7f5f549fbfb740b911fb7f33b42381ecece56d8
18246         * linum.el (linum-delete-overlays): Restore margins more
18247         criteriously.
18248         (linum-update-window): Set margins more criteriously.
18250 2015-11-16  Daiki Ueno  <ueno@gnu.org>
18252         * lisp/image-mode.el: Support encrypted file
18254         (image-toggle-display-image): Read content from the buffer instead
18255         of the file, if the buffer holds a decrypted data.  (Bug#21870)
18257 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
18259         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
18261 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
18263         * lisp/emacs-lisp/package.el: Fix a decoding issue
18265         (package--with-response-buffer): Use `url-insert-buffer-contents'.
18266         The previous code had some issues with decoding. Refactoring that
18267         function allows us to use the decoding from url-handlers while still
18268         treating both sync and async requests the same.
18270         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
18271         `url-insert-buffer-contents'.
18272         (url-insert-buffer-contents): New function
18274 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18276         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
18278         (verilog-save-buffer-state): Use with-silent-modifications when available.
18279         (verilog-save-font-no-change-functions): Don't bind
18280         before/after-change-functions if it's not needed.
18282 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
18284         * CONTRIBUTE: Remove information about feature freeze.
18286         Merge branch 'release-process-lowercase'
18288 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
18290         Document the release process
18292         * admin/notes/versioning: Add information about RC releases.
18293         * admin/release-process: Document the release process.
18294         * admin/authors.el (authors-ignored-files):
18295         * admin/README: Change FOR-RELEASE to release-process.
18296         * CONTRIBUTE:
18297         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
18299 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
18301         * admin/release-process: Rename from admin/FOR-RELEASE.
18303 2015-11-14  David Engster  <deng@randomsample.de>
18305         gitmerge: Fix git log command
18307         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
18308         only want commits from the branch that is to be merged.
18309         (gitmerge-setup-log-buffer): Use the same symmetric range as in
18310         `gitmerge-missing'.
18312 2015-11-14  David Engster  <deng@randomsample.de>
18314         gitmerge: Try to detect cherry-picks
18316         * admin/gitmerge.el (gitmerge-default-branch): Change to
18317         origin/emacs-25.
18318         (gitmerge-missing): Use symmetric difference ('...') between
18319         branch and master so that cherry-picks can be detected.
18321 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
18323         Increment Emacs version on master branch
18325         * lisp/cus-edit.el (customize-changed-options-previous-release):
18326         Increase previous version to 24.5.
18328         * configure.ac:
18329         * msdos/sed2v2.inp: Bump version to 25.1.50.
18331 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
18333         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
18334         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
18335         * README: Mention CONTRIBUTE.
18337 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
18339         Update verilog-mode.el to 2015-11-09-b121d60-vpo
18341         * verilog-mode.el (verilog-auto, verilog-delete-auto)
18342         (verilog-modi-cache-results, verilog-save-buffer-state)
18343         (verilog-save-font-no-change-functions): When internally suppressing
18344         change functions, use `inhibit-modification-hooks' and call
18345         `after-change-funtions' to more nicely work with user hooks.
18346         Reported by Stefan Monnier.
18347         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
18348         Create `verilog-delete-auto-buffer' to avoid double-calling
18349         fontification hooks.
18350         (verilog-restore-buffer-modified-p, verilog-auto)
18351         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
18352         set-buffer-modified-p.  Reported by Stefan Monnier.
18353         (verilog-diff-auto, verilog-diff-buffers-p)
18354         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
18355         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
18356         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
18357         by Amol Nagapurkar.
18358         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
18359         properties inside internal structures.  No functional change
18360         intended.
18362 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
18364         Use generic dispatch for xref backends
18366         * lisp/progmodes/xref.el (xref-backend-functions):
18367         New variable.
18368         (xref-find-function): Remove.
18369         (xref-find-backend)
18370         (xref--etags-backend): New functions.
18371         (xref-identifier-at-point-function)
18372         (xref-identifier-completion-table-function): Remove.
18373         (xref-backend-definitions, xref-backend-references)
18374         (xref-backend-apropos, xref-backend-identifier-at-point)
18375         (xref-backend-identifier-completion-table):
18376         New generic functions.
18378         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
18379         Add `elisp--xref-backend' to the beginning of
18380         `xref-backend-functions', locally.  Delete references to
18381         removed functions and vars.
18382         (elisp-xref-find): Remove.
18383         (elisp--xref-backend): New function.
18384         (elisp--xref-find-references, elisp--xref-find-apropos)
18385         (elisp--xref-identifier-completion-table):
18386         Turn into appropriately named generic methods.
18388         * lisp/progmodes/etags.el (etags-xref-find): Remove.
18389         (xref-backend-identifier-completion-table)
18390         (xref-backend-references, xref-backend-definitions)
18391         (xref-backend-apropos): New generic methods.
18393 2015-11-13  Juri Linkov  <juri@linkov.net>
18395         Support rectangular regions for more commands
18397         * lisp/simple.el (region-extract-function): Handle the arg
18398         value ‘bounds’.
18399         (region-insert-function): New function.
18400         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
18401         If non-nil, operate on multiple chunks.
18402         (region-noncontiguous-p): New function.
18404         * lisp/rect.el: Add function rectangle--insert-region
18405         around region-insert-function.
18406         (extract-rectangle-bounds): New function.
18407         (rectangle--extract-region): Handle the arg value ‘bounds’.
18408         (rectangle--insert-region): New function.
18410         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
18411         around region-insert-function.
18412         (cua--extract-rectangle-bounds): New function.
18413         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
18415         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
18416         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
18417         (query-replace-regexp-eval, map-query-replace-regexp)
18418         (replace-string, replace-regexp): Use ‘use-region-p’.
18419         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
18420         (perform-replace): Add arg ‘region-noncontiguous-p’.
18421         If non-nil, operate on multiple chunks.
18423         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
18424         If non-nil, operate on multiple chunks.  (Bug#19829)
18426 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
18428         Handle multiple matches on the same line; add highlighting
18430         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
18431         column value in characters.
18432         (xref--collect-matches): Rename from `xref--collect-match'.
18433         Search for all matches in the hit line.  Add `highlight' face to
18434         the matched region in the summary.  Update both callers.
18436 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
18438         Replace xref-match-bounds with xref-match-length
18440         Relying on xref-location-marker to point to the beginning of the match
18442         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
18443         (xref-match-length): Add.
18444         (xref-make-match): Change the arguments.
18445         (xref--match-buffer-bounds): Remove.
18446         (xref-match-item): Store length, instead of end-column.
18447         (xref-pulse-momentarily)
18448         (xref--collect-match)
18449         (xref--query-replace-1): Update accordingly.
18450         (xref-query-replace): Ditto.  And check that the search results
18451         are up-to-date.
18453 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
18455         Merge from gnulib
18457         This incorporates:
18458         2015-11-13 xalloc-oversized: improve performance with GCC 5
18459         * lib/xalloc-oversized.h: Copy from gnulib.
18461 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
18463         Spruce up ftfont.c memory allocation
18465         * src/ftfont.c (setup_otf_gstring):
18466         Avoid O(N**2) behavior when reallocating.
18467         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
18468         reallocating buffers; this simplifies the code.  Do not trust
18469         mflt_run to leave the output areas unchanged on failure, as
18470         this isn’t part of its interface spec.
18472 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
18474         Port recent XCB changes to 64-bit ‘long int’
18476         For historical reasons, libX11 represents 32-bit values like Atoms as
18477         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
18478         do that, so adapt the recent XCB code to behave properly on 64-bit
18479         platforms.  Also, fix what appears to be a bug in the interpretation
18480         of xcb_get_property_value_length, at least on my Fedora platform
18481         which is running libxcb-1.11-5.fc21.
18482         * src/xfns.c (x_real_pos_and_offsets):
18483         * src/xterm.c (get_current_wm_state):
18484         xcb_get_property_value_length returns a byte count, not a word count.
18485         For 32-bit quantities, xcb_get_property_value returns a vector
18486         of 32-bit words, not of (possibly 64-bit) long int.
18488 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
18490         * src/undo.c (run_undoable_change): Now static.
18492 2016-01-30  Michael Albinus  <michael.albinus@gmx.de>
18494         Adapt Tramp version, do not merge with master
18496         * doc/misc/trampver.texi (trampver):
18497         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
18499 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
18501         Remove support for ':timeout' from w32 tray notifications
18503         * src/w32fns.c (Fw32_notification_notify): Delete the code that
18504         supports ':timeout'.
18505         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
18506         with dbusbind.c when D-Bus is compiled in.
18508         * doc/lispref/os.texi (Desktop Notifications): Don't mention
18509         ':timeout'.
18511 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
18513         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
18514         (simple-test--transpositions): New macro.
18515         (simple-transpose-subr): New test.
18517 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
18519         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
18521 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
18523         * src/undo.c: Small fixes for previous change
18524         (run_undoable_change): Mark void argument list.
18525         (record_property_change): Remove unused variable `boundary'.
18527 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
18529         Add a few more variables to redisplay--variables
18531         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
18532         and bidi-display-reordering to the list.
18534 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
18536         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
18538 2015-11-13  Eli Barzilay  <eli@barzilay.org>
18540         Fix point positioning after transposing with negative arg
18542         * lisp/simple.el (transpose-subr): When invoked with a negative
18543         argument, move point to after the transposed text, like we do
18544         when invoked with a positive argument.  (Bug#21885)
18546 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
18548         Fix last change in shr.el
18550         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
18551         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
18553 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
18555         Fix last change
18557         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
18558         Don't DEFSYM tray notification symbols if D-Bus is being used.
18560 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
18562         Another fix for MinGW64 and Cygwin builds due to notifications
18564         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
18565         being compiled into Emacs.
18566         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
18567         Sw32_notification_notify and Sw32_notification_close if the code
18568         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
18570 2016-01-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18571 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18573         Remove intern calls and XXX comments from Fx_export_frames
18575         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
18576         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
18577         for consistency with image types.  Remove XXX comments.
18578         (syms_of_xfns) <Qpdf>: DEFSYM it.
18580 2016-01-30  Eric Hanchrow  <eric.hanchrow@gmail.com>
18581 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
18583         shr: don't invoke unbound function (Bug#21895)
18585         * lisp/net/shr.el (have-fringes-p): New function.
18586         (shr-insert-document, shr-fill-text): Use it.
18588 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
18590         * test/automated/keymap-tests.el: Fix test to make it repeatable
18592         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
18593         entry to its initial value to make the test repeatable in interactive
18594         sessions (assuming it doesn't fail and crashes Emacs, of course).
18596 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18598         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
18600 2016-01-30  Phillip Lord  <phillip.lord@russet.org.uk>
18602         : Tests for undo-auto functionality.
18603 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
18605         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
18606         Small fix.
18608 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
18610         The heuristic that Emacs uses to add an `undo-boundary' has been
18611         reworked, as it interacts poorly with functions on `post-command-hook'
18612         or `after-change-functions'.
18614         * lisp/simple.el: New section added.
18615         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
18616         (self_insert_command): Calls simple.el to amalgamate.
18617         (delete_char): Calls simple.el to amalgamate.
18618         * src/keyboard.c (last_undo_boundary): Removed.
18619         * src/undo.c (run_undoable_change): New function.
18621 2015-11-12  Juri Linkov  <juri@linkov.net>
18623         Bind [?\S-\ ] to previous line command in Dired-like modes.
18625         * lisp/arc-mode.el (archive-mode-map):
18626         * lisp/dired.el (dired-mode-map):
18627         * lisp/proced.el (proced-mode-map):
18628         * lisp/vc/vc-dir.el (vc-dir-mode-map):
18629         Bind [?\S-\ ] to previous line command.
18630         (Bug#20790)
18632 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
18634         Fix the MinGW64 and Cygwin-w32 builds
18636         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
18637         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
18638         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
18639         which cause trouble with MinGW42 headers.  Ifdef away tray
18640         notifications code for Cygwin.  Reported by Andy Moreton
18641         <andrewjmoreton@gmail.com>.
18643 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
18645         Enable sorting of JSON object keys when encoding
18647         * lisp/json.el (json-encoding-object-sort-predicate): New variable
18648         for specifying a sorting predicate for JSON objects during encoding.
18649         (json--plist-to-alist): New utility function.
18650         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
18651         are to be sorted.
18652         (json-encode-alist): Sort output by
18653         `json-encoding-object-sort-predicate, when set.
18654         (json-encode-plist): Re-use `json-encode-alist' when object keys are
18655         to be sorted.
18656         (json-pretty-print-buffer-ordered): New command to pretty print the
18657         buffer with object keys sorted alphabetically.
18658         (json-pretty-print-ordered): New command to pretty print the region
18659         with object keys sorted alphabetically.
18661         * test/automated/json-tests.el (test-json-plist-to-alist)
18662         (test-json-encode-plist, test-json-encode-hash-table)
18663         (test-json-encode-alist-with-sort-predicate)
18664         (test-json-encode-plist-with-sort-predicate): New tests.
18666         * etc/NEWS: Add an entry for the new commands.
18668 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
18670         * test/automated/keymap-tests.el: New test file.
18672 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
18674         Speed up x_real_pos_and_offsets using XCB
18676         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
18677         all X calls, and pipeline requests when possible, collecting results
18678         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
18680 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
18682         Enable use of XCB for checking window manager state
18684         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
18685         of XGetWindowProperty plus error-catching, since we can explicitly
18686         check for errors in the XCB version.  This eliminates 3 XSync calls on
18687         top of the round-trip actually fetching the information.
18689 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
18691         Detect XCB and save a connection handle
18693         * configure.ac: If using X11, check for XCB libraries and header.
18694         * src/Makefile.in (XCB_LIBS): Define.
18695         (LIBX_EXTRA): Include it.
18697         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
18698         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
18699         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
18701 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
18703         Reduce some data dependencies between X calls
18705         Gains nothing in the traditional-Xlib code, but more closely aligns
18706         with how the XCB version will work.
18708         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
18709         send coordinates (0,0) to the X server and add in the real coordinates
18710         after getting the response.  Move XGetGeometry for outer window inside
18711         error-trapping block.  Use DPY variable more, since it's available.
18713 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
18715         Use color cache for creating bitmap
18717         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
18718         Set attributes to use the caching color allocator.  Initialize and
18719         free the cache.
18721 2015-11-12  Eli Barzilay  <eli@barzilay.org>
18723         Add "^" to the interactive specs of `dired-next/previous-line'
18725         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
18726         to bind these commands to the arrow keys, and that means that they work
18727         better with a "^" in the `interactive' declaration so selection works
18728         as expected.
18730 2016-01-30  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18732         Sync with soap-client repository, version 3.0.2
18734         * lisp/net/soap-client.el: Bump version to 3.0.2.
18736         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
18738         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
18739         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
18741         * lisp/net/soap-client.el: Support Emacs versions that do not have
18742         define-error.
18744         * lisp/net/soap-inspect.el: Remove version header.
18746         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
18747 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18749         Sync with soap-client repository, version 3.0.2
18751         * soap-client.el: Bump version to 3.0.2.
18753         * soap-client.el (soap-warning): Use format, not format-message.
18755         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
18756         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
18758         * soap-client.el: Support Emacs versions that do not have
18759         define-error.
18761         * soap-inspect.el: Remove version header.
18763         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
18764         format.
18766 2015-11-11  Alan Mackenzie  <acm@muc.de>
18768         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
18770         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
18771         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
18772         (c-guess-basic-syntax):
18773         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
18774         (c-get-fallback-scan-pos): "New" function (existed several years ago).
18775         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
18776         c-get-fallback-scan-pos.
18777         (c-parse-state-1): Handle 'BOD strategy.
18779         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
18780         (c-font-lock-fontify-region): Remove bindings of
18781         open-paren-in-column-0-is-defun-start to nil.
18783         * doc/misc/cc-mode.texi (Performance Issues)
18784         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
18786 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
18788         * lisp/obarray.el: Fix shadowed variables.
18789         (obarray-map, obarray-remove, obarray-put, obarray-get):
18790         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
18792 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
18794         Avoid error in submitting a form with EWW
18796         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
18797         CHUNK to be nil.  (Bug#21881)
18799 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
18801         Rename seq-p and map-p to seqp and mapp
18803         * lisp/emacs-lisp/seq.el (seqp): New name.
18804         * lisp/emacs-lisp/map.el (mapp): New name.
18805         * doc/lispref/sequences.texi: Update the documentation for seqp.
18806         * test/automated/map-tests.el: Update the tests for mapp.
18808 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
18810         Rename obarray-p to obarrayp
18812         * lisp/obarray.el (obarrayp): New name.
18813         * test/automated/obarray-tests.el: Update the tests.
18815 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
18817         Rename obarray-foreach to obarray-map
18819         * lisp/obarray.el (obarray-map): New name.
18820         * test/automated/obarray-tests.el: Update the corresponding tests.
18822 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
18824         New file with obarray functions.
18826         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
18827         * test/automated/obarray-tests.el: New file.
18829 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
18831         Implement tray notifications for MS-Windows
18833         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
18834         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
18835         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
18836         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
18837         (EMACS_NOTIFICATION_MSG): New macros.
18838         (NI_Severity): New enumeration.
18839         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
18840         (delete_tray_notification, Fw32_notification_notify)
18841         (Fw32_notification_close): New functions.
18842         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
18843         keywords used by w32-notification-notify.
18845         * doc/lispref/os.texi (Desktop Notifications): Describe the native
18846         w32 tray notifications.
18848 2016-01-30  Alan Mackenzie  <acm@muc.de>
18850         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
18852         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
18853         Windows" and new @defun selected-window-group.
18854         (Window Start and End): Describe new &optional parameter GROUP and
18855         ...-group-function for window-start, window-end, set-window-start, and
18856         pos-visible-in-window-p.
18857         (Textual Scrolling) Describe the same for recenter.
18858         doc/lispref/positions.texi (Screen Lines): Describe the same for
18859         move-to-window-line.
18861         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
18862         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
18863         new optional parameter "group".  At the beginning of each, check whether the
18864         corresponding ...-group-function is set to a function, and if so execute this
18865         function in place of the normal processing.
18866         (syms_of_window): Define symbols for the six new variables below.
18867         (window-start-group-function, window-end-group-function)
18868         (set-window-start-group-function, recenter-group-function)
18869         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
18870         New permanent local buffer local variables.
18871         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
18872         Fpos_visible_in_window_p.
18874         lisp/window.el (selected-window-group-function): New permanent local buffer
18875         local variable.
18876         (selected-window-group): New function.
18878         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
18879         enable, kill them at mode disable.  Add/remove follow-after-change to/from
18880         after-change-functions.
18881         (follow-start-end-invalid): New variable.
18882         (follow-redisplay): Manipulate follow-start-end-invalid.
18883         (follow-after-change, follow-window-start, follow-window-end)
18884         (follow-set-window-start, follow-pos-visible-in-window-p)
18885         (follow-move-to-window-line, follow-sit-for): New functions.
18887         lisp/isearch.el (isearch-call-message): New macro.
18888         (isearch-update, with-isearch-suspended, isearch-del-char)
18889         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
18890         (with-isearch-suspended): Rearrange code such that isearch-call-message is
18891         invoked before point is moved.
18892         (isearch-message): Add comment about where point must be at function call.
18893         (isearch-search): Remove call to isearch-message.
18894         (isearch-lazy-highlight-window-group): New variable.
18895         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
18896         the battery of tests to ...
18897         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
18898         Note: (sit-for 0) is still called.
18899         (isearch-lazy-highlight-update): Check membership of
18900         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
18901         property.
18902         (isearch-update, isearch-done, isearch-string-out-of-window)
18903         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
18904         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
18905         (isearch-lazy-highlight-update): Call the six amended primitives (see
18906         src/window.c above) with the new `group' argument set to t, to cooperate
18907         with Follow Mode.
18909 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
18911         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
18913         * lisp/net/tramp.el (tramp-handle-file-equal-p)
18914         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
18915         Harvey Chapman <hchapman@3gfp.com>.
18917         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
18918         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
18919         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
18920         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
18922 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
18924         * CONTRIBUTE: Encourage adding tests.
18926         Based on this post from John Wiegley:
18928           From: "John Wiegley" <johnw@newartisans.com>
18929           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
18930           To: Juanma Barranquero <lekktu@gmail.com>
18931           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
18932               emacs-devel <emacs-devel@gnu.org>
18933           Date: Wed, 28 Oct 2015 18:45:29 -0700
18934           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
18936           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
18938 2015-11-10  David Reitter  <david.reitter@gmail.com>
18940         Avoid creating notification objects when possible
18942         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
18943         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
18944         functions that do not require a notification object.  When needed,
18945         define NSWindowDidEnterFullScreenNotification to allow for compilation
18946         on OS X 10.6.8.
18948 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18950         Move INTEGER_TO_CONS body out of .h file
18952         * src/data.c (INTBIG_TO_LISP): New macro, with most
18953         of the contents of the old INTEGER_TO_CONS.
18954         (intbig_to_lisp, uintbig_to_lisp): New functions.
18955         * src/lisp.h (INTEGER_TO_CONS):
18956         Simplify by using EXPR_SIGNED and the new functions.
18957         This shrinks code size a bit, and makes it easier to
18958         put a breakpoint on handling of large integers.
18960 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18962         Merge from gnulib
18964         This incorporates:
18965         2015-11-10 intprops: new public macro EXPR_SIGNED
18966         2015-11-10 intprops: fix typo in clang port
18967         * lib/intprops.h: Copy from gnulib.
18969 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18971         Spelling fixes
18973         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
18974         Fix misspelling in output.
18976 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
18978         * doc/lispref/variables.texi (Directory Local Variables):
18979         Document dir-locals wildcards.
18981         * lisp/files.el (dir-locals-file): Point to Info node.
18983         * doc/emacs/custom.texi (Directory Variables):
18984         Document dir-locals wildcards.
18986         * etc/NEWS: Document new functionality.
18988 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
18990         * lisp/files.el: Don't allow customization of dir-locals sorting.
18991         In retrospect, this is not a good idea for the same reason that
18992         `dir-locals-file' is a defconst, because it is important that this
18993         behavior be "uniform across different environments and users".
18994         Sure, the user can still change the sorting with a hack, but we
18995         shouldn't encourage them to change it.
18996         (dir-locals--all-files): Return list in the order returned by
18997         `file-expand-wildcards'.
18998         (file-expand-wildcards): Document the sorting predicate used.
18999         (dir-locals-sort-predicate): Delete variable.
19001 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
19003         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
19005         * lisp/isearch.el (search-default-regexp-mode): Change default value.
19007 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
19009         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
19010         `locate-dominating-file' will now keep looking if the files it finds in
19011         a given directory are unreadable (or not files).
19013 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
19015         * lisp/files.el (dir-locals-file): Allow wildcards.
19016         (dir-locals-find-file, dir-locals-collect-variables)
19017         (dir-locals-read-from-file): Update accordingly.
19018         (hack-dir-local-variables): Rename a local variable.
19020         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
19022         * lisp/help-fns.el (describe-variable): Update accordingly.
19024         * .gitignore: Add .dir-locals?.el.
19026 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
19028         * lisp/emacs-lisp/map.el (map-merge-with): New function.
19030         * test/automated/map-tests.el (test-map-merge-with): New test.
19032 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
19034         Fix some recently-perturbed bookmark autoloads
19036         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
19037         (bookmark-set): Restore autoload.
19038         (bookmark-set-no-overwrite): Add autoload.
19040         Thanks to Juanma Barranquero for noticing the autoload problems
19041         introduced by my recent commit adding/changing the above functions
19042         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
19044 2016-01-30  Noah Friedman  <friedman@splode.com>
19046         (ydump-buffer): Handle case where gap is at the start of buffer.
19047         I don't recall if older versions of gdb were less strict but you
19048         cannot dump a 0-length range in gdb 7.9.1.
19050 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
19051 2015-11-09  Noah Friedman  <friedman@splode.com>
19053         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
19054         the start of buffer.  I don't recall if older versions of gdb were
19055         less strict but you cannot dump a 0-length range in gdb 7.9.1.
19057 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
19059         * lisp/progmodes/project.el: Update Commentary.
19061         Merge branch 'project-next'
19063 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
19065         Fold `project-ask-user' into `project-current'
19067         * lisp/progmodes/project.el (project-find-functions): Remove
19068         `project-ask-user'.
19069 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
19071         Fold `project-ask-user' into `project-current'
19073         * lisp/progmodes/project.el (project-find-functions):
19074         Remove `project-ask-user'.
19075         (project-ask-user): Remove function and the corresponding
19076         `project-roots' implementation.
19077         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
19078         user in case there's no project in the current directory.  Update
19079         all callers.
19081 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
19083         When VC detects a conflict, specify which file
19085         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
19086         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
19087         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
19088         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
19089         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
19090           to display a standard message that specifies the conflicted file.
19092         Before this change, the message VC used for indicating a conflicted
19093         file was just "There are unresolved conflicts in this file" without
19094         naming the file (and this language was duplicated in several places).
19095         After this change, it's "There are unresolved conflicts in file FOO"
19096         (and this language is now centralized in one function in vc.el).
19098         Justification: It's important for the message to name the conflicted
19099         file because the moment when VC realizes a file is conflicted does not
19100         always come interactively.  For example, some people automatically
19101         find a set of Org Mode files on startup, and may keep those .org files
19102         under version control.  If any of the files are conflicted, the user
19103         just sees some messages fly by, and might later check the "*Messages*"
19104         buffer to find out what files were conflicted.  I'm not saying this
19105         happened to me or anything; it's a purely hypothetical example.
19107 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
19109         Fix assertion violation in define-key
19111         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
19112         objects.  Reported by Drew Adams <drew.adams@oracle.com>
19113         and Juanma Barranquero <lekktu@gmail.com>.
19115 2015-11-09  Dima Kogan  <dima@secretsauce.net>
19117         Fix a memory leak in GC of font cache
19119         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
19120         entities if some of the fonts it references are marked.  This
19121         plugs a memory leak.  (Bug#21556)
19123 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
19125         Use INT_ADD_WRAPV etc. to check integer overflow
19127         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
19128         * src/buffer.c (record_overlay_string, overlay_strings):
19129         * src/casefiddle.c (casify_object):
19130         * src/ccl.c (Fccl_execute_on_string):
19131         * src/character.c (char_width, c_string_width, lisp_string_width)
19132         (count_size_as_multibyte, string_escape_byte8):
19133         * src/coding.c (coding_alloc_by_realloc, produce_chars):
19134         * src/data.c (arith_driver):
19135         * src/dispnew.c (realloc_glyph_pool, init_display):
19136         * src/editfns.c (styled_format):
19137         * src/fns.c (Ffillarray):
19138         * src/ftfont.c (ftfont_shape_by_flt):
19139         * src/gnutls.c (gnutls_hex_string):
19140         * src/gtkutil.c (get_utf8_string):
19141         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
19142         * src/keymap.c (Fkey_description):
19143         * src/lisp.h (SAFE_ALLOCA_LISP):
19144         * src/term.c (encode_terminal_code):
19145         * src/tparam.c (tparam1):
19146         * src/xselect.c (x_property_data_to_lisp):
19147         * src/xsmfns.c (smc_save_yourself_CB):
19148         * src/xterm.c (x_term_init):
19149         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
19150         more-complicated code involving division and/or
19151         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
19152         subtraction and/or INT_ADD_OVERFLOW.
19153         * src/casefiddle.c (casify_object): Simplify multibyte size check.
19154         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
19155         * src/data.c (arith_driver): Also check for division overflow,
19156         as that’s now possible given that the accumulator can now contain
19157         any Emacs integer.
19158         * src/lisp.h (lisp_word_count): Remove; no longer used.
19160 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
19161 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
19163         Make sure that the ignore file exists
19165         * lisp/vc/vc.el (vc-default-ignore-completion-table):
19166         Make sure that the ignore file exists.
19168 2016-01-30  Michael Sperber  <mike@xemacs.org>
19170         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
19171 2015-11-08  Michael Sperber  <mike@xemacs.org>
19173         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
19174         `gnus-summary-delete-article` in a way that also works on XEmacs.
19176 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
19178         Add support for retrieving paths to JSON elements
19180         Add support for retrieving the path to a JSON element. This can for
19181         instance be useful to retrieve paths in deeply nested JSON
19182         structures.
19184         * lisp/json.el (json-pre-element-read-function)
19185         (json-post-element-read-function): New variables to hold pre- and post
19186         read callback functions for `json-read-array' and `json-read-object'.
19187         (json--path): New variable used internally by `json-path-to-position'.
19188         (json--record-path, json--check-position): New functions used
19189         internally by `json-path-to-position'.
19190         (json-path-to-position): New function for retrieving the path to a
19191         JSON element at a given position.
19192         (json-read-object, json-read-array): Call
19193         `json-pre-element-read-function' and `json-post-element-read-function'
19194         when set.
19196         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
19197         (test-json-path-to-position-with-arrays)
19198         (test-json-path-to-position-no-match): New tests for
19199         `json-path-to-position'.
19201 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
19203         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
19205         This really should been part of my previous commit
19206         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
19208 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
19210         Offer non-overwrite bookmark setter (Bug#15746)
19212         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
19213         what `bookmark-set' used to do, but with more choices for overwrite
19214         vs push, and with minor changes to the interactive prompt format.
19215         (bookmark-set): Rewrite as wrapper around above.
19216         If overwriting, inform the user of that in the prompt.
19217         (bookmark-set-no-overwrite): New function, also done as wrapper.
19218         Bind to "M" in `ctl-x-r-map' autoloads.
19219         (bookmark-map): Similarly bind "M" here.
19221 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
19223         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
19225 2015-11-08  Alan Modra  <amodra@gmail.com>
19227         ELF unexec: Don't insert a new section
19229         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
19230         don't need to mess with symbol st_shndx, or section sh_link and
19231         sh_info.
19233         This does lead to eu-elflint complaints about symbols defined in .bss
19234         with a needed version, because normally it is undefined symbols that
19235         have needed versions;  Defined symbols have version definitions.
19236         The exception is symbols defined by the linker in .dynbss for
19237         variables copied from a shared library in order to avoid text
19238         relocations, with copy relocs to copy their initial values from the
19239         shared library.  These symbols are both defined and have needed
19240         versions, and eu-elflink only expects to see them in SHT_NOBITS
19241         sections.  Of course there is no real problem with having such symbols
19242         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
19244         * src/unexelf.c: Delete outdated comments.
19245         (PATCH_INDEX): Delete.
19246         (find_section): Delete.
19247         (unexec): Don't add a new section.  Instead reuse the last bss
19248         section, extending it to cover dumped data.  Make bss sections
19249         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
19250         st_shndx.  Rename bss sections.
19252 2015-11-08  Alan Modra  <amodra@gmail.com>
19254         ELF unexec: Drive from PT_LOAD header rather than sections
19256         This rewrites bss handling in the ELF unexec code.  Finding bss
19257         sections by name results in complicated code that
19258         - does not account for all names of possible bss sections,
19259         - assumes specific ordering of bss sections,
19260         - can wrongly choose a SHT_NOBITS section not in the bss segment,
19261         - incorrectly calculates bss size (no accounting for alignment gaps),
19262         - assumes .data and .bss are in the same segment.
19264         All of these problems and more are solved by finding the bss segment
19265         in PT_LOAD headers, ie. the address range included in p_memsz but not
19266         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
19267         in that address range.
19269         * src/unexelf.c: Delete old ppc comment.
19270         (OLD_PROGRAM_H): Define.
19271         (round_up): Delete.
19272         (unexec): Don't search for bss style sections by name.  Instead,
19273         use the last PT_LOAD header address range covered by p_memsz
19274         but not p_filesz and match any SHT_NOBITS section in that
19275         address range.  Simplify initialization of section header vars.
19276         Don't assume that section headers are above bss segment.  Move
19277         copying of bss area out of section loop.  Align .data2 section
19278         to 1, since it now covers the entire bss area.  For SHT_NOBITS
19279         sections in the bss segment, leave sh_addr and sh_addralign
19280         unchanged, but correct sh_offset.  Clear memory corresponding
19281         to SHT_NOBITS .plt section.  Delete comment and hacks for
19282         sections partly overlapping bss range now that the full range
19283         is properly calculated.  Delete now dead .sbss code.
19284         (Bug#20614)
19286 2015-11-08  Alan Modra  <amodra@gmail.com>
19288         ELF unexec: R_*_NONE relocs
19290         These should be ignored on all targets.
19292         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
19293         not just Alpha.  Comment on reloc size assumption.
19295 2015-11-08  Alan Modra  <amodra@gmail.com>
19297         ELF unexec: _OBJC_ symbols in bss sections
19299         This code assumed that there was only one bss section.  Rather than
19300         checking for a particular index, check the section type.  Also, handle
19301         the possibility that the section was SHT_NOBITS originally and is
19302         unchanged, in which case no clearing is needed (and sh_offset isn't
19303         necessarily valid, which can lead to a wild memset).
19305         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
19306         bss sections.
19308 2015-11-08  Alan Modra  <amodra@gmail.com>
19310         ELF unexec: Symbol table patching
19312         No st_shndx value larger than SHN_LORESERVE should be changed.
19313         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
19314         SHN_LORESERVE.  Error on SHN_XINDEX.
19316 2015-11-08  Alan Modra  <amodra@gmail.com>
19318         ELF unexec: Merge Alpha and MIPS COFF debug handling
19320         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
19321         Don't find .mdebug section index, find the section in the loop.
19322         Allow for unlikely possibility that .mdebug is located at sh_offset
19323         before bss segment, by calculating move from difference in
19324         sh_offset rather than just assuming new_data2_size.  Simplify
19325         cbLineOffset handling.
19327 2015-11-08  Alan Modra  <amodra@gmail.com>
19329         ELF unexec: Tidy code
19331         Separate out some of the more mechanical changes so following patches
19332         are smaller.
19334         * src/unexelf.c (unexec): Rearrange initialization of program
19335         header vars.  Use pointer vars in loops rather than indexing
19336         section header array via macros.  Simplify _OBJC_ sym code
19337         and reloc handling code.
19339 2015-11-08  Alan Modra  <amodra@gmail.com>
19341         ELF unexec: Correct section header index
19343         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
19344         it should have been using "NEW_SECTION_H (nn)" to find the name of the
19345         section currently being processed.  Of course, before the bss
19346         sections, n and nn have the same value, so this doesn't matter except
19347         in the case of .sbss.  For .sbss this probably meant .bss (most likely
19348         the next section) was copied from memory.  A later patch removes the
19349         bogus .sbss handling anyway.
19351         * src/unexelf.c (unexec): Use correct index to look up names.
19353 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
19355         Fix Bug#21841
19357         * lisp/filenotify.el (file-notify--rm-descriptor):
19358         Use `descriptor' instead of computing its value.
19359         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
19360         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
19361         (Bug#21841)
19363 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
19365         Remove dirs in vc project roots from the the vc project library roots
19367         * lisp/progmodes/project.el (project-library-roots):
19368         Remove directories inside the project roots from the result.
19369         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
19371 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
19373         Move and rename xref-find-regexp to the project package
19375         * lisp/progmodes/project.el (project-find-regexp)
19376         (project--read-regexp)
19377         (project--find-regexp-in): New functions.
19379         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
19380         xref--show-xrefs.  Use in existing callers in place of that
19381         function.
19382         (xref--show-xrefs): Only do the "show" part.
19383         (xref-find-regexp): Rename, more or less, to
19384         project-or-libraries-find-regexp.
19386 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
19388         Abolish temporary buffer management for xref
19390         * lisp/progmodes/xref.el (xref--temporary-buffers)
19391         (xref--current)
19392         (xref--inhibit-mark-current)
19393         (xref--mark-selected): Remove.  Remove all references.
19394         (xref--show-xrefs): Do not construct the
19395         list of the temporary buffers, nor pass it along.
19397 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
19399         Rename "search path" to "library roots"
19401         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
19402         of the elements from CL-LIST1.
19404         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
19405         Update WRT to the above change.
19407         * lisp/progmodes/project.el (project-search-path-function): Rename
19408         to project-library-roots-function, update the documentation and
19409         references.
19410         (project-search-path): Likewise, to project-library-roots.
19411         (project-roots): Clarify documentation.
19412         (project-vc-search-path): Likewise, to project-vc-library-roots.
19413         (project-library-roots): In addition to the renames, thread the
19414         results through file-name-as-directory.
19415         (project-prune-directories): Accept a variable number of
19416         arguments.  Rename to project-combine-directories.
19417         (project-subtract-directories): New function.
19419         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
19420         Append project-roots and project-library-roots together.
19422         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
19424 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
19426         Prefer xpalloc to doubling buffers by hand
19428         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
19429         (read1): Use it for simplicity.
19430         * src/macros.c (store_kbd_macro_char):
19431         * src/minibuf.c (read_minibuf_noninteractive):
19432         * src/term.c (encode_terminal_code):
19433         * src/xrdb.c (magic_db):
19434         Prefer xpalloc to growing buffers by hand.
19435         This doesn’t fix any bugs, but simplifies the code a bit.
19437 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
19439         Merge from gnulib
19441         This incorporates:
19442         2015-11-05 timespec-sub: fix overflow bug; add tests
19443         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
19444         2015-11-03 intprops: add parentheses
19445         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
19446         Copy from gnulib.
19448 2015-11-07  David Reitter  <david.reitter@gmail.com>
19450         Provide NS notification objects where required to eliminate warnings
19452         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
19453         Call notification functions with notification objects
19454         as per delegate APIs.
19456 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
19458         Add test for bug #21824
19460         * test/automated/buffer-tests.el: New file.
19461         (overlay-modification-hooks-message-other-buf): New test.
19463 2015-11-07  Kelvin White  <kwhite@gnu.org>
19465         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
19467 2015-11-07  David Reitter  <david.reitter@gmail.com>
19469         Ignore fullscreen exit notifications on NS when frame is dead
19471         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
19472         (windowDidExitFullScreen:): Return if frame is dead.
19473         These functions may be called when a fullscreen frame
19474         is closed; they are called before, not after.
19476         May address Bug#21428.
19478 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
19480         Speed up lookup in redisplay--variables
19482         * lisp/frame.el (redisplay--variables): Make it a hash-table.
19484         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
19485         as a hash-table.  This speeds up this function by an order of
19486         magnitude: where previously a setq was slowed down by 100% by
19487         introducing the maybe_set_redisplay test, it is now only 5%
19488         slower.
19489         (syms_of_xdisp) <redisplay--variables>: Doc fix.
19491 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
19493         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
19495         The defsubst was being created as:
19496             (cl-defsubst name (args) ("DOC") ...)
19498         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
19499         Add test.
19501 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
19503         Update doc string of hexl-mode
19505         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
19507 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
19509         Fix error in copy-abbrev-table
19511         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
19512         property of the abbrev-table.  (Bug#21828)
19514         * test/automated/abbrev-tests.el: New file.
19516 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
19518         Add test to auto-revert-tests.el for Bug#21841
19520         * test/automated/auto-revert-tests.el
19521         (auto-revert-test01-auto-revert-several-files): New test.
19522         (auto-revert-test02-auto-revert-tail-mode)
19523         (auto-revert-test03-auto-revert-mode-dired): Rename them.
19525 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
19527         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
19529 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
19531         In x_consider_frame_title don't set title of tooltip frames
19533         * src/xdisp.c (x_consider_frame_title): Return immediately for
19534         tooltip frames to avoid displaying empty tooltips.
19536 2015-11-06  Anders Lindgren  <andlind@gmail.com>
19538         Fixed NextStep fullscreen problem (bug#21770).
19540         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
19541         fullscreen frames.
19543 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
19545         Ensure redisplay after evaluation
19547         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
19548         Revert last change.
19549         * lisp/frame.el (redisplay--variables): Populate the
19550         redisplay--variables list.
19551         * src/xdisp.c (maybe_set_redisplay): New function.
19552         (syms_of_xdisp) <redisplay--variables>: New variable.
19553         * src/window.h (maybe_set_redisplay): Declare prototype.
19554         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
19556 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
19558         * test/automated/subr-tests.el (subr-test-when): Fix again.
19560 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
19562         Don't invoke overlay modification hooks in wrong buffer
19564         * src/buffer.c (report_overlay_modification): When called with
19565         AFTER non-zero, don't invoke overlay modification hooks if the
19566         buffer recorded in last_overlay_modification_hooks is different
19567         from the current buffer.  (Bug#21824)
19569 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
19571         * admin/notes/repo: Fix a few obsolete references to Bazaar.
19573 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
19575         * test/automated/subr-tests.el (subr-test-when): Fix test.
19577 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
19579         Avoid division by zero crash observed by Yuan MEI
19581         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
19583         * src/dispnew.c (required_matrix_height, required_matrix_width):
19584         Avoid division by zero.
19585         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
19586         dpyinfo->smallest_char_width to 1.
19588 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
19590         Ensure redisplay after "C-x C-e"
19592         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
19593         redisplay happens to account for any side effects of the evaluated
19594         sexp.  (Bug#21835)
19596 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
19598         Skip some file notification tests for cygwin
19600         * test/automated/file-notify-tests.el (file-notify--test-with-events):
19601         Remove argument TIMEOUT.  Adapt all callees.
19602         (file-notify-test02-events, file-notify-test04-file-validity):
19603         Skip for cygwin.  (Bug#21804)
19605 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
19607         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
19609 2015-11-05  Daiki Ueno  <ueno@gnu.org>
19611         Suppress redundant Pinentry startup messages
19613         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
19614         * lisp/epg.el: Declare `pinentry-start'.
19615         (epg--start): Call `pinentry-start' with QUIET argument set.
19617 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
19619         * doc/emacs/ack.texi (Acknowledgments): Updates.
19621 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
19623         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
19624         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
19626 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
19628         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
19629         Add prettification support for \times.
19631 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
19633         * test/automated/process-tests.el: Skip tests when bash is unavailable.
19634         (process-test-sentinel-accept-process-output)
19635         (process-test-sentinel-sit-for): skip-unless bash executable found.
19637 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
19639         Add test for bug #21831
19641         * test/automated/process-tests.el
19642         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
19643         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
19645 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
19647         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
19649         (eieio--generic-static-object-generalizer): Fix typo.
19650         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
19651         like the underlying cause of bug#17852 was fixed in the mean time.
19653 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
19655         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
19657         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
19658         It breaks bootstrapping (duh).
19660 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
19662         * lisp/files.el (report-errors): Obsolete.
19664         (normal-mode, hack-local-variables, dir-locals-find-file):
19665         Use `with-demoted-errors' instead.
19667 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
19669         * lisp/subr.el (when): Use `macroexp-progn'.
19671         * test/automated/subr-tests.el (subr-test-when): New test.
19673 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
19675         * lisp/progmodes/xref.el: Doc fixes.
19676         (xref-make-file-location, xref-make-buffer-location, xref-make)
19677         (xref-make-bogus-location, xref-make-match): Add cross-references.
19678         (xref--insert-xrefs): Fix typo in docstring.
19680 2015-11-04  Anders Lindgren  <andlind@gmail.com>
19682         Render fringe bitmaps correctly on NextStep (bug#21301)
19684         The fringe bitmaps were inverted, the background was not transparent,
19685         the image data was horizontally mirrored, and periodic fringe bitmaps
19686         were not supported.
19688         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
19689         When both background and foreground colors are 0, set the background
19690         alpha channel to 0 (making the background transparent).  When
19691         copying the image data, do this from the most significant bit
19692         (leftmost) to the least (rightmost), to avoid mirroring.
19693         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
19694         Add support for periodic images (e.g. the empty line indicator).
19696 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
19698         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
19700 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
19702         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
19704         * admin/MAINTAINERS: Add thunk.el.
19706 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
19708         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
19710 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
19712         Fix a stupid error in gfilenotify.c
19714         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
19715         if we've got a `deleted' signal AND the file name is the watched one.
19717 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
19719         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
19721         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
19722         Use case-insensitive string compare for file names.
19723         (emacs-test-dir): Add 'downcase' to cause case differences (at
19724         least on my system).
19726 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
19728         flymake-tests.el (warning-predicate-rx-gcc): Fix check
19730         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
19731         Also check that "make" is available, not just "gcc".
19733 2015-11-02  Ken Brown  <kbrown@cornell.edu>
19735         Document behavior of collation on Cygwin
19737         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
19738         expected failure on Cygwin.
19739         * doc/lispref/strings.texi (Text Comparison): Document that
19740         punctuation and whitespace are not ignored for sorting on Cygwin.
19742 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
19744         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
19746 2015-11-01  Glenn Morris  <rgm@gnu.org>
19748         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
19749         (Bug#21794)
19750         * test/automated/f90.el (f90-test-bug21794): New test.
19752 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
19754         Fix incompatibility with TCC in test for bug#18745
19756         * test/automated/process-tests.el (process-test-quoted-batfile):
19757         Remove spaces unrelated to the bug being tested.
19759 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
19761         Improve completion in tramp-gvfs.el
19763         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
19764         Rename from `tramp-zeroconf-parse-service-device-names'.
19765         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
19766         with `tramp-zeroconf-parse-device-names'.
19767         (tramp-gvfs-parse-device-names): New defun.
19768         (top): Use it when `tramp-zeroconf-parse-device-names' is not
19769         applicable.
19771         * lisp/net/tramp.el (tramp-set-completion-function): The argument
19772         could also be a zeroconf service type.
19774 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19776         * lisp/net/ntlm.el: Change version to 2.0.0.
19778 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
19780         Fix bug#21762
19781         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
19782         `eql' instead of `=' to accommodate the case that (syntax-after (point))
19783         returns nil.
19784         * test/automated/python-tests.el (python-indent-inside-paren-7):
19785         New test.
19787 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
19789         * test/automated/python-tests.el: Avoid warnings.
19790         (python-tests-with-temp-buffer, python-tests-with-temp-file):
19791         Bind `python-indent-guess-indent-offset' to nil.
19793 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
19795         * src/alloc.c: Silence compiler warnings.
19796         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
19798 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
19800         * etc/NEWS: Fix js-jsx-mode entry punctuation.
19802 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
19804         Add JSX indentation via js-jsx-mode  (Bug#21799)
19806         * lisp/progmodes/js.el: Add JSX indentation support.
19807         (js--jsx-end-tag-re)
19808         (js--jsx-after-tag-re): New variables.
19809         (js--jsx-find-before-tag)
19810         (js--jsx-indented-element-p)
19811         (js--as-sgml)
19812         (js--expression-in-sgml-indent-line)
19813         (js-jsx-indent-line)
19814         (js-jsx-mode): New functions.
19815         * test/indent/js-jsx.js: New file.
19816         * etc/NEWS: Add information about js-jsx-mode.
19818 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
19820         Minor fix in filenotify.el
19822         * lisp/filenotify.el (file-notify--event-file-name)
19823         (file-notify--event-file1-name): Normalize result with
19824         `directory-file-name'.
19826 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
19828         Avoid errors in redisplay--pre-redisplay-functions
19830         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
19831         use 'bobp', instead compare window-point with 1.  (Bug#21730)
19833 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
19835         Merge from gnulib
19837         This incorporates:
19838         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
19839         2015-10-25 stdalign: port to Sun C 5.9
19840         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
19841         Copy from gnulib.
19843 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
19845         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
19846         (w32_compare_strings): Adjust for the correction.
19848 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
19850         * test/automated/vc-tests.el (vc-test--state)
19851         (vc-test--working-revision, vc-test--checkout-model):
19852         Add result messages.
19854 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19856         * test/automated/faces-tests.el: Add another test
19858 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19860         * lisp/faces.el (faces--attribute-at-point): Fix bug
19861         introduced by previous commit.
19863 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19865         * test/automated/faces-tests.el: New file.
19867 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19869         * lisp/faces.el: Refactor common code and fix a bug.
19870         (faces--attribute-at-point): New function.  Fix a bug when the
19871         face at point is a list of faces and the desired attribute is not
19872         on the first one.
19873         (foreground-color-at-point, background-color-at-point): Use it.
19875 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
19877         * etc/tutorials/TUTORIAL.translators: Fix PL names.
19879 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
19881         * lisp/character-fold.el: Provide `character-fold'.
19883 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
19885         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
19886         for Gnus and ivy.
19888 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
19890         Some minor fixes for tramp-gvfs.el
19892         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
19893         An attribute returned by gvfs-info might be empty.  In case of
19894         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
19895         (tramp-zeroconf-parse-service-device-names): New defun.
19896         Derived from `tramp-zeroconf-parse-workstation-device-names'.
19897         (top): Add completion functions for "afp" and "smb" methods.
19899 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19901         * test/automated/character-fold-tests.el: New file
19903 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19905         * test/automated/sort-tests.el: New file.
19906         Tests in this file are randomly generated and then tested with
19907         regular, reverse, and case-fold sorting.
19909 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
19911         Describe known problems with pinning Emacs to taskbar
19913         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
19914         on Windows 10.  For the details, see the discussion starting at
19915         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
19917 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19919         * lisp/isearch.el: Avoid an error that blocks isearch.
19920         (isearch-update): Don't error if `isearch--current-buffer' has
19921         been killed.
19923         * test/automated/isearch-tests.el (isearch--test-update):
19924         New file.
19926 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
19928         Fix documentation of 'beginning/end-of-buffer'
19930         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
19931         conditions under which the mark will be pushed at the previous
19932         position.  (Bug#21748)
19934 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
19936         Add RefTeX feature idea: editing RefTeX TOC buffers
19938         More face defs for ivy, swiper, ace-window, eshell
19940 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19942         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
19943         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
19944         just VAR.
19945         (auth-source-backend-parse): Use make-instance.
19946         (auth-source-search): Remove unused key args.
19947         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
19948         (auth-source-search-backends): Use slot names rather than their initarg.
19949         (auth-source-netrc-create):
19950         (auth-source-delete):
19951         (auth-source-secrets-create, auth-source-plstore-search)
19952         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
19953         (auth-source-plstore-create, auth-source-netrc-search)
19954         (auth-source-netrc-parse): Remove unused key args.
19955         (auth-source-forget+): Simplify the arglist.
19956         (auth-source-macos-keychain-search-items)
19957         (auth-source-token-passphrase-callback-function): Mark unused args.
19958         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
19959         (pp-escape-newlines): Declare.
19960         (auto-source--symbol-keyword): New function.
19961         (auth-source-plstore-create, auth-source-netrc-create)
19962         (auth-source-netrc-normalize): Use it.
19963         (auth-source-netrc-search): Don't pass :delete to
19964         auth-source-netrc-parse since it doesn't use it.
19965         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
19966         symbol-value to index in keyword args.
19967         (auth-source-macos-keychain-result-append): Avoid setq.
19968         (auth-source-netrc-create): Remove unused vars `file' and `add'.
19969         (auth-source-user-or-password): Remove unused var `cname'.
19971 2015-10-29  Juri Linkov  <juri@linkov.net>
19973         * lisp/dired.el (dired-unmark-all-files-query): Declare.
19974         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
19975         (Bug#21746)
19977 2015-10-29  Juri Linkov  <juri@linkov.net>
19979         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
19980         to go to the beginning of text line instead of command line.
19981         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
19983 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
19985         Fix encoding of saving *Help* buffers
19987         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
19988         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
19990 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19992         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
19993         (cl--generic-derived-specializers): New function.
19994         (cl--generic-derived-generalizer): New generalizer.
19995         (cl-generic-generalizers): New specializer (derived-mode MODE).
19996         (cl--generic-split-args): Apply the rewriter, if any.
19997         (cl-generic-define-context-rewriter): New macro.
19998         (major-mode): Use it to define a new context-rewriter, so we can write
19999         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
20001         * lisp/frame.el (window-system): New context-rewriter so we can write
20002         `(window-system VAL)' instead of (window-system (eql VAL)).
20003         (cl--generic-split-args): Apply the rewriter, if any.
20004         (frame-creation-function): Use the new syntax.
20006         * lisp/term/x-win.el (window-system-initialization)
20007         (handle-args-function, frame-creation-function)
20008         (gui-backend-set-selection, gui-backend-selection-owner-p)
20009         (gui-backend-selection-exists-p, gui-backend-get-selection):
20010         * lisp/term/w32-win.el (window-system-initialization)
20011         (handle-args-function, frame-creation-function)
20012         (gui-backend-set-selection, gui-backend-get-selection)
20013         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
20014         * lisp/term/pc-win.el (gui-backend-get-selection)
20015         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
20016         (gui-backend-set-selection, window-system-initialization)
20017         (frame-creation-function, handle-args-function):
20018         * lisp/term/ns-win.el (window-system-initialization)
20019         (handle-args-function, frame-creation-function)
20020         (gui-backend-set-selection, gui-backend-selection-exists-p)
20021         (gui-backend-get-selection):
20022         * lisp/startup.el (handle-args-function):
20023         * lisp/term/xterm.el (gui-backend-get-selection)
20024         (gui-backend-set-selection): Use the new syntax.
20026 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20028         * test/indent/css-mode.css: Add tests for url(...) syntax.
20030 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20032         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
20033         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
20034         (smie-prec2->grammar): Use `declare'.
20036 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20038         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
20039         (cl--generic-generalizer): Add `name' field.
20040         (cl-generic-make-generalizer): Add corresponding `name' argument.
20041         (cl-generic-define-generalizer): New macro.
20042         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
20043         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
20044         (cl--generic-t-generalizer): Use it.
20045         (cl-generic-ensure-function): Add `noerror' argument.
20046         (cl-generic-define): Use it so we don't follow aliases.
20047         (cl-generic-define-method): Preserve pre-existing ordering of methods.
20048         (cl--generic-arg-specializer): New function.
20049         (cl--generic-cache-miss): Use it.
20050         (cl-generic-generalizers): Only fset a temporary definition
20051         during bootstrap.
20052         (cl--generic-struct-tag, cl--generic-struct-specializers):
20053         Allow extra arguments.
20055         * lisp/emacs-lisp/eieio-compat.el
20056         (eieio--generic-static-symbol-generalizer)
20057         (eieio--generic-static-object-generalizer):
20058         Use cl-generic-define-generalizer.
20059         (eieio--generic-static-symbol-specializers): Allow extra arguments.
20061         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
20062         (eieio--generic-subclass-generalizer):
20063         Use cl-generic-define-generalizer.
20064         (eieio--generic-subclass-specializers): Allow extra arguments.
20066 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20068         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
20070 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
20072         Add "afp" method to Tramp
20074         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
20076         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
20077         (tramp-gvfs-handle-expand-file-name)
20078         (tramp-gvfs-handler-mounted-unmounted)
20079         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
20080         (tramp-gvfs-maybe-open-connection): Support also "afp".
20081         (tramp-gvfs-handle-file-attributes): Handle the case of empty
20082         "owner::user" and "owner::group" entries.
20084 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
20086         Handle negative coordinates in ‘x_calc_absolute_position’
20088         * src/w32term.c (x_calc_absolute_position): Find display origin to
20089         allow for negative coordinates.
20091 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
20093         (internal--syntax-propertize): Save match-data here (bug#21766)
20095         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
20096         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
20098 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
20100         Don't require default-directory to end with a slash
20102         * doc/lispref/files.texi (Magic File Names): Document the change
20103         in unhandled-file-name-directory.
20105         * lisp/url/url-handlers.el
20106         (url-handler-unhandled-file-name-directory): Update accordingly.
20108         * src/buffer.c (default-directory): Update the docsting.
20110         * src/fileio.c (unhandled-file-name-directory): Default to calling
20111         `file-name-as-directory'
20112         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
20114 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20116         * lisp/isearch.el: Delete some outdated comments.
20118 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
20120         Fix eshell/clear not working if the output has a small line count
20122         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
20123         number of newlines to be inserted. This fixes the issue where
20124         eshell/clear wouldn't work if the prompt was not at the bottom of the
20125         window, and the output wasn't too long.
20127 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
20129         * lisp/files.el (write-file): Use vc-refresh-state.
20131         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
20133         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
20135 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
20137         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
20138         (macroexp-unprogn): Make sure we never return an empty list.
20139         (macroexp-if): Remove unused (and unsafe) optimization.
20140         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
20141         occur occasionally.
20143 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
20145         Fix bug#21766 and add test
20146         * lisp/simple.el (delete-trailing-whitespace): Save match data when
20147         calling `skip-syntax-backward'.
20148         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
20149         New test.
20151 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20153         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
20155 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
20157         * src/dispnew.c (init_display): Simplify overflow checking.
20159 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20161         * lisp/character-fold.el (character-fold-to-regexp): Fix case
20162         where string ends in space
20164 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20166         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
20168         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
20170 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20172         * lisp/character-fold.el: Make compatible with lax-whitespace.
20173         (character-fold-to-regexp): Rework internals to play nice with
20174         lax-whitespacing.
20176         When the user types a space, we want to match the table entry for
20177         ?\s, which is generally a regexp like "[ ...]".  However, the
20178         `search-spaces-regexp' variable doesn't "see" spaces inside these
20179         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
20180         manually expose a space).
20182         Furthermore, the lax search engine acts on a bunch of spaces, not
20183         on individual spaces, so if the string contains sequential spaces
20184         like "  ", we need to keep them grouped together like this:
20185         "\\(  \\|[ ...][ ...]\\)".
20187 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20189         * lisp/isearch.el: Refactor momentary messages.
20190         (isearch--momentary-message): New function.
20191         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
20192         (isearch-toggle-invisible): Use it.
20194 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20196         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
20197         (isearch-define-mode-toggle): New macro.
20198         (isearch-toggle-invisible): Rename to
20199         `isearch-define-mode-toggle'.
20200         (isearch-toggle-case-fold, isearch-toggle-invisible)
20201         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
20202         with `isearch-define-mode-toggle'.
20204 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
20206         Avoid using `add-to-list' on a let-local var in tramp-smb.el
20208         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
20209         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
20211 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
20213         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
20214         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
20215         does not exist in XEmacs 21.4.
20217 2015-10-28  Anders Lindgren  <andlind@gmail.com>
20219         Fixed OS X startup crash
20221         Input events started to arrive before ns_term_init() was finished.
20222         Solved by blocking input.  This also seems to correct the "You
20223         can't open the application "Emacs" because it may be damaged or
20224         incomplete" error issued when double-clicking on the Emacs
20225         application.
20227         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
20228         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
20230 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20232         * src/process.c (Fget_buffer_process): Improve docstring.
20233         Document the fact that it doesn't return dead processes.
20235 2015-10-28  Anders Lindgren  <andlind@gmail.com>
20237         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
20239         * src/nsterm.h (struct ns_output): New flag, in_animation.
20240         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
20241         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
20242         in_animation flag around call to "setVisible". Set new tool bar
20243         height before call to setVisible.
20244         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
20245         andColumns:] as this fools the subsequent call to updateFrameSize
20246         from performing the real resize.
20247         (windowDidResize): Don't update anything when in_animation is
20248         non-zero.
20250         Trace output.
20252         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
20253         (EmacsToolbar):
20254         * src/nsterm.m (x_set_window_size, updateFrameSize)
20255         ([EmacsView setRows: andColumns:])
20257 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
20259         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
20261 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
20263         Prettify TeX macros not ending in a word char
20265         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
20266         Prettify macros which don't end in a word character.
20268 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
20270         Pipe Hg commit descriptions through 'tabindent'
20272         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
20273         through 'tabindent'.
20274         (vc-hg-log-view-mode): Set tab-width to 2 locally.
20275         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
20277 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
20279         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
20280         (tramp-smb-handle-directory-files): Use `delete-dups'.
20282         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
20284 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
20286         * lisp/international/ccl.el: Use lexical-binding.
20287         (ccl-compile-if): Remove unused var `false-ic'.
20288         (ccl-compile-write-repeat): Remove unused var `i'.
20289         (ccl-compile-map-single): Remove unused var `id'.
20290         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
20291         dynamic var `ccl-code'.
20293 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
20295         * lisp/json.el (json-new-object): Optimize trivial `list' call.
20297 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
20299         * lisp/help.el: Fix bug with incorrect arglist string.
20300         (help-add-fundoc-usage): Don't mistake a mis-formatted string
20301         for a list.
20303 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
20305         * lisp/gnus/gnus-topic.el: Silence some warnings.
20306         (gnus-topic-prepare-topic): Remove unused var `topic'.
20307         (gnus-topic-remove-topic): Mark unused arg `hide'.
20308         (gnus-tmp-header): Declare.
20309         (gnus-topic-goto-missing-group): Remove unused var `entry'.
20310         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
20311         (gnus-topic-copy-matching): Mark unused arg `copyp'.
20312         Move initialization of `topic' into its declaration.
20314 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
20316         Minor CEDET fixes
20318         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
20319         Handle warnings from gtags about invalid options.
20320         (cedet-gnu-global-create/update-database): Do incremental update
20321         properly.
20323         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
20324         Get monotone root right.
20326 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
20328         Fall back to polling in autorevert when needed
20330         * lisp/autorevert.el (auto-revert-notify-handler): When a
20331         `stopped' event arrives from file notification, fall back to polling.
20333         * test/automated/file-notify-tests.el
20334         (file-notify-test03-autorevert): Extend test for polling when file
20335         notification ceases to work.
20337 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
20339         Show full commit messages in 'hg log' when appropriate
20341         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
20342         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
20343         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
20345 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
20347         Use a plain SVG file for the icon
20349         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
20350           format instead of the Inkscape SVG format.
20352 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
20354         Fix subtle bug in auto-revert-tests.el
20356         * test/automated/auto-revert-tests.el
20357         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
20358         buffer where it belongs to.  (Bug#21668)
20360 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
20362         * lisp/emacs-lisp/map.el: Better docstrings.
20364         * lisp/emacs-lisp/seq.el: Better docstrings.
20366         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
20368 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
20370         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
20372 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
20374         Clarify that load-path contents should be directory file names
20376         * doc/lispref/files.texi (Directory Names): Define and use "directory
20377         file name".  Recommend `expand-file-name'.
20379         * src/lread.c (load-path): Fix doc string; elements are directory file
20380         names.
20382 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
20384         Fix simple-test.el test
20386         * test/automated/simple-test.el (simple-test--dummy-buffer):
20387         Make sure indentation doesn't use TABs, otherwise the 6th test
20388         might fail.
20390 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
20392         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
20393         `substring' does not account for full width characters.
20395 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
20397         Further work on `stopped' events in filenotify.el
20399         * doc/lispref/os.texi (File Notifications): Rework examples.
20401         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
20402         (file-notify--rm-descriptor, file-notify-callback): Improve check
20403         for sending `stopped' event.
20404         (file-notify-add-watch): Check for more events for `inotify'.
20406         * test/automated/file-notify-tests.el
20407         (file-notify--test-expected-events): New defvar.
20408         (file-notify--test-with-events): Use it.
20409         (file-notify--test-cleanup): Make it more robust when deleting
20410         directories.
20411         (file-notify--test-event-test): Check also for watched directories.
20412         (file-notify--test-event-handler): Suppress temporary .#files.
20413         (file-notify-test02-events, file-notify-test04-file-validity):
20414         Rework `stopped' events.
20415         (file-notify-test05-dir-validity): Wait for events when appropriate.
20417 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
20419         * src/keyboard.c (post-command-hook): Shorten docstring.
20421 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
20423         Fix infinite loop in sh-script's SMIE code
20425         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
20426         loop (bug#21747).
20428 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20430         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
20431         Character-fold search _still_ doesn't play well with
20432         lax-whitespace.  So disable it by default (again) for now.
20434 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20436         * lisp/isearch.el: No visual feedback for default search mode.
20437         During an isearch where character-folding is the default, we don't
20438         want to take up minibuffer space just to tell the user that
20439         "Char-fold " is on.  The same goes for other modes, if the user
20440         changes the default.  In contrast, if the user toggles OFF the
20441         default mode, they should see "Literal", to distinguish it from
20442         the default mode.
20443         (isearch--describe-regexp-mode): Return "" if describing the
20444         default mode, and return "literal " if describing a plain search
20445         and it is not default.
20447 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20449         * test/automated/simple-test.el: New file.
20450         Define tests for `newline' and `open-line'.
20452 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20454         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
20455         Also run `post-self-insert-hook' when called interactively.
20457 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20459         * lisp/simple.el (open-line): Fix docstring.
20460         Also explain apparently redundant line.
20462 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
20463             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
20465         Sync with soap-client repository, version 3.0.1
20467         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
20468         Bump version to 3.0.1.
20470         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
20472 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
20474         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
20476 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20478         * src/keyboard.c (post-command-hook): Extend the docstring.
20479         Mainly, explain how to use it without hanging Emacs, or giving the
20480         impression that it is hanging.  Also mention `pre-command-hook'.
20481         (pre-command-hook): Mention `post-command-hook'.
20483 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20485         * lisp/custom.el (custom-declare-variable): Shorten code again.
20486         Without using pcase this time.  We can't use pcase because it is
20487         loaded after custom in loadup.el.  Also add a comment explaining
20488         this to future dummies like me.
20490 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
20492         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
20494 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
20496         Introduce `stopped' event in file notification
20498         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
20499         (file-notify-rm-watch): Use it.
20500         (file-notify-callback): Implement `stopped' event.
20501         (file-notify-add-watch): Mention `stopped' in the docstring.
20502         Check, that upper directory exists.
20504         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
20505         Add two test cases.
20506         (file-notify-test02-events): Handle also `stopped' event.
20507         (file-notify-test04-file-validity): Add another test case.
20509 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
20511         Revert commit that broke 'make bootstrap'
20513         * lisp/custom.el (custom-declare-variable): Revert commit
20514         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
20515         even when pcase has not been defined yet, when doing bootstrapping.
20517 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
20519         Port recent inline functions fix to Standard C
20521         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
20522         All uses rewritten to define the function directly rather than to
20523         use a macro to define the function.  This conforms to Standard C,
20524         which does not allow stray semicolons at the top level.  I hope it
20525         also avoids the problems with TAGS.  Those macros, though clever,
20526         were pretty confusing anyway, and it wasn’t clear they were worth
20527         the aggravation even without the TAGS problem.
20529 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20531         * lisp/isearch.el: Make character-fold search the default again.
20533 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20535         * lisp/character-fold.el: Many improvements.
20536         (character-fold-search-forward, character-fold-search-backward):
20537         New command.
20538         (character-fold-to-regexp): Remove lax-whitespace hack.
20539         (character-fold-search): Remove variable.  Only isearch and
20540         query-replace use char-folding, and they both have their own
20541         variables to configure that.
20543 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20545         * lisp/isearch.el: Generalize definition of regexp-function toggles.
20546         (isearch-specify-regexp-function): New macro for specifying
20547         possible values of `isearch-regexp-function'.
20548         (isearch-toggle-character-fold, isearch-toggle-symbol)
20549         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
20551 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20553         * lisp/isearch.el (search-default-regexp-mode): New variable.
20554         (isearch-mode): Use it.
20556 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20558         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
20559         (search-slow-speed, search-upper-case)
20560         (search-nonincremental-instead, search-whitespace-regexp)
20561         (search-invisible, isearch-hide-immediately)
20562         (isearch-resume-in-command-history, search-ring-max)
20563         (regexp-search-ring-max, search-ring-update, search-highlight)
20564         (isearch-fail): Delete :group entries.
20566 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20568         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
20570 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
20572         addpm.c: Silence some warnings.
20574         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
20575         to LPBYTE.
20576         (add_registry): Pass NULL to optional lpClass argument of
20577         RegCreateKeyEx, not an empty string.
20579 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
20581         addpm.c: Do not add obsolete GTK libraries to the path.
20583         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
20584         (add_registry): Remove variables `size' and `gtk_key'.
20585         Do not add the GTK DLL directory to the library search path; it is
20586         confusing behavior (in particular, the same Emacs version with and
20587         without invoking addpm will use a different path), and the GTK image
20588         libraries are obsolete anyway.
20590 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
20592         addpm.c: Replace existing registry entries, but do not create new ones
20594         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
20595         existing values from previous versions, but do not add new ones; the
20596         key could exist for other reasons unrelated to old Emacsen, like X-style
20597         resources, or to set some environment variables like HOME or LANG, and
20598         in that case we don't want to populate it with obsolete values.
20600 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
20602         * nt/addpm.c (add_registry): Do not compute unused return value.
20604 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
20606         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
20608         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
20609         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
20610         current behavior because REG_OPTION_NON_VOLATILE is defined to
20611         be 0L anyway, but that option is actually documented only for
20612         RegCreateKeyEx.
20614 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
20616         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
20618 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
20620         Update frame title when redisplay scrolls selected window
20622         * src/xdisp.c (redisplay_window): Reconsider the frame's title
20623         when the mode-line of the frame's selected window needs to be
20624         updated.
20626 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
20628         Update frame title when scrolling the selected window
20630         * src/window.c (wset_update_mode_line): New function, sets either
20631         the window's update_mode_line flag or the global update_mode_lines
20632         variable.
20633         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
20634         (window_scroll_line_based): Call it instead of only setting the
20635         window's update_mode_line flag.
20637 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
20639         An even better fix for bug#21739
20641         * src/window.c (set_window_buffer): If the window is the frame's
20642         selected window, set update_mode_lines, not the window's
20643         update_mode_line flag.
20644         * src/buffer.c (Fkill_buffer): Undo last change.
20645         (set_update_modelines_for_buf): Function deleted.
20647 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
20648             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
20650         Sync with soap-client repository, version 3.0.0
20652         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
20653         Bump version to 3.0.0.
20655         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
20657         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
20659         * lisp/net/soap-inspect.el: Shorten first line description.
20661         * lisp/net/soap-client.el: Make a small whitespace fix.
20663         * lisp/net/soap-inspect.el: Update copyright years.
20665         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
20666         first use in soap-encode-xs-element.
20668         * lisp/net/soap-client.el (soap-type-is-array?): new defun
20669         (soap-encode-xs-element): handle array elements in this function
20670         (soap-encode-xs-complex-type): flag error if asked to encode an
20671         array type, this is handled in `soap-encode-xs-element'
20673         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
20674         Do not print type for attribute group.
20676         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
20677         New function.
20678         (soap-inspect-xs-attribute-group): Likewise.
20680         * lisp/net/soap-inspect.el
20681         (soap-resolve-references-for-xs-attribute-group): Resolve
20682         references of attributes in an attribute group.
20684         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
20685         type directly, not through soap-wsdl-get.
20687         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
20688         nil if reference attribute is nil.
20690         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
20691         Convert XML schema attributes to xsd:string.
20693         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
20694         New function.
20695         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
20696         (soap-sample-value-for-xs-complex-type): Likewise.
20697         (soap-inspect-xs-attribute): New function.
20698         (soap-inspect-xs-simple-type): Print attributes.
20699         (soap-inspect-xs-complex-type): Likewise.
20701         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
20702         Resolve references for attributes.
20703         (soap-resolve-references-for-xs-complex-type): Likewise.
20705         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
20706         Rename from soap-xml-node-first-child.
20707         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
20708         (soap-xs-parse-simple-type): Likewise.
20710         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
20712         * lisp/net/soap-client.el (soap-invoke-internal): New function.
20713         (soap-invoke-async): Call soap-invoke-internal.
20714         (soap-invoke): Likewise.
20716         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
20717         url-retrieve callback is killed.
20719         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
20720         Rename function.
20721         (soap-parse-wsdl-phase-fetch-imports): Likewise.
20722         (soap-parse-wsdl-phase-parse-schema): Likewise.
20723         (soap-parse-wsdl-phase-fetch-schema): Likewise.
20724         (soap-parse-wsdl-phase-finish-parsing): Likewise.
20725         (soap-parse-wsdl): Update calls.
20727         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
20729         * lisp/net/soap-client.el (soap-invoke-async): New function.
20730         (soap-invoke): Reimplement using soap-invoke-async.
20732         * lisp/net/soap-client.el (soap-parse-server-response):
20733         Improve docstring.
20734         (soap-invoke): Inline call to soap-parse-server-response.
20736         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
20737         Prevent incorrect warning.
20739         * lisp/net/soap-client.el (soap-parse-server-response):
20740         Rename soap-process-url-response.  Destroy the mime part.
20741         (soap-invoke): Call soap-parse-server-response.
20743         * lisp/net/soap-client.el: Update copyright date.
20745         * lisp/net/soap-client.el: Fix checkdoc issues.
20747         * lisp/net/soap-client.el: Fix indentation and long lines.
20749         * lisp/net/soap-client.el (soap-time-format): Remove variable.
20750         (soap-encode-xs-basic-type): Simplify date-time format detection.
20751         (soap-decode-xs-basic-type): Remove soap-time-format support.
20753         * lisp/net/soap-client.el (soap-process-url-response): New function.
20754         (soap-fetch-xml-from-url): Call soap-process-url-response.
20755         (soap-parse-wsdl-phase-1): New function.
20756         (soap-parse-wsdl-phase-2): Likewise.
20757         (soap-parse-wsdl-phase-3): Likewise.
20758         (soap-parse-wsdl-phase-4): Likewise.
20759         (soap-parse-wsdl-phase-5): Likewise.
20760         (soap-parse-wsdl): Call phase functions.
20762         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
20763         Remove one-argument and call.
20765         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
20767         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
20768         (soap-parse-schema): Add wsdl argument.  Look up XML schema
20769         imports from wsdl.
20770         (soap-load-wsdl): Do not set soap-xmlschema-imports.
20771         (soap-parse-wsdl): Get XML schema imports from wsdl.
20773         * lisp/net/soap-client.el (soap-current-file): Remove variable.
20774         (soap-wsdl): Add current-file slot.
20775         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
20776         file from wsdl.
20777         (soap-fetch-xml-from-file): Likewise.
20778         (soap-fetch-xml): Likewise.
20779         (soap-load-wsdl): Always create wsdl object first.
20780         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
20782         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
20783         (soap-xs-parse-element): Set is-group slot.
20784         (soap-resolve-references-for-xs-element): Skip is-group elements.
20785         (soap-xs-complex-type): Add is-group slot.
20786         (soap-xs-parse-complex-type): Set is-group slot.
20787         (soap-xs-parse-sequence): Parse xsd:group elements.
20788         (soap-resolve-references-for-xs-complex-type): Inline elements
20789         from referenced xsd:group nodes.
20790         (soap-parse-schema): Parse xsd:group nodes.
20792         * lisp/net/soap-client.el (soap-invoke):
20793         Don't set url-http-version to 1.0.
20795         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
20796         Allow choice nodes to accept multiple values.
20798         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
20799         for extra header values.
20801         * lisp/net/soap-client.el (soap-well-known-xmlns):
20802         Add wsa and wsaw tags.
20803         (soap-operation): Add input-action and output-action slots.
20804         (soap-parse-operation): Parse wsaw:Action nodes.
20805         (soap-encode-body): Encode service-url for WS-Addressing.
20806         (soap-create-envelope): Likewise.
20807         (soap-invoke): Update soap-create-envelope call to provide
20808         service-url argument.
20810         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
20811         Support xsi:type override attribute.
20812         (soap-decode-array): Likewise.
20814         * lisp/net/soap-client.el (soap-parse-schema):
20815         Handle location attribute.
20817         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
20818         matched validation regexp.
20820         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
20821         Encode xsd:list nodes.
20822         (soap-decode-xs-simple-type): Decode xsd:list nodes.
20824         * lisp/net/soap-client.el (soap-get-candidate-elements):
20825         Fix reference handling.
20827         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
20828         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
20829         (soap-xs-add-list): New function.
20831         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
20832         expected, interpret nil as "false".
20834         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
20835         gYear, gMonthDay, gDay and gMonth.
20837         * lisp/net/soap-client.el (soap-time-format): New variable.
20838         (soap-encode-xs-basic-type): Handle dateTime, time, date,
20839         gYearMonth, gYear, gMonthDay, gDay and gMonth.
20840         (soap-decode-date-time): New function.
20841         (soap-decode-xs-basic-type): Use soap-decode-date-time.
20843         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
20844         after encoding.
20845         (soap-decode-xs-basic-type): Validate value before decoding.
20847         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
20848         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
20850         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
20851         instead of overwriting it.
20852         (soap-validate-xs-simple-type): Add union support.
20854         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
20855         to Emacs regexp using xsdre-translate.
20856         (soap-validate-xs-simple-type): Validate value against pattern.
20858         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
20859         inline simpleType nodes.
20860         (soap-decode-type): Handle union types.
20862         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
20863         attributes.
20865         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
20866         from soap-xs-attribute-group-consolidate, all callers updated
20867         (soap-get-xs-attributes): Rename from
20868         soap-xs-attributes-consolidate, all callers updated
20870         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
20871         (soap-xs-attribute-group): New type.
20872         (soap-xs-parse-attribute-group): New function.
20873         (soap-resolve-references-for-xs-attribute-group): Likewise.
20874         (soap-xs-add-extension): Handle attribute groups.
20875         (soap-resolve-references-for-xs-simple-type): Likewise.
20876         (soap-xs-parse-complex-type): Likewise.
20877         (soap-xs-parse-extension-or-restriction): Likewise.
20878         (soap-resolve-references-for-xs-complex-type): Likewise.
20879         (soap-xs-attribute-group-consolidate): New function.
20880         (soap-xs-attributes-consolidate): Handle attribute groups.
20881         (soap-parse-schema): Likewise.
20883         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
20884         Fix boolean encoding.
20886         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
20887         element names in warnings.
20889         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
20891         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
20892         Eliminate invalid warnings for choice types.
20894         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
20895         Also encode base type attributes.
20897         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
20898         warning.  Print e-name in warnings, or element if e-name is nil.
20900         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
20901         (soap-xs-parse-element): Set substitution-group.
20902         (soap-resolve-references-for-xs-element): Populate alternatives slot.
20903         (soap-get-candidate-elements): New function.
20904         (soap-encode-xs-complex-type): Iterate through all candidate elements.
20905         Handle types with nil type indicator.  Fix warning logic.
20907         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
20908         earlier in the file to prevent compiler warning.
20910         * lisp/net/soap-client.el (soap-node-optional): New function.
20911         (soap-node-multiple): Likewise.
20912         (soap-xs-parse-element): Call soap-node-optional and
20913         soap-node-multiple.
20914         (soap-xs-complex-type): Add optional? and multiple? slots.
20915         (soap-xml-get-children-fq): New function.
20916         (soap-xs-element-get-fq-name): Likewise.
20917         (soap-xs-complex-type-optional-p): Likewise.
20918         (soap-xs-complex-type-multiple-p): Likewise.
20919         (soap-xs-attributes-consolidate): Likewise.
20920         (soap-decode-xs-attributes): Likewise.
20921         (soap-decode-xs-complex-type): Decode types with nil type indicator.
20922         Support children that use local namespaces.  Decode attributes.
20923         Add type considerations to optional? and multiple? warnings.
20925         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
20926         Store parsed attributes.
20927         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
20929         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
20930         Don't add the xsi:type attribute (Exchange refuses requests which have
20931         this attribute).
20933         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
20934         correct compiler warnings about unused function arguments and
20935         local variables.
20937         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
20938         type indicator.
20939         (soap-parse-envelope): Handle response headers.
20940         (soap-parse-response): Likewise.  Only return non-nil decoded values.
20942         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
20943         Return validated value.
20945         * lisp/net/soap-client.el (soap-xs-parse-element)
20946         (soap-xs-parse-simple-type)
20947         (soap-xs-parse-complex-type)
20948         (soap-parse-message)
20949         (soap-parse-operation): Add the current namespace to the element
20950         being created.
20951         (soap-resolve-references-for-xs-element)
20952         (soap-resolve-references-for-xs-simple-type)
20953         (soap-resolve-references-for-xs-complex-type)
20954         (soap-resolve-references-for-operation): Resolve the namespace to
20955         the namespace tag.
20956         (soap-make-wsdl): specify a namespace tag when creating the xsd
20957         and soapenc namespaces
20958         (soap-wsdl-resolve-references): don't update namespace tags in
20959         elements here
20960         (soap-parse-port-type): bind the urn: to soap-target-xmlns
20961         (soap-encode-body): don't add nil namespace tags to
20962         soap-encoded-namespaces
20964         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
20965         for registering the soap-inspect method.  Make debbugs tests pass.
20966         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
20967         type name, also skip string only nodes when decoding a structure.
20968         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
20969         types too.
20970         (soap-encode-body): Grab the header value from the param table.
20972         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
20973         New function.
20974         (soap-encode-xs-element): Don't encode nil value unless needed.
20976         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
20977         (soap-parse-binding): Parse the message parts required in the body.
20978         (soap-encode-body): Encode only the parts that are declared to be
20979         part of the body.
20981         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
20982         when writing out the tag.
20983         (soap-encode-body): Remove hack that inserts the xmlns in the
20984         element attributes list.
20986         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
20987         (soap-xs-parse-attribute): Default slot is set from the XML
20988         "fixed" attribute.
20989         (soap-encode-xs-complex-type-attributes): Encode any attributes
20990         that have a default value.  Also, don't put the xsi:nil attribute
20991         when the complex type has no content anyway.
20993         * lisp/net/soap-client.el (soap-well-known-xmlns):
20994         Add the xml namespace.
20995         (soap-local-xmlns): Start with the xml namespace.
20996         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
20997         (soap-make-xs-basic-types): More xsd types added.
20998         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
20999         Handle "language", "time", "date", "nonNegativeInteger".
21000         (soap-resolve-references-for-xs-element): Don't signal an error if
21001         the element does not have a type.
21002         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
21003         added stum for xsd:list.
21004         (soap-xs-add-union): Call soap-l2fq on all union members.
21005         (soap-xs-add-extension): Call soap-l2fq on the base member.
21006         (soap-resolve-references-for-xs-simple-type): Don't signal an
21007         error if the simple type has no base.
21008         (soap-resolve-references-for-xs-simple-type): Bugfix, call
21009         soap-wsdl-get on each type of the base.
21011         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
21012         Referenced type can be eiher a simple type or a basic type.
21013         (soap-xs-add-restriction)
21014         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
21015         (soap-make-xs-basic-types)
21016         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
21017         Add support for more XMLSchema basic types.
21018         (soap-current-file, soap-xmlschema-imports): New defvars.
21019         (soap-parse-schema): Add locations from xsd:import tags to
21020         `soap-xmlschema-imports'.
21021         (soap-wsdl): Make destructor private.
21022         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
21023         (soap-wsdl-add-alias): Check if we try to replace aliases.
21024         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
21025         (soap-fetch-xml): New defuns.
21026         (soap-load-wsdl): Update to load the WSDL from either a file or
21027         an url.
21028         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
21029         (soap-parse-wsdl): Process wsdl:import tags and imports from
21030         `soap-xmlschema-imports'.
21031         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
21032         symbol-name.
21033         (soap-l2fq): Make the name part always a string.
21034         (soap-name-p): New defun, used for name tests.
21036         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
21037         Supply sample values for choice types with a special tag.
21038         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
21039         Handle anonymous elements correctly.
21040         (soap-encode-value): Accept nodes that have no namespace tag.
21042         * lisp/net/soap-client.el (soap-invoke): Encode the string for
21043         `url-request-data' as UTF-8.  Fixes issue 16.
21045 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
21047         Update the new icon
21049         Move the E slightly to the right in the circle.
21051         * etc/images/icons/hicolor/128x128/apps/emacs.png:
21052         * etc/images/icons/hicolor/16x16/apps/emacs.png:
21053         * etc/images/icons/hicolor/24x24/apps/emacs.png:
21054         * etc/images/icons/hicolor/32x32/apps/emacs.png:
21055         * etc/images/icons/hicolor/48x48/apps/emacs.png:
21056         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
21057         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
21058         * nt/icons/emacs.ico: New icom update.
21060 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
21062         Avoid missing inline functions from lisp.h in TAGS
21064         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
21065         need to end each invocation with a semi-colon.
21066         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
21067         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
21068         inline functions defined immediately after each invocation, and
21069         also avoid tagging every invocation of these macros.
21071 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
21073         A better fix for bug#21739
21075         * src/buffer.c (set_update_modelines_for_buf): New function.
21076         (Fkill_buffer): Use it to set the global variable
21077         update_mode_lines if the killed buffer was displayed in some
21078         window.  Don't set windows_or_buffers_changed.  This is a better
21079         fix for bug#21739 than the previous fix, since it will cause only
21080         redisplay of mode lines, not of entire windows, but will still
21081         catch attention of x_consider_frame_title in xdisp.c, which
21082         redraws the frame title.
21084 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
21086         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
21087         tar.bz2 and tar.xz archives.
21089 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
21091         Fix infloop in redisplay introduced by a recent change
21093         * src/xdisp.c (redisplay_internal): Avoid inflooping when
21094         redisplaying the selected window sets the selected frame's
21095         redisplay flag.  (Bug#21745)
21097 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
21099         * lisp/emacs-lisp/thunk.el: Better documentation.
21101 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
21103         Replace the old icon for Windows and Mac OSX
21105         * nt/icons/emacs.ico:
21106         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
21107         Use the new icons.
21109 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
21111         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
21112         `load-path' should contain only directory names.
21114 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
21116         New library thunk.el
21118         thunk.el is extracted from stream.el in ELPA, with additional tests.
21120         * lisp/emacs-lisp/thunk.el: New file.
21121         * test/automated/thunk-tests.el: New file.
21122         * etc/NEWS: Add information about thunk.el
21124 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
21126         Fix bug#21669
21128         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
21129         calling low-level functions.
21131         * test/automated/file-notify-tests.el (file-notify--test-timeout):
21132         Decrase to 6 seconds for remote directories.
21133         (file-notify-test02-events): Expect different number of
21134         `attribute-changed' events for the local and remote cases.  Apply
21135         short delays between the operations, in order to receive all
21136         events in the remote case.  Combine `attribute-change' tests.
21137         (Bug#21669)
21139 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
21141         Decode the HTML source when displaying it in EWW
21143         * lisp/net/eww.el (eww-view-source): Decode the HTML source
21144         according to its headers.
21146 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
21148         New default icon
21150         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
21151         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
21152         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
21153         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
21154         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
21155         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
21156         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
21157         Move the old logo files to emacs23.*.
21158         * etc/images/icons/hicolor/128x128/apps/emacs.png:
21159         * etc/images/icons/hicolor/16x16/apps/emacs.png:
21160         * etc/images/icons/hicolor/24x24/apps/emacs.png:
21161         * etc/images/icons/hicolor/32x32/apps/emacs.png:
21162         * etc/images/icons/hicolor/48x48/apps/emacs.png:
21163         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
21164         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
21165         New files.
21166         * etc/images/icons/README: Update the copyright information.
21168 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
21170         Fix redisplay of frame title when current buffer is killed
21172         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
21173         non-zero value, to redisplay more than just the affected windows.
21174         (Bug#21739)
21176 2015-10-23  Anders Lindgren  <andlind@gmail.com>
21178         NextStep maximization and NSTRACE rewrite
21180         Full-height, full-width, and maximized windows now cover the
21181         entire screen (except the menu bar), including the part where the
21182         system dock is placed.  The system zoom animation is no longer
21183         used.
21185         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
21186         original size.
21188         * src/nsterm.m (ns_menu_bar_height): New function, return height of
21189         the menu bar, or 0 when it's hidden.
21190         (constrain_frame_rect): New function for constraining a frame.
21191         (ns_constrain_all_frames): Set frame size explicitly rather than
21192         relying on the system doing it for us by writing back the current
21193         frame size.
21194         (windowWillUseStandardFrame): Register non-maximized width or
21195         height as new user size.  When entering full width or height,
21196         the other size component is taken from the user size.
21197         (fullscreenState): New method for accessing the fullscreen state.
21198         (constrainFrameRect): Restrict frame to be placed under the menu bar,
21199         if present.  The old version, sometimes, restricted the height of a
21200         frame to the screen, this version never does this.
21201         (zoom): Perform zoom by setting the frame to the full size of the
21202         screen (minus the menu bar).  The default system function, with the
21203         zoom animation, is no longer used, as the final frame size doesn't
21204         cover the entire screen.
21206         Rework how to constrain resizing to the character grid.  The old
21207         system used "resizeIncrements" in NSWindows.  However, once a frame
21208         was resized so that it was not aligned to the text grid, it
21209         remained unaligned even after a resize.  In addition, it conflicted
21210         when resizing a fullheight window.
21212         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
21213         unless when pixelwise frame resizing is enabled.
21214         (updateFrameSize, initFrameFromEmacs)
21215         (toggleFullScreen, handleFS): Don't set resizeIncrements.
21217         Redesign the NS trace system.  The call structure is represented
21218         using indentations and vertical lines.  The NSTRACE macro accepts
21219         printf-style arguments.  New macros for printing various
21220         information.
21222         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
21223         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
21224         block (typically a function), accept printf-style arguments.
21225         (NSTRACE_MSG): Macro for extra information, accepts
21226         printf-style arguments.
21227         (NSTRACE_what): Macros for printing various types.
21228         (NSTRACE_FMT_what): Macro with printf format string snippets.
21229         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
21230         corresponds to NSTRACE_FMT_what.
21231         (NSTRACE_RETURN): Macro to print return value, accept
21232         printf-style arguments.
21233         (NSTRACE_RETURN_what): Macros to print return value for
21234         various types.
21236         * src/nsterm.m: Remove old NSTRACE macro
21237         * src/nsterm.m (nstrace_num): Trace counter.
21238         (nstrace_depth): Current call depth.
21239         (nstrace_leave): NSTRACE support function, called when the
21240         local variable "nstrace_enabled" goes out of scope using the
21241         "cleanup" extension.
21242         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
21243         (constrain_frame_rect, ns_constrain_all_frames)
21244         (ns_update_auto_hide_menu_bar, ns_update_begin)
21245         (ns_update_window_begin, update_window_end, ns_update_end)
21246         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
21247         (ns_frame_rehighlight, x_make_frame_visible)
21248         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
21249         (x_destroy_window, x_set_offset, x_set_window_size)
21250         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
21251         (ns_defined_color, frame_set_mouse_pixel_position)
21252         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
21253         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
21254         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
21255         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
21256         (dumpcursor, ns_draw_vertical_window_border)
21257         (ns_draw_window_divider, ns_draw_relief)
21258         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
21259         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
21260         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
21261         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
21262         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
21263         (ns_create_terminal, ns_term_init, sendEvent)
21264         (applicationDidFinishLaunching, applicationDidBecomeActive)
21265         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
21266         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
21267         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
21268         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
21269         (mouse_autoselect_window, in_window, mouseDragged)
21270         (rightMouseDragged, otherMouseDragged, windowShouldClose)
21271         (updateFrameSize, windowWillResize, windowDidResize)
21272         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
21273         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
21274         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
21275         (windowDidEnterFullScreen, windowWillExitFullScreen)
21276         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
21277         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
21278         (draggingEntered, performDragOperation, validRequestorForSendType)
21279         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
21280         (EmacsScroller_initFrame, EmacsScroller_setFrame)
21281         (EmacsScroller_dealloc, condemn, reprieve, judge)
21282         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
21283         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
21285         * src/nsfns.m: Remove old NSTRACE macro
21286         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
21287         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
21288         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
21290         * src/nsimage.m: Remove old NSTRACE macro
21291         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
21292         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
21294         * src/nsmenu.m: Remove old NSTRACE macro
21295         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
21296         Use new trace system.
21298 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
21300         No need to use eval-and-compile
21302         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
21303         autoload epg functions.
21305 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
21307         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
21309         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
21310         epg-context-set-passphrase-callback, epg-decrypt-string, and
21311         epg-encrypt-string; require epg when compiling for the setf-method
21312         for epg-context-armor. (bug#21724)
21314 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
21316         Include file cleanup for w32 files in src directory
21318         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
21319         fontset.h, blockinput.h.
21320         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
21321         charset.h, fontset.h.
21322         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
21323         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
21324         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
21325         in an ifdef-ed away block.
21326         Include fcntl.h for CYGWIN.
21327         (set_frame_param): Remove unused function.
21328         * src/w32select.c: Don't include charset.h and composite.h.
21329         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
21330         due to pointer signedness mismatches.
21331         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
21332         due to pointer signedness mismatches.
21333         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
21334         process.h, dispextern.h.
21335         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
21336         (Fw32_application_type): Avoid compiler warnings due to pointer
21337         signedness mismatches.
21338         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
21339         character.h, charset.h, dispextern.h.
21340         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
21341         to pointer signedness mismatches.
21342         * src/w32inevt.c: Don't include dispextern.h, window.h,
21343         termhooks.h, w32heap.h.
21344         * src/w32font.c: Don't include dispextern.h, character.h,
21345         charset.h, fontset.h, font.h.
21346         (intern_font_name, add_font_entity_to_list)
21347         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
21348         (list_all_matching_fonts): Avoid compiler warnings due to pointer
21349         signedness mismatches.
21350         * src/w32fns.c: Don't include character.h, intervals.h,
21351         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
21352         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
21353         (w32_color_map_lookup, add_system_logical_colors_to_map)
21354         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
21355         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
21356         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
21357         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
21358         compiler warnings, mainly due to pointer signedness mismatches.
21359         (unwind_create_frame_1): Remove unused function.
21360         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
21361         window.h, termhooks.h, dispextern.h.
21362         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
21363         signedness mismatch.
21364         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
21365         w32heap.h.
21367 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
21369         Improve doc-view wrt. auto-revert-mode
21371         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
21372         is corrupted (bug#21729).
21373         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
21375 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
21377         Describe dired-do-compress-to in the manual
21379         * etc/NEWS: Update.
21381         * lisp/dired-aux.el: Fix typo.
21383         * doc/emacs/dired.texi: Add entry.
21385 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
21387         Further fix for proper locale handling in tramp-gvfs.el
21389         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
21390         Just suppress LC_MESSAGES locale category settings.
21392 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
21394         New lispref section “Security Considerations”
21396         This attempts to document some of the issues recently discussed
21397         on emacs-devel, and to indicate other such issues.  The section
21398         could be a lot longer.
21399         * doc/lispref/os.texi (Security Considerations):
21400         New node.
21401         * doc/lispref/elisp.texi (Top):
21402         * doc/lispref/processes.texi (Shell Arguments):
21403         * lisp/subr.el (shell-quote-argument):
21404         * src/callproc.c (syms_of_callproc):
21405         Reference it.
21407 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
21409         Merge from gnulib
21411         This incorporates:
21412         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
21413         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
21414         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
21415         Copy from gnulib.
21417 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
21419         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
21420         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
21422 2015-10-21  Ken Brown  <kbrown@cornell.edu>
21424         Further include-file cleanup
21426         * src/sheap.c: Include stdlib.h.
21427         * src/unexcw.c: Include string.h.
21429 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
21431         Fix logic in 'server-kill-emacs-query-function'
21433         * lisp/server.el (server-kill-emacs-query-function): Correct the
21434         logic that controls whether the user is asked for confirmation.
21435         (Bug#21723)
21437 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
21439         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
21440         (isearch--lax-regexp-function-p): New function.
21442 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
21444         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
21445         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
21446         around `isearch-regexp-function'.
21448 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
21450         * lisp/isearch.el: Rename word search to regexp-function search.
21451         `isearch-word' went well beyond its original purpose, and the name
21452         no longer makes sense.  It is now called
21453         `isearch-regexp-function', and its value should always be a function
21454         that converts a string to a regexp (though setting it to t is still
21455         supported for now).
21456         (isearch-word): Make obsolete.
21457         (isearch-regexp-function): New variable.
21458         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
21459         (with-isearch-suspended, isearch-toggle-regexp)
21460         (isearch-toggle-word, isearch-toggle-symbol)
21461         (isearch-toggle-character-fold, isearch-query-replace)
21462         (isearch-occur, isearch-highlight-regexp)
21463         (isearch-search-and-update, isearch-message-prefix)
21464         (isearch-search-fun-default, isearch-search)
21465         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
21466         Use it.
21467         (isearch-lazy-highlight-regexp-function): New var.
21468         (isearch-lazy-highlight-word): Make obsolete.
21469         (isearch--describe-regexp-mode): New function.
21470         (isearch--describe-word-mode): Make obsolete.
21472         * lisp/info.el (Info-isearch-search):
21473         * lisp/replace.el (replace-search, replace-highlight):
21474         * lisp/obsolete/longlines.el (longlines-search-function):
21475         * lisp/hexl.el (hexl-isearch-search-function):
21476         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
21477         Use the new var.
21479 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
21481         Add dired-do-compress-to command bound to "c"
21483         * lisp/dired-aux.el (dired-shell-command): Use the caller's
21484           `default-directory', return the result of `process-file'.
21485         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
21486         used by default.
21487         (dired-compress-files-alist): New defvar.
21488         (dired-do-compress-to): New command.
21490         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
21491         (dired-do-compress-to): Add an autoload entry.
21493         * etc/NEWS: Add two entries.
21495 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
21497         Make RefTeX work with LaTeX subfiles package
21499         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
21500         document class argument as master file for referencing purposes.
21502 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
21504         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
21506 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
21508         Include-file cleanup for src directory
21510         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
21511         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
21512         but does not include it directly.  As a general rule, a source
21513         file should include foo.h if it needs the interfaces that foo.h
21514         defines.
21515         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
21516         systime.h.
21517         * src/atimer.c: Don’t include blockinput.h.
21518         * src/buffer.c: Include coding.h, systime.h.  Don’t include
21519         keyboard.h, coding.h.
21520         * src/callint.c: Don’t include commands.h, keymap.h.
21521         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
21522         systty.h, termhooks.h.
21523         * src/casetab.c: Don’t include character.h.
21524         * src/category.c: Don’t include charset.h, keymap.h.
21525         * src/ccl.h: Don’t include character.h.
21526         * src/character.c: Don’t include charset.h.
21527         * src/charset.c: Don’t include disptab.h.
21528         * src/chartab.c: Don’t include ccl.h.
21529         * src/cm.c: Don’t include frame.h, termhooks.h.
21530         * src/cmds.c: Don’t include window.h, dispextern.h.
21531         * src/coding.c: Don’t include window.h, frame.h.
21532         * src/composite.c: Include composite.h.  Don’t include window.h,
21533         font.h.
21534         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
21535         * src/dbusbind.c: Don’t include frame.h.
21536         * src/decompress.c: Don’t include character.h.
21537         * src/dired.c: Don’t include character.h, commands.h, charset.h.
21538         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
21539         process.h, timespec.h.  Include systime.h.
21540         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
21541         * src/editfns.c: Include composite.h.  Don’t include frame.h.
21542         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
21543         commands.h, systty.h..
21544         * src/fileio.c: Don’t include intervals.h, dispextern.h.
21545         Include composite.h.
21546         * src/filelock.c: Don’t include character.h, systime.h.
21547         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
21548         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
21549         * src/font.c: Include termhooks.h.
21550         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
21551         struct composition_it, struct face, struct glyph_string.
21552         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
21553         intervals.h, window.h, termhooks.h.
21554         * src/frame.c: Don’t include character.h, commands.h, font.h.
21555         * src/frame.h: Don’t include dispextern.h.
21556         * src/fringe.c: Don’t include character.h.
21557         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
21558         character.h, charset.h, fontset.h.
21559         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
21560         fontset.h.
21561         * src/ftxfont.c: Don’t include dispextern.h, character.h,
21562         charset.h, fontset.h.
21563         * src/gfilenotify.c: Don’t include frame.h, process.h.
21564         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
21565         Don’t include syssignal.h, buffer.h, charset.h, font.h.
21566         * src/gtkutil.h: Don’t include frame.h.
21567         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
21568         Don’t include character.h.
21569         * src/indent.c: Don’t include keyboard.h, termchar.h.
21570         * src/inotify.c: Don’t include character.h, frame.h.
21571         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
21572         * src/intervals.c: Don’t include character.h, keyboard.h.
21573         * src/intervals.h: Don’t include dispextern.h, composite.h.
21574         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
21575         Include coding.h.
21576         * src/keyboard.h: Don’t incldue systime.h.
21577         * src/keymap.c: Don’t include charset.h, frame.h.
21578         * src/lread.c: Include dispextern.h and systime.h.
21579         Don’t include frame.h.  Include systime.h.
21580         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
21581         * src/menu.c: Include character.h, coding.h.  Don’t include
21582         dispextern.h.
21583         * src/menu.h: Don’t include systime.h.
21584         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
21585         intervals.h, termhooks.h.
21586         * src/print.c: Include coding.h.  Don’t include keyboard.h,
21587         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
21588         Add forward decl of struct terminal.
21589         * src/process.c: Don’t include termhooks.h, commands.h,
21590         dispextern.h, composite.h.
21591         * src/region-cache.c: Don’t include character.h.
21592         * src/scroll.c: Don’t include keyboard.h, window.h.
21593         * src/search.c: Don’t include category.h, commands.h.
21594         * src/sound.c: Don’t include dispextern.h.
21595         * src/syntax.c: Don’t include command.h, keymap.h.
21596         * src/sysdep.c: Don’t include window.h, dispextern.h.
21597         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
21598         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
21599         * src/terminal.c: Include character.h.
21600         Don’t include charset.h, coding.h.
21601         * src/textprop.c: Don’t include character.h.
21602         * src/undo.c: Don’t include character.h, commands.h, window.h.
21603         * src/unexsol.c: Don’t include character.h, charset.h.
21604         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
21605         window.h, dispextern.h, blockinput.h, character.h, font.h.
21606         * src/widgetprv.h: Don’t include widget.h.
21607         * src/window.c: Don’t include character.h, menu.h, intervals.h.
21608         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
21609         macros.h, process.h.
21610         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
21611         intervals.h.
21612         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
21613         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
21614         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
21615         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
21616         * src/xgselect.c: Don’t include timespec.h, frame.h.
21617         Include systime.h.
21618         * src/xgselect.h: Don’t include time.h.
21619         Use a forward decl to struct timespec instead.
21620         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
21621         dispextern.h.  Include systime.h.
21622         * src/xml.c: Don’t include character.h.
21623         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
21624         * src/xselect.c: Don’t include dispextern.h, character.h,
21625         buffer.h, process.h.
21626         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
21627         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
21628         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
21630 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
21632         (/ N) now returns the reciprocal of N
21634         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
21635         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
21636         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
21637         (color-xyz-to-srgb, color-xyz-to-lab):
21638         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
21639         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
21640         (shr-color-hsl-to-rgb-fractions):
21641         Exploit the change to simplify the code a bit.
21642         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
21643         Don’t complain about single-argument calls to ‘/’.
21644         * src/data.c (arith_driver, float_arith_driver):
21645         Implement the change.
21647 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
21649         Call vc-dir-refresh after stash operations
21651         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
21652         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
21654         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
21655         since it can be abbreviated (as returned by vc-find-root).
21657 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
21659         * lisp/vc/vc-svn.el:
21660         * lisp/vc/vc-mtn.el:
21661         * lisp/vc/vc-hg.el:
21662         * lisp/vc/vc-cvs.el:
21663         * lisp/vc/vc-git.el:
21664         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
21665         Its usages have been replaced with vc-run-delayed.
21667 2015-10-20  Dima Kogan  <dima@secretsauce.net>
21669         Fix memory leak in fontset handling
21671         * src/font.c (copy_font_spec): Make a deep copy of the input
21672         argument FONT.  (Bug#21651)
21674 2015-10-20  Michael Sperber  <mike@xemacs.org>
21676         * lisp/gnus/mailcap.el (mailcap-mime-data):
21677         Conditonalize `doc-view-mode', which does not exist on XEmacs.
21679 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
21681         Update the way directories are compressed
21683         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
21684         for *.tar.gz decompression to use a pipe.
21685         Add an entry for the default directory compression (to *.tar.g).
21686         (dired-compress-file): Update.
21688         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
21690 2015-10-20  Michael Sperber  <mike@xemacs.org>
21692         Unbreak `group' option for `mail-sources'
21694         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
21695         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
21696         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
21698 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
21700         New function seq-position
21702         * lisp/emacs-lisp/seq.el (seq-position): New function.
21703         * test/automated/seq-tests.el: New tests for seq-position.
21704         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
21706 2015-10-19  Ken Brown  <kbrown@cornell.edu>
21708         Enable --with-wide-int build on 32-bit Cygwin
21710         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
21711         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
21713 2015-10-19  Glenn Morris  <rgm@gnu.org>
21715         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
21717 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
21719         Resurrect image loading under auto-image-file-mode
21721         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
21722         'openp' specially.  This special case was lost in the changes on
21723         2015-08-18.  (Bug#21685)
21725 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
21727         Fix return value of 'set-file-extended-attributes'
21729         * lisp/files.el (set-file-extended-attributes): Return non-nil
21730         when setting either ACLs or SELinux context succeeds.  Document
21731         the return value.  (Bug#21699)
21733         * doc/lispref/files.texi (Changing Files): Document the return
21734         value of set-file-extended-attributes.
21736 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
21738         Improve documentation of functions that change files
21740         * doc/lispref/files.texi (Changing Files): Document that these
21741         functions signal an error on failure.
21743 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
21745         Fix doc string of 'shell-quote-argument'
21747         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
21749 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
21751         Some minor Tramp changes
21753         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
21755         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
21756         Expand `tramp-auto-save-directory'.
21758 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
21760         Minor edits in Tramp
21762         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
21763         Declare it.
21765         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
21766         Remove declaration.
21768 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
21770         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
21772 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
21774         Avoid crashes when redisplayng a window changes faces or fonts
21776         * src/xdisp.c (redisplay_internal): If redisplaying the selected
21777         window or one of the frames turns on the frame's 'redisplay' flag,
21778         redisplay again.  (Bug#21428)
21780         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
21782 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
21784         Solve timimg issues in file-notify-tests.el
21786         * test/automated/file-notify-tests.el (file-notify-test02-events):
21787         Rectify `attribute-change' tests.  There are timing issues with
21788         gfilenotify.  (Bug#21669)
21790 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
21792         Fix quoting of data within htmlfontify doc
21794         * doc/misc/htmlfontify.texi (Data Structures, Customization):
21795         Fix quoting of data structures.  A Lisp quote is needed only
21796         when data appears within Lisp code.
21798 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
21800         * lisp/emacs-lisp/package.el: Reload archive-contents if
21801         priorities change.
21802         (package--old-archive-priorities): New variable.
21803         (package-read-all-archive-contents, package-menu--refresh): Use it
21804         to decide when the `package-archive-contents' needs to be read
21805         again.
21807 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
21809         Make src headers idempotent and standalone
21811         Redo src/*.h so that each include file is idempotent (that is, can
21812         be included multiple times with the latter inclusions having no
21813         effect) and standalone (that is, can be included by itself,
21814         with no include file other than config.h needed as a prerequisite).
21815         This is standard practice in GNU programs nowadays.
21816         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
21817         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
21818         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
21819         * src/regex.h [emacs]:
21820         * src/syntax.h, src/systty.h, src/termhooks.h:
21821         Include lisp.h, for Lisp_Object.
21822         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
21823         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
21824         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
21825         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
21826         * src/termopts.h, src/tparam.h, src/unexec.h:
21827         Protect against multiple inclusion.
21828         * src/buffer.h: Include character.h, for STRING_CHAR.
21829         * src/emacsgtkfixed.h (struct frame):
21830         * src/fontset.h (struct face):
21831         * src/region-cache.h (struct buffer):
21832         * src/termhooks.h (struct glyph):
21833         * src/xsettings.h (struct x_display_info):
21834         Add possibly-forward decl.
21835         * src/syntax.h: Include buffer.h, for BVAR.
21836         * src/sysselect.h: Include lisp.h, for eassume.
21837         * src/termchar.h: Include <stdio.h>, for FILE.
21838         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
21839         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
21841 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
21843         Handle symlink targets containing spaces in tramp-gvfs.el
21845         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
21846         Handle symlink targets containing spaces.
21848 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
21850         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
21852         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
21853         same reason that `load-path' shouldn't.  Setting it via the customize
21854         interface is a trap for the user.
21856         Installed themes commonly add themselves to this variable, which means
21857         its value is not fit for being saved (it will permanently remember dirs
21858         that don't exist anymore).
21860         This is aggravated by the fact that Emacs always applies the `user'
21861         theme on top of any theme that's loaded, since this will apply the old
21862         variable value and remove any new directories that had been recently
21863         added by themes themselves.
21865         Not to mention, we already have `custom-theme-directory', which is safe
21866         to customize.
21868 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
21870         * lisp/mpc.el: Rename the new toggling commands.
21871         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
21872         (mpc-toggle-shuffle): Add "-toggle" in the name.
21874 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
21876         Improve the doc string of 'completion-boundaries'
21878         * lisp/minibuffer.el (completion-boundaries): Rename the argument
21879         TABLE to COLLECTION, for consistency with other high-level
21880         completion functions.  Document how COLLECTION is called if it
21881         is a function.  (Bug#21644)
21883 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
21885         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
21887 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
21889         Make dired-do-compress work for *.zip files
21891         * lisp/dired-aux.el (dired-check-process): Transform the top-level
21892           comment into a docstring.
21893         (dired-shell-command): New command.  This mirrors
21894         `dired-check-process', but is more user-friendly for passing
21895         arguments.
21896         (dired-compress-file-suffixes): Allow to specify the command switches
21897         along with input (%i) and output (%o) inside the PROGRAM part.
21898         Add an entry for *.zip files, and update the entry for *.tar.gz files
21899         to the new style.  Update the docstring.
21900         (dired-compress-file): When PROGRAM matches %i or %o, use the new
21901         logic.
21902         (dired-update-file-line): Avoid an error when at end of buffer.
21904         Fixes bug#21637.
21906 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
21908         Minor improvement in documentation of internals
21910         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
21912 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
21914         Improve documentation of COLLECTION in completion functions
21916         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
21917         cross-reference to "Programmed Completion".
21919         * src/minibuf.c (Fcompleting_read): Improve the doc string.
21920         (Bug#21644)
21922 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
21924         Add more release info to etc/HISTORY
21926         * etc/HISTORY: Add more release information about 19.x and 20.x
21927         versions.
21929 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
21931         New file etc/HISTORY
21933         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
21934         * etc/HISTORY: New file.
21935         * etc/NEWS: Mention it.
21937 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
21939         js-mode: Don't misindent generator methods
21941         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
21942         generator methods from multiplication operator
21943         (https://github.com/mooz/js2-mode/issues/275).
21945 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
21947         Fix animation timeout delay calculation
21949         * lisp/image.el (image-animate-timeout):
21950         Don’t assume speed is floating-point.
21952 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
21954         Add commands for controlling MPD modes
21956         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
21957         (mpc-cmd-single): New functions.
21958         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
21959         (mpc-mode-menu): Add new commands as menu items.
21961 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
21963         Refer to `(elisp)Basic Completion' in completing-read docstring
21965         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
21966         Completion' in the docstring (bug#21644).
21968 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
21970         * lisp/mpc.el (mpc-format): Always push form to pred
21972 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
21974         Spelling fixes
21976         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
21977         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
21978         Fix misspelling of nonexistent file name.
21980 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
21982         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
21984 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
21986         Some editing fixes in Tramp
21988         * lisp/net/tramp-gvfs.el:
21989         * doc/misc/tramp.texi: "customer option" -> "custom option".
21991         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
21993 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
21995         Use proper localization in tramp-gvfs.el
21997         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
21998         Suppress localized settings in order to proper parse gfvs output.
22000 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
22002         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
22003         Quote argument in proper order.  (Bug#21562)
22005 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
22007         Fix typos in docstrings
22009         * lisp/emacs-lisp/map.el:
22010         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
22011           macros.
22013 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
22015         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
22017 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
22019         Make dired-jump work with tar-subfile-mode
22021         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
22022           emitting an error, switch to `tar-superior-buffer'.
22024 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
22026         * .gitignore: Add build-aux/ar-lib.
22028 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
22030         Better docstrings in seq.el and map.el
22032         * lisp/emacs-lisp/map.el:
22033         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
22035 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
22037         Merge from gnulib
22039         This incorporates:
22040         2015-10-13 binary-io, u64, unistd: port to strict C
22041         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
22042         2015-09-25 c-ctype: port better to z/OS EBCDIC
22043         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
22044         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
22045         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
22046         Copy from gnulib.
22048 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
22050         Take XPNTR private
22052         * src/alloc.c (PURE_POINTER_P): Remove.
22053         All uses replaced with PURE_P.
22054         (XPNTR_OR_SYMBOL_OFFSET): New function.
22055         (XPNTR): Move here from lisp.h.
22056         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
22057         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
22058         Remove unnecessary cast.
22059         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
22060         to avoid an unnecessary runtime test for symbols.
22061         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
22062         Only alloc.c needs XPNTR now.
22064 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
22066         Add MPC play/pause command
22068         * lisp/mpc.el (mpc-toggle-play): New command.
22069         (mpc-mode-map): Bind it to "s".
22070         (mpc-mode-menu): Add corresponding menu item.
22072 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
22074         Add bindings and menu items for prev and next tracks
22076         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
22077         "<" to mpc-prev.
22078         (mpc-mode-menu): Add corresponding menu items
22080 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
22082         Reduce face-related consing during frame creation.
22084         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
22085         attribute list once.
22086         (face-spec-reset-face): Use it instead of building the list.
22088 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
22090         Do process ConfigureNotify events indicating size changes.
22092         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
22093         events don't have the same size, process each one.
22095 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
22097         Derive mpc-mode from special-mode
22099         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
22100         (mpc-mode): Derive from special mode.
22101         (mpc-songs-mode-map): Don't set parent keymap.
22103 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
22105         Fix error messages for when covers are not found.
22107         The last change to mpc-format let the binding to file call
22108         mpc-file-local-copy with nil argument.  Instead, employ if-let here
22109         so nil bindings don't result in needless computation and errors.
22110         * lisp/mpc.el: Require 'subr-x at compile time.
22111         * lisp/mpc.el (mpc-format): Use if-let.
22113 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
22115         Make dired-do-compress work for *.tar.gz files
22117         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
22118           "tar -zxvf" to *.tar.gz; update docstring.
22120         (dired-compress-file): Allow to specify switches after the command in
22121         `dired-compress-file-suffixes'.
22123 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
22125         Make dired-do-compress work for directories
22127         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
22128           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
22129         Also convert the top comment into a docstring.
22131 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
22133         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
22135         ... since it might come straight from the memoizing table.
22137 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
22139         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
22141 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
22143         Use special-mode in eww list modes
22145         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
22146         (eww-buffers-mode): Derive from special-mode and remove redundant
22147         setting of buffer-read-only.
22148         (eww-mode-map): Remove redundant keymap parent setting.
22149         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
22150         Remove redundant keymap suppressions and mappings.
22152 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
22154         Allow setting frame pixel sizes from frame parameters (Bug#21415)
22156         Also fix some misfeatures in frame (re-)sizing code, add more
22157         debugging information and remove some dead code.
22159         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
22160         parameter names when setting `frame-size-history'.
22161         (frame--size-history): New function.
22163         * src/frame.c (frame_inhibit_resize): If frame has not been made
22164         yet, return t if inhibit_horizontal_resize or
22165         inhibit_vertical_resize bit have been set.
22166         (adjust_frame_size): Simplify.
22167         (make_frame): Initialize inhibit_horizontal_resize,
22168         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
22169         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
22170         inhibit_vertical_resize slots.
22171         (x_set_frame_parameters): Handle `text-pixels' specification for
22172         width and height parameters.  Don't consider new_height or
22173         new_width changes.  Call adjust_frame_size instead of
22174         Fset_frame_size.
22175         (x_figure_window_size): Two new arguments x_width and y_width
22176         returning frame's figures width and height.  Calculate tool bar
22177         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
22178         Handle `text-pixels' specification for width and height
22179         parameters.
22180         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
22181         (Qx_set_window_size_1, Qx_set_window_size_2)
22182         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
22183         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
22184         (Qfree_frame_menubar_2): New symbols.
22185         * src/frame.h (structure frame): New booleans
22186         tool_bar_redisplayed, tool_bar_resized,
22187         inhibit_horizontal_resize, inhibit_vertical_resize.
22188         (x_figure_window_size): Update external declaration.
22189         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
22190         calling gtk_window_resize.
22191         (update_frame_tool_bar): Make inhibiting of frame resizing more
22192         discriminative.  Set tool_bar_resized bit.
22193         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
22194         resizing more discriminative.  Call adjust_frame_size instead of
22195         x_set_window_size.
22196         (Fx_create_frame): Handle x_width and x_height if
22197         set by x_figure_window_size.
22198         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
22199         subtract 3 from tool bar height.
22200         (x_set_window_size): Add frame_size_history_add call.
22201         (x_new_font): Call adjust_frame_size instead of
22202         x_set_window_size.
22203         * src/w32fns.c (x_change_tool_bar_height): Reset
22204         tool_bar_redisplayed and tool_bar_resized bits when adding tool
22205         bar.  Make inhibiting of frame resizing more discriminative.
22206         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
22207         (Fx_create_frame): Handle x_width and x_height if set by
22208         x_figure_window_size.  Set size hints before adjusting frame size.
22209         (x_create_tip_frame): Adjust x_figure_window_size call.
22210         * src/w32term.c (x_set_window_size): Add frame_size_history_add
22211         call.
22212         * src/widget.c (set_frame_size): Remove dead code.  Add
22213         frame_size_history_add call.  When frame_resize_pixelwise is t
22214         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
22215         pixel_width and pixel_height.
22216         (update_various_frame_slots): Remove dead code.
22217         (EmacsFrameResize): Add more information in
22218         frame_size_history_add call.
22219         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
22220         is not set.
22221         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
22222         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
22223         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
22224         tool_bar_resized bits when adding tool bar.  Make inhibiting of
22225         frame resizing more discriminative.
22226         (Fx_create_frame): Handle x_width and x_height if set by
22227         x_figure_window_size.  Set size hints before adjusting frame size.
22228         (x_create_tip_frame): Adjust x_figure_window_size call.
22229         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
22230         (set_frame_menubar): On Lucid never add core-border-width to
22231         avoid that adding XtNinternalBorderWidth adds it again.
22232         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
22233         * src/xterm.c (x_new_font): In non-toolkit case handle size
22234         change of menu bar.
22235         (x_set_window_size_1): Fix calls to frame_size_history_add.
22236         (x_wm_set_size_hint): Remove dead code.  Set
22237         size_hints.min_width and size_hints.min_height to base_width and
22238         base_height.
22240 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
22242         * test/automated/file-notify-tests.el (file-notify--test-timeout):
22243         Add docstring.  Increase to 10 seconds for remote
22244         directories.  (Bug#21669)
22246 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
22248         Unmacroize ebrowse.c and etags.c a bit
22250         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
22251         (streq, filename_eq, set_flag, has_flag): Now inline functions.
22252         (set_flag): First arg is now an address, not an lvalue.
22253         All callers changed.
22254         (filename_eq, set_flag, has_flag):
22255         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
22256         All callers changed.
22257         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
22258         Now inline functions.  Remove asserts that are unnecessary these
22259         days (and in some cases were too-generous anyway).
22261 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
22263         Use highlight for current items
22265         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
22266         Apply highlight face instead of region face.
22268 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
22270         Search for more cover image names in MPC
22272         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
22273         case insensitively
22275 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
22277         Remove or comment out unused variables
22279         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
22280         nontext_cursor, mode_cursor, hand_cursor and count.
22281         (x_change_tool_bar_height): Remove variable old_text_height.
22282         (deliver_wm_chars): Remove variable strip_Alt.
22283         (Fw32_shell_execute): Remove variable document_a.
22284         (Fw32_frame_geometry): Remove variable fullboth.
22285         * src/w32term.c (w32_setup_relief_color): Comment out variable
22286         w32_display_info.
22287         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
22288         (w32_read_socket): Comment out variables rows, columns.
22289         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
22291 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
22293         * src/w32proc.c (sys_select): Fix bitwise test.
22295 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
22297         Minor typo corrections in doc strings
22299         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
22300         Doc fixes.
22302 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
22304         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
22306 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
22308         Attempt to avoid crashes in plist-member
22310         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
22311         and a call to XCDR.  (Bug#21655)
22313 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
22315         * lisp/select.el (gui-get-primary-selection): In
22316         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
22318 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
22320         Support RTF in doc-view
22322         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
22324 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
22326         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
22328 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
22330         Replace the usage of an obsolete function in auth-source.el
22332         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
22333         Replace an usage of `epg-context-set-armor' with `setf'.
22335 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
22337         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
22339 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
22341         Have calc-yank recognize numbers in different bases.
22343         * lisp/calc/calc-yank.el (math-number-regexp): New function.
22344         (calc-yank): Use `math-number-regexp' to recognize numbers.
22346 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
22348         Handle an opaque-move X11 window manager operation more efficiently
22350         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
22351         followed by more ConfigureNotify events for the same window, process
22352         only the last one.
22354 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
22356         Fix cursor setting for tip frame; re-enable cursor generation
22358         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
22359         attributes sent when creating the new X window.  Don't skip setting
22360         the pointerColor parameter.
22362 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
22364         Rewrite x_set_mouse_color to sync less
22366         We can track serial numbers of X requests and correlate error events
22367         with the associated requests.  This way we can identify errors for
22368         specific calls without having to use XSync after every one.
22370         * src/xfns.c (enum mouse_cursor): New type.
22371         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
22372         (mouse_cursor_types): New array listing the Lisp variables and default
22373         cursor appearances for each cursor type.
22374         (x_set_mouse_color_handler): New function; checks error event serial
22375         number against submitted requests.
22376         (x_set_mouse_color): Updated to use the new error handler callback,
22377         and to be more table-driven, to simplify repetitious code.
22379 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
22381         Add x_catch_errors_with_handler
22383         * src/xterm.c (struct x_error_message_stack): Add new fields for a
22384         callback function and associated data pointer.
22385         (x_error_catcher): If the callback function is set, call it after
22386         saving the error message string.
22387         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
22388         accepts a callback function and data pointer.
22389         (x_catch_errors): Now a wrapper function.
22390         * src/xterm.h (x_special_error_handler): New typedef.
22391         (x_catch_errors_with_handler): Declare.
22393 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
22395         Introduce x_uncatch_errors_after_check to reduce XSync calls
22397         Both x_had_errors_p and x_check_errors call XSync, so if they're
22398         immediately followed by x_uncatch_errors, its XSync call will be
22399         redundant, resulting in a wasted round trip to the X server.
22401         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
22402         x_uncatch_errors without the XSync call.
22403         (XTmouse_position, x_wm_supports):
22404         * src/xfns.c (x_set_mouse_color):
22405         * src/xmenu.c (Fx_menu_bar_open_internal):
22406         * src/xselect.c (x_own_selection, x_get_foreign_selection):
22407         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
22408         * src/xterm.h (x_uncatch_errors_after_check): Declare.
22410 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
22412         Document the optional prefix to `calc-yank'
22414         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
22415         prefix to `calc-yank'.
22416         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
22417         the Calc buffer are yanked back unchanged.
22419 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
22421         * lisp/calendar/calendar.el: Display buffer before executing body.
22423         In each use of this macro, the modeline is derived from a window width
22424         calculation, which will be wrong if (display-buffer) splits the window
22425         horizontally.
22427 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
22429         Use ‘echo’ safely with ‘\’ or leading ‘-’
22431         POSIX says that ‘echo FOO’ produces implementation-defined output
22432         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
22433         behavior in that case.
22434         * Makefile.in (removenullpaths): Remove.
22435         (epaths-force): Rewrite to avoid the need for ‘echo’.
22436         (install-etc): Be clearer about escaping the shell metacharacters
22437         ‘\’ and ‘$’.
22438         * Makefile.in (install-arch-indep, install-etcdoc):
22439         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
22440         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
22441         * configure.ac, lib-src/rcs2log, make-dist:
22442         * src/Makefile.in (lisp.mk):
22443         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
22444         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
22445         if $foo can contain arbitrary characters.
22446         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
22447         * doc/lispref/two-volume.make (vol1.pdf):
22448         * test/etags/make-src/Makefile (web ftp publish):
22449         Use ‘printf’ rather than ‘echo -e’.
22451 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
22453         Allow numbers with different radixes to be yanked.
22455         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
22456         default base 10.
22458 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
22460         Improve CHECK_IMPURE and PURE_P speedup
22462         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
22464 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
22466         Use events instead of chars to keep track of steps.
22468         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
22469         to keep track of steps.
22471 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
22473         Fix --enable-gcc-warnings problem with older GCC
22475         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
22476         This is for building with --enable-gcc-warnings with
22477         GCC 4.6 through 5.0.
22479 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
22481         Fix vertical-motion in truncated lines that end in a stretch
22483         * src/indent.c (Fvertical_motion): Expect overshoot when point is
22484         beyond window margin and lines are truncated, even if we have a
22485         stretch at point.  (Bug#21468)
22487 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
22489         Avoid link-time errors due to inline functions
22491         * src/emacs.c: Include puresize.h, to avoid link-time errors in
22492         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
22493         inline functions.
22495 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
22497         * src/data.c (Faset): Fix last change.
22499 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
22501         CHECK_IMPURE and PURE_P speedup
22503         * src/intervals.c (create_root_interval):
22504         Do CHECK_IMPURE only for strings; not needed for buffers.
22505         Prefer ! STRINGP to BUFFERP, for a tad more speed.
22506         * src/puresize.h (CHECK_IMPURE, PURE_P):
22507         Now inline functions instead of macros.
22508         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
22509         All callers changed.
22510         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
22511         All callers changed.
22513 2015-10-09  Noah Friedman  <friedman@splode.com>
22515         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
22517 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22519         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
22521         our after-change-function, rather than re-adding it if it was removed.
22523 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22525         * lisp/cedet/ede: Silence some compiler warnings
22527         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
22528         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
22529         (ede-apply-object-keymap, ede-reset-all-buffers)
22530         (ede-auto-add-to-target): Use dolist.
22531         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
22532         Use field names rather than initarg names in `oref'.
22533         (ede-load-project-file): Remove unused var `file'.
22534         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
22535         (ede-set): Remove unused var `a'.
22537         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
22538         (ede-project-autoload): Avoid the old-style "name" argument.
22539         (ede-emacs-find-matching-target): Use field names rather than initarg
22540         names in `oref'.
22542         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
22543         (ede-linux-load, ede-project-autoload): Avoid the old-style
22544         "name" argument.
22545         (ede-linux-find-matching-target): Use field names rather than initarg
22546         names in `oref'.
22548 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22550         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
22552 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22554         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
22555         indenting too far after ":-".
22557 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
22559         Update case-table and categories of recently added characters
22561         * lisp/international/characters.el: Update information about Latin
22562         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
22563         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
22564         blocks.  (Byug#21654)
22566 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
22568         * src/frame.c (adjust_frame_size): In minibuffer-only windows
22569         don't count minibuffer height twice.  (Bug#21643)
22571 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
22573         Avoid inflooping in font-lock
22575         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
22576         inhibit-field-text-motion around the call to
22577         line-beginning-position, to avoid inflooping.  (Bug#21615)
22579 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
22581         Refactor duplicated code; ensure default is in completions
22583         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
22584         New function.
22585         (reftex-extract-bib-entries): Use it.
22586         (reftex-extract-bib-entries-from-thebibliography): Use it.
22588 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
22590         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
22591         in the example.
22593 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
22595         * lisp/calc/calc.el: Silence byte-compiler warnings.
22596         (calc-scan-for-dels): Use ignore-errors.
22597         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
22598         (calc-read-key-sequence): Remove unused var `prompt2'.
22599         (calc-kill-stack-buffer): Remove unused var `buflist'.
22600         (calc): Remove unused var `oldbuf'.
22601         (calc-refresh): Use inhibit-read-only.
22602         (calc-can-abbrev-vectors): Declare.
22603         (calc-record): Remove unused var `mainbuf'.
22604         (math-sub-bignum): Remove unused var `sum'.
22605         (math-svo-c, math-svo-wid, math-svo-off): Declare.
22607 2015-10-08  Daiki Ueno  <ueno@gnu.org>
22609         Use g_clear_error instead of g_error_free
22611         * src/image.c: Define g_clear_error instead of g_error_free.
22612         (init_svg_functions): Resolve symbol g_clear_error instead of
22613         g_error_free.
22614         (svg_load_image): Use g_clear_error instead of g_error_free, to
22615         suppress GLib warnings when ERR is not set.  See bug#21641.
22617 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
22619         * src/image.c (image_size_error): Simplify.
22621 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
22623         Fix problems caught with --enable-gcc-warnings
22625         * src/image.c (lookup_rgb_color):
22626         * src/xfns.c (x_defined_color):
22627         * src/xterm.c (x_parse_color):
22628         Remove unused locals.
22630 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
22632         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
22634 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
22636         Format initial input uniformly
22638         * lisp/calc/calc.el (calc-digit-start-entry): New function.
22639         * lisp/calc/calc.el (calcDigit-start):
22640         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
22641         Use `calc-digit-start-entry' to format input.
22643 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
22645         Disable non-working pointerColor setting for X tooltip frame
22647         It generates a bunch of server traffic, but there's some bug wherein
22648         the new mouse cursor settings don't seem to get used.  In most
22649         situations the cursor isn't likely to be seen anyway, so it's not
22650         urgent to fix.
22652         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
22654 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
22656         Reduce some unnecessary X calls
22658         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
22659         call.  If border width is wanted, get it from the XGetGeometry call
22660         instead of calling XGetWindowAttributes on the same window.  Skip some
22661         X calls if we've already detected an error from the X server.
22662         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
22663         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
22665 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
22667         Reduce color allocation/query traffic in the TrueColor case
22669         When working with an X visual with TrueColor class, pixel values can
22670         be generated from the RGB values according to mask value provided by
22671         the server on connection.  Some of the image-handling code was already
22672         doing this.
22674         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
22675         lookup_rgb_color.
22676         (x_mutable_colormap): New function.
22677         * src/image.c (lookup_rgb_color): Move pixel composition code to
22678         x_make_truecolor_pixel.
22679         (x_kill_gs_process): Call x_mutable_colormap.
22680         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
22681         x_mutable_colormap.
22682         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
22683         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
22684         pixel value into RGB values directly, and don't send a request to the
22685         server.
22686         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
22687         value with x_make_truecolor_pixel.
22688         (x_copy_color): For an immutable color map, just return the provided
22689         pixel value.
22691 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
22693         Cache XParseColor results in the X display info structure
22695         With repeated lookups of foreground and background colors for multiple
22696         faces per frame, we issue a lot of redundant color name lookups to the
22697         X server, waiting every time for the response.  On a remote network
22698         with, say, 30ms round-trip time, this can add nearly a full second to
22699         creation of a new frame.
22701         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
22702         * src/image.c (get_spec_bg_or_alpha_as_argb):
22703         (xpm_init_color_cache, xpm_lookup_color):
22704         * src/xfns.c (x_defined_color):
22705         * src/xterm.c (x_parse_color): New function; caches color names not
22706         starting with "#" in the display-info structure.
22707         (x_delete_display): Delete the cache content.
22708         * src/xterm.h (struct color_name_cache_entry): New type.
22709         (x_parse_color): Declare.
22710         (struct x_display_info): Add a new field for the cache.
22712 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
22714         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
22716 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
22718         Fix segfault in image_size_error
22720         * src/image.c (image_size_error): Pass a Lisp string to
22721         image_error, not a C string.  (Bug#21641)
22723 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
22725         Highlight CSS variable definitions
22727         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
22728         CSS variables.  (Bug#21638)
22730 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
22732         * test/automated/tabulated-list-test.el: New file.
22733         Test bug#21639 and some basic functionality.
22735 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
22737         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
22738         Check if column can be sorted before trying.  (Bug#21639)
22740 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
22742         Add test for `self-insert-command' (bug#21633)
22744         * test/automated/cmds-tests.el: New file.
22746 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
22748         * src/window.c (resize_frame_windows): Don't set root window's
22749         top position when resizing horizontally.
22751 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
22753         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
22754         Document more possible values.
22756 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
22758         * lisp/textmodes/tex-mode.el: Use lexical-binding.
22760 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
22762         * lisp/indent.el (indent--default-inside-comment): New function.
22763         (indent-for-tab-command): Use it for `noindent' indentation.
22765 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
22767         Fix bug in GC_CHECK_MARKED_OBJECTS check
22769         * src/alloc.c (mark_object): Fix bug in checking code.
22770         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
22771         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
22772         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
22773         bucket.  The bug did not affect behavior either in the normal case
22774         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
22775         not have an internal error that a properly-written
22776         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
22778 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
22780         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
22781         Add prettified version for \\Bbb{Q}.
22783 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
22785         * test/automated/package-test.el (package-test-install-single):
22786         Add a test for bug#21625.
22788 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
22790         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
22791           not a package-desc object.  Also clarify documentation.  (Bug#21625)
22793 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
22795         Fix display of characters adjacent to ZWJ and ZWNJ
22797         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
22798         characters the same as directional formatting controls.
22799         (bidi_level_of_next_char): Include all Bn characters in rule L1,
22800         as mandated by the UBA.
22802 2015-10-06  Andreas Schwab  <schwab@suse.de>
22804         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
22805         number.  (Bug#21633)
22807 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
22809         * doc/lispref/objects.texi (Window Type): Add a cross reference.
22811         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
22813 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
22815         * lisp/language/misc-lang.el (composition-function-table):
22816         Fix entries for Arabic and Syriac.
22818 2015-10-05  Damien Cassou  <damien@cassou.me>
22820         Add first unit tests for auth-source.el
22822         * test/automated/auth-source-tests.el: New file.
22824 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
22826         Remove redundant redisplay code
22828         * src/xdisp.c (redisplay_internal, try_cursor_movement)
22829         (try_window_reusing_current_matrix, try_window_id): Remove
22830         redundant restrictions on redisplay optimizations based on the
22831         frame's 'redisplay' flag.  See
22832         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
22833         discussions.
22835 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
22837         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
22839 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
22841         Update tutorials/TUTORIAL.cn
22843         * etc/tutorials/TUTORIAL.cn: Improve translation.
22845 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22847         * src/macfont.m (macfont_encode_char, syms_of_macfont):
22848         Remove unused vars.
22850 2015-10-04  Stefan Merten  <stefan@merten-home.de>
22852         Pull in version numbers from rst.el upstream release.
22854         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
22855         (rst-svn-timestamp, rst-official-version)
22856         (rst-official-cvs-rev, rst-package-emacs-version-alist):
22857         Update version numbers.
22859 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
22861         * test/automated/coding-tests.el: New file.
22863 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
22865         Improve XEmacs compatibility of Tramp
22867         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
22868         Declare if it doesn't exist.
22869         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
22870         (redisplay): Make it an alias if it doesn't exist.
22872         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
22873         `file-remote-p' (due to XEmacs compatibility).
22875         * lisp/net/trampver.el (locate-dominating-file)
22876         (tramp-compat-replace-regexp-in-string): Autoload.
22877         (tramp-repository-get-version): Do not dupe byte-compiler.
22879 2015-09-02  K. Handa  <handa@gnu.org>
22881         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
22883         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
22884         Adjusted for the change of type of elements in the array
22885         MFLTGlyphString.glyphs.
22887 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
22888             Michael Heerdegen  <michael_heerdegen@web.de>
22890         shr: fix too long lines in rendered buffers (Bug#21012)
22892         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
22893         Correct calculation of available width.
22894         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
22895         is nil.
22897 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
22899         Restore blank line before next section, erroneously erased
22900         in my previous commit
22902         * etc/compilation.txt (symbol ant): Add an additional trailing blank
22903         line to this section, so that there are two of them immediately before
22904         the next section.
22906 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
22908         Support MSW filename style for ant compilation error regexp
22910         * etc/compilation.txt (symbol ant):
22911         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
22912         Support MSW filename style.
22914 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
22916         * nt/INSTALL: Minor spelling and quote fixes.
22918         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
22920 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
22922         Maintain ordering of JSON object keys by default
22924         * lisp/json.el (json-object-type): Mention order handling in doc-string.
22925         (json--plist-reverse): New utility function.
22926         (json-read-object): Maintain ordering for alists and plists.
22927         (json-pretty-print): Ensure that ordering is maintained.
22929         * test/automated/json-tests.el (test-json-plist-reverse): New test for
22930         `json--plist-reverse'.
22931         (json-read-simple-alist): Update test to accommodate for changes in
22932         `json-read-object'.
22934         * etc/NEWS: Document the new behavior of the pretty printing functions.
22936 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
22938         * src/coding.c (complement_process_encoding_system): Revert last change.
22940 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
22942         * admin/MAINTAINERS: Add entry for Ulf Jasper.
22944 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
22946         Doc fix for `defmacro'
22948         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
22950 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
22952         More validatation of coding systems
22954         * src/fileio.c (Finsert_file_contents): Remove redundant
22955         coding-system check.
22956         (choose_write_coding_system): Likewise.
22957         * src/coding.c (complement_process_encoding_system): Check argument
22958         for valid coding system.
22960 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
22962         Avoid crashes in coding_inherit_eol_type
22964         * src/coding.c (coding_inherit_eol_type): Check the validity of
22965         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
22966         (Bug#21602)
22968 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
22970         More validatation of coding system in 'write-region'
22972         * src/coding.c (choose_write_coding_system): More validation of
22973         coding-system from various sources.  Suggested by Andreas Schwab
22974         <schwab@linux-m68k.org>.  (Bug#21602)
22976 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
22978         Avoid crashes due to invalid coding-system
22980         * src/fileio.c (choose_write_coding_system)
22981         (Finsert_file_contents): Check validity of coding-system-for-write
22982         and coding-system-for-read bound by the caller.  (Bug#21602)
22984 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
22986         Adapt to new prettify-symbols-unprettify-at-point default
22988         * etc/NEWS: Mention that unprettication of symbol at point is off
22989         by default.
22991 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
22993         Revert my two recent process.c changes
22995         Revert "Improve last commit to process.c" and "Remove callback-handled
22996         channels from Available set" because they did not fix bug#21313.
22998         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
22999         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
23001 2015-10-02  Markus Triska  <triska@metalevel.at>
23003         * lisp/progmodes/prolog.el: Update and extend operator table.
23004         (prolog-smie-grammar): Add multifile, public etc.
23006 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
23008         Allow autogen even when Git is not installed
23010         * autogen.sh: Test ‘git status’ before trying to use Git.
23012 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
23014         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
23015         Adjust lto/lfrom when we have uncommitted changes.
23017 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
23019         Fix problems found by clang 3.5.0
23021         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
23022         * src/font.c (font_parse_family_registry):
23023         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
23025 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
23027         * nt/INSTALL: Update instructions for running autogen.sh.
23029         * nt/INSTALL: Point to ezwinports for libXpm binaries.
23031 2015-10-02  Daniel Colascione  <dancol@dancol.org>
23033         Fix winner in cl-lib not loaded case
23035         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
23036         without requiring CL
23038 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
23040         Fix a few problems with directed quotes
23042         This is in response to a problem report by Kaushal Modi in:
23043         http://bugs.gnu.org/21588#25
23044         * lisp/cedet/mode-local.el (describe-mode-local-overload):
23045         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
23046         * lisp/info-xref.el (info-xref-check-all-custom):
23047         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
23048         Prefer directed to undirected single quotes in diagnostics.
23050 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
23052         Revert "Attempt to fix slow redisplay caused by last changes"
23054         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
23055         (try_cursor_movement): Don't relax requirements for redisplay
23056         optimizations for the selected frame.  (Bug#21597)
23058         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
23060 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
23062         Fix slow redisplay when daemon frame exists
23064         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
23065         when looking for frames that need to be redisplayed.  (Bug#21597)
23067 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
23069         Attempt to fix slow redisplay caused by last changes
23071         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
23072         (try_cursor_movement): Relax requirements for redisplay
23073         optimizations for the selected frame.  (Bug#21597)
23075 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
23077         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
23078         Improve doc string.
23080 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
23082         * lisp/minibuffer.el (minibuffer-completion-help):
23083         Set default base-size, in case completion table does not set it.
23085 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
23087         Fix GUD display of GDB output with non-ASCII text
23089         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
23090         (gdb-mi-decode): New function.
23091         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
23092         decode octal escapes in GDB output.  (Bug#21572)
23094 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
23096         * nt/INSTALL: Document where to find XPM support files.
23098 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
23100         Un- and re-prettification are not exclusive
23102         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
23103         Re-apply prettification to previous symbol also when unprettifying
23104         next one.
23106 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
23108         Don't unprettify symbol at point by default
23110         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
23111         Default to disabled (nil).
23113 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
23115         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
23116         Support unprettifying when point is after a symbol.
23118         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
23120 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
23122         Avoid assertion violations in push_prefix_prop
23124         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
23125         a line that has a line-prefix defined starts with an image.  (Bug#21428)
23127 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
23129         Disable some display optimizations when frames need redisplay
23131         These optimizations were previously disabled by the
23132         windows_or_buffers_changed flag, which now is not set
23133         when only some frames need to be redrawn.
23134         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
23135         'redisplay' flag is set.
23136         (try_window_reusing_current_matrix, try_window_id)
23137         (try_cursor_movement): Disable these optimizations when the
23138         frame's 'redisplay' flag is set.
23140 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
23142         Don't modify buffer by unprettification
23144         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
23145         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
23146         modify buffer when setting/removing custom prettify-symbols-start/end
23147         text properties.  Add them to font-lock-extra-managed-props, too.
23149 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
23151         Try to avoid redisplaying all frames when creating a new one
23153         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
23154         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
23155         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
23156         * src/frame.c (x_set_screen_gamma): Set the specific frame's
23157         `redisplay' bit rather than windows_or_buffers_changed.
23159         * src/window.c (apply_window_adjustment): Remove redundant setting of
23160         windows_or_buffers_changed.
23162         * src/xdisp.c (redisplay_internal): Set the specific frame's
23163         `redisplay' bit rather than update_mode_lines in response to
23164         cursor_type_changed.
23165         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
23166         (AINC): Adjust accordingly.
23168 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
23170         Implement unprettification of symbol at point
23172         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
23173         symbol at point.
23174         (prettify-symbols--current-symbol-bounds): New variable.
23175         (prettify-symbols--post-command-hook): New function.
23176         (prettify-symbols-unprettify-at-point): New defcustom.
23177         (prettify-symbols-mode): Use it.
23178         (prettify-symbols--compose-symbol): Use them.
23180 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23182         * src/macfont.m (mac_font_descriptor_supports_languages):
23183         Regard "zh" as synonym of "zh-Hans".
23185 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23187         Work around crash when displaying etc/HELLO on OS X 10.11
23189         * src/macfont.m (mac_font_get_weight)
23190         (mac_font_descriptor_get_adjusted_weight): New functions.
23191         (macfont_store_descriptor_attributes): Adjust weight.
23193 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23195         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
23197 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
23199         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
23200         of the columns.
23202 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
23204         Use unar and lsar to handle RAR archives in arc-mode
23206         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
23207         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
23209 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
23211         Clarify :create in auth-source's docs
23213         * lisp/gnus/auth-source.el (auth-source-search):
23214         Clarify :create's meaning.
23216 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
23218         Avoid empty -path arguments in rgrep
23220         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
23221         the list produced according to grep-find-ignored-directories,
23222         before passing it to Find/Grep invocation.  (Bug#21548)
23224 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
23226         Clarify documentation of pos-visible-in-window-p
23228         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
23229         t for POS.  See
23230         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
23231         for the original report.
23233         * doc/lispref/windows.texi (Window Start and End): Clarify the
23234         meaning of t for the POSITION argument of pos-visible-in-window-p.
23236 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
23238         * lisp/progmodes/prolog.el: Fix various indentation cases.
23239         (prolog-operator-chars): New const (add \\).
23240         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
23241         (prolog-smie-rules): Add rules according to bug#21526.
23243 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
23245         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
23246         (sh-indent-after-continuation): Add new value `always' (bug#17620)
23247         (sh-smie-sh-rules): Remove old handling of continued lines.
23248         (sh-smie--indent-continuation): New function.
23249         (sh-set-shell): Use it.
23251 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
23253         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
23254         Remove redundant :group keyword args.
23255         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
23256         Remove variables.
23257         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
23258         turn them into compile-time variables.
23259         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
23260         Add rules for break, continue, return, global, and persistent.
23261         Refine the rule for "until".
23262         (octave-smie--funcall-p, octave-smie--end-index-p)
23263         (octave-smie--in-parens-p): New functions.
23264         (octave-smie-backward-token, octave-smie-forward-token): Use them to
23265         distinguish the "enumeration" function and the "end" index from
23266         their corresponding keywords.
23267         (octave--block-offset-keywords): New constant.
23268         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
23269         parsing.
23270         (octave-reserved-words): Redefine using octave-smie-grammar.
23271         (octave-font-lock-keywords): Use octave-smie--funcall-p and
23272         octave-smie--end-index-p.
23274 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
23276         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
23278 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
23280         * nt/INSTALL: Remove references to GTK site.
23281         That site no longer offers Windows downloads.
23283 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
23285         * nt/INSTALL: Add instructions for installing Git.
23287 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
23289         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
23290         use colors.  Suggested by Eli Zaretskii.
23292 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
23294         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
23295         not supporting 256 above colors (bug#21557).
23297 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
23299         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
23301         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
23303 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
23305         Add documentation for seq.el
23307         * doc/lispref/sequences.texi: Add documentation regarding extending
23308         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
23309         seq-do and seq-map.
23311 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
23313         Better documentation for seq-some
23315         * doc/lispref/sequences.texi:
23316         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
23317         guarantee that the returned value is the first non-nil value that
23318         resulted from applying the predicate.
23320 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
23322         * lisp/arc-mode.el: Sharp-quote function arguments.
23324 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
23326         Avoid redisplay error in ediff-regions-wordwise
23328         * lisp/vc/ediff-util.el
23329         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
23330         set before activating it.  (Bug#21567)
23332 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
23334         Another attempt to fix crashes due to prematurely freed faces
23336         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
23337         faces for as long as we might have desired matrices that reference
23338         those faces.  (Bug#21428)
23340 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
23342         Add auctex development list email address
23344 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
23346         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
23348 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
23350         Improve wrapfig package support and caption parsing
23352         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
23353         Correct description string and add wraptable environment.
23354         (reftex-default-context-regexps): Improve caption regexp.
23356 2015-09-28  Anders Lindgren  <andlind@gmail.com>
23358         Respect value of frame_resize_pixelwise when handling fullscreen state
23360         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
23361         setting size increments.
23363 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
23365         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
23367 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
23369         Add prettify-symbols-alist for js-mode
23371         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
23372         (js-mode): Use it.
23374 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
23376         * nt/subdirs.el: File deleted (no longer used).
23378 2015-09-26  Alan Mackenzie  <acm@muc.de>
23380         Fix follow-scroll-up/down, making them replacements for scroll-up/down
23382         1. Allow point to move between follow windows in scroll operations.
23383         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
23384         when EOB was isolated in the last follow window.
23386         * lisp/follow.el (follow-fixed-window): New variable.
23387         (follow-get-scrolled-point): New function.
23388         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
23389         Reformulate the code.  Put `scroll-command' properties on the functions.
23390         Correct minor errors in ...-down's doc string and code.
23391         (follow-calc-win-end): Amend incomplete doc string.  Use
23392         `pos-visible-in-window-p' to check whether EOB is in the window.
23393         (follow-estimate-first-window-start): Correct an off-by-1 error.
23394         (follow-adjust-window): Add handling for explicit scrolling operations.
23396 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
23398         * admin/MAINTAINERS: Add self, plus list some more files
23399         sans maintaners.
23401 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
23403         New DWIM commands for changing letter-case
23405         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
23406         New functions.  (Bug#21501)
23408 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
23410         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
23412 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
23414         Make face realization be more frame-specific
23416         * src/frame.h (struct f): New flag face_change.
23417         * src/xfaces.c (Finternal_make_lisp_face)
23418         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
23419         (update_face_from_frame_parameter): Set the face_change flag only
23420         for the frame whose faces are affected.
23421         * src/xdisp.c (init_iterator): If a frame's face_change flag is
23422         set, free faces only on that frame.
23423         (redisplay_internal): Disable "display optimization 1" if the
23424         frame's face_change flag is set.
23425         (redisplay_window): Don't allow skipping a window's redisplay if
23426         its frame's face_change flag is set.
23427         * src/frame.c (x_set_screen_gamma): Instead of calling
23428         Fclear_face_cache, call clear_face_cache and set
23429         windows_or_buffers_changed to a non-zero value.  This avoids
23430         setting the global face_change flag that triggers face realization
23431         on all frames and thorough redisplay of all of them.
23433         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
23434         clear face cache if the selected frame is a GUI frame.
23436 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
23438         Remove font-latex specific check
23440         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
23441         Use syntax-ppss data to identify verbatim contents.
23443 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
23445         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
23446         Fix some false negatives.
23448 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
23450         Reorder Windows version in Emacs manifests
23452         * nt/emacs-x64.manifest:
23453         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
23454         highest.
23456 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
23458         Update Emacs manifest files for Windows 10
23460         * nt/emacs-x86.manifest:
23461         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
23463 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
23465         Avoid non-ASCII decoding errors in C src files
23467         * src/nsterm.m:
23468         * src/lisp.h:
23469         * src/editfns.c:
23470         * src/doprnt.c: Add 'coding' cookies -- these files include
23471         Unicode characters and should be decoded as UTF-8.
23473 2015-09-25  Alan Mackenzie  <acm@muc.de>
23475         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
23477         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
23478         amend to match current modes and functions.
23479         (edebug-set-initial-mode): Uncomment and change from setting a defun's
23480         `edebug-initial-mode''s property to setting the variable
23481         `edebug-initial-mode'.
23482         (top level): Create new binding C-x C-a C-m for
23483         `edebug-set-initial-mode'.
23485         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
23486         `edebug-set-initial-mode' and its new key binding.
23487         (Edebug Options): Mention the new command in the pertinent place.
23489         * etc/NEWS: Write entry for this change.
23491 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
23493         Avoid non-ASCII decoding errors in Texinfo files
23495         * doc/misc/tramp.texi:
23496         * doc/lispref/strings.texi:
23497         * doc/lispref/positions.texi:
23498         * doc/lispref/help.texi:
23499         * doc/lispref/functions.texi:
23500         * doc/lispintro/emacs-lisp-intro.texi:
23501         * doc/emacs/text.texi:
23502         * doc/emacs/modes.texi:
23503         * doc/emacs/mini.texi:
23504         * doc/emacs/display.texi:
23505         * doc/emacs/custom.texi:
23506         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
23507         Unicode characters and should be decoded as UTF-8.
23508         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
23509         apostrophe unnecessarily.
23511 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
23513         Merge from gnulib
23515         This incorporates:
23516         2015-09-25 c-ctype: rewrite to use inline functions
23517         2015-09-24 maint: add coding cookies to non-ASCII sources
23518         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
23519         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
23520         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
23521         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
23522         * lib/set-permissions.c:
23523         Copy from gnulib.
23525 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
23527         Update publicsuffix.txt from upstream
23529         * etc/publicsuffix.txt: Update from
23530         https://publicsuffix.org/list/effective_tld_names.dat
23531         dated 2015-09-24 17:29:21 UTC.
23533 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
23535         Prevent timers from messing up TTY menus
23537         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
23538         the TTY menu is open.  (Bug#21530)
23540 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
23542         No need to mention K&R C in c-mode intro
23544 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
23546         Fix recent bootstrap problems
23548         * src/syntax.c (parse_sexp_propertize): Fix last fix.
23549         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
23550         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
23552 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
23554         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
23556 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
23558         Properly quote nested xml comments (Bug#6267) (Bug#20001)
23560         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
23561         (nxml-mode): Set comment-quote-nested-function.
23563 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
23565         Allow major-modes full control over quoting nested comments
23567         * lisp/newcomment.el (comment-quote-nested-function): New variable.
23568         (comment-quote-nested-default): New function.
23569         (comment-quote-nested): Use `comment-quote-nested-function'.
23571 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
23573         Prefer CALLN in a few more places
23575         * src/macfont.m (macfont_set_family_cache):
23576         * src/nsterm.m (append2):
23577         * src/xterm.c (x_cr_export_frames):
23578         Prefer CALLN to allocating the arg arrays by hand.
23580 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
23582         Adapt file-notify-test02-events test case
23584         * test/automated/file-notify-tests.el (file-notify-test02-events):
23585         Create a new watch for every test.
23587 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
23589         Continue gfilenotify.c implementation of missing parts
23591         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
23592         `gfile-add-watch' call.
23593         (file-notify-rm-watch): Modify `file-notify-descriptors' only
23594         after calling the low level functions.
23596         * src/gfilenotify.c (dir_monitor_callback): Check, whether
23597         event_type is expected.
23598         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
23599         (Fgfile_rm_watch): Fix typo.
23600         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
23602 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
23604         * src/syntax.c (parse_sexp_propertize): Handle spurious
23605         e_property_truncated flag.
23606         (update_syntax_table_forward): Remove invalid assertion.
23608 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
23610         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
23611         space display spec on text-mode terminals, by calling
23612         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
23613         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
23614         test for a GUI frame.
23616 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
23618         Move let-when-compile to lisp-mode.el
23620         This fixes the bootstrapping problem of `let-when-compile' using
23621         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
23623 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23625         * lisp/url/url-http.el (url-http-parse-headers): Do not
23626         automatically include Authorization header in redirect.
23627         (Bug#21350)
23629 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
23631         Clarify documentation of ':relative-width'
23633         * doc/lispref/display.texi (Specified Space): Document that
23634         ':relative-width' is only supported on GUI frames.
23636 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
23638         Fix 'current-column' in presence of :relative-width
23640         * src/indent.c (check_display_width): Support ':relative-width'
23641         in a display spec that specifies a stretch glyph.  (Bug#21533)
23643 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
23645         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
23647         ... to conform better to CONTRIBUTE guidelines.
23649 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
23651         * lisp/progmodes/prolog.el: Fix indentation of empty line
23653         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
23654         `empty-line-token' element.
23655         (smie-indent-empty-line): New function.
23656         (smie-indent-functions): Add it.
23658         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
23659         behavior and use the new `empty-line-token' element (bug#21526).
23660         (prolog-mode-variables): Fix comment-start-skip setting to match
23661         comment-start.
23663         * test/indent/prolog.prolog: Add nested indentation tests.
23665         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
23666         comment-start-skip not to misuse submatch 1.
23668 2015-09-22  Alan Mackenzie  <acm@muc.de>
23670         Make description of `edebug-initial-mode' user friendly
23672         Fixes bug#21365.
23674         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
23675         description of `edebug-initial-mode' from that of its implementation
23676         to that of its visual effect and use.  Move the paragraph higher up.
23678 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
23680         lisp/progmodes/gud.el (gud-format-command): Fix last commit
23682         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
23683         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
23685 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
23687         Improve last commit to process.c
23689 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
23691         Implement gfile-valid-p
23693         * lisp/filenotify.el (file-notify-callback): Fix typo.
23694         (gfile-valid-p): Remove defalias.
23696         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
23697         the file or directory to be watched is deleted.
23698         (Fgfile_add_watch): Make watch_object a triple.
23699         (Fgfile_rm_watch): Check, whether watch is cancelled already.
23700         (Fgfile_valid_p): New defun.
23701         (syms_of_gfilenotify): Declare Sgfile_valid_p.
23703 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
23705         Remove callback-handled channels from Available set
23707         * src/process.c (wait_reading_process_output): Remove channel from
23708         Available set if it is handled by a callback, e.g., dbus or
23709         inotify (bug#21313).
23711 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
23713         Use lunate epsilon for TeX \epsilon
23715         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
23716         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
23717         \epsilon to use GREEK LUNATE EPSILON SYMBOL
23719 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
23721         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
23723         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
23724         rather than outermost paren (bug#21526).
23726 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
23728         Improve git diff hunk headers for .el, .texi
23730         Problem reported by Alan Mackenzie in:
23731         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
23732         * .gitattributes (*.el, *.texi): New patterns.
23733         * autogen.sh: Configure diff.elisp.xfuncname and
23734         diff.texinfo.xfuncname if using Git.
23736 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
23738         Don't rely on defaults in decoding UTF-8 encoded Lisp files
23740         * lisp/replace.el:
23741         * lisp/textmodes/rst.el:
23742         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
23744 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
23746         Clarify or replace a few \u escapes
23748         * doc/lispref/nonascii.texi (Character Properties)
23749         More-detailed commentary for \u escapes.
23750         * lisp/progmodes/python.el (python--prettify-symbols-alist):
23751         * lisp/replace.el (query-replace-from-to-separator):
23752         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
23753         (rst-mode-syntax-table):
23754         * lisp/whitespace.el (whitespace-display-mappings):
23755         Prefer actual character to \u escape when this makes the code
23756         easier to follow in the usual case where Unicode chars can be
23757         displayed.
23759 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
23761         Pacify GCC -Wmaybe-uninitialized in xdisp.c
23763         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
23764         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
23765         charpos.  The loop should always execute at least once anyway.
23767 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
23769         Signal error on invalid regexp
23771         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
23772         Signal an error when the user tries searching with a regexp
23773         matching the empty string.
23775 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
23777         Another fix of file-notify-tests for w32notify
23779         * test/automated/file-notify-tests.el (file-notify-test02-events):
23780         Further adaptation for w32notify: reduce the number of expected
23781         'changed' events.  (Bug#21435)
23783 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
23785         Adapt tests and manual for w32notify
23787         * doc/lispref/os.texi (File Notifications): w32notify does not
23788         send `attribute-changed' events.
23790         * test/automated/file-notify-tests.el (file-notify--test-with-events):
23791         Simplify parameters.  Adapt all callees.
23792         (file-notify-test02-events): w32notify does not send
23793         `attribute-changed' events.
23794         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
23795         Do not skip in case of w32notify.  Simply ignore this part of the test.
23797 2015-09-21  Dima Kogan  <dima@secretsauce.net>
23799         Fix setting breakpoints when remote-debugging
23801         * lisp/progmodes/gud.el (gud-format-command): Send localized file
23802         names to the debugger running on the remote.  (Bug#13304)
23804 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
23806         Better docstring and parameter name for seq-find
23808         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
23809         the parameter `sentinel' to `default'.
23811         * doc/lispref/sequences.texi (Sequence Functions): Update the
23812           documentation for `seq-find' accordingly.
23814 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
23816         Avoid infinite recursion while displaying box face
23818         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
23819         the previous string/buffer character position under bidi
23820         iteration.  (Bug#21428)
23822 2015-09-21  Anders Lindgren  <andlind@gmail.com>
23824         Keep upper edge unchanged when changing size of NS frame
23826         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
23827         (Bug#21415).
23829 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
23831         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
23832         (prolog-smie-rules): Accommodate standard if/then/else special
23833         indentation.
23834         (prolog-mode): Add . to electric-indent-chars.
23835         (prolog-electric--if-then-else): Re-indent the line before adding space
23836         after the new char (bug#21526).
23838 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
23840         Add prettify symbols to python-mode
23842         * lisp/progmodes/python.el (python-prettify-symbols-alist):
23843         New variable.
23844         (python-mode): Use it
23846 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
23848         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
23850 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
23852         (compilation-error-regexp-alist-alist): Tone down guile-file
23854         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
23855         Make guile-file a bit less enthusiastic (bug#21496).
23857 2015-09-20  Drew Csillag  <drew@thecsillags.com>
23859         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
23860         Fix m4_* highlighting.
23862         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
23863         of commands when they have a "m4_" prefix.
23865 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
23867         '.' -> `.' in doc string
23869         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
23870         individual chars with grave quotes instead of straight quotes, as
23871         this works better when they are translated to curved quotes.
23873 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
23875         Improve file notifications, especially for Tramp
23877         * doc/lispref/files.texi (Magic File Names):
23878         Mention `file-notify-valid-p'.
23880         * doc/lispref/os.texi (File Notifications):
23881         Describe `file-notify-valid-p'.
23883         * etc/NEWS: Add `file-notify-valid-p'.
23885         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
23886         Improve implementation.
23887         (tramp-gvfs-monitor-file-process-filter): Rename from
23888         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
23889         process if appropriate.
23891         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
23892         Improve implementation.
23893         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
23894         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
23895         if appropriate.
23896         (tramp-sh-inotifywait-process-filter): Rename from
23897         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
23898         appropriate.
23900         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
23901         Use `delete-process'.
23902         (tramp-handle-file-notify-valid-p): Check also, that file or
23903         directory to be watched still exists.
23905         * test/automated/file-notify-tests.el (file-notify--test-timeout):
23906         New defun.  Use it at all places a timeout is needed.
23907         (file-notify--test-cleanup): Delete directories recursively.
23908         Cleanup also Tramp connections.
23909         (file-notify-test02-events): Add tests for `attribute-change'.
23910         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
23911         Add tests for `file-notify-rm-watch'.
23913 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
23915         Use %s to format strings instead of splicing them
23917         If FOO might contain quotes that are part of a file or variable
23918         name, the quotes should not be translated when showing FOO’s name
23919         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
23920         is not quite right, as it would translate FOO’s quotes.
23921         Change it to (message "%s: bar" FOO) instead.
23922         * lisp/allout.el (allout-process-exposed):
23923         * lisp/calc/calc-ext.el (calc-do-prefix-help):
23924         * lisp/calc/calc-store.el (calc-store-into):
23925         * lisp/calendar/todo-mode.el (todo-category-completions):
23926         * lisp/cedet/semantic/complete.el (semantic-completion-message):
23927         * lisp/org/ob-latex.el (convert-pdf):
23928         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
23929         * lisp/org/ox-latex.el (org-latex-compile):
23930         * lisp/org/ox-man.el (org-man-compile):
23931         * lisp/org/ox-odt.el (org-odt--export-wrap):
23932         * lisp/org/ox-texinfo.el (org-texinfo-compile):
23933         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
23934         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
23935         (verilog-signals-combine-bus, verilog-read-defines)
23936         (verilog-getopt-file, verilog-expand-dirnames)
23937         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
23938         * lisp/term/ns-win.el (ns-spi-service-call):
23939         Use %s to avoid translating quotes of file names etc. in diagnostics.
23941 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
23943         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
23944         (js-mode): Don't set syntax-begin-function.
23946 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
23948         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
23949         syntax-begin-function is a symbol.
23951 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
23953         Improve documentation of 'run-at-time'
23954         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
23955         In particular, don't refer to 'diary-entry-time', because it is
23956         unavailable until diary-lib is loaded.  Also, refer to
23957         'timer-duration-words', not 'timer-duration', as the latter's doc
23958         string says nothing about the accepted strings.
23960 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
23962         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
23964 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
23966         Repair pdbtrack remote file tracking
23967         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
23968         Rectify pdbtrack so it follows transitions from one remote source
23969         file to the next.
23971 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
23973         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
23975 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
23977         Adapt vc-src to the old-new vc-checkin API
23978         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
23979         additional optional parameter.
23981 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
23983         Add overflow module to CSS property list
23984         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
23985         from CSS Overflow Module Level 3.
23987 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
23989         Fix documentation of "C-u C-x v v"
23990         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
23991         documentation of "C-u C-x v v" match what the code does.
23993         Resurrect the ability to specify a revision in vc-next-action
23994         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
23995         * lisp/vc/vc-dav.el (vc-dav-checkin):
23996         * lisp/vc/vc-git.el (vc-git-checkin):
23997         * lisp/vc/vc-hg.el (vc-hg-checkin):
23998         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
23999         an additional optional argument, the revision to checkin.
24000         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
24001         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
24002         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
24003         a revision to checkin.
24004         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
24005         revision when checking in files.
24006         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
24007         for the details.
24009 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
24011         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
24012         (verilog-decls-princ, verilog-modport-princ)
24013         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
24015 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
24017         Fix the routine for help on Calc's prefixes
24018         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
24019         (calc-do-prefix-help): Use `read-char' to determine the next Calc
24020         command.
24022 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
24024         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
24025         (font-lock-fontify-block): Don't let-bind it.
24026         (font-lock-compile-keywords): Don't use it.
24027         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
24028         start one slot earlier, instead.
24029         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
24030         Don't declare.
24031         (syntax-ppss): Don't use it either.
24032         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
24033         from docstring.
24034         * doc/emacs/display.texi (Font Lock): Don't mention
24035         font-lock-beginning-of-syntax-function.
24036         * doc/lispref/modes.texi (Font Lock Basics): Update description of
24037         font-lock-defaults.
24038         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
24039         * lisp/loadhist.el (unload-feature-special-hooks):
24040         Remove font-lock-beginning-of-syntax-function.
24041         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
24042         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
24043         font-lock-beginning-of-syntax-function.
24045 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
24047         Backslash cleanup in Elisp source files
24048         This patch should not change behavior.  It typically omits backslashes
24049         where they are redundant (e.g., in the string literal "^\$").
24050         In a few places, insert backslashes where they make regular
24051         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
24052         "^\\*", which has the same effect as a regular expression.
24053         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
24054         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
24055         RCS IDs, as that makes it clearer that the backslash is intended.
24057         Some more minor backslash fixes
24058         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
24059         * test/automated/info-xref.el (info-xref-test-write-file):
24060         Double backslashes in strings.
24062         Fix several backslash typos in Elisp strings
24063         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
24064         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
24065         (todo-reset-done-string, todo-reset-comment-string)
24066         (todo-reset-highlight-item):
24067         * lisp/erc/erc-networks.el (erc-networks-alist):
24068         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
24069         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
24070         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
24071         (nntp-telnet-shell-prompt):
24072         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
24073         * lisp/image-dired.el (image-dired-rotate-original):
24074         (image-dired-get-exif-file-name):
24075         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
24076         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
24077         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
24078         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
24079         * lisp/net/shr-color.el (shr-color->hexadecimal):
24080         * lisp/org/org-bibtex.el (org-bibtex-fields):
24081         * lisp/org/org-docview.el (org-docview-export):
24082         * lisp/org/org-entities.el (org-entities):
24083         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
24084         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
24085         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
24086         (ebnf-style-database):
24087         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
24088         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
24089         * lisp/progmodes/sql.el (sql-product-alist):
24090         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
24091         (verilog-error-font-lock-keywords)
24092         (verilog-assignment-operator-re):
24093         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
24094         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
24095         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
24096         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
24097         For example, to get the regular expression ‘\.’ use the string
24098         literal "\\.", not "\." (which is equivalent to ".").
24099         * lisp/emulation/viper-util.el (viper-glob-unix-files):
24100         Remove stray ‘\j’ from string.
24101         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
24102         (nntp-telnet-shell-prompt):
24103         Treat > like $ when matching a shell prompt.
24104         * lisp/progmodes/make-mode.el (makefile-browse):
24105         Properly quote a diagnostic.
24107         Fix minor quoting problems in diagnostics
24108         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
24109         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
24110         Follow text-quoting-style in diagnostic, and quote a file name.
24112 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
24114         * doc/lispref/frames.texi (Cursor Parameters):
24115         Document 'x-stretch-cursor'.
24117 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
24119         Omit unnecessary \ before paren in C docstrings
24120         Although \( is needed in docstrings in Elisp code, it is not needed in
24121         docstrings in C code, since C function definitiions do not start with
24122         a parenthesis.  The backslashes made the docstrings a bit harder to
24123         read and to format in columns.  Also, some C docstrings had ( in
24124         column 1 and this did not appear to be causing any problems.  So,
24125         simplify C docstrings by replacing \( with ( and \) with ).
24127         A few more minor quoting fixes in a script and a text file
24129         Minor quoting fixes in scripts and doc
24130         Prefer straight quotes in random script files, as they are not
24131         converted.  Prefer grave quotes in a couple of places in the manual
24132         that were missed earlier, as these quotes are converted.
24134         Minor backslash fixes in manuals and scripts
24135         * Makefile.in (install-arch-indep):
24136         * admin/charsets/compact.awk:
24137         * admin/charsets/gb180302.awk (gb_to_index):
24138         * admin/charsets/gb180304.awk (gb_to_index):
24139         Avoid undefined behavior in Awk regular expression backslashes.
24140         * doc/misc/efaq.texi (Matching parentheses):
24141         Omit unnecessary backslashes.
24142         * doc/misc/gnus-faq.texi (FAQ 5-8):
24143         Avoid undefined behavior in suggested sed backslash usage.
24145         Add -Wswitch to --enable-gcc-warnings
24146         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
24147         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
24148         * lib-src/etags.c (main, consider_token, C_entries):
24149         * src/coding.c (encode_invocation_designation):
24150         * src/data.c (Ftype_of):
24151         * src/eval.c (Fdefvaralias, default_toplevel_binding)
24152         (Fbacktrace__locals, mark_specpdl):
24153         * src/lisp.h (record_xmalloc):
24154         * src/syntax.c (scan_lists, scan_sexps_forward):
24155         * src/window.c (window_relative_x_coord):
24156         * src/xdisp.c (push_it, pop_it):
24157         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
24158         Error out or do nothing (as appropriate) if a switch statement
24159         with an enum value does not cover all of the enum.
24160         * src/dispextern.h (struct iterator_stack_entry.u.comp):
24161         Remove unused member discovered by using -Wswitch.
24162         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
24163         * src/vm-limit.c (check_memory_limits):
24164         Simplify warning-diagnostic computation by using a table.
24166         etags ‘fatal’ function is now printf-like
24167         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
24168         Also, now static; not clear why it needed to be extern.
24169         (verror): New function, with most of the old contents of ‘error’.
24170         (fatal, error): Use it.
24172 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
24174         More adaptations in file-notify-tests.el
24175         * test/automated/file-notify-tests.el
24176         (file-notify-test05-dir-validity): Skip for w32notify in
24177         batch-mode.  (Bug#21432)
24179 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
24181         Adapt test in file-notify-tests.el
24182         * test/automated/file-notify-tests.el
24183         (file-notify-test04-file-validity): Skip for w32notify in
24184         batch-mode.  Add test lost last commit.
24186 2015-09-16  Dima Kogan  <dima@secretsauce.net>
24188         winner no longer holds on to dead frames
24189         * lisp/winner.el (winner-change-fun): Cull dead frames.
24190         This prevents a potentially massive memory leak.  See:
24191         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
24193 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
24195         Use common report_file_notify_error function
24196         * src/fileio.c (report_file_notify_error): New function.
24197         * src/inotify.c (report_inotify_error): Remove function.
24198         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
24199         (Finotify_rm_watch): Use report_file_notify_error.
24200         * src/lisp.h (report_file_notify_error): Declare external function.
24201         * src/w32notify.c (report_w32notify_error): Remove function.
24202         (Fw32notify_add_watch, Fw32notify_rm_watch):
24203         Use report_file_notify_error.
24205 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
24207         Fix documentation.
24208         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
24209         the documentation of the root mean square.
24211 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
24213         Remove tool_bar_redisplayed_once and associated code.
24214         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
24215         * src/frame.c (make_frame, x_set_font): Remove initialization of
24216         f->tool_bar_redisplayed_once.
24217         * src/w32fns.c (x_change_tool_bar_height):
24218         * src/xfns.c (x_change_tool_bar_height): Don't check for
24219         f->tool_bar_redisplayed_once.
24220         * src/xdisp.c (redisplay_internal): Remove handling of
24221         f->tool_bar_redisplayed_once.
24223 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
24225         Restore some of the quoting in the manuals
24226         * doc/lispref/windows.texi (Coordinates and Windows)
24227         (Coordinates and Windows):
24228         * doc/lispref/variables.texi (Lexical Binding)
24229         (File Local Variables):
24230         * doc/lispref/text.texi (Format Properties):
24231         * doc/lispref/symbols.texi (Symbol Components):
24232         * doc/lispref/strings.texi (Creating Strings):
24233         * doc/lispref/sequences.texi (Sequence Functions):
24234         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
24235         (Search and Replace):
24236         * doc/lispref/processes.texi (Bindat Spec):
24237         * doc/lispref/os.texi (Idle Timers):
24238         * doc/lispref/objects.texi (Basic Char Syntax):
24239         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
24240         * doc/lispref/nonascii.texi (Character Properties):
24241         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
24242         (Mode Line Variables):
24243         * doc/lispref/minibuf.texi (Text from Minibuffer):
24244         * doc/lispref/loading.texi (Autoload):
24245         * doc/lispref/keymaps.texi (Controlling Active Maps):
24246         * doc/lispref/frames.texi (Frame Layout, Size and Position)
24247         (Size Parameters, Implied Frame Resizing):
24248         * doc/lispref/files.texi (Changing Files, Magic File Names):
24249         * doc/lispref/eval.texi (Self-Evaluating Forms):
24250         * doc/lispref/display.texi (Progress, Abstract Display)
24251         (Abstract Display Example, Bidirectional Display):
24252         * doc/lispref/commands.texi (Event Mod):
24253         * doc/emacs/windows.texi (Displaying Buffers):
24254         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
24255         * doc/emacs/text.texi (Enriched Text):
24256         * doc/emacs/programs.texi (MixedCase Words):
24257         * doc/emacs/picture-xtra.texi (Insert in Picture)
24258         (Tabs in Picture):
24259         * doc/emacs/misc.texi (Emacs Server, Printing):
24260         * doc/emacs/mini.texi (Minibuffer History):
24261         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
24262         (Pulling / Pushing):
24263         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
24264         * doc/emacs/help.texi (Help, Help Echo):
24265         * doc/emacs/glossary.texi (Glossary):
24266         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
24267         (Frame Commands):
24268         * doc/emacs/files.texi (Reverting, Saving, Directories):
24269         * doc/emacs/entering.texi (Exiting):
24270         * doc/emacs/emacs.texi (Top):
24271         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
24272         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
24273         appropriate or replace quoting with @dfn.
24274         * doc/misc/ediff.texi (Window and Frame Configuration):
24275         * doc/lispref/processes.texi (Network Feature Testing):
24276         * doc/lispref/display.texi (Display Margins): Quote the phrase
24277         after "a.k.a." where appropriate.
24279 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
24281         Clarify reftex-extra-bindings docs
24282         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
24283         * doc/misc/reftex.texi (Key Bindings): Document that the variable
24284         only has an effect at load-time.
24286 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
24288         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
24289         search argument.  (Bug#21492) (Bug#21493)
24291 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
24293         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
24294         Add pretty symbols for \qquad and \varrho.
24296 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
24298         Add new functions for the root mean square of a (Calc) vector
24299         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
24300         New functions.
24301         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
24302         `calc-vector-rms', add autoloads for `calc-vector-rms' and
24303         `calcFunc-rms'.
24304         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
24305         `calcFunc-rms'.
24306         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
24307         `calc-vector-rms'.
24308         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
24309         command.
24311 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
24313         Add monotone EDE generic project
24314         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
24315         Add monotone generic project.
24317         Revert premature commit
24318         * doc/lispref/files.texi: Revert premature commit of change to
24319         file-name-all-completions.
24321         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
24322         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
24323         with cl-generic defaults.
24324         (elisp--xref-find-references): Add doc string.
24325         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
24326         tests to find bug.
24328         Fix bugs in eieio-oref-default related to class symbols
24329         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
24330         (eieio-oref-default): Handle class properly.
24332 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
24334         Quote “fullboth” when defining it
24335         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
24336         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
24338 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
24340         Minor doc fix in emacs/ack.texi
24341         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
24342         first argument.
24344 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
24346         Adapt tests in auto-revert-tests.el
24347         * test/automated/auto-revert-tests.el (auto-revert--timeout):
24348         Make it a defconst.
24349         (auto-revert--wait-for-revert): New defun.
24350         (auto-revert-test00-auto-revert-mode)
24351         (auto-revert-test01-auto-revert-tail-mode)
24352         (auto-revert-test02-auto-revert-mode-dired): Use it.
24354 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
24356         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
24357         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
24358         (cl-lib-fdefs): Add defgeneric.
24359         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
24360         (eieio-kw, cl-lib-kw, el-kw): Remove.
24362 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
24364         Quote less in manuals
24365         The manuals often used quotes ``...'' when it is better to use @dfn or
24366         @code or capitalized words or no quoting at all.  For example, there is
24367         no need for the `` and '' in “if a variable has one effect for
24368         @code{nil} values and another effect for ``non-@code{nil}'' values”.
24369         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
24370         unnecessary quoting like this, and to use @dfn etc. instead when called
24371         for (Bug#21472).
24373 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
24375         * lisp/custom.el (load-theme): Only compute hash when needed.
24377 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
24379         Pacify --enable-gcc-warnings
24380         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
24382 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
24384         Improve error reports in inotify.c
24385         * src/inotify.c (report_inotify_error): New function.  Clone of
24386         report_w32notify_error.
24387         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
24388         (Finotify_rm_watch): Use it.
24390 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
24392         Fix the file-notify tests for watch validation on w32
24393         * test/automated/file-notify-tests.el
24394         (file-notify-test04-file-validity): Move the directory deletion
24395         out of the file-notify--test-with-events macro.
24396         (file-notify-test04-file-validity)
24397         (file-notify-test05-dir-validity): Enlarge the timeout of
24398         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
24400 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
24402         Use OPEN BOX instead of space for \quad.
24403         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
24404         character for \quad instead of a space.
24406 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
24408         Add missing *.pbm images
24409         * etc/images/connect.pbm: New file.
24410         * etc/images/custom/down-pushed.pbm: New file.
24411         * etc/images/custom/down.pbm: New file.
24412         * etc/images/custom/right-pushed.pbm: New file.
24413         * etc/images/custom/right.pbm: New file.
24414         * etc/images/describe.pbm: New file.
24415         * etc/images/disconnect.pbm: New file.
24416         * etc/images/ezimage/bits.pbm: New file.
24417         * etc/images/ezimage/bitsbang.pbm: New file.
24418         * etc/images/ezimage/box-minus.pbm: New file.
24419         * etc/images/ezimage/box-plus.pbm: New file.
24420         * etc/images/ezimage/box.pbm: New file.
24421         * etc/images/ezimage/checkmark.pbm: New file.
24422         * etc/images/ezimage/dir-minus.pbm: New file.
24423         * etc/images/ezimage/dir-plus.pbm: New file.
24424         * etc/images/ezimage/dir.pbm: New file.
24425         * etc/images/ezimage/doc-minus.pbm: New file.
24426         * etc/images/ezimage/doc-plus.pbm: New file.
24427         * etc/images/ezimage/doc.pbm: New file.
24428         * etc/images/ezimage/info.pbm: New file.
24429         * etc/images/ezimage/key.pbm: New file.
24430         * etc/images/ezimage/label.pbm: New file.
24431         * etc/images/ezimage/lock.pbm: New file.
24432         * etc/images/ezimage/mail.pbm: New file.
24433         * etc/images/ezimage/page-minus.pbm: New file.
24434         * etc/images/ezimage/page-plus.pbm: New file.
24435         * etc/images/ezimage/page.pbm: New file.
24436         * etc/images/ezimage/tag-gt.pbm: New file.
24437         * etc/images/ezimage/tag-minus.pbm: New file.
24438         * etc/images/ezimage/tag-plus.pbm: New file.
24439         * etc/images/ezimage/tag-type.pbm: New file.
24440         * etc/images/ezimage/tag-v.pbm: New file.
24441         * etc/images/ezimage/tag.pbm: New file.
24442         * etc/images/ezimage/unlock.pbm: New file.
24443         * etc/images/gnus/important.pbm: New file.
24444         * etc/images/gnus/mail-send.pbm: New file.
24445         * etc/images/gnus/receipt.pbm: New file.
24446         * etc/images/gnus/toggle-subscription.pbm: New file.
24447         * etc/images/gnus/unimportant.pbm: New file.
24448         * etc/images/gud/all.pbm: New file.
24449         * etc/images/gud/rcont.pbm: New file.
24450         * etc/images/gud/recstart.pbm: New file.
24451         * etc/images/gud/recstop.pbm: New file.
24452         * etc/images/gud/rfinish.pbm: New file.
24453         * etc/images/gud/rnext.pbm: New file.
24454         * etc/images/gud/rnexti.pbm: New file.
24455         * etc/images/gud/rstep.pbm: New file.
24456         * etc/images/gud/rstepi.pbm: New file.
24457         * etc/images/gud/thread.pbm: New file.
24458         * etc/images/lock-broken.pbm: New file.
24459         * etc/images/lock-ok.pbm: New file.
24460         * etc/images/lock.pbm: New file.
24461         * etc/images/mail/copy.pbm: New file.
24462         * etc/images/mail/forward.pbm: New file.
24463         * etc/images/mail/not-spam.pbm: New file.
24464         * etc/images/mail/outbox.pbm: New file.
24465         * etc/images/mail/preview.pbm: New file.
24466         * etc/images/mail/save-draft.pbm: New file.
24467         * etc/images/mh-logo.pbm: New file.
24468         * etc/images/mpc/add.pbm: New file.
24469         * etc/images/mpc/ffwd.pbm: New file.
24470         * etc/images/mpc/next.pbm: New file.
24471         * etc/images/mpc/pause.pbm: New file.
24472         * etc/images/mpc/play.pbm: New file.
24473         * etc/images/mpc/prev.pbm: New file.
24474         * etc/images/mpc/rewind.pbm: New file.
24475         * etc/images/mpc/stop.pbm: New file.
24476         * etc/images/redo.pbm: New file.
24477         * etc/images/smilies/braindamaged.pbm: New file.
24478         * etc/images/smilies/cry.pbm: New file.
24479         * etc/images/smilies/dead.pbm: New file.
24480         * etc/images/smilies/evil.pbm: New file.
24481         * etc/images/smilies/forced.pbm: New file.
24482         * etc/images/smilies/grin.pbm: New file.
24483         * etc/images/smilies/indifferent.pbm: New file.
24484         * etc/images/sort-ascending.pbm: New file.
24485         * etc/images/sort-column-ascending.pbm: New file.
24486         * etc/images/sort-criteria.pbm: New file.
24487         * etc/images/sort-descending.pbm: New file.
24488         * etc/images/sort-row-ascending.pbm: New file.
24489         * etc/images/unchecked.pbm: New file.
24490         * etc/images/zoom-in.pbm: New file.
24491         * etc/images/README: Update instructions for PBM files.
24493         Add separator.pbm tool-bar image
24494         * etc/images/separator.pbm: New file.  Having it avoids the side
24495         effect of changing the tool-bar height when the default font's size
24496         changes and XPM image support is not available, due to the SPC
24497         characters that are left in the Lisp string used to display the tool
24498         bar, because there are no images to display instead of those SPC
24499         characters.
24501         Make show-paren-match face visible on mono-color displays
24502         * lisp/faces.el (show-paren-match): Use the underline face for
24503         mono-color displays.  (Bug#21481)
24505 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
24507         Don’t double-encode non-ASCII mail clipboard
24508         * lisp/mail/mailclient.el (mailclient-send-it):
24509         Also fix the case when mailclient-place-body-on-clipboard-flag
24510         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
24512 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
24514         Adapt file-notify-tests.el test cases
24515         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
24516         * src/inotify.c (Finotify_valid_p): Adapt docstring.
24517         * test/automated/file-notify-tests.el
24518         (file-notify-test03-autorevert)
24519         (file-notify-test04-file-validity)
24520         (file-notify-test04-file-validity-remote)
24521         (file-notify-test05-dir-validity)
24522         (file-notify-test05-dir-validity-remote): Adapt docstring.
24523         (file-notify-test04-file-validity): Let events arrive before
24524         calling final `file-notify-valid-p'.  Do not ignore errors.
24525         (file-notify-test05-dir-validity): Do not manipulate
24526         `temporary-file-directory', it isn't necessary.  Let events arrive
24527         before calling final `file-notify-valid-p'.  Do not ignore errors.
24529 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
24531         Don’t double-encode non-ASCII for mail client
24532         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
24533         Use RFC 6068’s list of unreserved characters.
24534         (mailclient-send-it): When encoding the body as a URL,
24535         first decode it as per Content-Type: and Content-Transfer-Encoding:,
24536         as URLs must use percent-encoded UTF-8 (Bug#21471).
24537         * doc/misc/url.texi (mailto): Update RFC number.
24539 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
24541         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
24543 2015-09-14  Alan Mackenzie  <acm@muc.de>
24545         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
24546         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
24547         `cadr/car'.
24549 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
24551         Clarify documentation of char-table extra slots
24552         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
24553         slot numbers are zero-based.  (Bug#21467)
24555 2015-09-14  Alan Mackenzie  <acm@muc.de>
24557         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
24558         Fixes bug#21449.
24559         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
24560         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
24561         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
24562         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
24563         Insert "\\|\\\\." into regexps which match symbols.
24565 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
24567         Improve the doc string of w32notify-valid-p
24568         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
24569         that removing a watch makes its object invalid.
24571 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
24573         Fix tests for file-notify-valid-p
24574         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
24575         Use delete-directory to delete file-notify--test-tmpfile if it is
24576         a directory.  Likewise for file-notify--test-tmpfile1.
24577         (file-notify-test04-file-validity)
24578         (file-notify-test05-dir-validity): Delete the parent directory of
24579         the test.  Ignore errors when cleaning up after the test.
24581 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
24583         Report file-notify-error in w32notify.c
24584         * src/w32notify.c (report_w32notify_error): New function.
24585         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
24586         errors, instead of calling report_file_error.  (Bug#21432)
24588         Implement w32notify-valid-p
24589         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
24590         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
24591         'identity'.
24593 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
24595         Test file-notify-valid-p
24596         * test/automated/file-notify-tests.el
24597         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
24598         New tests.
24600 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
24602         Fix markup in ELisp manual
24603         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
24604         of the 'alpha' parameter value.  (Bug#21470)
24606 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
24608         Introduce `file-notify-valid-p'
24609         * lisp/filenotify.el (file-notify-valid-p): New defun.
24610         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
24611         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
24612         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
24613         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
24614         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
24615         <file-notify-valid-p>: Add handler.
24616         * lisp/net/tramp.el (tramp-file-name-for-operation):
24617         Add `file-notify-valid-p'.
24618         (tramp-handle-file-notify-valid-p): New defun.
24619         * src/inotify.c (Finotify_valid_p): New defun.
24620         (syms_of_inotify): Declare Sinotify_valid_p.
24622 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
24624         Port Unicode char detection to FreeBSD+svgalib
24625         Problem reported by Ashish SHUKLA in:
24626         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
24627         * configure.ac: Check for struct unipair.unicode instead of for
24628         <linux/kd.h>, since that’s more specific to what the code
24629         actually needs.
24630         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
24632         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
24634 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
24636         Fix vertical cursor motion across overlay strings with newlines
24637         * src/indent.c (Fvertical_motion): Don't leave point in the middle
24638         of an overlay string with newlines, as that will position the
24639         cursor after the string at whatever column is there.  (Bug#21468)
24641 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
24643         Fix tests in file-notify-tests.el
24644         * test/automated/file-notify-tests.el: Remove Tramp declarations.
24645         (file-notify-test00-availability): Print remote command w/o Tramp
24646         internal functions.
24647         (file-notify-test02-events, file-notify-test02-events-remote):
24648         Adapt docstring.
24649         (file-notify-test03-autorevert): Use `format-message' when
24650         inspecting *Messages* buffer.
24652 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
24654         Bind inhibit-modification-hooks rather than a/b-c-f
24655         * lisp/wid-edit.el (widget-editable-list-insert-before)
24656         (widget-editable-list-delete-at):
24657         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
24658         (cperl-font-lock-unfontify-region-function):
24659         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
24660         * lisp/obsolete/longlines.el (longlines-mode):
24661         * lisp/obsolete/fast-lock.el (save-buffer-state):
24662         * lisp/mouse.el (mouse-save-then-kill-delete-region):
24663         * lisp/gnus/message.el (message-hide-headers):
24664         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
24665         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
24666         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
24667         than after/before-change-functions to nil.
24669 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
24671         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
24672         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
24673         the buffers, even if the forced redisplay is interrupted.
24675         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
24677         Merge syntax-propertize--done and parse-sexp-propertize-done
24678         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
24679         (syntax-propertize): Set syntax-propertize--done even if
24680         syntax-propertize-function is nil.  Avoid recursive invocations.
24681         (syntax-propertize-chunks): New var.
24682         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
24683         Simplify.
24684         (parse-sexp-propertize-function): Don't set any more.
24685         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
24686         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
24687         Call Qinternal__syntax_propertize instead of
24688         Vparse_sexp_propertize_function.  Truncate e_property if needed.
24689         (update_syntax_table_forward): Streamline.
24690         (syms_of_syntax): Define Qinternal__syntax_propertize.
24691         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
24693 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
24695         Prefer straight quoting in some text files
24696         Mostly this just changes ` to ' in static text.  Some exceptions:
24697         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
24698         typically does that now.
24699         * admin/quick-install-emacs (TRY, top level):
24700         Use straight quoting in diagnostics.
24701         * src/README: Fix working-directory confusion.
24703         * CONTRIBUTE: Move send-email here from git-workflow.
24705 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
24707         Improve file notifications in Tramp
24708         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
24709         Set proper events to watch for.
24710         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
24711         watched events.
24713 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
24715         Fix NS build with --enable-checking='glyphs'
24716         * src/nsfns.m (unwind_create_frame): Make the preprocessor
24717         conditionals for referencing 'dpyinfo' consistent throughout the
24718         function.  (Bug#21426)
24720 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
24722         Add seq-find
24723         This function is similar to `seq-some' but returns the found element.
24724         In the cases where nil can be the found element, a sentinel optional
24725         argument can be provided to avoid ambiguities.
24726         * lisp/emacs-lisp/seq.el (seq-find): New function.
24727         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
24728         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
24729         seq-find.
24731 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
24733         Document file-notify--test-with-events.
24734         * test/automated/file-notify-tests.el (file-notify--test-with-events):
24735         Add docstring.
24737 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
24739         Report used native library in file-notify-tests.el
24740         * test/automated/file-notify-tests.el
24741         (tramp-get-remote-gvfs-monitor-dir)
24742         (tramp-get-remote-inotifywait): Declare them.
24743         (file-notify-test00-availability): Print used native library.
24745 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
24747         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
24748         (mpc-file-local-copy): Check for absolute path.  Check more config
24749         locations.
24751 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
24753         Improve documentation of categories
24754         * doc/lispref/syntax.texi (Categories): Clarify the example of
24755         using define-category and modify-category-entry.  (Bug#21448)
24757 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
24759         Revert some stray curved quotes I missed earlier
24760         Problem reported by David Kastrup in:
24761         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
24762         * lisp/international/mule-cmds.el (leim-list-header):
24763         Use format-message with an ASCII-only format.
24765         Prefer NUMBERP to spelling it out
24766         * src/editfns.c (styled_format):
24767         * src/frame.h (NUMVAL):
24768         * src/image.c (parse_image_spec):
24769         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
24770         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
24771         * src/process.c (Fsignal_process):
24772         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
24773         * src/xfaces.c (check_lface_attrs):
24774         * src/xselect.c (x_fill_property_data, x_send_client_event):
24775         Use NUMBERP rather than INTEGERP || FLOATP.
24777 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
24779         Improve file-notify-tests
24780         * test/automated/file-notify-tests.el: Use lexical-binding.
24781         (file-notify--test-cleanup): New function.
24782         (file-notify-test00-availability, file-notify-test01-add-watch)
24783         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
24784         (file-notify--test-with-events): New macro.
24785         (file-notify-test02-events): Use it.
24787 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
24789         Add patch-sending instructions to git-workflow
24790         From a suggestion by Mitchel Humpherys in:
24791         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
24792         * admin/notes/git-workflow (Sending patches): New section.
24794         Port to GIFLIB 5.0.6 and later
24795         Problem reported by Mitchel Humpherys in:
24796         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
24797         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
24798         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
24799         (gif_load) [HAVE_GIF]: Use it.
24801 2015-09-10  Glenn Morris  <rgm@gnu.org>
24803         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
24805 2015-09-09  Glenn Morris  <rgm@gnu.org>
24807         * test/automated/file-notify-tests.el (file-notify-test02-events):
24808         Fix recent change.
24810 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
24812         Refix movemail GCC pacification
24813         Problem reported by Ken Brown in:
24814         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
24815         * lib-src/movemail.c (main): Fix previous change.
24817 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
24819         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
24820         Mark unused vars with underscore.
24822         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
24823         (parse_sexp_propertize): ...from here.
24825         * lisp/filenotify.el: Use lexical-binding
24826         (file-notify-add-watch): Avoid add-to-list.
24828 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
24830         Start checking event types in file-notify tests
24831         * test/automated/file-notify-tests.el (file-notify--test-events):
24832         New variable.
24833         (file-notify--test-event-handler): Append received event to
24834         file-notify--test-events for later analysis.
24835         (file-notify-test02-events): Assert that the expected notifications have
24836         arrived in the expected order.
24838 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
24840         Merge from gnulib and texinfo
24841         This incorporates:
24842         2015-08-03 Improve port of stdalign to C++11
24843         * lib/stdalign.in.h: Copy from gnulib.
24844         * doc/misc/texinfo.tex: Copy from texinfo.
24846 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
24848         Make syntax.c call syntax-propertize on demand
24849         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
24850         (parse-sexp-propertize-function): Use it.
24851         (syntax-propertize): Disable parse-sexp-propertize-function.
24852         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
24853         New functions.
24854         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
24855         `parse-sexp-propertize-function'.
24856         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
24857         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
24858         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
24859         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
24860         Don't assume `point' is set.
24862 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
24864         Fix indentation of an @example in ELisp manual
24865         * doc/lispref/syntax.texi (Categories): Untabify the example.
24866         (Bug#21448)
24868 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
24870         Define internal-char-font even if --without-x
24871         The function is used now even in non-graphical environments.
24872         Problem reported by Glenn Morris in:
24873         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
24874         * src/font.c (Finternal_char_font): Move here ...
24875         * src/fontset.c (Finternal_char_font): ... from here.
24877 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
24879         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
24880         Remove warning.
24882 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
24884         Fix display of complex local data types in GDB-MI
24885         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
24886         variable has no value, display "<complex data type>" as a
24887         placeholder, instead of a confusing "nil".  (Bug#21438)
24889 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
24891         Remove redundant redefinition of seq-drop-while from seq.el
24892         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
24894 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
24896         * lisp/emacs-lisp/package.el (package--ensure-init-file):
24897         More robust check for `package-initialize' calls in init file.
24898         This function accepts an optional argument, but calls passing
24899         an argument would not have been detected.
24901 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
24903         Port movemail to RHEL 6 with --enable-gcc-warnings
24904         * lib-src/movemail.c (main): Declare local only if needed.
24906         Port recent Linux console changes to RHEL 6
24907         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
24909         Improvements for curved quotes on Linux consule
24910         This should help Emacs work better out-of-the-box on Linux consoles,
24911         which have only limited support for displaying Unicode characters.
24912         Also, undo the recent change that caused text-quoting-style to
24913         affect quote display on terminals, so that the two features are
24914         independent.  See Alan Mackenzie in:
24915         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
24916         Finally, add a style parameter to startup--setup-quote-display,
24917         so that this function can also be invoked after startup, with
24918         different styles depending on user preference at the time.
24919         * configure.ac: Check for linux/kd.h header.
24920         * doc/emacs/display.texi (Text Display): Document quote display.
24921         * doc/lispref/display.texi (Active Display Table):
24922         * etc/NEWS:
24923         * lisp/startup.el (startup--setup-quote-display, command-line):
24924         text-quoting-style no longer affects quote display.
24925         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
24926         * lisp/international/mule-util.el (char-displayable-p):
24927         * lisp/startup.el (startup--setup-quote-display):
24928         On a text terminal supporting glyph codes, use the reported
24929         glyph codes instead of the terminal coding system, as this
24930         is more accurate on the Linux console.
24931         * lisp/startup.el (startup--setup-quote-display):
24932         New optional arg STYLE.
24933         * src/fontset.c (Finternal_char_font):
24934         Report glyph codes for a text terminal, if they are available.
24935         Currently this is supported only for the Linux console.
24936         * src/termhooks.h (struct terminal): New member glyph-code-table.
24937         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
24938         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
24939         (terminal_glyph_code): New function.
24941 2015-09-08  Juri Linkov  <juri@linkov.net>
24943         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
24944         underline.  (Bug#21433)
24946 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
24948         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
24950 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
24952         Fix double-reporting of rename events with inotify
24953         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
24954         of rename events with inotify (bug#21435).
24956 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
24958         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
24959         (tetris-mode-map): Use it.
24961 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
24963         Remove a few simple cases of global redisplay
24964         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
24965         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
24966         rather than returning a "resized_p" boolean.
24967         (redisplay_internal): Adjust call accordingly.
24968         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
24969         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
24970         tracking of this undesirable situation.
24972         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
24973         * src/process.c (status_notify): Only set the update_mode_line on the
24974         relevant buffers rather than setting it globally.
24976 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
24978         * lisp/electric.el (electric-quote-post-self-insert-function):
24979         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
24980         (electric-quote-mode): Activate everywhere in message-mode.
24982 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
24984         Go back to grave quoting in source-code docstrings etc.
24985         This reverts almost all my recent changes to use curved quotes
24986         in docstrings and/or strings used for error diagnostics.
24987         There are a few exceptions, e.g., Bahá’í proper names.
24988         * admin/unidata/unidata-gen.el (unidata-gen-table):
24989         * lisp/abbrev.el (expand-region-abbrevs):
24990         * lisp/align.el (align-region):
24991         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
24992         (outlineify-sticky):
24993         * lisp/apropos.el (apropos-library):
24994         * lisp/bookmark.el (bookmark-default-annotation-text):
24995         * lisp/button.el (button-category-symbol, button-put)
24996         (make-text-button):
24997         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
24998         * lisp/calc/calc-embed.el (calc-do-embedded):
24999         * lisp/calc/calc-ext.el (calc-user-function-list):
25000         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
25001         * lisp/calc/calc-help.el (calc-describe-key)
25002         (calc-describe-thing, calc-full-help):
25003         * lisp/calc/calc-lang.el (calc-c-language)
25004         (math-parse-fortran-vector-end, math-parse-tex-sum)
25005         (math-parse-eqn-matrix, math-parse-eqn-prime)
25006         (calc-yacas-language, calc-maxima-language, calc-giac-language)
25007         (math-read-giac-subscr, math-read-math-subscr)
25008         (math-read-big-rec, math-read-big-balance):
25009         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
25010         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
25011         (calc-auto-recompute):
25012         * lisp/calc/calc-prog.el (calc-fix-token-name)
25013         (calc-read-parse-table-part, calc-user-define-invocation)
25014         (math-do-arg-check):
25015         * lisp/calc/calc-store.el (calc-edit-variable):
25016         * lisp/calc/calc-units.el (math-build-units-table-buffer):
25017         * lisp/calc/calc-vec.el (math-read-brackets):
25018         * lisp/calc/calc-yank.el (calc-edit-mode):
25019         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
25020         * lisp/calendar/appt.el (appt-display-message):
25021         * lisp/calendar/diary-lib.el (diary-check-diary-file)
25022         (diary-mail-entries, diary-from-outlook):
25023         * lisp/calendar/icalendar.el (icalendar-export-region)
25024         (icalendar--convert-float-to-ical)
25025         (icalendar--convert-date-to-ical)
25026         (icalendar--convert-ical-to-diary)
25027         (icalendar--convert-recurring-to-diary)
25028         (icalendar--add-diary-entry):
25029         * lisp/calendar/time-date.el (format-seconds):
25030         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
25031         (timeclock-make-hours-explicit, timeclock-log-data):
25032         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
25033         (todo-item-mark, todo-check-format)
25034         (todo-insert-item--next-param, todo-edit-item--next-key)
25035         (todo-mode):
25036         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
25037         * lisp/cedet/mode-local.el (describe-mode-local-overload)
25038         (mode-local-print-binding, mode-local-describe-bindings-2):
25039         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
25040         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
25041         * lisp/cus-start.el (standard):
25042         * lisp/cus-theme.el (describe-theme-1):
25043         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
25044         (custom--sort-vars-1, load-theme):
25045         * lisp/descr-text.el (describe-text-properties-1, describe-char):
25046         * lisp/dired-x.el (dired-do-run-mail):
25047         * lisp/dired.el (dired-log):
25048         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
25049         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
25050         (ad-disable-advice, ad-remove-advice, ad-set-argument)
25051         (ad-set-arguments, ad--defalias-fset, ad-activate)
25052         (ad-deactivate):
25053         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
25054         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
25055         (byte-optimize-while, byte-optimize-apply):
25056         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
25057         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
25058         (byte-compile-log-file, byte-compile-format-warn)
25059         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
25060         (byte-compile-cl-warn)
25061         (byte-compile-warn-about-unresolved-functions)
25062         (byte-compile-file, byte-compile--declare-var)
25063         (byte-compile-file-form-defmumble, byte-compile-form)
25064         (byte-compile-normal-call, byte-compile-check-variable)
25065         (byte-compile-variable-ref, byte-compile-variable-set)
25066         (byte-compile-subr-wrong-args, byte-compile-setq-default)
25067         (byte-compile-negation-optimizer)
25068         (byte-compile-condition-case--old)
25069         (byte-compile-condition-case--new, byte-compile-save-excursion)
25070         (byte-compile-defvar, byte-compile-autoload)
25071         (byte-compile-lambda-form)
25072         (byte-compile-make-variable-buffer-local, display-call-tree)
25073         (batch-byte-compile):
25074         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
25075         * lisp/emacs-lisp/chart.el (chart-space-usage):
25076         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
25077         (check-declare-warn, check-declare-file)
25078         (check-declare-directory):
25079         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
25080         (checkdoc-message-text-engine):
25081         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
25082         (cl--describe-class):
25083         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
25084         (cl--generic-describe, cl-generic-generalizers):
25085         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
25086         (cl-symbol-macrolet):
25087         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
25088         * lisp/emacs-lisp/copyright.el (copyright)
25089         (copyright-update-directory):
25090         * lisp/emacs-lisp/edebug.el (edebug-read-list):
25091         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
25092         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
25093         (eieio-oref):
25094         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
25095         * lisp/emacs-lisp/eieio-speedbar.el:
25096         (eieio-speedbar-child-make-tag-lines)
25097         (eieio-speedbar-child-description):
25098         * lisp/emacs-lisp/eieio.el (defclass, change-class):
25099         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
25100         (elint-init-form, elint-check-defalias-form)
25101         (elint-check-let-form):
25102         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
25103         (ert-results-pop-to-backtrace-for-test-at-point)
25104         (ert-results-pop-to-messages-for-test-at-point)
25105         (ert-results-pop-to-should-forms-for-test-at-point)
25106         (ert-describe-test):
25107         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
25108         (find-function-library):
25109         * lisp/emacs-lisp/generator.el (iter-yield):
25110         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
25111         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
25112         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
25113         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
25114         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
25115         (advice--make, define-advice):
25116         * lisp/emacs-lisp/package-x.el (package-upload-file):
25117         * lisp/emacs-lisp/package.el (package-version-join)
25118         (package-disabled-p, package-activate-1, package-activate)
25119         (package--download-one-archive)
25120         (package--download-and-read-archives)
25121         (package-compute-transaction, package-install-from-archive)
25122         (package-install, package-install-selected-packages)
25123         (package-delete, package-autoremove, describe-package-1)
25124         (package-install-button-action, package-delete-button-action)
25125         (package-menu-hide-package, package-menu--list-to-prompt)
25126         (package-menu--perform-transaction)
25127         (package-menu--find-and-notify-upgrades):
25128         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
25129         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
25130         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
25131         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
25132         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
25133         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
25134         (rx-form):
25135         * lisp/emacs-lisp/smie.el (smie-config-save):
25136         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
25137         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
25138         * lisp/emacs-lisp/testcover.el (testcover-1value):
25139         * lisp/emacs-lisp/timer.el (timer-event-handler):
25140         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
25141         (viper-toggle-search-style, viper-kill-buffer)
25142         (viper-brac-function):
25143         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
25144         * lisp/env.el (setenv):
25145         * lisp/erc/erc-button.el (erc-nick-popup):
25146         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
25147         * lisp/eshell/em-dirs.el (eshell/cd):
25148         * lisp/eshell/em-glob.el (eshell-glob-regexp)
25149         (eshell-glob-entries):
25150         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
25151         * lisp/eshell/esh-opt.el (eshell-show-usage):
25152         * lisp/facemenu.el (facemenu-add-new-face)
25153         (facemenu-add-new-color):
25154         * lisp/faces.el (read-face-name, read-face-font, describe-face)
25155         (x-resolve-font-name):
25156         * lisp/files-x.el (modify-file-local-variable):
25157         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
25158         (set-auto-mode, hack-one-local-variable--obsolete)
25159         (dir-locals-set-directory-class, write-file, basic-save-buffer)
25160         (delete-directory, copy-directory, recover-session)
25161         (recover-session-finish, insert-directory)
25162         (file-modes-char-to-who, file-modes-symbolic-to-number)
25163         (move-file-to-trash):
25164         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
25165         * lisp/find-cmd.el (find-generic, find-to-string):
25166         * lisp/finder.el (finder-commentary):
25167         * lisp/font-lock.el (font-lock-fontify-buffer):
25168         * lisp/format.el (format-write-file, format-find-file)
25169         (format-insert-file):
25170         * lisp/frame.el (get-device-terminal, select-frame-by-name):
25171         * lisp/fringe.el (fringe--check-style):
25172         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
25173         * lisp/help-fns.el (help-fns--key-bindings)
25174         (help-fns--compiler-macro, help-fns--parent-mode)
25175         (help-fns--obsolete, help-fns--interactive-only)
25176         (describe-function-1, describe-variable):
25177         * lisp/help.el (describe-mode)
25178         (describe-minor-mode-from-indicator):
25179         * lisp/image.el (image-type):
25180         * lisp/international/ccl.el (ccl-dump):
25181         * lisp/international/fontset.el (x-must-resolve-font-name):
25182         * lisp/international/mule-cmds.el (prefer-coding-system)
25183         (select-safe-coding-system-interactively)
25184         (select-safe-coding-system, activate-input-method)
25185         (toggle-input-method, describe-current-input-method)
25186         (describe-language-environment):
25187         * lisp/international/mule-conf.el (code-offset):
25188         * lisp/international/mule-diag.el (describe-character-set)
25189         (list-input-methods-1):
25190         * lisp/mail/feedmail.el (feedmail-run-the-queue):
25191         * lisp/mouse.el (minor-mode-menu-from-indicator):
25192         * lisp/mpc.el (mpc-playlist-rename):
25193         * lisp/msb.el (msb--choose-menu):
25194         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
25195         * lisp/net/imap.el (imap-interactive-login):
25196         * lisp/net/mairix.el (mairix-widget-create-query):
25197         * lisp/net/newst-backend.el (newsticker--sentinel-work):
25198         * lisp/net/newst-treeview.el (newsticker--treeview-load):
25199         * lisp/net/rlogin.el (rlogin):
25200         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
25201         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
25202         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
25203         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
25204         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
25205         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
25206         (org-babel-goto-named-result):
25207         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
25208         * lisp/org/ob-ref.el (org-babel-ref-resolve):
25209         * lisp/org/org-agenda.el (org-agenda-prepare):
25210         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
25211         (org-clock-resolve):
25212         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
25213         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
25214         * lisp/org/org-habit.el (org-habit-parse-todo):
25215         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
25216         (org-mouse-context-menu):
25217         * lisp/org/org-table.el (org-table-edit-formulas):
25218         * lisp/org/ox.el (org-export-async-start):
25219         * lisp/proced.el (proced-log):
25220         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
25221         (ada-check-matching-start, ada-goto-matching-start):
25222         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
25223         * lisp/progmodes/ada-xref.el (ada-find-executable):
25224         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
25225         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
25226         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
25227         (flymake-start-syntax-check-process):
25228         * lisp/progmodes/python.el (python-shell-get-process-or-error)
25229         (python-define-auxiliary-skeleton):
25230         * lisp/progmodes/sql.el (sql-comint):
25231         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
25232         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
25233         * lisp/recentf.el (recentf-open-files):
25234         * lisp/replace.el (query-replace-read-from)
25235         (occur-after-change-function, occur-1):
25236         * lisp/scroll-bar.el (scroll-bar-columns):
25237         * lisp/server.el (server-get-auth-key):
25238         * lisp/simple.el (execute-extended-command)
25239         (undo-outer-limit-truncate, list-processes--refresh)
25240         (compose-mail, set-variable, choose-completion-string)
25241         (define-alternatives):
25242         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
25243         (command-line-1):
25244         * lisp/subr.el (noreturn, define-error, add-to-list)
25245         (read-char-choice, version-to-list):
25246         * lisp/term/common-win.el (x-handle-xrm-switch)
25247         (x-handle-name-switch, x-handle-args):
25248         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
25249         * lisp/textmodes/reftex-ref.el (reftex-label):
25250         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
25251         * lisp/textmodes/two-column.el (2C-split):
25252         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
25253         (tutorial--find-changed-keys):
25254         * lisp/type-break.el (type-break-noninteractive-query):
25255         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
25256         (wdired-do-perm-changes):
25257         * lisp/whitespace.el (whitespace-report-region):
25258         Prefer grave quoting in source-code strings used to generate help
25259         and diagnostics.
25260         * lisp/faces.el (face-documentation):
25261         No need to convert quotes, since the result is a docstring.
25262         * lisp/info.el (Info-virtual-index-find-node)
25263         (Info-virtual-index, info-apropos):
25264         Simplify by generating only curved quotes, since info files are
25265         typically that ways nowadays anyway.
25266         * lisp/international/mule-diag.el (list-input-methods):
25267         Don’t assume text quoting style is curved.
25268         * lisp/org/org-bibtex.el (org-bibtex-fields):
25269         Revert my recent changes, going back to the old quoting style.
25271 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25273         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
25274         (package--autoloads-file-name)
25275         (package--activate-autoloads-and-load-path): New function.
25276         (package-activate-1): Delegate autoloading and load-path
25277         configuration to `package--activate-autoloads-and-load-path'.
25278         (package--compile): Before compilation, call
25279         `package--activate-autoloads-and-load-path' instead of
25280         `package-activate-1'.
25282 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
25284         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
25286 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
25288         Fix deletion of symlinks to directories on MS-Windows
25289         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
25290         symlink to a directory, try again with 'rmdir'.
25291         (is_symlink): If the argument is a symlink to a directory, set a
25292         bit in the return value to indicate that fact.
25294 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25296         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
25297         When `package-initialize' is called as part of loading the init file,
25298         the user probably doesn't want it to be called again afterwards.
25299         In this situation, `package-initialize' now sets
25300         `package-enable-at-startup' to nil to prevent that.  The user can have
25301         the old behavior by setting this variable to t after the call to
25302         `package-initialize'.  (Bug#21423)
25303         * doc/emacs/package.texi (Package Installation): Document it.
25304         * doc/lispref/package.texi (Packaging Basics): Document it.
25305         * etc/NEWS: Document it.
25307 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
25309         Bump version of ntlm.el to 2.00
25310         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
25311         Add comm keyword.
25313 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
25315         * doc/misc/gnus.texi (Mail Source Specifiers):
25316         Allow :mailbox to be a list.
25318 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
25320         * lisp/progmodes/etags.el (etags-tags-completion-table):
25321         Allow even one non-regular character before the implicit tag name.
25322         Reported at http://emacs.stackexchange.com/questions/15269/.
25324 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
25326         Add support for NTLMv2 authentication
25327         * lisp/net/ntlm.el (ntlm): New customization group.
25328         (ntlm-compatibility-level): New defcustom.
25329         (ntlm-compute-timestamp): New function.
25330         (ntlm-generate-nonce): Likewise.
25331         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
25333 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
25335         * lisp/emacs-lisp/package.el: Rename custom faces.
25336         All of the recently introduced faces, like `package-name-face', have
25337         been renamed to no end in `-face' to comply with the convention
25338         described in (info "(elisp) Defining Faces").
25339         (package-name, package-description)
25340         (package-status-built-in, package-status-external)
25341         (package-status-available, package-status-new)
25342         (package-status-held, package-status-disabled)
25343         (package-status-installed, package-status-dependency)
25344         (package-status-unsigned, package-status-incompat)
25345         (package-status-avail-obso): New faces.
25346         (package-menu--print-info-simple): Use them.
25348 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
25350         mail-source.el: Make the imap mail-source's :mailbox handle a list
25351         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
25352         Allow :mailbox to be  a list.
25354 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
25356         nnimap.el: Handle nil arg to nnimap-request-group
25357         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
25358         This arg isn't always passed in, check it's not nil before making it
25359         into a list.  The active arg will also be nil if the group is new,
25360         check for that.
25362 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
25364         File notifications: Support renaming over directory boundaries
25365         * lisp/filenotify.el (file-notify-handle-event):
25366         (file-notify--pending-event): Adapt docstring.
25367         (file-notify--descriptor, file-notify-callback): Reimplement in
25368         order to support renaming over directory boundaries.
25369         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
25370         * doc/lispref/os.texi (File Notifications): Remove limitation of
25371         file renaming to the same directory.
25373 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
25375         Spelling fix (Bug#21420)
25377 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
25379         Improve the semantic of map-some
25380         Update map-some to return the returned by the predicate, similar to
25381         seq-some.
25382         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
25383           return value of the predicate.
25384         * test/automated/map-tests.el (test-map-some): Update the test to check
25385           for non-nil values only.
25387         Rename map-contains-key-p and map-some-p
25388         Remove the "-p" suffix from both function names.
25389         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
25390           Rename the functions.
25391         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
25392           Update both test functions.
25394         Improve the semantic of seq-some
25395         Update seq-some to return non-nil if the predicate returns non-nil for
25396         any element of the seq, in which case the returned value is the one
25397         returned by the predicate.
25398         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
25399           docstring.
25400         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
25401         * doc/lispref/sequences.texi (Sequence Functions): Update the
25402           documentation for seq-some.
25404         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
25405         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
25406           without the "-p" prefix.
25407         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
25408           the tests accordingly.
25409         * doc/lispref/sequences.texi (Sequence Functions): Update the
25410           documentation for seq.el.
25412 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
25414         text-quoting-style for usage of fn names with ‘’
25415         * lisp/help.el (help--docstring-quote): Don’t assume
25416         text-quoting-style is ‘curve’ when generating usage strings for
25417         functions whose names contain curved quotes.
25419 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
25421         Fix fix for describe-function keybinding confusion
25422         This fixes a bug introduced by the previous patch.
25423         * lisp/help-fns.el (help-fns--signature):
25424         Last arg of help-fns--signature is now a buffer, or nil if a
25425         raw signature is wanted.  All callers changed.
25426         (describe-function-1): Use this to do the right thing with signatures.
25428 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
25430         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
25432         Use PAT rather than UPAT in pcase macros
25433         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
25434         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
25435           than UPAT.
25437 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
25439         Fix describe-function keybinding confusion
25440         * lisp/help-fns.el (describe-function-1): Compute signature
25441         in the original buffer, not in standard-output, so that
25442         substitute-command-keys uses the proper keybindings.
25443         This fixes Bug#21412, introduced in commit
25444         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
25446 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
25448         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
25450 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
25452         Avoid read error messages from 'inotify'
25453         * src/process.c (wait_reading_process_output): Add a
25454         'tls_available' set and manipulate it instead of 'Available' when
25455         checking TLS inputs.  Assign the value to 'Available' only if we
25456         find any TLS data waiting to be read.  This avoids error messages
25457         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
25459 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
25461         Avoid errors in thing-at-point with 2nd argument non-nil
25462         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
25463         sequences.  (Bug#21391)
25465 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
25467         Fix segfaults due to using a stale face ID
25468         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
25469         (display_echo_area_1, redisplay_internal): Call it to avoid
25470         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
25471         faces, which could case a segfault if the frame's face cache was
25472         freed since the last redisplay.  (Bug#21394)
25473         * src/xfaces.c (free_realized_faces):
25474         Call forget_escape_and_glyphless_faces.
25475         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
25477 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
25479         Fix minor problems with " in manual
25481 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
25483         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
25484         multi-hop files.
25486 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
25488         Support automated ‘make check’ in non-C locale
25489         This lets the builder optionally test Emacs behavior in other locales.
25490         The C locale is still the default for tests.
25491         * test/automated/Makefile.in (TEST_LOCALE): New macro.
25492         (emacs): Use it.
25493         * test/automated/flymake-tests.el (flymake-tests--current-face):
25494         Use C locale for subprocesses so that tests behave as expected.
25495         * test/automated/python-tests.el:
25496         (python-shell-prompt-validate-regexps-1)
25497         (python-shell-prompt-validate-regexps-2)
25498         (python-shell-prompt-validate-regexps-3)
25499         (python-shell-prompt-validate-regexps-4)
25500         (python-shell-prompt-validate-regexps-5)
25501         (python-shell-prompt-validate-regexps-6)
25502         (python-shell-prompt-set-calculated-regexps-1):
25503         Adjust expected output to match locale.
25504         * test/automated/tildify-tests.el (tildify-test--test)
25505         (tildify-space-test--test, tildify-space-undo-test--test):
25506         This test assumes UTF-8 encoding.
25508 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
25510         Fix some more docstring etc. quoting problems
25511         Mostly these fixes prevent the transliteration of apostrophes
25512         that should stay apostrophes.  Also, prefer curved quotes in
25513         Bahá’í proper names, as that’s the preferred Bahá’í style and
25514         these names are chock-full of non-ASCII characters anyway.
25515         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
25516         (eieio-defclass-internal):
25517         * lisp/emacs-lisp/eieio.el (defclass):
25518         * lisp/hi-lock.el (hi-lock-mode):
25519         Don’t transliterate Lisp apostrophes when generating a
25520         doc string or diagnostic.
25521         * lisp/international/mule-diag.el (list-coding-systems-1):
25522         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
25523         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
25524         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
25525         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
25526         Substitute quotes before putting them in the help buffer.
25528 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
25530         Re-add the notion of echo_prompt lost in the translation
25531         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
25532         echo_prompt which contains the actual string.  Update all uses.
25533         * src/keyboard.c (kset_echo_prompt): New function.
25534         (echo_update): Add echo_prompt at the very beginning.
25535         (read_char): Remove workaround for bug#19875, not needed any more.
25536         (read_key_sequence): Set echo_prompt rather than echo_string
25537         (bug#21403).
25538         (mark_kboards): Mark echo_prompt.
25540         Fix disassembly of non-compiled lexical functions (bug#21377)
25541         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
25542         * lisp/emacs-lisp/disass.el: Use lexical-binding.
25543         (disassemble): Recognize `closure's as well.
25544         (disassemble-internal): Use indirect-function and
25545         help-function-arglist, and accept `closure's.
25546         (disassemble-internal): Use interactive-form.
25547         (disassemble-1): Use functionp.
25549         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
25550         Don't compose inside verbatim blocks!
25552 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
25554         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
25555         (bug#19441).
25557         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
25559 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
25561         vc-git-mode-line-string: Explicitly re-apply the face
25562         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
25563         the face (bug#21404).
25565 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
25567         Treat initial-scratch-message as a doc string
25568         * doc/emacs/building.texi (Lisp Interaction):
25569         * doc/lispref/os.texi (Startup Summary):
25570         * etc/NEWS: Document this.
25571         * lisp/startup.el (initial-scratch-message):
25572         Look up find-file’s key rather than hardcoding it.
25573         (command-line-1): Substitute the doc string.
25574         This also substitutes the quotes, which will help test display
25575         quoting at startup.
25577         Fix describe-char bug with glyphs on terminals
25578         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
25579         buffers too, so don’t treat them differently from graphic displays.
25580         Without this fix, describe-char would throw an error on a terminal
25581         if given a glyph with a non-default face.
25583         Follow text-quoting-style in display table init
25584         This attempts to fix a problem reported by Alan Mackenzie in:
25585         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
25586         * doc/lispref/display.texi (Active Display Table):
25587         Mention how text-quoting-style affects it.
25588         * doc/lispref/help.texi (Keys in Documentation):
25589         Say how to set text-quoting-style in ~/.emacs.
25590         * etc/NEWS: Document the change.
25591         * lisp/startup.el (startup--setup-quote-display):
25592         Follow user preference if text-quoting-style is set.
25593         (command-line): Setup quote display again if user expresses
25594         a preference in .emacs.
25596 2015-09-02  K. Handa  <handa@gnu.org>
25598         Fix typo
25599         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
25600         -> OTF_positioning_type_components_mask.
25602         Fix previous change
25603         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
25604         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
25606 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
25608         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
25609         Rename from vc-find-file-hook and make interactive.
25610         (vc-find-file-hook): Redefine as obsolete alias.
25612 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25614         Escape ` and ' in doc
25615         Escape apostrophes and grave accents in docstrings if they are
25616         are supposed to stand for themselves and are not quotes.  Remove
25617         apostrophes from docstring examples like ‘'(calendar-nth-named-day
25618         -1 0 10 year)’ that confuse source code with data.  Do some other
25619         minor docstring fixups as well, e.g., insert a missing close quote.
25621 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
25623         Generalize the prefix-command machinery of C-u
25624         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
25625         (prefix-command-preserve-state-hook): New hooks.
25626         (internal-echo-keystrokes-prefix): New function.
25627         (prefix-command--needs-update, prefix-command--last-echo): New vars.
25628         (prefix-command-update, prefix-command-preserve): New functions.
25629         (reset-this-command-lengths): New compatibility definition.
25630         (universal-argument--mode): Call prefix-command-update.
25631         (universal-argument, universal-argument-more, negative-argument)
25632         (digit-argument): Call prefix-command-preserve-state.
25633         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
25634         the "prefix argument" to echo.
25635         (this_command_key_count_reset, before_command_key_count)
25636         (before_command_echo_length): Delete variables.
25637         (echo_add_key): Always add a space.
25638         (echo_char): Remove.
25639         (echo_dash): Don't give up when this_command_key_count is 0, since that
25640         is now the case after a prefix command.
25641         (echo_update): New function, extracted from echo_now.
25642         (echo_now): Use it.
25643         (add_command_key, read_char, record_menu_key): Remove old disabled code.
25644         (command_loop_1): Don't refrain from pushing an undo boundary when
25645         prefix-arg is set.  Remove other prefix-arg special case, now handled
25646         directly in the prefix commands instead.  But call echo_now if there's
25647         a prefix state to echo.
25648         (read_char, record_menu_key): Use echo_update instead of echo_char.
25649         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
25650         (Freset_this_command_lengths): Delete function.
25651         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
25652         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
25653         * lisp/simple.el: Use those new hooks for C-u.
25654         (universal-argument--description): New function.
25655         (prefix-command-echo-keystrokes-functions): Use it.
25656         (universal-argument--preserve): New function.
25657         (prefix-command-preserve-state-hook): Use it.
25658         (command-execute): Call prefix-command-update if needed.
25659         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
25660         (kmacro-step-edit-prefix-index): Delete variables.
25661         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
25662         support for prefix arg commands.
25663         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
25664         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
25665         (cua--shift-control-prefix): Use prefix-command-preserve-state.
25666         Remove now unused arg `arg'.
25667         (cua--prefix-override-handler, cua--prefix-repeat-handler)
25668         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
25669         Update accordingly.
25670         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
25671         any more.
25672         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
25673         if the mark is not set.
25675 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25677         Rework quoting in Emacs Lisp Introduction
25678         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
25679         (if in more detail, type-of-animal in detail, else): Rework the
25680         early example to use " rather than ' so that we don’t burden
25681         complete novices with the low-priority detail of text quoting style.
25682         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
25683         (kill-new function, kill-ring-yank-pointer)
25684         (Complete forward-sentence, Loading Files)
25685         (Code for current-kill, Code for current-kill, yank):
25686         Resurrect the Emacs 22 versions of the code, which uses grave
25687         quoting style in doc strings.
25688         (Complete zap-to-char): Mention how quoting works in doc strings.
25690         Setup quote display only if interactive
25691         * lisp/startup.el (command-line):
25692         Skip call to startup--setup-quote-display if noninteractive.
25693         Without this change, python-shell-prompt-validate-regexps-1
25694         fails in test/automated/python-tests.el when run in an
25695         en_US.utf8 locale on Fedora.
25697 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
25699         Use defalias at the top level
25700         * lisp/gnus/gnus-util.el (gnus-format-message):
25701         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
25702         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
25704 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25706         terminal-init-w32console mimics command-line
25707         Problem reported by Eli Zaretskii.
25708         * lisp/startup.el (startup--setup-quote-display):
25709         New function, refactored from a part of ‘command-line’.
25710         (command-line): Use it.
25711         * lisp/term/w32console.el (terminal-init-w32console):
25712         Use it, so that this function stays consistent with ‘command-line’.
25714         Display replacement quotes with shadow glyphs
25715         * lisp/startup.el (command-line): When displaying ASCII
25716         replacements for curved quotes, use a shadow glyph instead of a
25717         regular one, to avoid ambiguity.
25719 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
25721         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
25723 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25725         Docstring fixes re quotes in C code
25726         Fix some docstring quoting problems, mostly by escaping apostrophe.
25728 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
25730         Some Tramp password fixes
25731         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
25732         of the hops.
25733         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
25734         at the beginning of the command.  Otherwise, it could be
25735         interpreted as password prompt if the remote host echoes the
25736         command.
25737         (tramp-remote-coding-commands): Add "openssl enc -base64".
25739 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
25741         Make vc-git-working-revision always return the commit hash
25742         * lisp/vc/vc-git.el (vc-git-working-revision):
25743         Return the commit hash (bug#21383).
25744         (vc-git--symbolic-ref): New function, extracted from above.
25745         (vc-git-mode-line-string): Use it.
25747 2015-09-01  K. Handa  <handa@gnu.org>
25749         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
25750         * src/ftfont.c (MFLTGlyphFT): New type.
25751         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
25752         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
25753         elements in the array MFLTGlyphString.glyphs.
25755 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
25757         Improve comments in elisp-mode.el, elisp-mode-tests.el
25758         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
25760         Delete Emacs 25 test in mode-local.el
25761         * lisp/cedet/mode-local.el (describe-mode-local-overload):
25762         Fix missed an edit in previous commit.
25764         Show all known mode-local overrides in *Help*
25765         * lisp/cedet/mode-local.el (describe-mode-local-overload):
25766         Assume Emacs 25. Add all known mode-local overrides.
25768 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
25770         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
25771         Ensure that the article where the search word is found is displayed
25772         and pointed to in the summary buffer.
25774 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
25776         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
25777         When the region is active, but is empty (length 0), act as though
25778         the region was not active; that is, put a comment at the end of
25779         the line.  (Bug#21119)
25781 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
25783         Port tls.el to older Emacs
25784         * lisp/net/tls.el (tls-format-message):
25785         Alias to format-message, or format if not available.
25786         (open-tls-stream): Use it.
25788 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
25790         hideif.el: Recognize .h++ as C++ header
25791         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
25793         isearch: Document character folding mode
25794         * lisp/isearch.el (isearch-forward):
25795         Mention `isearch-toggle-character-fold' in doc string.
25797 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
25799         Quoting fixes in ERC and Eshell
25800         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
25801         * lisp/erc/erc-backend.el (define-erc-response-handler):
25802         * lisp/erc/erc-fill.el (erc-fill-static-center):
25803         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
25804         * lisp/eshell/em-glob.el (eshell-glob-entries):
25805         * lisp/eshell/em-hist.el (eshell-save-some-history):
25806         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
25807         (eshell-shuffle-files):
25808         * lisp/eshell/esh-cmd.el (eshell-do-eval):
25809         * lisp/eshell/esh-proc.el (eshell-process-interact)
25810         (eshell-query-kill-processes):
25811         Respect ‘text-quoting-style’ in diagnostics and doc strings.
25813         Quoting fixes in Gnus
25814         * lisp/gnus/gnus-agent.el:
25815         (gnus-agent-possibly-synchronize-flags-server):
25816         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
25817         * lisp/gnus/gnus-eform.el (gnus-edit-form):
25818         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
25819         (gnus-group-nnimap-edit-acl):
25820         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
25821         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
25822         * lisp/gnus/message.el (message-strip-subject-encoded-words)
25823         (message-check-recipients, message-send-form-letter):
25824         * lisp/gnus/mm-decode.el (mm-display-part):
25825         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
25826         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
25827         (mml-smime-get-ldap-cert):
25828         * lisp/gnus/spam-report.el (spam-report-process-queue):
25829         Respect ‘text-quoting-style’ in diagnostics.
25830         * lisp/gnus/gnus-art.el (article-display-face)
25831         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
25832         Use straight quoting in email.
25833         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
25834         Escape apostrophes in doc strings.
25836         Quoting fixes in lisp mail, mh-e, net, url
25837         * lisp/mail/emacsbug.el (report-emacs-bug)
25838         (report-emacs-bug-hook): Use straight quotes in outgoing email,
25839         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
25840         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
25841         * lisp/mail/rmailout.el (rmail-output-read-file-name):
25842         * lisp/net/imap.el (imap-interactive-login):
25843         * lisp/net/tls.el (open-tls-stream):
25844         * lisp/url/url-auth.el (url-register-auth-scheme):
25845         Respect ‘text-quoting-style’ in diagnostics.
25846         * lisp/mh-e/mh-e.el (mh-sortm-args):
25847         Quote docstring example using text quotes, not as a Lisp quote.
25849 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
25851         Fix some byte-compiler warnings in EDE
25852         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
25853         existing autoloader list, rather than add to it.
25854         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
25855         argument to eieio class constructor.
25856         (ede-show-supported-projects): New.
25857         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
25858         with (oref ... name).
25859         (ede-auto-load-project): Use slot name, not initarg key.
25860         * lisp/cedet/ede/generic.el (ede-generic-load)
25861         (ede-generic-find-matching-target): Use slot name, not initarg key.
25862         (ede-find-target): Use oref-default on class name.
25863         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
25864         class constructor.
25865         (ede-enable-generic-projects): Make project type names unique.
25867 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
25869         Fix directory accessibility tests for w32 network volumes
25870         * src/w32.c (faccessat): Don't fail with network volumes without a
25871         share.
25872         (w32_accessible_directory_p): Handle network volumes without a
25873         share.
25875         Fix handling long file names in readdir on MS-Windows
25876         * src/w32.c (sys_readdir): Append "\*" to the directory after
25877         converting it to UTF-16/ANSI, not before, to avoid overflowing the
25878         260-character limit on file names in filename_to_utf16/ansi.
25880         Make file-accessible-directory-p reliable on MS-Windows
25881         * src/w32.c (w32_accessible_directory_p): New function.
25882         * src/w32.h (w32_accessible_directory_p): Add prototype.
25883         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
25884         w32_accessible_directory_p to test a directory for accessibility
25885         by the current user.  (Bug#21346)
25886         (Ffile_accessible_directory_p): Remove the w32 specific caveat
25887         from the doc string.
25889 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
25891         Don't call do_pending_window_change in signal handlers (Bug#21380)
25892         * src/gtkutil.c (xg_frame_resized):
25893         * src/xterm.c (x_set_window_size):
25894         * src/w32term.c (x_set_window_size): Don't call
25895         do_pending_window_change.
25897 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
25899         Quoting fixes in lisp/org
25900         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
25901         (org-tags-view):
25902         * lisp/org/org-capture.el (org-capture-mode)
25903         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
25904         (org-ctags-ask-append-topic):
25905         * lisp/org/org.el (org-time-string-to-time)
25906         (org-time-string-to-absolute):
25907         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
25908         (org-ctags-ask-append-topic):
25909         * lisp/org/org.el (org-time-string-to-time)
25910         (org-time-string-to-absolute):
25911         Respect ‘text-quoting-style’ in diagnostics.
25912         * lisp/org/org-agenda.el (org-agenda-custom-commands)
25913         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
25914         * lisp/org/org-capture.el (org-capture-fill-template):
25915         Avoid contraction in output file that might be ASCII.
25916         * lisp/org/org-compat.el (format-message):
25917         Define if not already defined, for backward compatibility.
25918         * lisp/org/org-src.el (org-edit-src-save):
25919         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
25920         Escape apostrophes in diagnostics.
25922         Treat “instead” strings as docstrings
25923         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
25924         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
25925         Substitute quotes in instead strings.
25927 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
25929         Better documentation of seq-let
25930         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
25931         documentation of seq-let.
25933 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
25935         * lisp/international/ccl.el: Fix quoting.
25937         Quoting fixes in lisp/international and lisp/leim
25938         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
25939         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
25940         * lisp/international/mule-cmds.el:
25941         (select-safe-coding-system-interactively, leim-list-file-name):
25942         * lisp/international/quail.el (quail-use-package, quail-help):
25943         * lisp/international/titdic-cnv.el (tit-process-header)
25944         (miscdic-convert):
25945         Respect text quoting style in doc strings and diagnostics.
25946         * lisp/international/quail.el (lisp/international/quail.el):
25947         * lisp/leim/quail/ethiopic.el ("ethiopic"):
25948         Escape apostrophes in doc strings.
25950         Make ‘text-quoting-style’ a plain defvar
25951         It doesn’t need customization, as it’s likely useful only by experts.
25952         Suggested by Stefan Monnier in:
25953         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
25954         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
25956         Quoting fixes in lisp/textmodes
25957         * lisp/textmodes/bibtex.el (bibtex-validate)
25958         (bibtex-validate-globally, bibtex-search-entries):
25959         * lisp/textmodes/ispell.el (ispell-command-loop):
25960         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
25961         * lisp/textmodes/texinfmt.el (texinfmt-version)
25962         (texinfo-format-region, texinfo-format-buffer-1):
25963         * lisp/textmodes/two-column.el (2C-split):
25964         Respect text quoting style in doc strings and diagnostics.
25965         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
25966         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
25967         Escape apostrophes in doc strings.
25969         Documentation fixes re quotes
25970         Prefer curved quotes in examples if users will typically see
25971         curved quotes when the examples run.
25972         Mention format-message when appropriate.
25973         Don’t use @code in examples.
25974         Quote an apostrophe with @kbd.
25976         Quoting fixes in lisp/progmodes
25977         * lisp/progmodes/cc-engine.el (c-bos-report-error):
25978         * lisp/progmodes/cpp.el (cpp-edit-reset):
25979         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
25980         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
25981         (etags-tags-apropos, list-tags, tags-apropos):
25982         * lisp/progmodes/executable.el (executable-set-magic):
25983         * lisp/progmodes/octave.el (octave-sync-function-file-names)
25984         (octave-help, octave-find-definition-default-filename)
25985         (octave-find-definition):
25986         Respect text quoting style in doc strings and diagnostics.
25987         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
25988         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
25989         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
25990         Escape apostrophes in doc strings.
25991         * lisp/progmodes/cmacexp.el (c-macro-expansion):
25992         Use straight quoting in ASCII comment.
25993         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
25994         (idlwave-pad-keyword):
25995         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
25996         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
25997         (vhdl-electric-semicolon, vhdl-electric-comma)
25998         (vhdl-electric-period, vhdl-electric-equal):
25999         Use directed quotes in diagnostics and doc strings.
26001 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
26003         Minor documentation and NEWS tweak
26004         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
26005         Add an index entry.
26006         * etc/NEWS: Fix a typo in character-fold-to-regexp.
26008 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
26010         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
26011         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
26012         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
26013         Adapt test.
26015 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
26017         Text quoting fixes in cedet, emulation, emacs-lisp
26018         * lisp/cedet/ede.el (ede-check-project-directory):
26019         * lisp/cedet/semantic/analyze/debug.el
26020         (semantic-analyzer-debug-insert-include-summary):
26021         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
26022         * lisp/cedet/semantic/decorate/include.el
26023         (semantic-decoration-unknown-include-describe)
26024         (semantic-decoration-all-include-summary):
26025         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
26026         * lisp/emulation/edt.el (edt-load-keys):
26027         * lisp/emulation/viper-cmd.el
26028         (viper-display-current-destructive-command)
26029         (viper-query-replace, viper-brac-function):
26030         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
26031         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
26032         Respect text quoting style in doc string or diagnostic.
26033         * lisp/cedet/mode-local.el (describe-mode-local-overload):
26034         Use format-message to avoid overtranslating quotes.
26035         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
26036         Escape an apostrophe in a docstring.
26037         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
26039 2015-08-29  Daniel Colascione  <dancol@dancol.org>
26041         Fix which-func for curly quotes: look for symbol, not message
26042         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
26043         imenu-unavailable error symbol instead of trying to match message
26044         exactly.
26045         * lisp/imenu.el (imenu-unavailable): New error.
26046         (imenu-unavailable-error): New function.
26048 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
26050         Fix Python tests on MS-Windows
26051         * test/automated/python-tests.el
26052         (python-shell-calculate-command-1): Run python-shell-interpreter
26053         through shell-quote-argument before comparing with what
26054         python-shell-calculate-command returns.
26055         (python-shell-calculate-pythonpath-1)
26056         (python-shell-calculate-pythonpath-2)
26057         (python-shell-calculate-process-environment-2): Use path-separator
26058         instead of a literal ':'.
26059         (python-shell-calculate-exec-path-2)
26060         (python-shell-calculate-exec-path-3)
26061         (python-shell-calculate-exec-path-4)
26062         (python-shell-with-environment-1)
26063         (python-shell-with-environment-2): Run "/env/bin" through
26064         expand-file-name before comparing with exec-path.  (Bug#21375)
26066 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
26068         Use Core Text types/functions/variables/enumerators directly
26069         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
26070         (CharacterCollection): Remove typedefs.  All uses replaced with
26071         definitions.
26072         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
26073         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
26074         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
26075         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
26076         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
26077         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
26078         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
26079         definitions.
26080         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
26081         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
26082         (MAC_FONT_FORMAT_BITMAP)
26083         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
26084         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
26085         All uses replaced with definitions.
26086         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
26087         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
26088         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
26089         Add compatibility enumerators for older versions.
26090         (mac_font_descriptor_create_with_attributes)
26091         (mac_font_descriptor_create_matching_font_descriptors)
26092         (mac_font_descriptor_create_matching_font_descriptor)
26093         (mac_font_descriptor_copy_attribute)
26094         (mac_font_descriptor_supports_languages)
26095         (mac_font_create_with_name, mac_font_get_size)
26096         (mac_font_copy_family_name, mac_font_copy_character_set)
26097         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
26098         (mac_font_get_descent, mac_font_get_leading)
26099         (mac_font_get_underline_position)
26100         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
26101         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
26102         replaced with definitions.
26103         (mac_font_create_preferred_family_for_attributes)
26104         (mac_font_get_advance_width_for_glyph)
26105         (mac_font_get_bounding_rect_for_glyph)
26106         (mac_font_create_available_families, mac_font_shape):
26107         Remove macros for renamed functions.
26108         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
26109         * src/macfont.m (mac_font_descriptor_supports_languages):
26110         Rename from mac_ctfont_descriptor_supports_languages.
26111         (mac_font_create_preferred_family_for_attributes): Rename from
26112         mac_ctfont_create_preferred_family_for_attributes.
26113         (mac_font_get_advance_width_for_glyph): Rename from
26114         mac_ctfont_get_advance_width_for_glyph.
26115         Use kCTFontOrientationDefault also for older versions.
26116         (mac_font_get_bounding_rect_for_glyph): Rename from
26117         mac_ctfont_get_bounding_rect_for_glyph.
26118         Use kCTFontOrientationDefault also for older versions.
26119         (mac_font_create_available_families): Rename from
26120         mac_ctfont_create_available_families.
26121         (mac_font_equal_in_postscript_name): Rename from
26122         mac_ctfont_equal_in_postscript_name.  All uses changed.
26123         (mac_font_create_line_with_string_and_font): Rename from
26124         mac_ctfont_create_line_with_string_and_font.  All uses changed.
26125         (mac_font_shape): Rename from mac_ctfont_shape.
26126         (mac_font_family_compare): Remove unused declaration.
26128 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
26130         Fix minor text quoting in calc, calendar, vc
26131         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
26132         * lisp/calc/calc-help.el (calc-j-prefix-help):
26133         * lisp/calc/calc-misc.el (calc-help):
26134         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
26135         Escape an apostrophe in a docstring.
26136         * lisp/calc/calc-forms.el (calc-hms-notation):
26137         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
26138         Escape an apostrophe in a diagnostic.
26139         * lisp/calc/calc-misc.el (calc-help):
26140         * lisp/calendar/diary-lib.el (diary-include-files):
26141         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
26142         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
26143         * lisp/vc/ediff-diff.el (ediff-same-contents):
26144         * lisp/vc/ediff-merg.el (ediff-re-merge):
26145         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
26146         * lisp/vc/ediff-util.el (ediff-test-save-region)
26147         (ediff-status-info):
26148         * lisp/vc/ediff.el (ediff-merge-revisions)
26149         (ediff-merge-revisions-with-ancestor):
26150         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
26151         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
26152         Respect text quoting style in doc string or diagnostic.
26153         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
26154         * lisp/vc/add-log.el (change-log-goto-source):
26155         Avoid double-formatting.
26156         * lisp/vc/ediff-init.el (format-message):
26157         New backward-compatibility alias.
26159 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
26161         Fix minor text quoting problems in lisp top level
26162         * lisp/apropos.el (apropos-describe-plist):
26163         * lisp/cus-theme.el (customize-themes):
26164         * lisp/dired.el (dired-log):
26165         * lisp/help-fns.el (describe-variable):
26166         * lisp/hexl.el (hexl-insert-multibyte-char):
26167         * lisp/info.el (Info-finder-find-node):
26168         * lisp/json.el (json-read-string):
26169         * lisp/novice.el (disabled-command-function)
26170         (disabled-command-function):
26171         * lisp/startup.el (normal-mouse-startup-screen):
26172         * lisp/woman.el (WoMan-log, WoMan-warn):
26173         Respect text quoting style in doc string or diagnostic.
26174         * lisp/replace.el (replace-character-fold):
26175         * src/syntax.c (Fmodify_syntax_entry):
26176         Escape an apostrophe in a docstring.
26177         * lisp/tempo.el (tempo-define-template):
26178         Remove confusing apostrophe from docstring.
26179         * lisp/whitespace.el (whitespace-mark-x):
26180         Use directed quotes in docstring.
26182 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
26184         Fix indentation rule in css-mode
26185         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
26186         brackets in presence of pseudo-selectors.  (Bug#21328)
26188 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
26190         Fix a bug in recording a macro while flyspell-mode is active
26191         * lisp/subr.el (sit-for): Don't call read-event when recording a
26192         macro.  (Bug#21329)
26194 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
26196         Tweak startup screen quoting
26197         * lisp/startup.el (normal-splash-screen): Use standard
26198         "M-" abbrevation rather than a confusingly-different one.
26199         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
26201 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
26203         Add test case for ‘format’ bug and refactor
26204         * src/editfns.c (styled_format): Refactor internally, mostly by
26205         moving declarations closer to uses.  This should not affect behavior.
26206         * test/automated/textprop-tests.el (textprop-tests-format): New test.
26208         Fix ‘format’ bug with property offsets
26209         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
26210         bug in calculating string property offsets (Bug#21351).
26212         Use straight quotes in lib-src diagnostics
26213         These auxiliary programs can’t use Emacs’s text-quoting-style,
26214         and it’s too much trouble to redo that mechanism by hand.
26215         So just use straight quotes for now.
26216         * lib-src/ebrowse.c (main):
26217         * lib-src/emacsclient.c (decode_options, main):
26218         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
26219         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
26220         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
26221         (none_help, print_language_names, print_help, add_regex)
26222         (suggest_asking_for_help):
26223         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
26224         Use straight quotes in diagnostics.
26226         ‘text-quoting-style’ fixes for admin
26227         * admin/admin.el (cusver-scan, cusver-check):
26228         * admin/authors.el (authors-canonical-file-name):
26229         * admin/bzrmerge.el (bzrmerge-missing):
26230         Respect ‘text-quoting-style’ in diagnostics.
26232 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
26234         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
26235         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
26236         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
26237         * doc/lispref/internals.texi (Writing Emacs Primitives):
26238         * etc/NEWS:
26239         Document the change.
26240         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
26241         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
26242         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
26243         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
26244         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
26245         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
26246         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
26247         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
26248         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
26249         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
26250         Remove.  All uses removed.  The code now assumes
26251         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
26252         * src/bytecode.c (relocate_byte_stack):
26253         Rename from unmark_byte_stack, since it now only relocates.
26254         All callers changed.
26255         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
26256         with GCPROs removed.
26257         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
26258         * test/automated/finalizer-tests.el (finalizer-basic)
26259         (finalizer-circular-reference, finalizer-cross-reference)
26260         (finalizer-error):
26261         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
26262         Remove tests, as they depend on gc-precise.
26264 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
26266         Improve seq-concatenate for new sequence types
26267         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
26268         ensure that concatenation happens on sequences only.  This makes it
26269         possible to use `seq-concatenate' for new types of seqs.
26270         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
26271         New function used in `seq-concatenate'.
26272         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
26273         for seq-into-sequence.
26275 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
26277         Add mode local overrides to xref-find-definitions
26278         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
26279         (xref-mode-local-overload): New; add mode local overrides to
26280         xref-find-definitions.
26281         * test/automated/elisp-mode-tests.el: Add mode local override tests.
26282         (xref-elisp-test-run): Handle indented defuns.
26283         (xref-elisp-generic-*): Improve doc strings.
26284         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
26285         (elisp--xref-find-definitions): Use it.
26287         Add mode local overrides to describe-function
26288         * lisp/cedet/mode-local.el (describe-mode-local-overload):
26289         New; add mode local overrides to describe-function.
26290         * etc/NEWS: Document change.
26292 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
26294         Prefer straight quoting in some etc text files
26295         These files are plain text and might be used by non-Emacs apps.
26296         They’re mostly ASCII, so just use straight quotes.
26298         Fix quoting in ‘message_with_string’
26299         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
26300         should work now.
26301         * src/xdisp.c (message_to_stderr): New function, refactored from
26302         part of ‘message3_nolog’.
26303         (message3_nolog): Use it.
26304         (message_with_string): Use it.  Don’t mishandle NUL bytes when
26305         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
26306         Use ‘format-message’, not ‘format’, so that quotes are translated.
26308 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
26310         Mention false positives of file-accessible-directory on w32
26311         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
26312         (Bug#21346)
26314 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
26316         Treat error strings as help
26317         * src/print.c (print_error_message): Translate quotes and command
26318         keys in errmsg so that users see, e.g., "Symbol’s value as
26319         variable is void: foo" when text-quoting-style is curved.
26321 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
26323         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
26325 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
26327         Top-level elisp files respect ‘text-quoting-style’
26328         In top-level elisp files, use format-message in diagnostic formats,
26329         so that they follow user preference as per ‘text-quoting-style’
26330         rather than being hard-coded to quote `like this'.
26331         * lisp/allout.el (allout-get-configvar-values):
26332         * lisp/apropos.el (apropos-symbols-internal):
26333         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
26334         (dired-do-create-files-regexp, dired-create-files-non-directory):
26335         * lisp/dired-x.el (dired-do-run-mail):
26336         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
26337         * lisp/disp-table.el (standard-display-european):
26338         * lisp/find-dired.el (find-dired):
26339         * lisp/forms.el (forms-mode):
26340         * lisp/ido.el (ido-buffer-internal):
26341         * lisp/info.el (Info-index-next):
26342         * lisp/outline.el (outline-invent-heading):
26343         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
26344         * lisp/proced.el (proced-log):
26345         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
26346         * lisp/recentf.el (recentf-open-files, recentf-save-list):
26347         * lisp/savehist.el (savehist-save):
26348         * lisp/server.el (server-ensure-safe-dir):
26349         * lisp/ses.el (ses-rename-cell):
26350         * lisp/simple.el (list-processes--refresh):
26351         * lisp/startup.el (command-line):
26352         * lisp/strokes.el (strokes-unset-last-stroke)
26353         (strokes-execute-stroke):
26354         Use format-message so that quotes are restyled.
26355         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
26356         Don’t quote ‘raised’.
26357         * lisp/descr-text.el (describe-char):
26358         * lisp/dirtrack.el (dirtrack-debug-message):
26359         * lisp/hexl.el (hexl-insert-multibyte-char):
26360         Apply substitute-command-keys to help string.
26361         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
26362         (wdired-do-perm-changes):
26363         Let dired-log do the formatting.
26365 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26367         Go back to grave quoting in Tramp
26368         * lisp/net/tramp-adb.el:
26369         * lisp/net/tramp-cache.el:
26370         * lisp/net/tramp-compat.el:
26371         * lisp/net/tramp-gvfs.el:
26372         * lisp/net/tramp-gw.el:
26373         * lisp/net/tramp-sh.el:
26374         * lisp/net/tramp-smb.el:
26375         * lisp/net/tramp.el:
26376         Stick with grave quoting in diagnostics strings.  This is more
26377         portable to older Emacs, desirable for Tramp.
26378         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
26379         for diagnostic that needs requoting.
26380         * lisp/net/tramp-compat.el (format-message):
26381         Fall back on simple ‘format’, since that’s good enough now.
26383         Go back to grave quoting in Gnus
26384         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
26385         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
26386         (gnus-agent-fetch-headers):
26387         * lisp/gnus/gnus-int.el (gnus-start-news-server):
26388         * lisp/gnus/gnus-registry.el:
26389         (gnus-registry--split-fancy-with-parent-internal)
26390         (gnus-registry-post-process-groups):
26391         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
26392         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
26393         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
26394         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
26395         * lisp/gnus/spam.el (spam-check-blackholes):
26396         Stick with grave quoting in diagnostics strings.  This is more
26397         portable to older Emacs, desirable for Gnus.
26399         Fix customization of text-quoting-style
26400         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
26401         * lisp/wid-edit.el (widget-docstring):
26402         Get raw docstring here since it’s cooked later and should not be
26403         cooked twice.
26404         * lisp/cus-edit.el (custom-group-value-create):
26405         Cook the docstring before inserting it.
26406         * lisp/cus-start.el (text-quoting-style): Quote the customization
26407         docstrings according to the new rules.  Give curved examples.
26409         format-message now curves ` and '
26410         That way, the caller doesn’t have to use curved quotes to
26411         get diagnostics that match the text-quoting-style preferences.
26412         Suggested by Dmitry Gutov in:
26413         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
26414         This means we no longer need %qs, so remove that format.
26415         While we’re at it, fix an unlikely bug and lessen the pressure
26416         on the garbage collector by processing the string once rather
26417         than twice in the usual case.
26418         * doc/lispref/strings.texi (Formatting Strings):
26419         * etc/NEWS: Document this.
26420         * lisp/subr.el (format-message): Remove; now done in C.
26421         * src/callint.c (Fcall_interactively):
26422         * src/editfns.c (Fmessage, Fmessage_box):
26423         Use Fformat_message instead of Finternal__text_restyle
26424         followed by Fformat.
26425         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
26426         uLSQM and uRSQM.
26427         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
26428         when pure ASCII now suffices.  Fix unlikely bug when parsing
26429         unibyte string containing non-ASCII bytes.  Use inline code
26430         rather than memcpy, as it’s a tiny number of bytes.
26431         (Finternal__text_restyle): Remove; no longer used.
26432         (syms_of_doc): Don’t declare it.
26433         * src/editfns.c (Fformat): Rewrite in terms of new function
26434         ‘styled_format’.
26435         (Fformat_message): New function, moved here from subr.el.
26436         (styled_format): New function, with the old guts of Fformat,
26437         except it now optionally transliterates quotes, and it transliterates
26438         traditional grave accent and apostrophe quoting as well.
26439         Remove recently-added q flag; no longer needed or used.
26440         (syms_of_editfns): Define format-message.
26441         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
26442         Remove; no longer need to be global symbols.
26443         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
26444         so that callers can use `%s'.
26445         * src/image.c (image_size_error, xbm_load_image, xbm_load)
26446         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
26447         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
26448         (svg_load_image, gs_load, x_kill_gs_process):
26449         * src/lread.c (load_warn_old_style_backquotes):
26450         * src/xfaces.c (load_pixmap):
26451         * src/xselect.c (x_clipboard_manager_error_1):
26452         Use `%s' instead of %qs in formats.
26454 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
26456         Minor fixes in doc/emacs/search.texi
26457         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
26458         (Special Isearch): Use @w{} to generate several consecutive spaces
26459         with Texinfo 6.  (Bug#21345)
26461 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
26463         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
26464         (tramp-awk-coding-test): New defconsts.
26465         (tramp-remote-coding-commands): Use them.
26466         (tramp-find-inline-encoding): Check for Perl only if necessary.
26468 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
26470         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
26471         index entries for the special form `quote'.
26473 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26475         Spelling fixes
26477         Gnus format-message typo fix
26478         * lisp/gnus/gnus-util.el (gnus-format-message):
26479         Fix typo when running in older Emacs.
26481         Prefer directed to neutral quotes in docstings and diagnostics.
26482         In docstrings, escape apostrophes that would otherwise be translated
26483         to curved quotes using the newer, simpler rules.
26484         * admin/unidata/unidata-gen.el (unidata-gen-table):
26485         * lisp/align.el (align-region):
26486         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
26487         * lisp/bookmark.el (bookmark-default-annotation-text):
26488         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
26489         * lisp/calc/calc-lang.el (math-read-giac-subscr)
26490         (math-read-math-subscr):
26491         * lisp/calc/calc-misc.el (report-calc-bug):
26492         * lisp/calc/calc-prog.el (calc-fix-token-name)
26493         (calc-read-parse-table-part):
26494         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
26495         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
26496         * lisp/dabbrev.el (dabbrev-expand):
26497         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
26498         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
26499         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
26500         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
26501         * lisp/erc/erc-button.el (erc-nick-popup):
26502         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
26503         * lisp/eshell/em-dirs.el (eshell/cd):
26504         * lisp/eshell/em-glob.el (eshell-glob-regexp):
26505         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
26506         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
26507         * lisp/eshell/esh-opt.el (eshell-show-usage):
26508         * lisp/files-x.el (modify-file-local-variable):
26509         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
26510         (filesets-update-pre010505):
26511         * lisp/find-cmd.el (find-generic, find-to-string):
26512         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
26513         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
26514         (gnus-agent-fetch-headers):
26515         * lisp/gnus/gnus-int.el (gnus-start-news-server):
26516         * lisp/gnus/gnus-registry.el:
26517         (gnus-registry--split-fancy-with-parent-internal):
26518         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
26519         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
26520         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
26521         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
26522         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
26523         * lisp/gnus/spam.el (spam-check-blackholes):
26524         * lisp/mail/feedmail.el (feedmail-run-the-queue):
26525         * lisp/mpc.el (mpc-playlist-rename):
26526         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
26527         * lisp/net/mairix.el (mairix-widget-create-query):
26528         * lisp/net/tramp-cache.el:
26529         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
26530         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
26531         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
26532         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
26533         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
26534         (org-babel-goto-named-result):
26535         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
26536         * lisp/org/ob-ref.el (org-babel-ref-resolve):
26537         * lisp/org/org-agenda.el (org-agenda-prepare):
26538         * lisp/org/org-bibtex.el (org-bibtex-fields):
26539         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
26540         (org-clock-resolve):
26541         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
26542         * lisp/org/org-habit.el (org-habit-parse-todo):
26543         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
26544         (org-mouse-context-menu):
26545         * lisp/org/org-table.el (org-table-edit-formulas):
26546         * lisp/org/ox.el (org-export-async-start):
26547         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
26548         (dun-rooms, dun-endgame-questions):
26549         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
26550         * lisp/progmodes/ada-xref.el (ada-find-executable):
26551         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
26552         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
26553         (flymake-start-syntax-check-process):
26554         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
26555         * lisp/progmodes/sql.el (sql-comint):
26556         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
26557         * lisp/server.el (server-get-auth-key):
26558         * lisp/subr.el (version-to-list):
26559         * lisp/textmodes/reftex-ref.el (reftex-label):
26560         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
26561         * lisp/vc/ediff-diff.el (ediff-same-contents):
26562         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
26563         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
26564         Use directed rather than neutral quotes in diagnostics.
26566         Treat ' like ’ even when not matching `
26567         This is simpler and easier to explain, and should encourage better
26568         typography.  Do this in Electric Quote mode and when translating
26569         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
26570         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
26571         * doc/emacs/text.texi (Quotation Marks):
26572         * doc/lispref/help.texi (Keys in Documentation):
26573         * etc/NEWS:
26574         Document this.
26575         * lisp/electric.el (electric-quote-post-self-insert-function):
26576         * src/doc.c (Fsubstitute_command_keys):
26577         Always treat ' like ’ even when not matched by an open quote.
26579 2015-08-25  Glenn Morris  <rgm@gnu.org>
26581         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
26582         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
26584 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
26586         * src/macfont.m (macfont_create_family_with_symbol):
26587         Accept localized names.
26589 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26591         Tramp diagnostics as per ‘text-quoting-style’
26592         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
26593         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
26594         (tramp-adb-handle-delete-directory)
26595         (tramp-adb-handle-delete-file)
26596         (tramp-adb-handle-file-local-copy)
26597         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
26598         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
26599         (tramp-adb-maybe-open-connection):
26600         * lisp/net/tramp-cache.el:
26601         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
26602         (tramp-compat-octal-to-decimal)
26603         (tramp-compat-coding-system-change-eol-conversion):
26604         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
26605         (tramp-gvfs-do-copy-or-rename-file)
26606         (tramp-gvfs-handle-delete-directory)
26607         (tramp-gvfs-handle-delete-file)
26608         (tramp-gvfs-handle-expand-file-name)
26609         (tramp-gvfs-handle-file-local-copy)
26610         (tramp-gvfs-handle-file-notify-add-watch)
26611         (tramp-gvfs-handle-make-directory)
26612         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
26613         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
26614         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
26615         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
26616         (tramp-sh-handle-set-visited-file-modtime)
26617         (tramp-sh-handle-set-file-modes)
26618         (tramp-sh-handle-file-name-all-completions)
26619         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
26620         (tramp-do-copy-or-rename-file-directly)
26621         (tramp-do-copy-or-rename-file-out-of-band)
26622         (tramp-sh-handle-make-directory)
26623         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
26624         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
26625         (tramp-sh-handle-start-file-process)
26626         (tramp-sh-handle-file-local-copy)
26627         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
26628         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
26629         (tramp-find-file-exists-command, tramp-open-shell)
26630         (tramp-find-shell)
26631         (tramp-open-connection-setup-interactive-shell)
26632         (tramp-find-inline-encoding, tramp-find-inline-compress)
26633         (tramp-compute-multi-hops, tramp-maybe-open-connection)
26634         (tramp-wait-for-output, tramp-send-command-and-check)
26635         (tramp-send-command-and-read, tramp-get-remote-path)
26636         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
26637         (tramp-get-ls-command-with-quoting-style)
26638         (tramp-get-test-command, tramp-get-remote-ln)
26639         (tramp-get-remote-perl, tramp-get-remote-stat)
26640         (tramp-get-remote-readlink, tramp-get-remote-trash)
26641         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
26642         (tramp-get-remote-inotifywait, tramp-get-remote-id)
26643         (tramp-get-remote-python):
26644         * lisp/net/tramp-smb.el (tramp-smb-errors)
26645         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
26646         (tramp-smb-handle-delete-directory)
26647         (tramp-smb-handle-delete-file)
26648         (tramp-smb-handle-file-local-copy)
26649         (tramp-smb-handle-make-directory)
26650         (tramp-smb-handle-make-directory-internal)
26651         (tramp-smb-handle-make-symbolic-link)
26652         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
26653         (tramp-smb-handle-set-file-modes)
26654         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
26655         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
26656         (tramp-process-actions):
26657         Generate diagnostics according to ‘text-quoting-style’, by
26658         using curved quotes in format strings and ‘format-message’
26659         when appropriate.
26660         * lisp/net/tramp-compat.el (format-message):
26661         Define a replacement, if it’s an older version of Emacs
26662         that doesn’t have it already.
26664         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
26666 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
26668         Fix documentation for `save-excursion'
26669         * doc/lispref/positions.texi (Excursions):
26670         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
26671         (Template for save-excursion, Point and mark): `save-excursion'
26672         does not save&restore the mark any more.
26674 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
26676         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
26677         New defconsts.
26678         (tramp-do-file-attributes-with-stat)
26679         (tramp-do-directory-files-and-attributes-with-stat): Use them.
26680         (tramp-convert-file-attributes): Remove double slashes in symlinks.
26681         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
26682         Handle symlinks with "//" in the file name.
26684         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
26686 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
26688         Fix cl-subseq and cl-concatenate
26689         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
26690         seq functions.
26691         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
26692         seq-concatenate.
26694 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
26696         Fix full-screen code when there is no window manager (Bug#21317)
26697         * src/xterm.h (x_wm_supports): Declare external.
26698         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
26699         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
26700         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
26701         `fullscreen' frame parameter.
26702         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
26703         without a window manager.
26705 2015-08-24  Glenn Morris  <rgm@gnu.org>
26707         * lisp/version.el (emacs-version): No longer include build host.
26708         * doc/lispref/intro.texi (Version Info): Update example.
26710 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26712         * doc/lispref/elisp.texi: Fix typo in previous change.
26714         More-conservative ‘format’ quote restyling
26715         Instead of restyling curved quotes for every call to ‘format’,
26716         create a new function ‘format-message’ that does the restyling,
26717         and using the new function instead of ‘format’ only in contexts
26718         where this seems appropriate.
26719         Problem reported by Dmitry Gutov and Andreas Schwab in:
26720         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
26721         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
26722         * doc/lispref/commands.texi (Using Interactive):
26723         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
26724         * doc/lispref/display.texi (Displaying Messages, Progress):
26725         * doc/lispref/elisp.texi:
26726         * doc/lispref/help.texi (Keys in Documentation):
26727         * doc/lispref/minibuf.texi (Minibuffer Misc):
26728         * doc/lispref/strings.texi (Formatting Strings):
26729         * etc/NEWS:
26730         Document the changes.
26731         * lisp/abbrev.el (expand-region-abbrevs):
26732         * lisp/apropos.el (apropos-library):
26733         * lisp/calc/calc-ext.el (calc-record-message)
26734         (calc-user-function-list):
26735         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
26736         * lisp/calc/calc-lang.el (math-read-big-balance):
26737         * lisp/calc/calc-store.el (calc-edit-variable):
26738         * lisp/calc/calc-units.el (math-build-units-table-buffer):
26739         * lisp/calc/calc-yank.el (calc-edit-mode):
26740         * lisp/calendar/icalendar.el (icalendar-export-region)
26741         (icalendar--add-diary-entry):
26742         * lisp/cedet/mode-local.el (mode-local-print-binding)
26743         (mode-local-describe-bindings-2):
26744         * lisp/cedet/semantic/complete.el (semantic-completion-message):
26745         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
26746         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
26747         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
26748         * lisp/descr-text.el (describe-text-properties-1, describe-char):
26749         * lisp/dframe.el (dframe-message):
26750         * lisp/dired-aux.el (dired-query):
26751         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
26752         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
26753         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
26754         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
26755         (cconv-analyze-form):
26756         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
26757         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
26758         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
26759         * lisp/emacs-lisp/edebug.el (edebug-format):
26760         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
26761         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
26762         (eldoc-message):
26763         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
26764         * lisp/emacs-lisp/find-func.el (find-function-library):
26765         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
26766         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
26767         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
26768         * lisp/emacs-lisp/package.el (package-compute-transaction)
26769         (package-install-button-action, package-delete-button-action)
26770         (package-menu--list-to-prompt):
26771         * lisp/emacs-lisp/timer.el (timer-event-handler):
26772         * lisp/emacs-lisp/warnings.el (lwarn, warn):
26773         * lisp/emulation/viper-cmd.el:
26774         (viper-toggle-parse-sexp-ignore-comments)
26775         (viper-kill-buffer, viper-brac-function):
26776         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
26777         * lisp/facemenu.el (facemenu-add-new-face):
26778         * lisp/faces.el (face-documentation, read-face-name)
26779         (face-read-string, read-face-font, describe-face):
26780         * lisp/files.el (find-alternate-file, hack-local-variables)
26781         (hack-one-local-variable--obsolete, write-file)
26782         (basic-save-buffer, delete-directory):
26783         * lisp/format.el (format-write-file, format-find-file)
26784         (format-insert-file):
26785         * lisp/help-fns.el (help-fns--key-bindings)
26786         (help-fns--compiler-macro, help-fns--obsolete)
26787         (help-fns--interactive-only, describe-function-1)
26788         (describe-variable):
26789         * lisp/help.el (describe-mode):
26790         * lisp/info-xref.el (info-xref-output):
26791         * lisp/info.el (Info-virtual-index-find-node)
26792         (Info-virtual-index, info-apropos):
26793         * lisp/international/kkc.el (kkc-error):
26794         * lisp/international/mule-cmds.el:
26795         (select-safe-coding-system-interactively)
26796         (select-safe-coding-system, describe-input-method):
26797         * lisp/international/mule-conf.el (code-offset):
26798         * lisp/international/mule-diag.el (describe-character-set)
26799         (list-input-methods-1):
26800         * lisp/international/quail.el (quail-error):
26801         * lisp/minibuffer.el (minibuffer-message):
26802         * lisp/mpc.el (mpc--debug):
26803         * lisp/msb.el (msb--choose-menu):
26804         * lisp/net/ange-ftp.el (ange-ftp-message):
26805         * lisp/net/gnutls.el (gnutls-message-maybe):
26806         * lisp/net/newst-backend.el (newsticker--sentinel-work):
26807         * lisp/net/newst-treeview.el (newsticker--treeview-load):
26808         * lisp/net/nsm.el (nsm-query-user):
26809         * lisp/net/rlogin.el (rlogin):
26810         * lisp/net/soap-client.el (soap-warning):
26811         * lisp/net/tramp.el (tramp-debug-message):
26812         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
26813         * lisp/nxml/nxml-parse.el (nxml-parse-error):
26814         * lisp/nxml/rng-cmpct.el (rng-c-error):
26815         * lisp/nxml/rng-match.el (rng-compile-error):
26816         * lisp/nxml/rng-uri.el (rng-uri-error):
26817         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
26818         * lisp/org/org-ctags.el:
26819         (org-ctags-ask-rebuild-tags-file-then-find-tag):
26820         * lisp/proced.el (proced-log):
26821         * lisp/progmodes/ebnf2ps.el (ebnf-log):
26822         * lisp/progmodes/flymake.el (flymake-log):
26823         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
26824         * lisp/replace.el (occur-1):
26825         * lisp/simple.el (execute-extended-command)
26826         (undo-outer-limit-truncate, define-alternatives):
26827         * lisp/startup.el (command-line):
26828         * lisp/subr.el (error, user-error, add-to-list):
26829         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
26830         (tutorial--find-changed-keys):
26831         * src/callint.c (Fcall_interactively):
26832         * src/editfns.c (Fmessage, Fmessage_box):
26833         Restyle the quotes of format strings intended for use as a
26834         diagnostic, when restyling seems appropriate.
26835         * lisp/subr.el (format-message): New function.
26836         * src/doc.c (Finternal__text_restyle): New function.
26837         (syms_of_doc): Define it.
26839 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
26841         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
26843 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26845         python.el: Fix python-shell-buffer-substring on indented code
26846         (Bug#21086)
26847         * lisp/progmodes/python.el (python-shell-buffer-substring):
26848         Respect current line indentation when calculating string.
26849         * test/automated/python-tests.el
26850         (python-shell-buffer-substring-10)
26851         (python-shell-buffer-substring-11)
26852         (python-shell-buffer-substring-12): New tests.
26854 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
26856         Fix minor glitches from ‘format’ reversion
26857         * doc/lispref/strings.texi (Formatting Strings):
26858         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
26859         Documentation’, not below.
26860         * src/syntax.c (Finternal_describe_syntax_value):
26861         Prefer AUTO_STRING to build_string where either will do, as
26862         AUTO_STRING is a bit faster.
26864 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26866         python.el: Defer shell setup code until first interactive prompt
26867         * lisp/progmodes/python.el
26868         (python-shell-comint-watch-for-first-prompt-output-filter):
26869         New function.
26870         (inferior-python-mode): Use it.
26871         (python-shell-first-prompt-hook): New hook.
26872         (python-shell-send-setup-code)
26873         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
26874         this hook instead of inferior-python-hook.
26876 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
26878         Remove the calls to `seq-into` from `seq-concatenate`
26879         Since most new types of seq would have to be defined as sequences (cons
26880         cells or CL structs, mostly), there is no need to convert the seqs to
26881         sequences (which can be a fairly expensive operation).
26882         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
26883         sequences.
26885 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26887         python.el: Fix completion for pdb interactions
26888         * lisp/progmodes/python.el (python-shell-completion-setup-code):
26889         Simplify.  Toggle print_mode for native wrapped completer.
26890         (python-shell-completion-native-setup): Ensure process buffer.
26891         Add print_mode attribute to completer wrapper to toggle returning
26892         or printing candidates.
26893         (python-shell-completion-native-get-completions): Cleanup.
26894         (python-shell-completion-get-completions): Cleanup.
26895         (python-shell-completion-at-point): Perform prompt checks.
26896         Force fallback completion in pdb interactions.
26898 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
26900         Make seq.el more extensible by using cl-defmethod
26901         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
26902         make it easier to extend seq.el with new "seq types".
26903         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
26904         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
26905         subseq in cl-extra.el, and use it in seq.el.
26907 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26909         python.el: Fix prompt detection with user overridden interpreter
26910         * lisp/progmodes/python.el (python-shell-prompt-detect):
26911         Honor buffer local python-shell-interpreter and
26912         python-shell-interpreter-interactive-arg.
26914 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
26916         Support exec-directory with non-ASCII characters on Windows
26917         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
26918         in the system's ANSI codepage, when it is used for invoking
26919         cmdproxy.
26921 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
26923         Revert "Extend ‘format’ to translate curved quotes"
26924         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
26926         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
26927         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
26929 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
26931         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
26932         Clarify "invisible window".
26934 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
26936         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
26937         magic-fallback-mode-alist.
26939 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26941         python.el: fallback completion, ffap and eldoc setup enhancements
26942         Setup codes are now sent continuously so that the current frame is
26943         always taken into account.  This allows working within debuggers
26944         and always keeping a fresh version of setup codes that will return
26945         proper results.
26946         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
26947         (python-shell-send-setup-code): Send code only when
26948         python-shell-setup-codes is non-nil.
26949         (python-shell-completion-string-code): Cleanup trailing newline.
26950         (python-shell-completion-get-completions): Always use
26951         python-shell-completion-setup-code.
26952         (python-ffap-setup-code): Work with any object, not only modules.
26953         (python-ffap-string-code): Cleanup trailing newline.
26954         (python-ffap-module-path): Always use python-ffap-setup-code.
26955         (python-eldoc-string-code): Cleanup trailing newline.
26956         (python-eldoc--get-doc-at-point): Always use
26957         python-eldoc-setup-code.  Return non-nil only if docstring is
26958         found.
26960         python.el: Increase native completion robustness
26961         * lisp/progmodes/python.el (python-shell-completion-native-setup):
26962         Make completer print real candidates and just return dummy ones to
26963         avoid input modification.
26964         (python-shell-completion-native-get-completions): Set
26965         comint-redirect-insert-matching-regexp to non-nil and make
26966         comint-redirect-finished-regexp match the last dummy candidate.
26967         Use python-shell-accept-process-output to wait for the full list
26968         of candidates.
26970 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
26972         Fix invocation of programs via cmdproxy.exe
26973         * src/w32proc.c (sys_spawnve): Use exec-directory, not
26974         invocation-directory, for finding cmdproxy.exe.  When Emacs is
26975         run from the source tree, look for cmdproxy.exe in the same source
26976         tree.  (Bug#21323)
26978 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
26980         Handle comments inside unquoted URIs in css-mode
26981         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
26982         (css-syntax-propertize-function): New defconst.
26983         (css--font-lock-keywords): Handle parens around unquoted URIs.
26984         (css-mode): Set `syntax-propertize-function'.
26986 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
26988         Support invocation of Hunspell with multiple dictionaries
26989         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
26990         Support lists of dictionaries of the form "DICT1,DICT2,...".
26991         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
26993         Minor formatting changes in ispell.el
26994         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
26995         (ispell-print-if-debug, ispell-aspell-find-dictionary)
26996         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
26997         (ispell-hunspell-dictionary-alist)
26998         (ispell-hunspell-fill-dictionary-entry)
26999         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
27000         (ispell-buffer-with-debug, ispell-complete-word)
27001         (ispell-current-dictionary, ispell-current-personal-dictionary)
27002         (ispell-accept-output, ispell-minor-mode)
27003         (ispell-personal-dictionary, ispell-dictionary-alist)
27004         (ispell-really-aspell, ispell-really-hunspell)
27005         (ispell-encoding8-command, ispell-aspell-supports-utf8)
27006         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
27007         Fix whitespace, inconsistent capitalization, and arguments in doc
27008         strings.
27010 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
27012         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
27013         function refused to resize a size-preserved window.
27015 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
27017         * doc/lispref/windows.texi (Selecting Windows): Improve
27018         documentation and indexing of 'window-use-time'.
27020 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
27022         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
27023         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
27024         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
27025         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
27026         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
27027         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
27028         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
27029         Fix up commenting style.
27031 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27033         text-quoting-style in emacs-lisp diagnostics
27034         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
27035         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
27036         (ad-disable-advice, ad-remove-advice, ad-set-argument)
27037         (ad-set-arguments):
27038         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
27039         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
27040         (byte-optimize-while, byte-optimize-apply):
27041         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
27042         (byte-compile-log-file, byte-compile-format-warn)
27043         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
27044         (byte-compile-cl-warn)
27045         (byte-compile-warn-about-unresolved-functions)
27046         (byte-compile-file, byte-compile-fix-header)
27047         (byte-compile--declare-var, byte-compile-file-form-defmumble)
27048         (byte-compile-form, byte-compile-normal-call)
27049         (byte-compile-variable-ref, byte-compile-variable-set)
27050         (byte-compile-subr-wrong-args, byte-compile-setq-default)
27051         (byte-compile-negation-optimizer)
27052         (byte-compile-condition-case--old)
27053         (byte-compile-condition-case--new, byte-compile-save-excursion)
27054         (byte-compile-defvar, byte-compile-autoload)
27055         (byte-compile-lambda-form)
27056         (byte-compile-make-variable-buffer-local, display-call-tree)
27057         (batch-byte-compile):
27058         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
27059         (cconv-analyze-form):
27060         * lisp/emacs-lisp/chart.el (chart-space-usage):
27061         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
27062         (check-declare-warn, check-declare-file)
27063         (check-declare-directory):
27064         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
27065         (checkdoc-message-text-engine):
27066         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
27067         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
27068         (cl-symbol-macrolet):
27069         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
27070         * lisp/emacs-lisp/copyright.el (copyright)
27071         (copyright-update-directory):
27072         * lisp/emacs-lisp/edebug.el (edebug-read-list):
27073         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
27074         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
27075         (eieio-oref, eieio-oset-default):
27076         * lisp/emacs-lisp/eieio-speedbar.el:
27077         (eieio-speedbar-child-make-tag-lines)
27078         (eieio-speedbar-child-description):
27079         * lisp/emacs-lisp/eieio.el (defclass, change-class):
27080         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
27081         (elint-init-form, elint-check-defalias-form)
27082         (elint-check-let-form):
27083         * lisp/emacs-lisp/ert.el (ert-get-test):
27084         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
27085         (find-function-library):
27086         * lisp/emacs-lisp/generator.el (iter-yield):
27087         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
27088         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
27089         * lisp/emacs-lisp/package-x.el (package-upload-file):
27090         * lisp/emacs-lisp/package.el (package-version-join)
27091         (package-disabled-p, package-activate-1, package-activate)
27092         (package--download-one-archive)
27093         (package--download-and-read-archives)
27094         (package-compute-transaction, package-install-from-archive)
27095         (package-install, package-install-selected-packages)
27096         (package-delete, package-autoremove)
27097         (package-install-button-action, package-delete-button-action)
27098         (package-menu-hide-package, package-menu--list-to-prompt)
27099         (package-menu--perform-transaction)
27100         (package-menu--find-and-notify-upgrades):
27101         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
27102         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
27103         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
27104         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
27105         * lisp/emacs-lisp/smie.el (smie-config-save):
27106         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
27107         * lisp/emacs-lisp/testcover.el (testcover-1value):
27108         Use curved quotes in diagnostic format strings.
27110 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27112         python.el: Ensure remote process-environment on non-interactive processes
27113         * lisp/progmodes/python.el
27114         (python-shell-tramp-refresh-process-environment): New function.
27115         (python-shell-with-environment): Use it.
27116         * test/automated/python-tests.el (python-shell-with-environment-2):
27117         Update.
27119         python.el: Enhancements to process environment setup.
27120         * lisp/progmodes/python.el (python-shell-process-environment)
27121         (python-shell-extra-pythonpaths, python-shell-exec-path)
27122         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
27123         (python-shell-setup-codes): Remove :safe.
27124         (python-shell-remote-exec-path): New defcustom.
27125         (python-shell--add-to-path-with-priority): New macro.
27126         (python-shell-calculate-pythonpath): Give priority to
27127         python-shell-extra-pythonpaths.  Update docstring.
27128         (python-shell-calculate-process-environment): Give priority to
27129         python-shell-process-environment.  Update docstring.
27130         (python-shell-calculate-exec-path): Give priority to
27131         python-shell-exec-path and calculated virtualenv bin directory.
27132         Update docstring.
27133         (python-shell-tramp-refresh-remote-path): New function.
27134         (python-shell-with-environment): Use it when working remotely and
27135         do not modify tramp-remote-path.  Allow nesting.
27136         (python-shell-calculate-command): Remove useless
27137         python-shell-with-environment call.
27138         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
27139         (python-shell-calculate-pythonpath-2)
27140         (python-shell-calculate-process-environment-6)
27141         (python-shell-calculate-process-environment-7)
27142         (python-shell-calculate-process-environment-8)
27143         (python-shell-calculate-exec-path-3)
27144         (python-shell-calculate-exec-path-4)
27145         (python-shell-calculate-exec-path-5)
27146         (python-shell-calculate-exec-path-6)
27147         (python-shell-with-environment-3): New tests.
27148         (python-shell-calculate-process-environment-2)
27149         (python-shell-calculate-process-environment-3)
27150         (python-shell-calculate-process-environment-4)
27151         (python-shell-calculate-process-environment-5)
27152         (python-shell-calculate-exec-path-1)
27153         (python-shell-calculate-exec-path-2)
27154         (python-shell-with-environment-1)
27155         (python-shell-with-environment-2): Update and simplify.
27157 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27159         Avoid hard-coding "M-x command" in docstrings
27160         * lisp/calendar/todo-mode.el (todo-mode):
27161         * lisp/desktop.el (desktop-save-mode):
27162         * lisp/edmacro.el (edit-kbd-macro):
27163         * lisp/emacs-lisp/package.el (package-menu-execute):
27164         * lisp/emulation/viper-cmd.el (viper-ask-level):
27165         * lisp/emulation/viper-init.el (viper-expert-level):
27166         * lisp/filesets.el (filesets-add-buffer):
27167         * lisp/follow.el (follow-mode):
27168         * lisp/gnus/auth-source.el (auth-sources):
27169         * lisp/international/ogonek.el (ogonek-informacja)
27170         (ogonek-information):
27171         * lisp/net/tramp.el (tramp-process-actions):
27172         * lisp/org/org-gnus.el (org-gnus-no-new-news):
27173         * lisp/org/org.el (org-ellipsis):
27174         * lisp/progmodes/python.el (python-shell-get-process-or-error):
27175         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
27176         * lisp/server.el (server-start):
27177         * lisp/type-break.el (type-break-noninteractive-query):
27178         * lisp/userlock.el (ask-user-about-supersession-help):
27179         * lisp/whitespace.el (whitespace-report-region):
27180         Prefer (substitute-command-keys "`\\[foo-command]'")
27181         to "`M-x foo-command'" in docstrings and the like.
27183 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
27185         Use add-function for prettify-symbols-compose-predicate
27186         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
27187         prettify-symbols-compose-predicate in terms of add-function.
27188         * etc/NEWS: Mention prettify-symbols-compose-predicate and
27189         prettify-symbols-mode support in tex-mode.
27191 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
27193         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
27194         (smie-indent-exps, smie-indent-keyword): Use it.
27195         * test/indent/css-mode.css: Test alignment with leading comment.
27197 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27199         Respect text-quoting-style in (*Finder*) menus
27200         * lisp/info.el (info--prettify-description):
27201         Treat description as a docstring, so that it's requoted as
27202         per text-quoting-style.
27204 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
27206         Document `window-use-time' in Elisp manual
27207         * doc/lispref/windows.texi (Selecting Windows): Document
27208         `window-use-time'.
27210 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
27212         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
27213         This is a cleaner fix for Bug#21260 than the previous change.
27215 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27217         Respect text-quoting-style in calc
27218         In calc, tespect text-quoting-style preference in diagnostic
27219         formats and fix a few similar problems in docstrings.
27220         * lisp/calc/calc-aent.el (math-read-factor):
27221         * lisp/calc/calc-embed.el (calc-do-embedded):
27222         * lisp/calc/calc-ext.el (calc-user-function-list)
27223         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
27224         * lisp/calc/calc-help.el (calc-describe-key)
27225         (calc-describe-thing):
27226         * lisp/calc/calc-lang.el (calc-c-language)
27227         (math-parse-fortran-vector-end, math-parse-tex-sum)
27228         (math-parse-eqn-matrix, math-parse-eqn-prime)
27229         (calc-yacas-language, calc-maxima-language, calc-giac-language)
27230         (math-read-big-rec, math-read-big-balance):
27231         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
27232         (calc-auto-recompute):
27233         * lisp/calc/calc-prog.el (calc-user-define-invocation)
27234         (math-do-arg-check):
27235         * lisp/calc/calc-store.el (calc-edit-variable):
27236         * lisp/calc/calc-units.el (math-build-units-table-buffer):
27237         * lisp/calc/calc-vec.el (math-read-brackets):
27238         * lisp/calc/calc-yank.el (calc-edit-mode):
27239         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
27240         Use curved quotes in diagnostic format strings.
27241         * lisp/calc/calc-help.el (calc-describe-thing):
27242         Format docstrings with substitute-command-keys.
27243         * lisp/calc/calc-help.el (calc-j-prefix-help):
27244         * lisp/calc/calc-misc.el (calc-help):
27245         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
27246         Escape a docstring "`".
27248 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
27250         Fix documentation of 'menu-set-font' and 'set-frame-font'
27251         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
27252         * doc/lispref/frames.texi (Frame Font): Document that
27253         set-frame-font with the last argument 't' will also make the font
27254         the default for the future GUI frames.
27256         Document '--create-frame' option to emacsclient
27257         * doc/emacs/misc.texi (emacsclient Options): Document the
27258         '--create-frame' option.  (Bug#21308)
27260 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
27262         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
27264 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
27266         Document 'get-mru-window' in the ELisp manual
27267         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
27268         'get-mru-window'.  (Bug#21306)
27270         Clarify documentation of 'get-buffer-window-list'
27271         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
27272         current window, if relevant, will be the first in the list
27273         returned by 'get-buffer-window-list'.
27274         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
27276 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
27278         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
27279         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
27280         `switch-to-buffer'.
27282 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
27284         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
27285         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
27286         `display-buffer' instead of `switch-to-buffer'.
27288 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27290         Follow user preference in calendar diagnostics
27291         Respect text-quoting-style preference in diagnostic formats by
27292         using curved quotes (which are translated as per text-quoting-style)
27293         instead of grave accent and apostrophe (which are not).
27294         * lisp/calendar/appt.el (appt-display-message):
27295         * lisp/calendar/diary-lib.el (diary-check-diary-file)
27296         (diary-mail-entries, diary-from-outlook):
27297         * lisp/calendar/icalendar.el (icalendar-export-region)
27298         (icalendar--convert-float-to-ical)
27299         (icalendar--convert-date-to-ical)
27300         (icalendar--convert-ical-to-diary)
27301         (icalendar--convert-recurring-to-diary)
27302         (icalendar--add-diary-entry):
27303         * lisp/calendar/time-date.el (format-seconds):
27304         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
27305         (timeclock-make-hours-explicit):
27306         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
27307         (todo-item-mark, todo-check-format)
27308         (todo-insert-item--next-param, todo-edit-item--next-key)
27309         (todo-mode):
27310         Use curved quotes in diagnostic format strings.
27311         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
27312         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
27313         Just use straight quoting for simple test case.
27315 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
27317         * src/gfilenotify.c (Fgfile_add_watch):
27318         Handle errors from g_file_monitor.
27320 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
27322         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
27323         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
27324         frame" instead of "non-minibuffer frame".
27326         Fix frame geometry related text
27327         * doc/lispref/frames.texi (Frame Layout):
27328         Rename `x-frame-geometry' to `frame-geometry'.
27329         * doc/lispref/frames.texi (Mouse Position):
27330         * doc/lispref/windows.texi (Coordinates and Windows):
27331         Use `set-mouse-absolute-pixel-position' instead of
27332         `x-set-mouse-absolute-pixel-position'.
27334         Sanitize frame geometry related functions
27335         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
27336         (Fx_frame_edges): Rename to Fns_frame_edges.
27337         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
27338         (Fx_frame_edges): Rename to Fw32_frame_edges.
27339         (Fx_mouse_absolute_pixel_position): Rename to
27340         Fw32_mouse_absolute_pixel_position.
27341         (Fx_set_mouse_absolute_pixel_position): Rename to
27342         Fw32_set_mouse_absolute_pixel_position.
27343         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
27344         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
27345         (ns-frame-edges, w32-mouse-absolute-pixel-position)
27346         (x-mouse-absolute-pixel-position)
27347         (w32-set-mouse-absolute-pixel-position)
27348         (x-set-mouse-absolute-pixel-position): Declare.
27349         (frame-geometry, mouse-absolute-pixel-position)
27350         (set-mouse-absolute-pixel-position): New functions.
27351         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
27353 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
27355         Fix MinGW64 build broken by latest w32uniscribe.c changes
27356         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
27357         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
27358         (Bug#21260)
27360 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
27362         Add TeX defaults for prettify-symbol-mode
27363         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
27364         Rename from tex-prettify-symbols-alist.
27365         (tex--prettify-symbols-compose-p): New function.
27366         (tex-common-initialization): Use them as prettify-symbols-alist
27367         and prettify-symbols-compose-predicate.
27369         Generalize prettify-symbols to arbitrary modes
27370         * lisp/progmodes/prog-mode.el
27371         (prettify-symbols-default-compose-p): New function.
27372         (prettify-symbols-compose-predicate): New variable.
27373         (prettify-symbols--compose-symbol): Use it.
27375 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27377         Don't quote symbols 'like-this' in docstrings etc.
27378         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
27379         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
27380         * lisp/allout.el (allout-add-resumptions, allout-mode):
27381         * lisp/calculator.el (calculator-operators):
27382         * lisp/cedet/data-debug.el (dd-propertize):
27383         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
27384         * lisp/cedet/semantic/analyze/debug.el:
27385         (semantic-analyzer-debug-global-miss-text):
27386         * lisp/cedet/semantic/lex-spp.el:
27387         (semantic-lex-spp-replace-or-symbol-or-keyword):
27388         * lisp/cedet/semantic/symref.el:
27389         (semantic-symref-cleanup-recent-buffers-fcn):
27390         * lisp/cedet/semantic/tag.el (semantic-tag-class):
27391         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
27392         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
27393         * lisp/gnus/pop3.el (pop3-authentication-scheme):
27394         * lisp/help-fns.el (describe-function-orig-buffer):
27395         * lisp/imenu.el (imenu--history-list):
27396         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
27397         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
27398         (feedmail-queue-default-file-slug)
27399         (feedmail-queue-buffer-file-name):
27400         * lisp/net/mairix.el (mairix-searches-mode-map):
27401         * lisp/net/newst-backend.el (newsticker-retrieval-method)
27402         (newsticker-auto-mark-filter-list):
27403         * lisp/obsolete/vi.el (vi-mode):
27404         * lisp/progmodes/cc-engine.el (c-literal-type):
27405         * lisp/progmodes/cpp.el (cpp-face):
27406         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
27407         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
27408         * lisp/progmodes/pascal.el (pascal-auto-lineup):
27409         * lisp/progmodes/prog-mode.el (prog-widen):
27410         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
27411         (verilog-auto-lineup, verilog-auto-reset-widths)
27412         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
27413         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
27414         (flyspell-maybe-correct-doubling):
27415         * lisp/textmodes/table.el (table-justify, table-justify-cell)
27416         (table-justify-row, table-justify-column, table-insert-sequence)
27417         (table--justify-cell-contents):
27418         * lisp/url/url-auth.el (url-get-authentication):
27419         * lisp/window.el (display-buffer-record-window):
27420         * lisp/xml.el (xml-parse-file, xml-parse-region):
27421         * src/gfilenotify.c (Fgfile_add_watch):
27422         Don't quote symbols with apostrophes in doc strings.
27423         Use asymmetric quotes instead.
27424         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
27425         Likewise for symbol in diagnostic.
27426         * lisp/image.el (image-extension-data):
27427         * lisp/register.el (frame-configuration-to-register):
27428         * src/buffer.c (syms_of_buffer):
27429         Remove bogus apostrophes after symbols.
27430         * lisp/thumbs.el (thumbs-conversion-program):
27431         Quote Lisp string values using double-quotes, not apostrophes.
27433 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
27435         Describe frame geometry and related functions in Elisp manual
27436         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
27437         (Showing Images): Update references.
27438         * doc/lispref/elisp.texi (Top): Update node listing.
27439         * doc/lispref/frames.texi (Frame Geometry): New node.
27440         Move `Size and Position' section here.
27441         (Size Parameters): Update references.
27442         (Mouse Position): Update references and nomenclature.
27443         Describe new functions `x-mouse-absolute-pixel-position' and
27444         `x-set-mouse-absolute-pixel-position'.
27445         * doc/lispref/windows.texi (Window Sizes): Update references.
27446         (Resizing Windows): Update references.  Move description of
27447         `fit-frame-to-buffer' here.
27448         (Coordinates and Windows): Update nomenclature and references.
27449         Describe new arguments of `window-edges'.  Comment out
27450         descriptions of `window-left-column', `window-top-line',
27451         `window-pixel-left' and `window-pixel-top'.  Describe
27452         `window-absolute-pixel-position'.
27454 2015-08-20  Alan Mackenzie  <acm@muc.de>
27456         Handling of `c-parse-state'.  Fix low level bug.
27457         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
27458         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
27460 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
27462         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
27463         window instead of deleting it.
27465 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
27467         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
27468         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
27469         determine whether frame has a titlebar.
27470         Suggested by Eli Zaretskii <eliz@gnu.org>
27472 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
27474         Add a prettify-symbols-alist for (La)TeX
27475         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
27476         New variable holding an alist suitable as prettify-symbols-alist in
27477         (La)TeX modes.
27479 2015-08-19  Alan Mackenzie  <acm@muc.de>
27481         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
27482         Fixes debbugs#21275.
27483         In Emacs >= 25, let electric-pair-mode take precedence over
27484         delete-selection-mode.
27485         * lisp/delsel.el (delete-selection-uses-region-p): New function,
27486         previously a lambda expression in a property value for
27487         `self-insert-command'.
27488         (top-level): Set the `delete-selection' property of
27489         `self-insert-command' to `delete-selection-uses-region-p'.
27490         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
27491         property for c-electric-\(brace\|paren\) the value
27492         `delete-selection-uses-region-p' when the latter function exists.
27494 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27496         Fix key binding quoting in tutorial *Help*
27497         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
27498         When generating help for custom key bindings, use the user-preferred
27499         quoting style rather than hardcoding the grave style.
27501 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
27503         Improve and future-proof OTF fonts support in w32uniscribe.c
27504         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
27505         about the expected results and why the new Uniscribe APIs are not
27506         used in this function.
27507         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
27508         (ScriptGetFontFeatureTags_Proc): New function typedefs.
27509         (uniscribe_new_apis): New static variable.
27510         (uniscribe_check_features): New function, implements OTF features
27511         verification while correctly accounting for features in the list
27512         after the nil member, if any.
27513         (uniscribe_check_otf_1): New function, retrieves the features
27514         supported by the font for the requested script and language using
27515         the Uniscribe APIs available from Windows Vista onwards.
27516         (uniscribe_check_otf): If the new Uniscribe APIs are available,
27517         use them in preference to reading the font data directly.  Call
27518         uniscribe_check_features to verify that the requested features are
27519         supported, replacing the original incomplete code.
27520         (syms_of_w32uniscribe): Initialize function pointers for the new
27521         Uniscribe APIs.  (Bug#21260)
27522         (otf_features): Scan the script, langsys, and feature arrays back
27523         to front, so that the result we return has them in alphabetical
27524         order, like ftfont.c does.
27525         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
27526         New variable for debugging w32uniscribe.c code.
27528 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
27530         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
27531         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
27532         clause of `isearch-search-fun-default'.  That lax variable does not
27533         refer to lax-whitespacing.  Related to (bug#21777).
27534         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
27535         * lisp/character-fold.el (character-fold-search): Set to nil.
27536         Default to nil for now, until someone implements proper
27537         lax-whitespacing with char-fold searching.
27539 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
27541         Fix doc-string of `help-mode-finish'.
27542         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
27544         In nsimage.m include coding.h (Bug#21292)
27545         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
27547         Move window edge functions to Elisp.
27548         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
27549         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
27550         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
27551         Move to window.el.
27552         (calc_absolute_offset): Remove.
27553         * lisp/frame.el (frame-edges): New function.
27554         * lisp/window.el (window-edges, window-pixel-edges)
27555         (window-absolute-pixel-edges): Move here from window.c.
27556         (window-body-edges, window-body-pixel-edges)
27557         (window-absolute-body-pixel-edges): Move here from window.c and
27558         rename "inside" to "body".  Keep old names as aliases.
27559         (window-absolute-pixel-position): New function.
27561 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
27563         [Gnus]: Use overlay functions directly
27564         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
27565         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
27566         (gnus-article-highlight-signature, gnus-article-extend-url-button)
27567         (gnus-article-add-button, gnus-insert-prev-page-button)
27568         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
27569         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
27570         (gnus-cite-add-face):
27571         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
27572         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
27573         (gnus-tree-recenter, gnus-highlight-selected-tree):
27574         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
27575         (gnus-summary-show-thread, gnus-summary-hide-thread)
27576         (gnus-highlight-selected-summary):
27577         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
27578         * lisp/gnus/message.el (message-fix-before-sending)
27579         (message-toggle-image-thumbnails):
27580         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
27581         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
27582         Use overlay functions directly instead of using gnus-overlay-*,
27583         message-overlay-*, and sieve-overlay-*.
27584         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
27585         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
27586         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
27587         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
27588         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
27589         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
27590         (message-overlay-get, message-overlay-put, message-overlays-in):
27591         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
27592         (sieve-overlays-at): Remove.
27594 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
27596         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
27597         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
27598         builds can use the declaration from the system headers.
27599         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
27600         definition of TITLEBAR_INFO.
27601         Suggested by Eli Zaretskii  <eliz@gnu.org>
27603 2015-08-19  Glenn Morris  <rgm@gnu.org>
27605         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
27607 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27609         Use new q ‘format’ flag when fixing quotes in C
27610         * src/image.c (image_size_error): New function.  All uses of
27611         image_error with "Invalid image size ..."  changed to use it.
27612         * src/image.c (image_size_error, xbm_load_image, xbm_load)
27613         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
27614         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
27615         (imagemagick_load, svg_load, svg_load_image, gs_load)
27616         (x_kill_gs_process):
27617         * src/lread.c (load_warn_old_style_backquotes):
27618         * src/xfaces.c (load_pixmap):
27619         * src/xselect.c (x_clipboard_manager_error_1):
27620         Use %qs, not uLSQM and uRSQM.
27621         * src/syntax.c (Finternal_describe_syntax_value):
27622         Prefer Fsubstitute_command_keys to Fformat, as this lets
27623         us use AUTO_STRING.
27624         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
27625         as it's now guaranteed to be ASCII.
27626         * src/xselect.c (x_clipboard_manager_error_2):
27627         Avoid grave accent in low-level stderr diagnostic.
27629 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
27631         New q flag for ‘format’
27632         * doc/lispref/processes.texi (Sentinels):
27633         Don't hardwire grave quoting style in example.
27634         * doc/lispref/strings.texi (Formatting Strings):
27635         * etc/NEWS:
27636         Document new q flag.
27637         * src/editfns.c (Fformat): Implement it.
27639 2015-08-18  Daiki Ueno  <ueno@gnu.org>
27641         pinentry.el: Add debugging support
27642         * lisp/net/pinentry.el (pinentry-debug): New variable.
27643         (pinentry-debug-buffer): New variable.
27644         (pinentry--process-filter): Send input to the debug buffer, if
27645         `pinentry-debug' is set.
27647         pinentry.el: Improve multiline prompt
27648         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
27649         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
27650         command.
27652 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
27654         Fix multibyte confusion in diagnostics
27655         * src/print.c (print_error_message):
27656         Don't assume that the caller's name is unibyte.
27657         * src/xdisp.c (vadd_to_log):
27658         Don't assume that the formatted diagnostic is unibyte.
27660         Fix file name encodings in diagnostics
27661         Also, close some minor races when opening image files, by opening
27662         them once instead of multiple times.
27663         * src/gtkutil.c (xg_get_image_for_pixmap):
27664         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
27665         (svg_load):
27666         * src/nsimage.m (allocInitFromFile:):
27667         * src/xfns.c (xg_set_icon):
27668         Encode file name, since x_find_image_file no longer does that.
27669         * src/image.c (x_find_image_fd): New function.
27670         (x_find_image_file): Use it.  Do not encode resulting file name,
27671         since callers sometimes need it decoded.
27672         (slurp_file): File arg is now a fd, not a file name.
27673         All callers changed.  This saves us having to open the file twice.
27674         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
27675         (svg_load):
27676         Use x_find_image_fd and fdopen to save a file-open.
27677         Report file name that failed.
27678         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
27680 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
27682         Allow blink-matching-paren to jump off screen
27683         * doc/emacs/programs.texi (Matching): Mention the
27684         `blink-matching-paren' value `jump-offscreen'.
27685         * lisp/simple.el (blink-matching-paren): New possible value.
27686         (blink-matching-paren-on-screen): Clarify the docstring.
27687         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
27689         Refine the previous change
27690         * lisp/simple.el (blink-matching-open): Use minibuffer-message
27691         outside of save-excursion (bug#21286).
27693 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
27695         Rewrite and add frame geometry related functions.
27696         * src/frame.c (Fframe_position): New function.
27697         (Fset_frame_position): Rename parameters and rewrite doc-string.
27698         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
27699         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
27700         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
27701         Qtitle_bar_size.
27702         * src/nsfns.m (frame_geometry): New function.
27703         (Fx_frame_geometry): Call frame_geometry.
27704         (Fx_frame_edges): New function.
27705         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
27706         (GetTitleBarInfo_Proc): Define these so we can use the
27707         GetTitleBarInfo API.
27708         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
27709         (Fx_frame_geometry): Rewrite.
27710         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
27711         (Fx_set_mouse_absolute_pixel_position): New functions.
27712         * src/xfns.c (frame_geometry): New function.
27713         (Fx_frame_geometry): Call frame_geometry.
27714         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
27715         (Fx_set_mouse_absolute_pixel_position): New functions.
27717 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
27719         Improve Tramp's compatibility
27720         * lisp/net/tramp.el (tramp-get-method-parameter):
27721         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
27722         (tramp-adb-get-device):
27723         * lisp/net/trampver.el (tramp-repository-get-version):
27724         Use `tramp-compat-replace-regexp-in-string'.
27726 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
27728         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
27729         Encode/decode string.
27731 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
27733         Clarify what happens to match data on failure
27734         Problem reported by Ernesto Alfonso (Bug#21279).
27735         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
27736         Document more carefully what happens to match data after a failed
27737         search.
27738         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
27739         the return value is undefined if the last search failed.
27740         (Fmatch_data): Simplify doc string line 1.
27742 2015-08-18  Daiki Ueno  <ueno@gnu.org>
27744         Revert "pinentry.el: Support external passphrase cache"
27745         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
27746         pinentry.el shouldn't directly interact with the secrets service,
27747         but ask the caller to cache the passphrase.
27749 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
27751         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
27752         Message mode hooks.
27754 2015-08-17  Daiki Ueno  <ueno@gnu.org>
27756         epg.el: Make gpgconf output parsing future proof
27757         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
27758         --list-options" output.
27760         pinentry.el: Support external passphrase cache
27761         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
27762         (pinentry--allow-external-password-cache): New local variable.
27763         (pinentry--key-info): New local variable.
27764         (secrets-enabled, secrets-search-items, secrets-get-secret):
27765         Declare.
27766         (pinentry--send-passphrase): New function, split from
27767         `pinentry--process-filter'.
27768         (pinentry--process-filter): Use secrets.el to retrieve passphrase
27769         from login keyring.
27771         pinentry.el: Popup window for multiline prompt
27772         * lisp/net/pinentry.el (pinentry): New custom group.
27773         (pinentry-popup-prompt-window): New user option.
27774         (pinentry-prompt-window-height): New user option.
27775         (pinentry--prompt-buffer): New variable.
27776         (pinentry-prompt-mode-map): New variable.
27777         (pinentry-prompt-mode): New function.
27778         (pinentry--prompt): New function.
27779         (pinentry--process-filter): Use `pinentry--prompt' instead of
27780         `read-passwd' and `y-or-n-p'.
27782 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
27784         message.el: Silent the byte compiler
27785         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
27786         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
27787         (message-delete-overlay, message-window-inside-pixel-edges):
27788         Declare before using.
27790         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
27791         (message-window-inside-pixel-edges): XEmacs compatible functions.
27793 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
27795         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
27797 2015-08-17  Noah Friedman  <friedman@splode.com>
27799         * lisp/simple.el (blink-matching-open): Restore point before
27800         calling minibuffer-message.
27802 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
27804         * lisp/play/dunnet.el: Update version number in header (now
27805         matches help).
27807 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
27809         Curved quotes in --batch diagnostics in non-UTF-8
27810         When run with --batch, check that curved quotes are compatible with
27811         the system locale before outputting them in diagnostics.
27812         Problem reported by Eli Zaretskii in:
27813         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
27814         * lisp/startup.el (command-line): Set internal--text-quoting-flag
27815         after the standard display table is initialized.
27816         * src/doc.c (default_to_grave_quoting_style): New function.
27817         (text_quoting_style): Use it.
27818         (text_quoting_flag): New static var, visible to Lisp as
27819         internal--text-quoting-flag.
27820         * src/emacs.c: Include <wchar.h> if available.
27821         (using_utf8): New function.
27822         (main): Use it to initialize text_quoting_flag.
27823         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
27824         Don't define, as it's not needed and it clashes with wchar.h.
27826 2015-08-17  Glenn Morris  <rgm@gnu.org>
27828         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
27829         from makeinfo about spurious "Note:" cross-reference, and for grammar.
27831 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
27833         Minor change in variable initialization on MS-Windows
27834         * src/w32fns.c <after_dead_key>: Initialize to -1.
27835         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
27836         non-zero.
27838         Fix a bug with LWindow key remapping on MS-Windows
27839         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
27841 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
27843         Improve fontset support for latest OTF script tags
27844         * lisp/international/fontset.el (otf-script-alist): Add some
27845         missing script tags.
27846         (setup-default-fontset): Include settings for v2 versions of the
27847         script tags used by some modern OTF/TTF fonts.
27849 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
27851         Spelling fixes
27853 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
27855         Use curved quotes in core elisp diagnostics
27856         In the core elisp files, use curved quotes in diagnostic formats,
27857         so that they follow user preference as per ‘text-quoting-style’
27858         rather than being hard-coded to quote `like this'.
27859         * lisp/abbrev.el (expand-region-abbrevs):
27860         * lisp/button.el (button-category-symbol, button-put)
27861         (make-text-button):
27862         * lisp/cus-start.el:
27863         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
27864         (custom--sort-vars-1, load-theme):
27865         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
27866         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
27867         (cl-generic-generalizers):
27868         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
27869         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
27870         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
27871         (advice--make, define-advice):
27872         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
27873         * lisp/emacs-lisp/timer.el (timer-event-handler):
27874         * lisp/env.el (setenv):
27875         * lisp/facemenu.el (facemenu-add-new-face)
27876         (facemenu-add-new-color):
27877         * lisp/faces.el (face-documentation, read-face-name)
27878         (face-read-string, read-face-font, face-spec-set-match-display)
27879         (read-color, x-resolve-font-name):
27880         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
27881         (set-auto-mode, hack-local-variables)
27882         (hack-one-local-variable--obsolete)
27883         (dir-locals-set-directory-class, write-file)
27884         (basic-save-buffer, delete-directory, copy-directory)
27885         (recover-session, recover-session-finish, insert-directory)
27886         (file-modes-char-to-who, file-modes-symbolic-to-number)
27887         (move-file-to-trash):
27888         * lisp/font-lock.el (font-lock-fontify-buffer):
27889         * lisp/format.el (format-write-file, format-find-file)
27890         (format-insert-file):
27891         * lisp/frame.el (get-device-terminal, select-frame-by-name):
27892         * lisp/fringe.el (fringe--check-style):
27893         * lisp/help.el (describe-minor-mode-from-indicator):
27894         * lisp/image.el (image-type):
27895         * lisp/international/fontset.el (x-must-resolve-font-name):
27896         * lisp/international/mule-cmds.el (prefer-coding-system)
27897         (select-safe-coding-system-interactively)
27898         (select-safe-coding-system, activate-input-method)
27899         (toggle-input-method, describe-current-input-method):
27900         * lisp/international/mule-conf.el (code-offset):
27901         * lisp/mouse.el (minor-mode-menu-from-indicator):
27902         * lisp/replace.el (query-replace-read-from)
27903         (occur-after-change-function, occur-1):
27904         * lisp/scroll-bar.el (scroll-bar-columns):
27905         * lisp/simple.el (execute-extended-command)
27906         (undo-outer-limit-truncate, compose-mail, set-variable)
27907         (choose-completion-string, define-alternatives):
27908         * lisp/startup.el (site-run-file, tty-handle-args)
27909         (command-line, command-line-1):
27910         * lisp/subr.el (noreturn, define-error, add-to-list)
27911         (read-char-choice):
27912         * lisp/term/common-win.el (x-handle-xrm-switch)
27913         (x-handle-name-switch, x-handle-args):
27914         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
27915         Use curved quotes in diagnostics.
27916         * lisp/international/mule.el (find-auto-coding):
27917         Use " to quote in a diagnostic, to be consistent with the rest of
27918         this file.
27920         Convert lisp/term/x-win.el to UTF-8
27921         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
27922         runtime behavior, and the file is multilingual so compile-time
27923         appearance shouldn't be an issue.
27924         * admin/notes/unicode: Document this.
27926 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
27928         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
27929         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
27930         issues and comments, bug#943.
27931         (verilog-type-font-keywords): Cycle delay operators like ##1 and
27932         ##[0:$] are now highlighted in their entirety similarly to the #
27933         delay-control operator.  Likewise, the followed-by operators #-#
27934         and #=# are no longer partially highlighed.
27935         (verilog-backward-syntactic-ws-quick)
27936         (verilog-skip-backward-comments): Minor performance improvements
27937         to buffer traversal functions for reduced latency.
27938         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
27939         keyword 'final' follows 'assert/assume/cover', then it is part of
27940         a deferred immediate assertion item and should not be treated as a
27941         final construct for indentation.  Reported by Yuri Sugihara.
27942         (verilog-do-indent): Virtual task/function/class definition lines
27943         should not be considered as declarations.  Reported by Enzo Chi.
27944         (verilog-do-indent): Do not falsely indent to '=' of
27945         property/sequence operators on subsequent lines of a multi-line
27946         statement.
27947         (verilog-assignment-operator-re): Fix '!==' operator and add
27948         support for '<->', ':/', '#-#', and '#=#' operators.
27949         (verilog-calculate-indent, verilog-label-be): Enable
27950         case-sensitive regular expression parsing when looking for
27951         keywords.
27952         (verilog-calc-1): Detect 'pure virtual method' declarations which
27953         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
27954         (verilog-backward-ws&directives): When moving back to the start of
27955         a line and the preceeding line ended with an escaped-newline, then
27956         jump up one line.  This properly consumes a multi-line
27957         pre-processor directive.  Reported by Kaushal Modi.
27958         (verilog-dpi-import-export-re, verilog-extended-complete-re)
27959         (verilog-calc-1): Teach verilog-mode to properly indent after a
27960         DPI import/export statement that resides outside of a module.
27961         Reported by Kaushal Modi.
27962         (verilog-extended-complete-re): Update regexp to match both
27963         "DPI-C" and "DPI".  Reported by Kaushal Modi.
27965 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27967         substitute-command-keys a few more doc strings
27968         * lisp/allout.el (outlineify-sticky):
27969         * lisp/files.el (hack-one-local-variable--obsolete):
27970         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
27971         Use substitute-command-keys on some doc strings so that
27972         they don't use hard-coded key bindings or quoting styles.
27974         Fix quoting in Fformat calls
27975         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
27976         (xpm_load, xpm_load_image, pbm_load, png_load_body)
27977         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
27978         (imagemagick_load, svg_load, svg_load_image, gs_load)
27979         (x_kill_gs_process):
27980         * src/lread.c (load_warn_old_style_backquotes):
27981         * src/xfaces.c (load_pixmap):
27982         * src/xselect.c (x_clipboard_manager_error_1):
27983         Quote diagnostics according to user preference when calling
27984         Fformat or its derivatives.
27986 2015-08-15  Glenn Morris  <rgm@gnu.org>
27988         * admin/admin.el (set-version, set-copyright): Remove deleted files.
27990 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
27992         Allow describe-function helpers to access buffer-local values
27993         This will be used by cedet/mode-local.el `describe-mode-local-override'
27994         on `help-fns-describe-function-functions' in upstream CEDET.
27995         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
27996         `describe-function'.
27997         (describe-function): Bind it, save it on the help xref stack.
27999         Handle pulse-background being nil
28000         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
28001         pulse-background, handle it being nil.
28003 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
28005         Fix "\`" confusion in Lisp strings
28006         * admin/authors.el (authors-canonical-author-name):
28007         Fix typo by using "\\`" not "\`" in string RE.
28008         * lisp/obsolete/complete.el (PC-complete-as-file-name):
28009         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
28010         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
28011         Use plain "`", not the equivalent-but-confusing "\`", in strings.
28012         * lisp/textmodes/texinfmt.el: Fix comment likewise.
28014 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
28016         * nt/zipdist.bat: Remove -- no longer used.
28018 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
28020         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
28021         rather than "getenforce".
28022         (tramp-sh-handle-set-file-selinux-context): Do not
28023         cache SELinux context if not all context components are given.
28025 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
28027         Add doc strings to 2 help-mode.el functions
28028         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
28029         strings.  (Bug#21263)
28031         Remove files used by the old MS-Windows specific build procedure
28032         * admin/unidata/makefile.w32-in:
28033         * doc/emacs/makefile.w32-in:
28034         * doc/lispintro/makefile.w32-in:
28035         * doc/lispref/makefile.w32-in:
28036         * doc/misc/makefile.w32-in:
28037         * leim/makefile.w32-in:
28038         * lib-src/makefile.w32-in:
28039         * lib/makefile.w32-in:
28040         * lisp/makefile.w32-in:
28041         * nt/INSTALL.OLD:
28042         * nt/config.nt:
28043         * nt/emacs-src.tags:
28044         * nt/envadd.bat:
28045         * nt/gmake.defs:
28046         * nt/makefile.w32-in:
28047         * nt/multi-install-info.bat:
28048         * nt/nmake.defs:
28049         * nt/paths.h:
28050         * src/makefile.w32-in: Files deleted.
28051         * nt/configure.bat: Remove everything except the blurb about the
28052         new build procedure.
28053         * make-dist: Remove references to makefile.w32-in in various
28054         directories, and to files in nt/ that were deleted.
28055         * etc/NEWS: Mention the fact that the files were dropped.
28057 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
28059         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
28060         (Bug#21248)
28062 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
28064         Default to inotify instead of gfile
28065         * configure.ac (with_file_notification): Fix typo that
28066         prevented suppression of file notification if HAVE_NS.
28067         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
28068         with_file_notification is 'yes' (Bug#21241).
28069         * etc/NEWS: Mention this.
28071         Fix broken URLs for ISO-IR
28072         * doc/emacs/mule.texi (Charsets):
28073         * lisp/international/mule-conf.el:
28074         Fix broken URL (Bug#21248).
28076         Low-level diagnostics now use ‘text-quoting-style’
28077         * src/doprnt.c (doprnt):
28078         Format ` and ' as per ‘text-quoting-style’.
28079         * src/xdisp.c (vmessage, message): Mention that the format should
28080         not contain ` or '.
28082         Prefer ‘format’ to ‘substitute-command-keys’
28083         * src/character.h (uLSQM, uRSQM): Move here ...
28084         * src/doc.c (uLSQM, uRSQM): ... from here.
28085         * src/doc.c (Fsubstitute_command_keys):
28086         * src/syntax.c (Finternal_describe_syntax_value):
28087         * lisp/cedet/mode-local.el (mode-local-print-binding)
28088         (mode-local-describe-bindings-2):
28089         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
28090         * lisp/cus-theme.el (describe-theme-1):
28091         * lisp/descr-text.el (describe-text-properties-1, describe-char):
28092         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
28093         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
28094         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
28095         * lisp/emacs-lisp/package.el (describe-package-1):
28096         * lisp/faces.el (describe-face):
28097         * lisp/help-fns.el (help-fns--key-bindings)
28098         (help-fns--compiler-macro, help-fns--parent-mode)
28099         (help-fns--obsolete, help-fns--interactive-only)
28100         (describe-function-1, describe-variable):
28101         * lisp/help.el (describe-mode):
28102         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
28103         to implement quoting style.  This generally makes the code simpler.
28105         Extend ‘format’ to translate curved quotes
28106         This is a followup to the recent doc string change, and deals with
28107         diagnostics and the like.  This patch is more conservative than
28108         the doc string change, in that the behavior of ‘format’ changes
28109         only if its first arg contains curved quotes and the user prefers
28110         straight or grave quotes.  (Come to think of it, perhaps we should
28111         be similarly conservative with doc strings too, but that can wait.)
28112         The upside of this conservatism is that existing usage is almost
28113         surely unaffected.  The downside is that we'll eventually have to
28114         change Emacs's format strings to use curved quotes in places where
28115         the user might want curved quotes, but that's a simple and
28116         mechanical translation that I'm willing to do later.  (Bug#21222)
28117         * doc/lispref/help.texi (Keys in Documentation):
28118         Move description of text-quoting-style from here ...
28119         * doc/lispref/strings.texi (Formatting Strings):
28120         ... to here, and describe new behavior of ‘format’.
28121         * etc/NEWS: Describe new behavior.
28122         * lisp/calc/calc-help.el (calc-describe-thing):
28123         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
28124         * lisp/info.el (Info-find-index-name):
28125         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
28126         of recently-added curved quotes.
28127         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
28128         Move from here ...
28129         * src/lisp.h: ... to here.
28130         * src/doc.c (text_quoting_style): New function.
28131         (Fsubstitute_command_keys): Use it.
28132         * src/editfns.c (Fformat): Implement new behavior.
28133         * src/lisp.h (enum text_quoting_style): New enum.
28135 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
28137         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
28138         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
28140 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
28142         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
28143         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
28145 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
28147         Flush file properties in Tramp
28148         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
28149         (tramp-sh-handle-set-file-times):
28150         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
28151         (tramp-adb-handle-set-file-times): Flush the file properties of
28152         the directory.
28154 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
28156         * doc/emacs/misc.texi (Amusements): Fixed typo.
28158 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
28160         Don't miss warnings about removing string text properties while dumping
28161         * src/alloc.c (purecopy): Warn about removing a string's text
28162         properties even when the same string was already pure-copied
28163         earlier.
28164         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
28165         (elisp--xref-format-extra): Fix the commentary.
28167 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
28169         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
28171 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
28173         * lisp/progmodes/compile.el: Use lexical-binding.
28174         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
28176 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
28178         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
28179         * lisp/uniquify.el: Remove redundant `:group's.
28181 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
28183         * lisp/net/tramp-adb.el
28184         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
28185         result to prevent modification of the tramp-cache by side effects.
28186         Use the correct cache key.
28188 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
28190         Make add_to_log varargs
28191         * src/alloc.c (run_finalizer_handler):
28192         * src/charset.c (load_charset_map_from_vector):
28193         * src/nsimage.m (ns_load_image):
28194         * src/xfaces.c (load_pixmap, load_color2):
28195         Simplify, now that add_to_log has a variable number of args.
28196         * src/image.c (image_error): Take a variable number of args.
28197         Callers simplified.
28198         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
28199         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
28200         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
28201         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
28203         Optional args for holiday-greek-orthodox-easter
28204         * etc/NEWS: Document this.
28205         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
28206         Add optional args N and STRING, mimicking the API and code of
28207         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
28209 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
28211         xref-find-definitions: Exclude more generic function items.
28212         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
28213         Add doc string.
28214         (cl--generic-find-defgeneric-regexp): New.
28215         (find-function-regexp-alist): Add it.
28216         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
28217         elisp-mode.el, change to search for ";;; Code:"
28218         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
28219         (find-function-regexp-alist): Add them.
28220         * lisp/progmodes/elisp-mode.el:
28221         (elisp--xref-format, elisp--xref-format-extra): Change back to
28222         defvar due to bug#21237.
28223         (elisp--xref-find-definitions): Exclude co-located default methods for
28224         generic functions.  Also exclude implicitly declared defgeneric.
28225         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
28226         mode variables defined by 'define-minor-mode'.
28227         * test/automated/elisp-mode-tests.el: Declare generic functions, add
28228         tests for them.
28229         (xref-elisp-test-run): Fix bug.
28230         (emacs-test-dir): Improve initial value.
28231         (find-defs-defun-defvar-el): Don't expect defvar.
28232         (find-defs-feature-el): Match change to find-feature-regexp.
28234 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
28236         Improve warning about purecopy of strings with properties
28237         * src/alloc.c (purecopy): Show the offending string with the
28238         warning about removing its text properties.
28240 2015-08-12  Alan Mackenzie  <acm@muc.de>
28242         Introduce new macros to cover Emacs's new names in cl-lib.el
28243         This also eliminates `mapcan' warnings in XEmacs.
28244         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
28245         characterise [X]Emacs versions.
28246         (top-level): Require either 'cl or 'cl-lib, depending on
28247         c--mapcan-status.
28248         Change this back to cc-external-require from an eval-when-compile
28249         require.
28250         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
28251         (c--delete-duplicates): New macros which expand into either old or new
28252         names.
28253         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
28254         rather than the old names.
28255         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
28256         rather than mapcan.
28257         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
28258         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
28259         depending on c--mapcan-status.
28260         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
28261         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
28262         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
28263         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
28264         (c-decl-block-key, c-keywords, c-keywords-obarray)
28265         (c-regular-keywords-regexp, c-primary-expr-regexp)
28266         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
28267         (c-known-type-key, c-nonlabel-token-key)
28268         (c-make-init-lang-vars-fun): Use the new macros rather than the old
28269         names.
28271 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
28273         loadhist.el (read-feature): Conform to completing-read
28274         * lisp/loadhist.el (read-feature): According to `completing-read'
28275         documentation, if collection is a list, then it must be a list of
28276         strings, not a list of symbols like before.
28278 2015-08-12  David Kastrup  <dak@gnu.org>
28280         Deal gracefully with up-events (Bug#19746)
28281         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
28282         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
28283         those may easily be injected by user-level Lisp code.
28284         (read_key_sequence): Discard unbound up-events like unbound
28285         down-events: they are even more likely only relevant for special
28286         purposes.
28287         While Emacs will not produce up-events on its own currently (those are
28288         converted to drag or click events before being converted to
28289         Lisp-readable structures), the input queue can be made to contain them
28290         by synthesizing events to `unread-command-events'.  Emacs should deal
28291         consistently with such events.
28293 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
28295         Fix display of thin lines whose newline has line-height property of t
28296         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
28297         and descent values of non-empty glyph rows, since they could have
28298         forced low values deliberately.  (Bug#21243)
28300 2015-08-12  Richard Stallman  <rms@gnu.org>
28302         Offer to combine multiple To or CC fields.
28303         * lisp/mail/sendmail.el (mail-combine-fields): New function.
28304         (mail-send): Call 'mail-combine-fields'.
28306         Don't decrypt encrypted files.
28307         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
28309         Handle encrypted mbox files.
28310         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
28311         the mbox file if necessary.
28313         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
28314         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
28315         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
28316         In a mime message, reenable Mime and show the parts that
28317         were shown before.
28318         Add keyword "decrypt" if anything decrypted.
28320         epa-inhibit inhibits auto-recognition of .gpg files
28321         * lisp/epa-file.el (epa-inhibit): New variable.
28322         (epa-file-handler): Check epa-inhibit.
28324 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
28326         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
28328 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28330         Respect python.el imenu when semantic-mode is off
28331         Fixes bug#21220
28332         * lisp/cedet/semantic/wisent/python.el: Do not force
28333         wisent-python-default-setup on python-mode-hook.
28335 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
28337         Give names to Unicode code points in C code
28338         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
28339         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
28340         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
28341         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
28342         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
28343         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
28344         (OBJECT_REPLACEMENT_CHARACTER):
28345         New named constants for Unicode code points.
28346         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
28347         * src/composite.c (char_composable_p):
28348         * src/lread.c (readevalloop, read1):
28349         * src/xdisp.c (get_next_display_element):
28350         Use them.
28351         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
28352         Remove; now in character.h.
28354 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
28356         elisp--xref-find-definitions handle cl-defstuct default constructor
28357         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
28358         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
28359         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
28360         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
28361         from xref-elisp-test for ease of debugging.
28362         (xref-elisp-deftest): Rename from xref-elisp-test.
28363         (find-defs-constructor): New test.
28364         (find-defs-defgeneric-el): Match batch test config.
28365         (compile): Required for find-defs compilation-minor-mode test.
28366         (find-defs-defvar-el): Match code change.
28367         (find-defs-face-el): Match code change.
28368         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
28369         Improve doc string.
28371 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
28373         * lisp/replace.el (perform-replace): Document `replacements'.
28374         (perform-replace): Move the description of the format of `replacements'
28375         from the body's comment to the doc string.
28377 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
28379         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
28380         sequence.  Recent adb version send initial escape sequences, even
28381         when terminal type is set to TERM=dumb.
28383 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
28385         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
28386         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
28387         Function deleted.
28388         (elisp--xref-format-cl-defmethod): New defconst.
28389         (find-feature-regexp, find-alias-regexp): New defcustoms.
28390         (elisp--xref-make-xref): New function.
28391         (elisp--xref-find-definitions): Rewrite using the above, handle many
28392         more cases.  Always output all available definitions.
28393         (xref-location-marker): No need for special cases.
28394         * test/automated/elisp-mode-tests.el: Add more tests of
28395         elisp--xref-find-definitions, improve current tests.
28397 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
28399         Fix recording of events pushed onto unread-command-events
28400         * src/keyboard.c (read_char): Make sure events read from
28401         unread-command-events and unread-post-input-method-events are
28402         always recorded by record_char.  Reported by David Kastrup
28403         <dak@gnu.org>, see
28404         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
28406 2015-08-10  Samer Masterson  <samer@samertm.com>
28408         Set file buffer as current for "--file"
28409         * lisp/startup.el (command-line-1): Set file buffer as current before
28410         it is displayed so it can be used with options like "--eval".
28411         (Bug#21095)
28413 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
28415         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
28416         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
28417         after setting LC_ALL to the desired locale, to avoid affecting how
28418         numbers are read and printed.  (Bug#21223)
28420 2015-08-10  Alan Mackenzie  <acm@muc.de>
28422         Fix "Invalid search bound (wrong side of point)" in fontification
28423         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
28424         an initialization expression, check point is not beyond the
28425         fontification limit.
28427 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
28429         Fix DPI calculation when Xft/DPI is default
28430         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
28431         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
28432         Remove unnecessary cast while we're in the neighborhood.
28434 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
28436         Add project-vc-search-path and project-vc-ignores
28437         * lisp/progmodes/project.el (project-vc): New group.
28438         (project-vc-search-path, project-vc-ignores): New variables.
28439         (project--value-in-dir): Utility function.
28440         (project-search-path, project-ignores): Use them.
28441         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
28442         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
28444 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
28446         Fix some minor quoting issues with grave accent
28447         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
28448         Remove redundant quotes.
28449         * src/doc.c (uLSQM, uRSQM): New macros.
28450         * src/doc.c (Fsubstitute_command_keys):
28451         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
28452         preference for quotes rather than hardcoding the ‘grave’ style.
28453         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
28454         (re_match_2_internal) [DEBUG]: In debugging output, quote C
28455         strings with "...", not `...'.
28457         ChangeLog.2 ignores remote-tracking merges
28458         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
28459         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
28460         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
28462 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
28464         Use kpsewhich in ffap-latex-mode, if available
28465         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
28466         (ffap-latex-mode): Use kpsewhich if available.
28468         ffap: disallow braces in filenames for tex modes
28469         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
28470         braces in tex-related modes.
28472         Remove useless backslashes from ffap-string-at-point-mode-alist
28473         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
28474         misleading backslashes from default value.
28476         Augment docstring of ffap-string-at-point-mode-alist
28477         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
28478         and END are handled.
28480 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
28482         * lisp/org/org-src.el (org-edit-src-code)
28483         (org-edit-fixed-width-region):
28484         * lisp/simple.el (completion-setup-function):
28485         Remove calls to substitute-command-keys that always just return
28486         their argument.
28488 2015-08-09  Daiki Ueno  <ueno@gnu.org>
28490         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
28491         (Bug#21210)
28493 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
28495         Fix link to source code in help window
28496         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
28497         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
28498         'No longer include timestamp in header of .elc files'.  Add code
28499         that will return .el source file in load-path.
28501 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
28503         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
28504         Respect `isearch-lax-whitespace' when searching through
28505         `isearch-word'.
28507 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
28509         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
28511         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
28512         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
28513         (org-set-regexps-and-options, org-assign-fast-keys)
28514         (org-contextualize-keys, org-contextualize-validate-key)
28515         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
28516         (org-find-olp, org-find-exact-heading-in-directory)
28517         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
28518         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
28519         (org-replace-escapes): Use dolist.
28520         (org-mode): Optimize away XEmacs-only code.
28521         (org-refile-get-targets): Remove unused var `f'.
28522         (org-fast-todo-selection): Remove unused var `e'.
28523         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
28524         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
28525         (org-format-latex): Use dolist.  Remove unused var `e'.
28526         (org-toggle-heading): Access vars lexically rather than dynamically.
28527         (org-backward-sentence, org-forward-sentence, org-meta-return)
28528         (org-kill-line): Mark arg as unused.
28529         (org-submit-bug-report): Silence compiler warning.
28530         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
28531         (org-get-cursor-date): Remove unused var `tm'.
28532         (org-comment-or-uncomment-region): Use standard name `_'.
28533         (reftex-docstruct-symbol, reftex-cite-format): Declare to
28534         silence byte-compiler.
28535         (org-reftex-citation): Add `org--' prefix to dynamically scoped
28536         `rds' var.
28538 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
28540         Electric quote if coding is undecided or no conv
28541         * lisp/electric.el (electric--insertable-p): Also say that a
28542         string is insertable if the buffer file coding system is undecided
28543         or uses no conversion, as curved quotes will work in either case.
28545         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
28547 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
28549         Fix overlay string display regressions introduced in Emacs 24.5
28550         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
28551         buffer position, if we move the iterator to a new position as
28552         result of jumping over text covered by a "replacing" display
28553         property.
28554         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
28556         Support recovery from C stack overflow on MS-Windows
28557         * src/w32fns.c (w32_reset_stack_overflow_guard)
28558         (stack_overflow_handler): New functions for handling C stack
28559         overflow exceptions.
28560         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
28561         specially, and zero out except_addr if we do.
28562         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
28563         mode.
28564         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
28565         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
28566         the MinGW build, but the code guarded by that is for Posix hosts.
28567         * src/keyboard.c (command_loop) [WINDOWSNT]:
28568         Call w32_reset_stack_overflow_guard.
28569         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
28570         (sigsetjmp): New macro.
28571         (w32_reset_stack_overflow_guard): Declare the prototype.
28572         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
28574 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
28576         Improve error signalling for seq-subseq
28577         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
28578         when indexes are too large, but to silently ignore numbers which
28579         are too negative for lists.  String and vector handling errors in
28580         both cases.  This has been regularized.  Error signaling behavior
28581         has been explicitly added to the doc string.
28583         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
28584         therefore also impacted by this change.  Update the doc string
28585         to reflect this.
28587         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
28588         added for these exceptional cases, as well as one non exceptional
28589         base case.
28591 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
28593         Improve error checking in tramp-adb.el
28594         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
28595         Improve error checking.  "ls -l" on Android in Enforcing mode can
28596         print "lstat './FILENAME failed: Permission denied".
28598 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
28600         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
28601         non-struct vectors.
28603 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
28605         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
28606         * lisp/window.el: Fix typo that broke build.
28607         (display-buffer--action-function-custom-type):
28608         Add `display-buffer-use-some-frame'.
28609         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
28611         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
28612         * lisp/window.el (display-buffer-use-some-frame): Add support for
28613         'inhibit-same-window in alist.
28614         * doc/lispref/windows.texi (display-buffer-use-some-frame):
28615         Doc support for 'inhibit-same-window in alist.
28617 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
28619         Avoid infinite loop in display of invisible text in strings
28620         * src/xdisp.c (handle_invisible_prop): If the next change of
28621         invisibility spec does not mean the beginning of a visible text,
28622         update the string position from which to start the search for the
28623         next invisibility change.  This avoids an infinite loop when we
28624         have more than one invisibility spec that are made inactive by
28625         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
28626         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
28627         for the situation that caused bug #21200.
28629 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
28631         * lisp/emacs-lisp/package.el: Simplify describe-package-1
28632         (package-help-section-name-face): New face.
28633         (package--print-help-section): New function.
28634         (describe-package-1): Refactor section printing.
28635         (package-make-button): Use face instead of font-lock-face, which
28636         doesn't work on buttons.
28638         * lisp/emacs-lisp/package.el: Define custom faces
28639         (package-name-face, package-description-face)
28640         (package-status-built-in-face, package-status-external-face)
28641         (package-status-available-face, package-status-new-face)
28642         (package-status-held-face, package-status-disabled-face)
28643         (package-status-installed-face, package-status-dependency-face)
28644         (package-status-unsigned-face, package-status-incompat-face)
28645         (package-status-avail-obso-face): New faces.
28646         (package-menu--print-info-simple): Use them.
28648 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
28650         Fix some confusion with ‘format’
28651         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
28652         (allout-graphics-modification-handler):
28653         Protect arbitrary string in a format context with "%s" format.
28654         * lisp/avoid.el:
28655         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
28656         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
28657         * lisp/erc/erc-button.el (erc-button-beats-to-time):
28658         * lisp/gnus/message.el (message-send-form-letter):
28659         * lisp/org/ob-core.el (org-babel-check-evaluate)
28660         (org-babel-confirm-evaluate):
28661         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
28662         * lisp/org/ox-latex.el (org-latex-compile):
28663         * lisp/org/ox-man.el (org-man-compile):
28664         * lisp/org/ox-odt.el (org-odt-template):
28665         * lisp/org/ox-texinfo.el (org-texinfo-compile):
28666         * lisp/progmodes/prolog.el (prolog-help-info)
28667         (prolog-view-predspec):
28668         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
28669         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
28670         * lisp/textmodes/rst.el (rst-replace-lines):
28671         Change (message (format ...)) to (message ...), and likewise
28672         for ‘error’.  This lessens the probability of confusion when the
28673         output of ‘format’ contains ‘%’.
28675 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
28677         * lisp/replace.el (replace-character-fold): Default to nil.
28679         * lisp/character-fold.el: Fix lax whitespace.
28680         (character-fold-table): Don't make space match other whitespace chars.
28681         (character-fold-to-regexp): Simplify lax behavior.
28683 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
28685         Preserve window point in xref-find-definitions-other-window
28686         Fix the problem reported by Ingo Logmar in
28687         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
28688         * lisp/progmodes/xref.el (xref--goto-char): Extract from
28689         xref--goto-location.
28690         (xref--pop-to-location): Use it.  Replace xref--goto-location with
28691         a direct xref-location-marker call.
28692         (xref--show-location): Likewise.
28693         (xref--display-position): Use xref--goto-char.
28695         * lisp/progmodes/project.el: Add a paragraph to the front matter.
28697 2015-08-04  David Kastrup  <dak@gnu.org>
28699         * lisp/vc/emerge.el (emerge-show-file-name):
28700         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
28701         (vhdl-comment-insert, vhdl-hooked-abbrev):
28702         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
28703         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
28704         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
28705         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
28706         * lisp/obsolete/vip.el (vip-escape-to-emacs)
28707         (vip-prefix-arg-value, vip-prefix-arg-com):
28708         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
28709         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
28710         (quail-tibkey-update-translation):
28711         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
28712         * lisp/leim/quail/lao.el (quail-lao-update-translation):
28713         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
28714         (quail-japanese-self-insert-and-switch-to-alpha):
28715         * lisp/leim/quail/hangul.el (hangul2-input-method)
28716         (hangul3-input-method, hangul390-input-method):
28717         * lisp/language/hanja-util.el (hangul-to-hanja-char):
28718         * lisp/international/robin.el (robin-input-method):
28719         * lisp/international/quail.el (quail-start-translation)
28720         (quail-start-conversion):
28721         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
28722         (gnus-article-describe-key-briefly):
28723         * lisp/eshell/em-hist.el (eshell-list-history):
28724         * lisp/term.el (term-dynamic-list-input-ring)
28725         (term-dynamic-list-completions):
28726         * lisp/subr.el (momentary-string-display):
28727         * lisp/simple.el (read-quoted-char):
28728         * lisp/pcomplete.el (pcomplete-show-completions):
28729         * lisp/kmacro.el (kmacro-repeat-on-last-key):
28730         * lisp/info.el (Info-summary):
28731         * lisp/ehelp.el (electric-help-command-loop):
28732         * lisp/ebuff-menu.el (electric-buffer-list)
28733         (Electric-buffer-menu-exit):
28734         * lisp/double.el (double-translate-key):
28735         * lisp/comint.el (comint-dynamic-list-input-ring)
28736         (comint-dynamic-list-completions): Do not overwrite preexisting
28737         contents of `unread-command-events' when putting new events into it.
28739 2015-08-04  Daniel Colascione  <dancol@dancol.org>
28741         Improve ansi-color filtering of unrecognized escape sequences
28742         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
28743         escape sequences.
28744         (ansi-color-filter-apply, ansi-color-apply): Filter out
28745         unrecognized escape sequences.
28747 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
28749         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
28750         definitions to `easy-menu-define', improve a couple to account for
28751         async, and add a couple of new commands.
28753 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
28755         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
28757 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
28759         Add new 'calendar-weekend-days' option
28760         Make the days receiving the 'calendar-weekend-header' face freely
28761         customizable, as they differ by region/culture.
28762         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
28763         new variable.
28764         * lisp/calendar/calendar.el (calendar-generate-month): New variable
28765         calendar-weekend-days to customize day header fontification.
28767 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
28769         Redo text-quoting-style variable
28770         Rename help-quote-translation to text-quoting-style,
28771         and use symbols rather than characters as values.
28772         This follows suggestions along these lines by Alan Mackenzie in:
28773         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
28774         and by Drew Adams in:
28775         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
28776         * doc/lispref/help.texi (Keys in Documentation)
28777         * etc/NEWS:
28778         * lisp/cus-start.el (standard):
28779         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
28780         Document and/or implement the new behavior instead of the old.
28781         (syms_of_doc): New symbols 'grave' and 'straight'.
28783 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
28785         nnimap.el: Use IMAP MOVE extension if available
28786         * lisp/gnus/nnimap.el (nnimap-request-move-article)
28787         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
28788         Use MOVE extension if available.
28790         nnimap.el: Explicitly ask for server capabilities
28791         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
28792         capabilities will be returned in the login-result.
28794 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
28796         Treat help strings like other doc strings
28797         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
28798         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
28799         substitute-command-keys.
28800         * src/keyboard.c (show_help_echo, parse_menu_item): Call
28801         substitute-command-keys on the help string before displaying it.
28803         Also mention "curly quotes"
28804         See Drew Adams's email in:
28805         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
28806         * doc/lispref/help.texi (Keys in Documentation):
28807         Add index entry "curly quotes".
28808         * etc/NEWS: Use the phrase "curly quotes" too.
28810         ede-proj-target-makefile docstring tweaks
28811         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
28812         Consistently use "all:" to describe the all: target,
28813         replacing three different and confusingly-quoted usages.
28815 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
28817         Don't abort emacsclientw when -a was specified
28818         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
28819         out if we are in emacsclientw and -a was specified.
28821 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
28823         Fix handling of 1st keystroke on MS-Windows
28824         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
28825         This is needed to correctly handle the session's first keystroke,
28826         if it has any modifiers.  (Bug#19994)
28828 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
28830         Substitute some customization etc. doc strings
28831         These changes apply substitute-command-keys to some
28832         doc strings that were going through untranslated
28833         when creating customization or other widgets.
28834         * lisp/cus-edit.el (custom-group-value-create):
28835         * lisp/wid-edit.el (widget-default-create):
28836         (widget-push-button-value-create):
28837         Treat the widget tag as a doc string.
28838         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
28839         Treat the :documentation value as a doc string.
28840         * lisp/wid-edit.el (widget-choose):
28841         Treat the choice names as doc strings.
28842         (widget-default-create): Treat the :doc value as a doc string.
28843         (widget-toggle-value-create): Treat the :on and :off values
28844         as doc strings.
28845         (widget-documentation-string-value-create):
28846         Substitute the doc string.
28848 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
28850         Add a second argument to project-ignores
28851         * lisp/progmodes/project.el (project-ignores): Add a second
28852         argument DIR.
28853         * lisp/progmodes/project.el (project-ignores): Only include the VC
28854         ignores if DIR is the VC root.
28855         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
28857 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
28859         Prevent incorrect display when 'line-spacing' variable is set
28860         * src/xdisp.c (try_window_id): Give up this optimization if the
28861         buffer has its 'line-spacing' variable set non-nil.
28863 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
28865         Don't pass NOVISIT to find-file
28866         * lisp/progmodes/etags.el (next-file):
28867         Don't pass NOVISIT to find-file (bug#21175).
28869         Ignore buffer restriction for tags-loop-eval
28870         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
28871         restriction (bug#21167).
28873 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
28875         Fix a thinko in 'ffap-gopher-at-point'
28876         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
28878         Honor 'line-spacing' for empty lines
28879         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
28880         property and 'line-spacing' frame parameter or variable or
28881         property for empty lines, by doing the same processing as in
28882         x_produce_glyph for newline characters.  (Bug#21165)
28884 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
28886         Simplify by assuming C99 integer division
28887         * src/floatfns.c (ceiling2, floor2, truncate2):
28888         Assume C99 (i.e., Fortran) semantics for integer division.
28889         This simplifies the code.
28891 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
28893         Don't overflow if computing approximate percentage
28894         * lisp/align.el (align-region):
28895         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
28896         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
28897         * lisp/cus-edit.el (custom-buffer-create-internal):
28898         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
28899         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
28900         (checkdoc-next-message-error):
28901         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
28902         * lisp/epa.el (epa-progress-callback-function):
28903         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
28904         * lisp/ffap.el (ffap-menu-rescan):
28905         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
28906         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
28907         * lisp/gnus/nneething.el (nneething-retrieve-headers):
28908         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
28909         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
28910         * lisp/gnus/nnml.el (nnml-retrieve-headers):
28911         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
28912         * lisp/gnus/nntp.el (nntp-retrieve-headers)
28913         (nntp-retrieve-articles):
28914         * lisp/imenu.el (imenu--relative-position):
28915         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
28916         (skkdic-convert-okuri-nasi):
28917         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
28918         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
28919         * lisp/org/org-list.el (org-update-checkbox-count):
28920         * lisp/org/org.el (org-table-map-tables)
28921         (org-update-parent-todo-statistics):
28922         * lisp/play/decipher.el (decipher-insert-frequency-counts)
28923         (decipher-analyze-buffer):
28924         * lisp/profiler.el (profiler-format-percent):
28925         * lisp/progmodes/cc-cmds.el (c-progress-update):
28926         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
28927         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
28928         (idlwave-list-load-path-shadows):
28929         * lisp/progmodes/opascal.el (opascal-step-progress):
28930         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
28931         (vhdl-scan-directory-contents):
28932         * lisp/textmodes/bibtex.el (bibtex-progress-message):
28933         * lisp/textmodes/flyspell.el (flyspell-small-region)
28934         (flyspell-external-point-words):
28935         * lisp/textmodes/table.el (table-recognize):
28936         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
28937         progress-report percentages and the like.  This avoids problems
28938         if (* 100 NUMERATOR) would overflow.
28939         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
28940         * lisp/gnus/registry.el (registry-reindex):
28941         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
28942         * lisp/descr-text.el (describe-char):
28943         * lisp/org/org-colview.el (org-nofm-to-completion):
28944         * lisp/ps-print.el (ps-plot):
28945         * lisp/simple.el (what-cursor-position):
28946         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
28947         more-complicated and less-accurate approximation.
28949         Fix some int overflows in profiler.c
28950         * src/profiler.c (make_log): Make args EMACS_INT, not int,
28951         to avoid unwanted behavior on 'int' overflow.
28952         (make_log, evict_lower_half, record_backtrace):
28953         Use ptrdiff_t, not int, for object indexes.
28955         Port to pedantic memcpy
28956         * src/keyboard.c (menu_bar_items, tool_bar_items):
28957         * src/xrdb.c (magic_db):
28958         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
28960         Merge from gnulib
28961         This incorporates:
28962         2015-07-29 time_rz: port to pedantic memcpy
28963         * lib/time_rz.c: Copy from gnulib.
28965 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
28967         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
28968         When updating the very last entry, tabulated-list-print would
28969         erase it and then try to look at the next one (which obviously
28970         isn't there).
28972 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
28974         Allow to use the old key processing code on MS-Windows
28975         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
28976         New variable.
28977         (w32_wnd_proc): Use it to invoke the old code that processed
28978         character keys, as fallback, when this variable is non-nil.
28979         Fix typos in comments.  (Bug#19994)
28981 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
28983         Improve handling of Unicode keyboard input on MS-Windows
28984         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
28985         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
28986         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
28987         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
28988         successful, don't call TranslateMessage.  (Bug#19994)
28990 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
28992         Fix default-directory in changeset diffs after vc-print-log
28993         * lisp/vc/log-view.el (log-view-diff-common): Move the
28994         revision-granularity check back into log-view-diff-changeset.
28995         (log-view-diff-changeset): Bind default-directory to the current
28996         VC root.
28998         Rename project-directories to project-roots
28999         * lisp/progmodes/project.el (project-search-path-function)
29000         (project-search-path): Update the docstring.
29001         (project-directories): Rename to `project-roots', update all
29002         callers and implementations accordingly.
29003         (project-root): Remove.
29004         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
29005         as the default file mask.
29007 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
29009         Support long URLs in w32-shell-execute
29010         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
29011         and filename_to_ansi to convert the DOCUMENT argument, as it could
29012         be a URL that is not limited to MAX_PATH characters.  Instead, use
29013         MultiByteToWideChar directly, and allocate heap storage as
29014         required to accommodate the converted string.  Likewise with
29015         non-Unicode operation.  Ensure OPERATION is null-terminated, even
29016         if it is longer than 32K bytes.  (Bug#21158)
29018 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
29020         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
29022 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
29024         Add docs for display-buffer action display-buffer-use-some-frame
29025         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
29026         * doc/lispref/windows.texi (Display Action Functions):
29027         Add display-buffer-use-some-frame.
29028         * etc/NEWS: Mention display-buffer-use-some-frame.
29030         Add display-buffer action display-buffer-use-some-frame
29031         * lisp/window.el (display-buffer-use-some-frame): New.
29033         Handle vc-mtn error more gently
29034         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
29035         branch is nil.
29037 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
29039         Fix Tramp problems with multihops, and nc
29040         * lisp/net/tramp-cache.el (tramp-get-file-property)
29041         (tramp-set-file-property, tramp-flush-file-property)
29042         (tramp-get-connection-property, tramp-set-connection-property)
29043         (tramp-flush-connection-property): Remove hop from vector.
29044         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
29045         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
29046         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
29047         netstat to 60".
29048         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
29049         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
29050         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
29051         Keep hop in result.
29052         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
29053         Add hop tests.
29055 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
29057         Resurrect highlighting of repeated words by Flyspell Mode
29058         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
29059         characters between point and the doublon candidate, so that
29060         flyspell-word-search-backward finds it.  (Bug#21157)
29062         Fix redisplay of large images on expose events
29063         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
29064         between signed negative values and unsigned values.  This
29065         prevented redisplay on expose events when the window showed a very
29066         large image.
29068 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
29070         Remove unnecessary stack overflow dependency
29071         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
29072         Don't worry about $ac_cv_header_sys_resource_h and
29073         $ac_cv_func_getrlimit, as they're no longer needed for this.
29074         Problem reported by Eli Zaretskii in:
29075         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
29077 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
29079         Pacify compilation -Wincompatible-pointer-types warnings
29080         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
29081         warning.
29082         (CompareStringW_Proc): New typedef.
29083         (w32_compare_strings): Use it, to pacify compiler warnings under
29084         "-Wincompatible-pointer-types".
29085         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
29086         (GetDiskFreeSpaceExA_Proc): New typedefs.
29087         (Ffile_system_info): Use them, to pacify compiler warnings under
29088         "-Wincompatible-pointer-types".
29090 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
29092         Fix subscript error in calculate_direct_scrolling
29093         Use slightly-longer cost vectors.  Without this change,
29094         calculate_direct_scrolling can have a subscript violation when
29095         FRAME_LINES (frame) <= delta.
29096         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
29097         (line_ins_del, do_line_insertion_deletion_costs):
29098         Allocate and use slightly-larger cost vectors, ones based on
29099         FRAME_TOTAL_LINES instead of FRAME_LINES.
29101         Fix uninitalized value in encode_coding_object
29102         * src/coding.c (encode_coding_object): Also initialize
29103         coding->src_pos and coding->src_pos_byte when NILP (src_object).
29104         This avoids later use of uninitialized storage.
29106 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
29108         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
29109         (Bug#21141)
29111 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
29113         Merge from gnulib
29114         This incorporates:
29115         2015-07-27 time_rz: port better to MinGW
29116         2015-07-27 time: port __need_time_t to MinGW
29117         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
29118         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
29119         * lib/time-internal.h: New file, from gnulib.
29121 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
29123         Handle NULL pointers in w32heap.c allocation routines
29124         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
29125         freeable".
29126         (realloc_after_dump, realloc_before_dump, free_before_dump):
29127         Handle NULL pointers gracefully, as Emacs now seems to expect that.
29129         Fix Cairo build without PNG
29130         * src/image.c: Define PNG function when USE_CAIRO is defined, even
29131         if HAVE_PNG is not.  (Bug#21133)
29133         MS-Windows follow-up for recent TZ-related changes
29134         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
29135         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
29136         picking up 'struct timespec' from pthread.h, if it is installed on
29137         the user's system.  We want either the definitions from MinGW
29138         system headers, if available, or the Gnulib replacements if not.
29139         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
29140         lib/time.h.
29141         * lib/time.in.h: Don't let __need_* symbols affect what happens on
29142         MinGW.  These symbols are defined by MinGW system headers, but we
29143         don't want that to affect whether Gnulib portions of the header
29144         are or aren't used.
29146 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
29148         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
29150         New optional ZONE arg for format-time-string etc.
29151         This simplifies time conversions in other time zones.
29152         It also prevents display-time-world tampering with TZ (Bug#21020).
29153         * admin/admin.el (add-release-logs):
29154         Use improved add-log-time-format API.
29155         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
29156         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
29157         * configure.ac (tzalloc): Remove test for this, since
29158         Emacs no longer uses HAVE_TZALLOC directly.
29159         * doc/lispref/os.texi (Time of Day, Time Conversion)
29160         (Time Parsing):
29161         * etc/NEWS: Document the new behavior.
29162         Merge from gnulib, incorporating:
29163         2015-07-25 strftime: fix newly-introduced bug on Solaris
29164         2015-07-23 fprintftime, strftime: use timezone_t args
29165         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
29166         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
29167         * m4/time_h.m4:
29168         Update from gnulib.
29169         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
29170         New files from gnulib.
29171         * lisp/time-stamp.el (time-stamp-string):
29172         * lisp/time.el (display-time-world-list)
29173         (display-time-world-display):
29174         Use new API, with time zone arg.
29175         * lisp/time.el (display-time-world-display):
29176         Fix race when current-time advances while we're running.
29177         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
29178         (add-log-iso8601-time-string): Accept optional time zone arg.
29179         * lisp/vc/add-log.el (add-change-log-entry):
29180         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
29181         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
29182         Add rules for the time module, since they're now needed
29183         for tzalloc etc.
29184         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
29185         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
29186         * src/editfns.c: Include errno.h.
29187         (set_time_zone_rule): Omit unnecessary forward decl.
29188         (initial_tz): Remove, replacing with ...
29189         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
29190         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
29191         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
29192         (tzlookup): New static functions.
29193         (init_editfns): New arg DUMPING.  All uses changed.
29194         (init_editfns): Omit most initialization if dumping, not if
29195         !initialized.  Initialize wall_clock_tz and local_tz.
29196         (emacs_nmemftime, format_time_string): Time zone argument can now
29197         be any time zone, not just a boolean for UTC or local time.  All
29198         callers changed.
29199         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
29200         (Fcurrent_time_zone): New optional arg ZONE.
29201         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
29202         the same form as with the other new additions.
29203         (decode_time_zone): Remove; no longer needed.
29204         (tzvalbuf): Now file-scope.
29205         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
29206         (syms_of_editfns): Define Qwall.
29207         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
29208         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
29209         [!HAVE_TZALLOC]:
29210         Remove; now supplied by gnulib.
29211         * src/emacs.c (main):
29212         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
29214 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
29216         Fix infinite loop in delete-consecutive-dups
29217         * lisp/subr.el (delete-consecutive-dups): Work even if the last
29218         element is nil (Bug#20588).  Avoid rescan of a circular list in
29219         deletion of last element.
29221 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
29223         Have `x-frame-geometry' return nil for terminal and initial
29224         frames (Bug#21132)
29225         * src/nsfns.m (Fx_frame_geometry):
29226         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
29227         terminal frames.
29228         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
29229         (Fx_frame_geometry): Return nil for terminal frames
29231 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
29233         * etc/tutorials/TUTORIAL.ja: Improve translation.
29235 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
29237         Avoid crashes when w32 GUI functions are called in -batch
29238         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
29239         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
29240         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
29242         Fix flyspell-check-previous-highlighted-word
29243         * lisp/textmodes/flyspell.el
29244         (flyspell-check-previous-highlighted-word): Really accept a
29245         numeric argument, as the doc string describes.  Fix an off-by-one
29246         error in looking up overlays, so invocation with point immediately
29247         after a word would check that word.  Clarify the doc string as
29248         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
29250 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
29252         Minor cleanup in tramp-tests.el
29253         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
29254         Implement using the documented interface
29255         `tramp-connection-properties', rather than with internal functions.
29257 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
29259         Pass lambdas to `skeleton-read'
29260         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
29261         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
29262         lambdas to `skeleton-read' (bug#20386).
29264 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
29266         * INSTALL (DETAILED BUILDING AND INSTALLATION):
29267         Mention --without-imagemagick.
29269         Don't require GUI frames and mouse for Flyspell menus
29270         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
29271         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
29272         support, since pop-up menus work with text terminals and can be
29273         controlled via the keyboard.
29275         Improve documentation of Flyspell commands
29276         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
29277         can be invoked via the keyboard.  Mention those commands by name
29278         and add them to the fn index.  (Bug#21125)
29280 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
29282         Fix some Tramp problems with HP-UX
29283         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
29284         Add "tab0" to stty call.
29285         * test/automated/tramp-tests.el (tramp-persistency-file-name):
29286         Set to nil.
29287         (tramp--test-hpux-p): New defun.
29288         (tramp--test-utf8): Use it.
29290 2015-07-22  Glenn Morris  <rgm@gnu.org>
29292         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
29294 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
29296         Fix point positioning in ffap-next-guess
29297         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
29298         as our callers expect.  This was clobbered as part of fixing
29299         bug#5673.  (Bug#21107)
29300         (ffap-gopher-at-point): Set ffap-string-at-point-region.
29302 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
29304         * lisp/window.el (even-window-sizes): Fix customization type.
29306         Optionally even widths of `display-buffer' windows.  (Bug#21100)
29307         * lisp/window.el (quit-restore-window): Restore width if
29308         requested.
29309         (display-buffer-record-window): Record width when window is
29310         reused and horizontally combined.
29311         (even-window-sizes): New option to allow evening window widths.
29312         (even-window-heights): Defalias to `even-window-sizes'.
29313         (window--even-window-heights): Rename to
29314         `window--even-window-sizes'.  Handle side-by-side windows.
29315         (display-buffer-use-some-window): Call `window--even-window-sizes'
29316         instead of `window--even-window-heights'.
29317         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
29318         * doc/lispref/windows.texi (Choosing Window Options): Describe
29319         `even-window-sizes'.
29320         (Coordinates and Windows): Fix typo.
29322 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
29324         Add file name to autoload error messages
29325         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
29326         Add condition-case to add file name to error message.
29328 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
29330         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
29331         Use 0.0.0.1 as test host.
29333 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
29335         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
29336         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
29337         Fix inf-loop (bug#21083).
29339 2015-07-21  Glenn Morris  <rgm@gnu.org>
29341         * test/automated/package-test.el (package-test-signed):
29342         Update for recent changes.
29344         * test/automated/elisp-mode-tests.el
29345         (elisp-xref-finds-both-function-and-variable)
29346         (elisp-xref-finds-only-function-for-minor-mode):
29347         Update for recent xref name changes.
29349 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
29351         Make eldoc timer non-repeatable
29352         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
29353         non-repeatable.  Since it's on post-command hook, that just wasted
29354         CPU cycles.
29356 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
29358         Mention `tramp-connection-properties' in NEWS
29360         Sync with Tramp repository
29361         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
29362         required prior changing its configuration.
29363         (Connection caching, Predefined connection information)
29364         (Remote shell setup): Fix typos.
29365         (Predefined connection information): Describe, how to overwrite
29366         parameters of `tramp-methods'.
29367         (Remote programs, Remote processes, Traces and Profiles):
29368         Simplify example.
29369         (Remote programs): Remove superfluous comment.
29370         * doc/misc/trampver.texi: Update release number.
29371         * lisp/net/tramp-cache.el (tramp-connection-properties):
29372         Adapt docstring.
29373         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
29374         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
29375         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
29376         "gvfs-mkdir -p ..." does not work robust.
29377         (tramp-gvfs-maybe-open-connection):
29378         Adapt `tramp-get-method-parameter' call.
29379         * lisp/net/tramp-sh.el (tramp-methods):
29380         Add `tramp-remote-shell-login' parameter where it fits.
29381         (tramp-get-remote-path): Use it.
29382         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
29383         (all): Adapt `tramp-get-method-parameter' calls.
29384         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
29385         (tramp-get-method-parameter): Replace argument METHOD by VEC.
29386         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
29387         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
29388         (all): Adapt `tramp-get-method-parameter' calls.
29389         * lisp/net/trampver.el: Update release number.
29390         * test/automated/tramp-tests.el (tramp--instrument-test-case):
29391         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
29392         (tramp-test13-make-directory, tramp--test-adb-p)
29393         (tramp--test-smb-or-windows-nt-p): Simplify.
29394         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
29395         (tramp--test-special-characters): Fix docstring.  Add gvfs and
29396         ftp tests.
29397         (tramp--test-utf8): Fix docstring.
29399 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
29401         Add new xref-query-replace command
29402         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
29403         New function, extracted from xref-pulse-momentarily.
29404         (xref-query-replace): New command.
29405         (xref--query-replace-1): New helper function.
29406         (xref--xref-buffer-mode-map): Add `r' binding.
29408 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
29410         Simplify icalendar decoding of Z dates
29411         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
29412         Simplify calculation of time strings with trailing "Z".
29414 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
29416         Do not corrupt grep-find-ignored-files
29417         * lisp/progmodes/project.el (project-ignores): Change the order of
29418         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
29420         Add xref-match-item, and use it
29421         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
29422         (xref-file-location): Add reader for the column slot.
29423         (xref-match-item): New class.
29424         (xref-match-bounds): A method implementation for it.
29425         (xref-make-match): New constructor function.
29426         (xref--current-item): New private variable.
29427         (xref-pulse-momentarily): Use it.
29428         (xref--pop-to-location): Change the first argument to an xref
29429         item, instead of location, bind xref--current-item.
29430         Update all callers.
29431         (xref-next-line, xref-prev-line, xref--next-error-function)
29432         (xref--mouse-2): Look for the property `xref-item',
29433         instead of `xref-location'.
29434         (xref--item-at-point): Likewise.  This function replaces
29435         `xref-location-at-point'.  Update all callers.
29436         (xref--insert-xrefs): Add the `xref-item' text property, instead
29437         of `xref-location'.
29438         (xref--collect-match): Use xref-make-match.
29440         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
29441         Update all references.
29443         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
29444         slot to `summary'.
29446         vc-hg: Perform the print-log call asynchronously
29447         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
29448         asynchronously (bug#21067).
29450         Add xref-after-jump-hook and xref-after-return-hook
29451         * lisp/progmodes/xref.el (xref-after-jump-hook)
29452         (xref-after-return-hook): New hooks.
29453         (xref-pulse-on-jump): Remove, in favor of the above.
29454         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
29455         (xref--pop-to-location, xref--display-position)
29456         (xref-pop-marker-stack): Use the new hooks, as requested in
29457         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
29459 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
29461         * lisp/progmodes/js.el (js-mode): Correct the lighter.
29463 2015-07-19  Leo Liu  <sdl.web@gmail.com>
29465         Fix a bug in cfengine3-mode
29466         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
29467         eldoc-documentation-function.
29469 2015-07-18  Julien Danjou  <julien@danjou.info>
29471         sieve-mode: support "body" test command
29472         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
29473         Add missing "body" test command.
29475 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
29477         Fix info-apropos when the default encoding is Latin-N
29478         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
29479         'undecided', so that it is set to the encoding of the Info file we
29480         are about to insert.  Otherwise, 'info-apropos' will fail to find
29481         some index nodes in some UTF-8 encoded files, if the buffer's
29482         previous encoding is Latin-N or some such.
29484 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
29486         * lisp/epg.el (epg--start): Check that gpgconf can be found
29487         before calling it.
29489         Expose more file types to OS X that Emacs understands
29490         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
29491         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
29493 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
29495         Fix visual-order cursor movement when lines are truncated
29496         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
29497         simulate display in a window of infinite width, to allow move_it_*
29498         functions reach positions outside of normal window dimensions.
29499         Remove code that tried to handle a subset of these situations by
29500         manual iteration of buffer text.  (Bug#17777)
29502         Fix following Info cross-references to anchors
29503         * lisp/info.el (Info-read-subfile): Add to the returned value the
29504         length of subfile preamble, after converting it to file's byte
29505         offset, as expected by the caller.  Use bufferpos-to-filepos.
29506         (Info-find-node-2): If searching for a node with a
29507         1000-character slop fails, try again with a 10000-character slop,
29508         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
29509         * lisp/international/mule-util.el (bufferpos-to-filepos): New
29510         function.
29511         * etc/NEWS: Mention bufferpos-to-filepos.
29513         Fix scrolling backwards on TTY frames under scroll-conservatively
29514         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
29515         in moving backwards on TTY frames.  (Bug#21080)
29517 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
29519         Consider a jsdoc tag to be a beginning of a paragraph as well
29520         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
29521         consider a jsdoc tag to be a beginning of a paragraph as well.
29523 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29525         * lisp/emacs-lisp/package.el: Fix warnings.
29527         * lisp/emacs-lisp/package.el (package-buffer-info):
29528         Add author and maintainers to `package-buffer-info'.
29530         * lisp/emacs-lisp/package.el: Many small changes.
29531         Replace all instances of 'face with 'font-lock-face.
29532         (describe-package-1): Improve some strings and move the summary
29533         up the list.
29534         (package-install-file): Update docstring.
29535         (package-menu-hide-package): Bind to `H'.
29537         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29538         Fix error handling.
29540 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
29542         Fix hang with large yanks This should fix the bug fixed by Mike
29543         Crowe's patch in:
29544         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
29545         A problem in this area has been reported by several users; see
29546         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
29547         This fix differs from Mike Crowe's patch in that it should avoid a
29548         race condition that could lose SIGIO signals.  ignore_sigio dates
29549         back to the 1980s when some platforms couldn't block signals, and
29550         could only ignore them, which led to races when signals arrived
29551         while being ignored.  We shouldn't have to worry about those old
29552         platforms now.
29553         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
29554         * src/emacs.c (shut_down_emacs):
29555         Don't call ignore_sigio; unrequest_sigio should suffice.
29556         * src/keyboard.c (kbd_buffer_store_buffered_event):
29557         Use unrequest_sigio, not ignore_sigio.
29558         (kbd_buffer_get_event):
29559         Call request_sigio when getting the ball rolling again.
29561 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29563         * lisp/obsolete/longlines.el (longlines-search-function):
29564         Fallback on `isearch-search-fun-default'.
29566 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
29568         Support @-mentions
29569         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
29570         of mentions/messages with @nick instead of just nick.
29572 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
29574         Fix bug#20943
29575         * lisp/autorevert.el (auto-revert-handler): Do not check for
29576         `buffer-modified-p'.
29577         * lisp/files.el (buffer-stale--default-function): Check for
29578         `buffer-modified-p'.
29579         * test/automated/auto-revert-tests.el
29580         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
29582 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
29584         Fix delete-dups bug on long lists
29585         * lisp/subr.el (delete-dups):
29586         Don't mistakenly keep some dups when applied to long lists.
29588 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
29590         Better heuristic for C stack overflow
29591         Improve the heuristic for distinguishing stack overflows from
29592         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
29593         the getrlimit method wasn't portable to Cygwin; see:
29594         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
29595         Corinna suggested pthread_getattr_np but this also has problems.
29596         Instead, replace the low-level system stuff with a simple
29597         heuristic based on known good stack addresses.
29598         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
29599         * src/sysdep.c: Don't include <sys/resource.h>.
29600         (stack_direction): Remove.  All uses removed.
29601         (stack_overflow): New function.
29602         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
29603         Make SEGV fatal in non-main threads.
29605 2015-07-16  Daiki Ueno  <ueno@gnu.org>
29607         epg: Automatically start pinentry server
29608         * lisp/epg-config.el (epg-gpgconf-program): New variable.
29609         * lisp/epg.el (epg--start): Call `pinentry-start' if
29610         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
29612 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
29614         * lisp/gnus/nnimap.el: Fix my last bogus change.
29615         Reinstall Stefan Monnier's change that was made in
29616         <83d824bc4041332f338ad7e5e830f443535aa300>.
29618 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
29620         Merge from gnulib
29621         This incorporates:
29622         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
29623         2015-07-05 acl-permissions: Fix on FreeBSD
29624         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
29625         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
29626         * lib/set-permissions.c: Copy from gnulib.
29628         Port to stricter C99
29629         * src/keyboard.h (kbd_buffer_store_event_hold):
29630         Don't return a void expression.
29632 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
29634         * doc/emacs/frames.texi (Creating Frames):
29635         Fix the command `C-x 5 m' runs.
29637 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
29639         New autorevert tests
29640         * test/automated/auto-revert-tests.el: New file.
29642 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
29644         Clear gcprolist etc. after stack overflow
29645         After stack overflow, command_loop calls init_eval, and this needs to
29646         clear gcprolist and byte_stack_list (Bug#20996).
29647         * src/alloc.c (init_alloc):
29648         Move gcprolist and byte_stack_list initialization from here ...
29649         * src/eval.c (init_eval): ... to here.
29651 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
29653         * doc/emacs/windows.texi (Pop Up Window): Fix the description
29654         of `C-x 4 m'.
29656 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29658         Avoid deprecated enums in mac-ct font backend driver
29659         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
29660         (mac_ctfont_get_advance_width_for_glyph)
29661         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
29663         Cache font family in mac-ct font backend driver
29664         * src/macfont.m (macfont_family_cache): New variable.
29665         (syms_of_macfont): Initialize it.
29666         (macfont_available_families_cache): New variable.
29667         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
29668         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
29669         (macfont_handle_font_change_notification)
29670         (macfont_init_font_change_handler)
29671         (macfont_copy_available_families_cache): New functions.
29672         (macfont_create_family_with_symbol): Use font family caches.
29673         (macfont_list, macfont_list_family):
29674         Use macfont_copy_available_families_cache instead of
29675         mac_font_create_available_families.
29677 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
29679         Show the default value in the prompt
29680         * lisp/progmodes/xref.el: Add `M-?' binding for
29681         xref-find-references.  Declare functions `grep-read-files' and
29682         `grep-expand-template'.
29683         (xref--read-identifier): Show the default value in the prompt.
29685         * lisp/progmodes/xref.el (xref-find-regexp): When called with
29686         prefix argument, ask for file patterns to search as well.  When
29687         prompting for the directory, require an existing one.
29688         (xref-collect-matches): Add a new argument, FILES.  Use it in the
29689         above function.
29691         Add `project-ignores'
29692         * lisp/progmodes/project.el (project-ignores): New generic
29693         function, and an implementation for the VC project type.
29694         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
29695         variant of rgrep-default-command that handles a generic list of
29696         ignores.
29697         (xref-collect-matches): Use it, and pass through to it the value
29698         of the newly added argument.
29699         (xref-find-regexp): Handle ignored paths within the project.
29700         Remove outdated comment.
29701         * lisp/vc/vc.el (vc-default-ignore-completion-table):
29702         Skip the comments and the empty lines.
29704 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
29706         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
29708 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
29710         gnus-registry.el: Correct function argument order
29711         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
29712         Reverse the order of function arguments.
29714 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
29716         Bind grep-highlight-matches to nil
29717         * lisp/progmodes/xref.el (xref-collect-matches):
29718         Bind grep-highlight-matches to nil (bug#20728).
29720 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
29722         nnimap.el: Fix IMAP message size parsing
29723         * lisp/gnus/nnimap.el (nnimap-transform-headers):
29724         Don't assume that UID comes before RFC822.SIZE.
29726 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
29728         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
29729         (auth-source-creation-prompts): Declare.
29730         (nnimap-retrieve-headers, nnimap-status-message)
29731         (nnimap-request-create-group, nnimap-request-delete-group)
29732         (nnimap-close-group, nnimap-request-move-article)
29733         (nnimap-request-accept-article, nnimap-request-newgroups)
29734         (nnimap-request-post, nnimap-dummy-active-number)
29735         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
29736         (nnimap-parse-flags): Remove unused var `p'.
29737         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
29738         (nnimap-flags-to-marks): Remove unused var `totalp'.
29740 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
29742         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
29744 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29746         * src/macfont.m (macfont_list): Ignore font families lacking
29747         font descriptors.
29749 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
29751         Don't check the exit status, it can be misleading
29752         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
29753         exit status, it can be misleading.
29755         Introduce a Project API
29756         * lisp/progmodes/project.el: New file.
29757         * lisp/cedet/ede.el (project-try-ede): New function.
29758         (project-root): New implementation.
29759         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
29760         Set project-search-path-function.
29761         (elisp--xref-find-references): Delegate some logic to
29762         project-search-path.
29763         (elisp-search-path): New function.
29764         (elisp-xref-find): Don't implement `matches' anymore.
29765         * lisp/progmodes/etags.el: Don't implement `matches'.
29766         Delegate some logic to project-search-path.
29767         (etags-search-path): New function.
29768         * lisp/progmodes/xref.el (xref-find-function):
29769         Remove `matches' from the API.
29770         (xref-find-regexp): Move whatever common logic was in elisp and
29771         etags implementations, and search the directories returned by
29772         project-directories and project-search-path.
29774 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
29776         * test/automated/map-tests.el (test-map-delete-return-value):
29777         Uncomment test.
29779         Add support for gv.el in map.el
29780         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
29781         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
29782         * test/automated/map-tests.el: Update tests to work with the new
29783         implementations of map-elt and map-put.
29785 2015-07-09  Glenn Morris  <rgm@gnu.org>
29787         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
29789 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
29791         Syntax-propertize until the end of the line first
29792         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
29793         until the end of the line first.
29795 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
29797         * doc/emacs/files.texi (File Archives): Add a cross reference.
29799 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
29801         nnimap.el: Handle plain value for nnimap-stream
29802         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
29803         capabilities, so that a 'plain value for the `nnimap-stream' server
29804         variable is handled correctly.
29805         * doc/misc/gnus.texi (Customizing the IMAP Connection):
29806         Document the 'plain option.
29808 2015-07-08  Leo Liu  <sdl.web@gmail.com>
29810         Fix bug in thing-at-point--bounds-of-well-formed-url
29811         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
29812         sure boundary contains current point.
29814 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
29816         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
29817         in the end.
29819         Declare whitespace-line-column a safe file-local
29820         * lisp/whitespace.el (whitespace-line-column): Declare to be a
29821         safe file-local when the value is an integer.
29823 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
29825         gnus-group.el: Check if group names are already strings
29826         * lisp/gnus/gnus-group.el (gnus-group-group-name):
29827         The group name may already be a string.
29828         Specifically, in the group list reached from the *Server* buffer,
29829         the 'gnus-group text property returns a string.  Everywhere else
29830         it returns a symbol.
29832         nnimap.el: Remove unused let variables
29833         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
29835 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
29837         Support "maximized" property of runemacs's shortcut
29838         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
29839         the '--maximized' switch to Emacs.
29841         Support "minimized" property of runemacs's shortcut
29842         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
29843         pass the '--iconic' switch to Emacs.  (Bug#20991)
29845 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
29847         Doc fixes
29848         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
29849         C-w' in Diff mode.
29850         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
29851         Add a cross reference.
29853 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
29855         * lisp/obsolete/landmark.el: Add Obsolete-since header.
29857 2015-07-07  Glenn Morris  <rgm@gnu.org>
29859         * test/automated/ert-tests.el (ert-test-deftest):
29860         Update for recent changes.
29862 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
29864         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
29865         * lisp/emacs-lisp/gv.el (gv-setter): New function.
29866         (gv-invalid-place): New error.
29867         (gv-get): Use them.
29868         (gv-synthetic-place, gv-delay-error): New places.
29869         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
29870         (cl-defgeneric, cl-defmethod): Use gv-setter.
29872 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
29874         Make vc-tests work with MSYS svn program
29875         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
29876         svn is an MSYS program.
29878 2015-07-07  Ken Brown  <kbrown@cornell.edu>
29880         Improve recent change to emacsclient on Cygwin
29881         * lisp/server.el (server-process-filter): Remove redundant check
29882         that 'cygwin-convert-file-name-from-windows' is defined as a
29883         function on Cygwin.  Don't call that function unless its argument
29884         starts with a drive letter.
29886 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
29888         * lisp/emacs-lisp/package.el (package-compute-transaction):
29889         Fix void variable due to `found-something' being in the wrong `let'.
29891 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
29893         * lisp/play/landmark.el: Move to lisp/obsolete/.
29895 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
29897         Have `x-show-tip' handle `right' and `bottom' frame parameters
29898         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
29899         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
29900         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
29901         tooltips also via `right' and `bottom' frame parameters.
29903 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
29905         Add online-help support to describe types
29906         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
29907         (describe-symbol): Improve the selection of default.
29908         * lisp/help-mode.el: Require cl-lib.
29909         (describe-symbol-backends): Move from help-fns.el.
29910         (help-make-xrefs): Use it.
29911         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
29912         for types.
29913         (cl--typedef-regexp): New const.
29914         (find-function-regexp-alist): Add entry for types.
29915         (cl-help-type, cl-type-definition): New buttons.
29916         (cl-find-class): New function.
29917         (cl-describe-type): New command.
29918         (cl--describe-class, cl--describe-class-slot)
29919         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
29920         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
29921         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
29922         New functions.  Moved from eieio-opt.el.
29923         (cl--generic-class-parents): New function, extracted from
29924         cl--generic-struct-specializers.
29925         (cl--generic-struct-specializers): Use it.
29926         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
29927         Improve constructor's docstrings.
29928         (cl-struct-unknown-slot): New error.
29929         (cl-struct-slot-offset): Use it.
29930         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
29931         definition in current-load-list.
29932         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
29933         (eieio--add-new-slot): Set it.
29934         (eieio-defclass-internal): Use new name for current-load-list.
29935         (eieio-oref): Add compiler-macro to warn about unknown slots.
29936         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
29937         as compile-time as well.  Improve constructor docstrings.
29938         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
29939         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
29940         (eieio-class-def): Remove button.
29941         (eieio-help-constructor): Use new name for load-history element.
29942         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
29943         (eieio-method-documentation): Move to cl-generic.el.
29944         (eieio-display-method-list): Use new names.
29945         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
29946         Add "define-linline".
29947         (lisp-fdefs): Remove "defsubst".
29948         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
29949         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
29950         (macroexp--warn-and-return): Use it to avoid inf-loops.
29951         Add `compile-only' argument.
29953 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
29955         python.el: Fix local/remote shell environment setup
29956         * lisp/progmodes/python.el (python-shell-with-environment):
29957         Fix remote/local environment setup.
29958         * test/automated/python-tests.el (python-shell-with-environment-1)
29959         (python-shell-with-environment-2): New tests.
29961 2015-07-06  Glenn Morris  <rgm@gnu.org>
29963         * lisp/simple.el (set-variable): Tweak recent doc fix.
29965 2015-07-06  Ken Brown  <kbrown@cornell.edu>
29967         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
29969 2015-07-06  Glenn Morris  <rgm@gnu.org>
29971         * lisp/simple.el (set-variable): Use user-error for type mismatch.
29973 2015-07-06  Ken Brown  <kbrown@cornell.edu>
29975         * src/emacs.c (main): Don't increase the stack size on Cygwin.
29977 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
29979         (describe-symbol): Rewrite describe-function-or-variable
29980         * lisp/help-fns.el (describe-symbol-backends): New var.
29981         (help-xref-stack-item): Declare.
29982         (describe-symbol): Rename from describe-function-or-variable.
29983         Rewrite using describe-symbol-backends instead of help-xref-interned.
29984         * lisp/help.el (help-map): Use it.
29985         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
29986         (help-xref-interned): Make it into an obsolete alias.
29988         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
29989         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
29990         and cl-letf.
29992 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
29994         Fix parsing glitches in dired-mark-sexp (bug#13575)
29995         * lisp/dired-x.el (dired-x--string-to-number): New function.
29996         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
29997         of directory-listing-before-filename-regexp.  Consider
29998         forward-word harmful and replace it.  Add more verbiage in
29999         comments and doc string.
30001 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
30003         python.el: Respect process environment for remote shells
30004         * lisp/progmodes/python.el
30005         (python-shell-calculate-process-environment): Calculate
30006         process-environment or tramp-remote-process-environment depending
30007         whether current file is remote.
30008         (python-shell-calculate-exec-path): Calculate exec-path or
30009         tramp-remote-path depending whether current file is remote.
30010         (python-shell-with-environment): New macro.
30011         (python-shell-prompt-detect, python-shell-calculate-command)
30012         (python-shell-make-comint, python-check): Use it.
30014         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
30015         * lisp/progmodes/python.el (python-shell--interpreter)
30016         (python-shell--interpreter-args): New vars.
30017         (inferior-python-mode, python-shell-make-comint): Use them.
30019         python.el: Fixes for IPython 3.x  (Bug#20580)
30020         * lisp/progmodes/python.el:
30021         (python-shell-completion-native-setup): Fix IPython 3.x setup.
30022         (python-shell-completion-native-get-completions): Fix timeout
30023         logic.
30025         python.el: Fix mark-defun behavior  (Bug#19665)
30026         * lisp/progmodes/python.el (python-mark-defun): New function.
30027         * test/automated/python-tests.el (python-mark-defun-1)
30028         (python-mark-defun-2, python-mark-defun-3): New tests.
30030 2015-07-05  Glenn Morris  <rgm@gnu.org>
30032         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
30033         such as "extends(parent), private".  (Bug#20969)
30034         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
30035         New tests.
30037 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
30039         Avoid duplicate calls to current_timespec
30040         * src/process.c (wait_reading_process_output):
30041         Cache current_timespec results as long as we're not waiting.
30043 2015-07-05  Ian Kelling  <ian@iankelling.org>
30045         Avoid returning early reading process output due to SIGIO
30046         * src/process.c (wait_reading_process_output): Extend the behavior of
30047         not breaking due to not finding output when a timer has lowered the
30048         timeout to include when SIGIO lowers the timeout.
30050         Don't return as fast reading any process output
30051         * src/process.c (wait_reading_process_output):
30052         The patch for Bug#17647 returns too fast sometimes when reading
30053         from any processes.  Revert part of it, and limit the timeout more
30054         sensibly (Bug#20978).
30056         Refactor timeouts in wait_reading_process_output
30057         * src/process.c (wait_reading_process_output):
30058         Simplify timeouts with an enum.  Remove a redundant condition.
30059         (Bug#20978)
30061         Remove ADAPTIVE_READ_BUFFERING ifdef
30062         * src/process.c (make-process, make-pipe-process, deactivate_process)
30063         (wait_reading_process_output, read_process_output, send_process)
30064         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
30065         added in case there was an operating system in which it was not
30066         useful.  That was 11 years ago and it hasn't happened.  Make
30067         development easier by not considering the effect of changes on a
30068         theoretical OS where this is disabled (Bug#20978).
30070 2015-07-05  Glenn Morris  <rgm@gnu.org>
30072         * lisp/simple.el (set-variable): Doc fix.
30074         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
30076 2015-07-05  Ian Kelling  <ian@iankelling.org>
30078         accept-process-output fix
30079         This is a followon to the fix for bug#17647 (Bug#20976).
30080         * src/process.c (status_notify): Fix too high return in some cases.
30082 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
30084         * lisp/character-fold.el (character-fold-table):
30085         Only fold decompositions if at least one character is non-spacing.
30086         (Bug#20975)
30088 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
30090         Merge from gnulib
30091         This incorporates:
30092         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
30093         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
30094         2015-07-02 update-copyright: fix test failure with perl >= 5.22
30095         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
30096         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
30097         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
30098         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
30100 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
30102         Respect `prog-indentation-context' in python.el
30103         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
30104         (python-indent-context, python-indent--calculate-indentation)
30105         (python-info-current-defun)
30106         (python-info-dedenter-opening-block-message)
30107         (python-info-line-ends-backslash-p)
30108         (python-info-beginning-of-backslash)
30109         (python-info-continuation-line-p): Use `prog-widen'.
30110         (python-indent--calculate-indentation)
30111         (python-indent--calculate-levels)
30112         (python-indent-calculate-indentation): Use `prog-first-column'.
30113         (python-indent--calculate-levels): Simplify.
30114         Ignore also initial empty lines for syntax calculation.
30115         * lisp/progmodes/python.el (python-indent-context): Return
30116         :no-indent for first non-empty line, not just in line 1.
30117         * test/automated/python-tests.el (python-indent-base-case)
30118         (python-indent-inside-paren-1, python-indent-inside-paren-2)
30119         (python-indent-inside-paren-3, python-indent-inside-paren-4)
30120         (python-indent-inside-paren-5, python-indent-inside-paren-6)
30121         (python-indent-after-backslash-1)
30122         (python-indent-after-backslash-2)
30123         (python-indent-after-backslash-3)
30124         (python-indent-after-backslash-4, python-indent-inside-string-1):
30125         Expect :no-indent for first non-empty line.
30127 2015-07-04  Daniel Colascione  <dancol@dancol.org>
30129         Factor isearch word description into new function
30130         * lisp/isearch.el (isearch--describe-word-mode): New function.
30131         (isearch-message-prefix, isearch-query-replace): Use it.
30133 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
30135         Fix mouse pointer on w32 when a menu is active
30136         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
30137         shape while a menu is in use.  This started happening since we now
30138         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
30140 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
30142         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
30143         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
30144         parameter.  (Bug#17344)
30146         Have `compilation-set-window' use right window for getting fringes
30147         (Bug#20829)
30148         * lisp/progmodes/compile.el (compilation-set-window):
30149         Take `window-fringes' from argument window.
30151 2015-07-03  Glenn Morris  <rgm@gnu.org>
30153         Update eieio tests for recent eieio-core change.
30154         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
30155         * test/automated/eieio-tests.el
30156         (eieio-test-32-slot-attribute-override-2):
30157         Replace the deleted eieio--class-v with cl--find-class.
30159 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
30161         Fix some issues with `window-divider-mode'
30162         * lisp/frame.el (window-divider-default-places): New option.
30163         (window-divider-mode): Remove option.
30164         (window-divider-mode): Make it a "regular" minor mode.
30165         (window-divider-width-valid-p): Drop frame- prefix.
30166         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
30167         prefix.  Handle `window-divider-default-places'.
30168         (frame--window-divider-mode-set-and-apply): Remove.
30169         (window-divider-default-bottom-width)
30170         (window-divider-default-right-width): Drop :group entries.
30171         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
30172         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
30173         (menu-bar-no-window-divider): Set `window-divider-default-places'
30174         and call `window-divider-mode'.
30175         * doc/emacs/frames.texi (Window Dividers): Document
30176         `window-divider-default-places'.
30178 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
30180         * doc/emacs/display.texi (Displaying Boundaries):
30181         * doc/emacs/search.texi (Word Search): Add cross references.
30183 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30185         -batch should not affect ‘’ -> `' display
30186         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
30187         -batch (Bug#20926).
30189 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
30191         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
30192         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
30193         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
30194         Use cl--find-class instead.
30196         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
30198 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
30200         Some further fixes in Change Window node (Bug#20183)
30201         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
30202         by "resizing" in section title.  Add some concept indices.
30203         Suggested by N. Jackson (Bug#20183).
30205         * doc/emacs/windows.texi (Change Window): Reference window
30206         dividers.
30208         Document new `window-divider-mode'.
30209         * lisp/frame.el (window-divider-mode): Fix doc-string.
30210         * doc/emacs/frames.texi (Window Dividers): New section.
30212         Improve accessibility of window dividers (Bug#20183)
30213         * lisp/faces.el (window-divider)
30214         (window-divider-first-pixel, window-divider-last-pixel): Change
30215         membership from `frames' to `window-divider' customization group.
30216         * lisp/frame.el (window-divider): New customization group.
30217         (window-divider-mode): New minor mode.
30218         (window-divider-default-bottom-width)
30219         (window-divider-default-right-width): New options.
30220         (frame--window-divider-previous-mode): New variable.
30221         (frame-window-divider-width-valid-p)
30222         (frame--window-divider-mode-apply)
30223         (frame--window-divider-mode-set-and-apply): New functions.
30224         * lisp/menu-bar.el (menu-bar-options-save): Save
30225         window-divider-mode settings.
30226         (menu-bar-window-divider-customize)
30227         (menu-bar-bottom-and-right-window-divider)
30228         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
30229         (menu-bar-no-window-divider): New functions.
30230         (menu-bar-showhide-window-divider-menu): New variable.
30231         (menu-bar-showhide-menu): Show/hide window divider menu.
30232         * lisp/mouse.el (mouse-split-window-vertically)
30233         (mouse-split-window-horizontally): Replace `error' by
30234         `user-error'.  Bind `window-combination-resize' to nil.
30235         (top-level): Add/reorder mouse key bindings on mode- and
30236         vertical-line.
30238 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30240         Don't display ‘’ as `' under X in en_GB
30241         The curved quote setup code invokes (char-displayable-p ?‘),
30242         but this isn’t reliable until after the X frame replaces the
30243         terminal frame (Bug#20926).
30244         * lisp/international/mule-cmds.el (set-locale-environment):
30245         Move curved quote setup code from here ...
30246         * lisp/startup.el (command-line): ... to here, after creating
30247         the X frame.
30249 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
30251         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
30253         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
30254         to reverse the meaning (Bug#15631).
30256 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
30258         Be more tolerant to fonts named "Foobar-12"
30259         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
30260         don't barf; instead, request a new fontset to be generated.  This
30261         avoids unnecessarily rejecting fonts named against XLFD rules.  See
30262         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
30263         for the description of the original problem.
30264         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
30265         by a hyphen in a font's name.
30267         Fix value of posn-at-pont in R2L lines
30268         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
30269         coordinate of -1, for a newline in a right-to-left line that
30270         overflowed into the left fringe.
30272 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
30274         (cl--copy-slot-descriptor): Copy the `props' alist as well
30275         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
30276         Rename from cl--copy-slot-descriptor.
30277         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
30279 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
30281         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
30282         (xterm-query-timeout): New var.
30283         (xterm--query): Use it.  Fallback on async method if we timeout before
30284         getting the first byte of the reply (bug#12354).
30286 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30288         Spelling fixes
30289         * lisp/character-fold.el (character-fold-search):
30290         * lisp/emacs-lisp/package.el (package-hidden-regexps):
30291         Fix typos.
30293 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
30295         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
30297 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30299         In strings, prefer plain ` and ' to \` and \'
30300         * lisp/allout.el (allout-insert-listified):
30301         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
30302         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
30303         (ls-lisp-string-lessp):
30304         * lisp/menu-bar.el (menu-bar-open):
30305         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
30306         * lisp/progmodes/compile.el (compile):
30307         * lisp/progmodes/etags.el (tags-loop-scan):
30308         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
30309         * lisp/subr.el (posn-actual-col-row):
30310         * lisp/term/pc-win.el (x-list-fonts):
30311         * lisp/textmodes/texinfmt.el (texinfmt-version):
30312         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
30313         * lisp/time.el (display-time-world-list):
30314         * lisp/tmm.el (tmm-menubar):
30315         * src/buffer.c (syms_of_buffer):
30316         * src/fileio.c (syms_of_fileio):
30317         Omit unnecessary and confusing backslash before quote.
30318         * lisp/erc/erc.el (erc-cmd-LASTLOG):
30319         * lisp/progmodes/flymake.el (flymake-fix-file-name):
30320         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
30321         Fix string that was intended to escape a backslash and not a quote.
30323 2015-06-30  Glenn Morris  <rgm@gnu.org>
30325         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
30327         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
30328         Replace hard-coded lists with wildcard + filter-out.
30330         * configure.ac (system-configuration-features): Add X11, NS.
30332         Improve reproducibility of generated loaddefs file
30333         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
30334         Make the return value the modtime of the input file (if no autoloads).
30335         (update-directory-autoloads): In the "no autoloads" section,
30336         use "most recent modtime" rather than "current time".
30338 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
30340         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
30341         (Bug#20930)
30343 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
30345         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
30347         Add seq-min and seq-max
30348         Bump version number.
30349         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
30350         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
30352 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
30354         Make sure sleep-for always delays for as long as it's told
30355         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
30356         a loop, to ensure we always wait exactly the required amount of
30357         time.  (Bug#15990)
30359 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30361         Fix pointer signedness glitch
30362         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
30364 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
30366         Don't block changes in mouse pointer inside 'track-mouse'
30367         * etc/NEWS:
30368         * doc/lispref/frames.texi (Mouse Tracking): Document the special
30369         effect of setting 'track-mouse' to 'dragging'.
30370         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
30371         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
30372         * lisp/mouse-drag.el (mouse-drag-throw):
30373         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
30374         to avoid changes in the shape of the mouse pointer.
30375         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
30376         pointer shape when do_mouse_tracking has the value of 'dragging',
30377         not just any non-nil value.  (Bug#20934)
30378         (syms_of_xdisp): DEFSYM 'dragging'.
30380 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
30382         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
30384         * lisp/emacs-lisp/package.el (package-compute-transaction):
30385         Don't assume version sorting.
30387         * lisp/emacs-lisp/package.el (package--save-selected-packages):
30388         Don't save before init time, to avoid overwriting configurations.
30389         (Bug#20855)
30391 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
30393         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
30394         references.
30396 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
30398         Update for the upcoming CFEngine 3.7 release: support macros and
30399         quoted context strings; reformat JSON; indent promise attributes 2
30400         units by default; give function parameter descriptions in the eldoc
30401         glue.
30402         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
30403         Autoload `json-pretty-print'.  Support new features in 3.7.
30404         (cfengine-parameters-indent): Set default promise attribute indent to
30405         2 more than the promise itself.
30406         (cfengine3-macro-regex): New variable to match the new macro syntax.
30407         (cfengine3-font-lock-keywords): Use it to highlight macros.
30408         (cfengine3-indent-line): Use it to indent macros to column 0.
30409         (cfengine3-class-selector-regex): Update for the new quoted strings
30410         format.
30411         (cfengine3-reformat-json-string): New function to reformat a JSON
30412         string using `json-pretty-print'.
30413         (cfengine3-format-function-docstring): Use function parameter
30414         description if it's provided by the cf-promises syntax dump.
30416 2015-06-29  Michael R. Mauger  <michael@mauger.com>
30418         Cygwin emacsclient handles w32 file names
30419         * lisp/server.el (server-process-filter): Allow Cygwin's
30420         emacsclient to be used as a file handler on MS-Windows.
30422 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
30424         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
30425         (bug#20925).
30427 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
30429         * doc/lispref/text.texi (Sticky Properties): Improve wording.
30430         (Bug#20924)
30432         Allow font names that end in "-NN", where NN is a number
30433         * src/font.c (font_load_for_lface): If the font-spec didn't match
30434         any available fonts, try again without interpreting trailing "-NN"
30435         as the font size.  For the description of the original problem, see
30436         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
30438         .gdbinit followup to changes in !USE_LSB_TAG
30439         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
30440         !USE_LSB_TAG, as Emacs no longer does.
30442 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
30444         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
30445         Otherwise `s p' of f and F will stomp on each other's value.
30446         (Bug#20916)
30448 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30450         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
30451         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
30453 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
30455         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
30456         as additional guess.
30458         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
30459         to a string.
30461 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
30463         apropos-library quoting fix
30464         * lisp/apropos.el (apropos-library): Quote library consistently
30465         with the rest of the quoting used by apropos.
30467         Clarify interpreter-mode-alist doc
30468         * lisp/files.el (interpreter-mode-alist):
30469         Reword to avoid confusing quoting that wasn't working anyway.
30471 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
30473         Sync with Tramp 2.2.12
30474         * doc/misc/trampver.texi:
30475         * lisp/net/trampver.el: Update release number.
30476         * test/automated/tramp-tests.el (tramp-test13-make-directory):
30477         Fix cleanup.
30479 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
30481         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
30483 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
30485         Bind grep-highlight-matches around the rgrep call
30486         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
30487         around the rgrep call (bug#20728).
30489         Put "--color" before the other options in grep-command
30490         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
30491         before the other options in grep-command (bug#20912).
30493         Add --color Grep option to the command dynamically
30494         * lisp/progmodes/grep.el (grep-template, grep-find-template):
30495         Update the description for <C>.  (Bug#20728)
30496         (grep-compute-defaults): Don't add the --color option to
30497         grep-options.  Only add it to grep-command.
30498         (grep-expand-keywords): Expand the env value opts into <C>.
30499         (grep-expand-template): Replace cf in the env with the opts list,
30500         that can include -i and --color.
30501         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
30502         "--color=always" from the template, because we don't have to.
30504 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
30506         cl-extra fixes for most-negative-fixnum
30507         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
30508         Don't mishandle an argument equal to most-negative-fixnum,
30509         whose absolute value equals itself.
30510         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
30512         Initialize cl--gensym-counter to 0
30513         Previously it was initialized to a random value, which made it
30514         harder to reproduce earlier Emacs runs.  The need for a random
30515         value went away when Emacs introduced and used the #: syntax for
30516         uninterned symbols (Bug#20862).
30517         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
30518         Document that cl--gensym-counter now starts with 0.
30519         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
30520         (cl--random-time): Move to near only remaining use.
30521         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
30523         Improve docstring for macroexp-let2
30524         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
30525         Improve as per suggestion by RMS in:
30526         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
30527         Also, rename args to match new doc string.
30529 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
30531         Fix VC test suite on MS-Windows
30532         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
30533         always starts with 3 slashes after the colon.
30534         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
30535         'w32-application-type' to invoke CVS on MS-Windows with properly
30536         formatted CVSROOT directory name.
30538         Add a new function w32-application-type
30539         * src/w32proc.c (Fw32_application_type): New function.
30541         Avoid error in TLS connections due to incorrect format
30542         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
30543         the call to 'error', instead of the unsupported %u.  Reported by
30544         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
30546 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
30548         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
30550 2015-06-26  Leo Liu  <sdl.web@gmail.com>
30552         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
30553         `with-output-to-string' in elisp.
30555         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
30556         with-output-to-string".
30557         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
30559 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
30561         Minor corrections in ELisp manual
30562         * doc/lispref/nonascii.texi (Character Properties): Correct
30563         inaccuracies in description of values of the Unicode properties.
30565         Fix invisible mouse pointers on Windows.
30566         * src/w32fns.c: Include windowsx.h.
30567         (w32_wnd_proc): If the mouse moved and the mouse pointer is
30568         invisible, make it visible again even when the main (Lisp)
30569         thread is busy.
30570         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
30571         garbaging the frame have the input thread call SetCursor.
30573 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
30575         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
30576         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
30577         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
30578         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
30579         (w32_toggle_invisible_pointer): New function.
30580         (w32_create_terminal): Add w32_toggle_invisible_pointer as
30581         toggle_invisible_pointer_hook for this terminal.
30583 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
30585         Doc fix for deletion commands
30586         'delete-char' does not respect the value of 'delete-active-region'.
30587         * doc/emacs/killing.texi (Deletion):
30588         Fix documentation for some single-char deletion commands.
30590         * doc/emacs/help.texi (Apropos):
30591         Improve documentation of 'apropos-do-all'.
30593         * doc/emacs/help.texi (Help Summary):
30594         Improve documentation of 'describe-mode'.
30596 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
30598         Fix submake dependency bug with .h files
30599         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
30600         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
30601         before the submake in $(libsrc) would spin off a subsubmake
30602         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
30604 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
30606         * lisp/character-fold.el (character-fold-table): Reuse `table'.
30608 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
30610         Translate undisplayable ‘ to `
30611         * doc/lispref/help.texi (Keys in Documentation):
30612         * lisp/international/mule-cmds.el (set-locale-environment):
30613         * lisp/term/w32console.el (terminal-init-w32console):
30614         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
30615         If ‘ is not displayable, transliterate it to `, not to '.  See:
30616         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
30618         Fix C99 incompatibilities in Cairo code
30619         * src/image.c (xpm_load) [USE_CAIRO]:
30620         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
30621         Fix pointer signedness problem.
30623 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
30625         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
30626         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
30627         `with-output-to-string' should have the same indent as `progn'.
30628         This is in line with the declaration of `with-output-to-string'.
30630 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
30632         Get ‘./configure; make -C src emacs’ to work
30633         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
30634         * lib-src/Makefile.in (../lib/libgnu.a):
30635         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
30637 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
30639         Fix GC bugs --with-wide-int and Qnil == 0
30640         Use the same alignment for the !USE_LSB_TAG case as for the
30641         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
30642         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
30643         once we changed the representation of symbols so that Qnil == 0.
30644         Problem reported by Eli Zaretskii (Bug#20862).
30645         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
30646         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
30647         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
30648         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
30649         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
30650         This optimization in the !USE_LSB_TAG case is no longer valid when
30651         symbols are represented via offsets.  Change the only use to
30652         assume that pointers might hide in objects.
30653         * src/lisp.h (alignas) [!USE_LSB_TAG]:
30654         Require support in this case, too.
30655         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
30656         This is OK, because the !USE_LSB_TAG case now applies only when
30657         Lisp_Object is wider than void *, so there's no longer any need
30658         to shift the offset.  Not shifting the offset means that
30659         symbol representations have the same alignment as pointers,
30660         which the GC assumes.
30662 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
30664         * doc/lispintro/emacs-lisp-intro.texi (Data types):
30665         Improve documentation of 'substring'.
30667 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
30669         * lisp/character-fold.el (character-fold-table): Fix table generation.
30671 2015-06-24  Glenn Morris  <rgm@gnu.org>
30673         * nextstep/Makefile.in (all): Make it the first target.
30674         (../src/emacs${EXEEXT}): Add rule for making it.
30676 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
30678         * etc/NEWS: Fix mention to old function name.
30680         * lisp/character-fold.el: New file (Bug#20887)
30681         (character-fold-to-regexp): New function.
30682         * lisp/replace.el (replace-search): Check value of
30683         `character-fold-search'.
30684         * lisp/isearch.el: Move character-folding code to
30685         character-fold.el
30686         (isearch-toggle-character-fold): New command.
30687         (isearch-mode-map): Bind it to "\M-sf".
30688         (isearch-mode): Check value of `character-fold-search'.
30690 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
30692         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
30693         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
30694         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
30696         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
30697         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
30699 2015-06-24  Glenn Morris  <rgm@gnu.org>
30701         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
30703 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
30705         lisp/gnus/nnmaildir.el: Silence lexical warnings
30706         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
30707         functional style.
30708         (nnmaildir--update-nov): Remove unused var `numdir'.
30709         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
30710         (nnmaildir-request-group, nnmaildir-request-create-group)
30711         (nnmaildir-request-post, nnmaildir-request-move-article)
30712         (nnmaildir-request-accept-article, nnmaildir-active-number):
30713         Mark unused args.
30714         (nnmaildir-get-new-mail, nnmaildir-group-alist)
30715         (nnmaildir-active-file): Declare.
30716         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
30717         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
30718         `mark', `end', `new-mark', and `mark-sym'.
30719         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
30720         `nlist2'.
30721         (nnmaildir-request-expire-articles):
30722         Remove unused vars `article', `stop' and `nlist2'.
30723         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
30724         `end'.  Use nnmaildir--article when dyn-binding is needed.
30725         Give the value directly in the `let' for `del-mark', `del-action',
30726         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
30727         (nnmaildir-close-server): Declare those local vars that need to be
30728         dyn-bound.
30730 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
30732         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
30734         Port selection info fix to clang
30735         * src/keyboard.h (kbd_buffer_store_event_hold):
30736         Don't assume C11 semantics for alignof (Bug#20756).
30738         Fix bug that munged selection info
30739         On some optimizing C compilers, copying a structure did not
30740         copy the padding bytes between elements, and the type punning
30741         between struct input_data and struct selection_input_data did
30742         not work.  Change the C code to use a proper union type instead.
30743         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
30744         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
30745         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
30746         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
30747         (mark_kboards):
30748         Use union buffered_input_event, not struct input_event.
30749         (clear_event, deliver_input_available_signal, process_special_events):
30750         Remove unnecessary forward decls.
30751         (kbd_buffer_store_buffered_event): New function, mostly just the
30752         old kbd_buffer_store_event_hold, except its argument is of type
30753         union buffered_input_event, not struct input_event.
30754         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
30755         not needed otherwise.  Argument is now of type
30756         struct selection_input_event *, not struct input_event *.
30757         All callers changed.
30758         (clear_event): Arg is now of type union buffered_input_event *,
30759         not struct input_event *.  All callers changed.
30760         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
30761         (union buffered_input_event): New type.
30762         (kbd_buffer_store_event_hold): Now an inline function,
30763         defined here.
30764         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
30765         (struct input_event): Use it.
30766         * src/xselect.c (struct selection_event_queue):
30767         Make elements be of type struct selection_input_event,
30768         not struct input_event.
30769         (selection_input_event_equal): New static function.
30770         (x_queue_event): Use it.
30771         (x_queue_event, x_decline_selection_request)
30772         (x_selection_current_request, x_reply_selection_request)
30773         (x_handle_selection_request, x_handle_selection_clear)
30774         (x_handle_selection_event): Use struct selection_input_event,
30775         not struct input_event.  All callers changed.
30776         (x_convert_selection): Omit unused first arg.  All callers changed.
30777         (Fx_disown_selection_internal): Omit unnecessary union.
30778         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
30779         rather than rolling our own equivalent.  Prefer sie.kind when
30780         setting up that kind of structure.
30781         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
30782         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
30783         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
30784         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
30785         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
30786         (SELECTION_EVENT_TIME, x_handle_selection_event):
30787         Arg is now of type struct selection_input_event *)
30788         not struct input_event *.  All callers changed.
30790 2015-06-23  Glenn Morris  <rgm@gnu.org>
30792         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
30794 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
30796         * lisp/isearch.el: Fold many unicode characters to ASCII.
30797         (isearch-character-fold-search, isearch--character-fold-extras)
30798         (isearch--character-fold-table): New variable.
30799         (isearch--character-folded-regexp): New function.
30800         (isearch-search-fun-default): Use them.
30801         * lisp/replace.el (replace-character-fold): New variable.
30802         (replace-search): Use it.
30803         * etc/NEWS: Document it.
30805 2015-06-23  Glenn Morris  <rgm@gnu.org>
30807         Check for an input event before showing a dialog box.  (Bug#20813)
30808         * lisp/subr.el (y-or-n-p):
30809         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
30810         as last-nonmenu-event.
30812 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
30814         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
30815         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
30816         (switch-to-prev-buffer, switch-to-next-buffer): Respect
30817         switch-to-visible-buffer independent of the windows history.
30819 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
30821         * src/keyboard.c (last_timer_event): Remove unused var.
30823 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
30825         * test/automated/package-test.el (package-test-update-listing):
30826         Fix test.
30828 2015-06-23  Glenn Morris  <rgm@gnu.org>
30830         Revert 2014-06-25 nextstep/Makefile change.
30831         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
30832         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
30833         not as an order-only prerequisite.
30835         * configure.ac (--with-ns): Enable by default on OS X.
30837 2015-06-23  Leo Liu  <sdl.web@gmail.com>
30839         Fix shell-for/backward-command to exclude spaces
30840         * lisp/shell.el (shell-forward-command, shell-backward-command):
30841           Handle the 'move case from re-search-forward/backward.
30842           fixes debbugs:20873
30844 2015-06-22  Juri Linkov  <juri@linkov.net>
30846         * lisp/replace.el (query-replace-read-from): Add separator to
30847         the local binding of text-property-default-nonsticky.  (Bug#20690)
30849         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
30850         (Bug#20785)
30852 2015-06-22  Ken Brown  <kbrown@cornell.edu>
30854         Enable CPU profiling on Cygwin
30855         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
30856         change that undefined this.
30857         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
30858         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
30859           Cygwin.
30861         Improve diagnostics of profiler-cpu-start
30862         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
30863         return -1 if the sampling interval is invalid.
30864         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
30865         fails.  (Bug#20843)
30867 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
30869         * lisp/emacs-lisp/package.el: Exclude packages by name.
30870         (package-hidden-regexps): New variable.
30871         (package-menu--refresh): Use it.
30872         (package-menu-hide-package): New command.
30874         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
30876 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
30878         Fix debug-timer-check on systems without HAVE_TIMERFD
30879         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
30880         the expired timers, since wait_reading_process_output doesn't.
30881         (debug_timer_callback): Enlarge the tolerance to 20 msec.
30883         Fix RCS crashes in vc-test
30884         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
30885         ports of 'ci' on MS-Windows by always passing the -t- switch.
30887 2015-06-22  Glenn Morris  <rgm@gnu.org>
30889         * doc/emacs/package.texi (Packages):
30890         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
30892         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
30894 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
30896         Port tests to help-quote-translation
30897         * test/automated/ert-x-tests.el (ert-test-describe-test):
30898         * test/automated/package-test.el (package-test-describe-package)
30899         (package-test-signed): Allow straight quotes, too.
30901 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
30903         Make find-function-on-key use the current window
30904         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
30905         Extract from `find-function-on-key', add a second argument.
30906         (find-function-on-key): Use it (bug#19679).
30907         (find-function-on-key-other-window)
30908         (find-function-on-key-other-frame): New commands.
30910 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
30912         Revert "Define `map-elt' as a generalized variable"
30913         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
30915 2015-06-21  Ken Brown  <kbrown@cornell.edu>
30917         Drop support for CPU profiling on Cygwin
30918         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
30919         (Bug#20843)
30921 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
30923         Fix some “nested” quoting confusion in doc strings
30924         * lisp/emacs-lisp/advice.el (ad-map-arglists):
30925         * lisp/kermit.el (kermit-clean-on):
30926         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
30927         * src/keyboard.c (Frecursive_edit):
30928         Use curved quotes when quoting text containing apostrophe,
30929         so that the apostrophe isn't curved in the output.
30931 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
30933         Define `map-elt' as a generalized variable
30934         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
30935         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
30936         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
30937         `setf' with `map-elt'.
30938         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
30940 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
30942         Improve error handling in tramp-adb.el
30943         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
30944         Improve error handling.
30946 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
30948         Reuse `alist-get' in map.el
30949         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
30950         elements.
30952 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
30954         Fix bytecomp-tests--warnings when $TMPDIR has a long name
30955         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
30956         Allow the warning to begin on the 3rd, not only 2nd line, which
30957         happens if temporary-file-directory has a very long name.
30959         Expect 2 icalendar tests to fail on MS-Windows
30960         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
30961         (icalendar-real-world): Make them expected failures on MS-Windows.
30963 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
30965         Improve port of settings UI to older displays
30966         * lisp/cus-start.el (standard): Don't assume curved quotes are
30967         easily distinguishable when users are tinkering with a setting
30968         that affects how curved quotes are generated.
30970         Fix quoting in electric-quote-mode doc string
30971         * lisp/electric.el (electric-quote-mode): Fix quoting.
30972         This is a fallout from the recent change introducing
30973         ‘help-quote-translation’.
30975         Spelling fix
30977         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
30979         * src/doc.c (syms_of_doc): Remove unused symbols.
30981 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
30983         * lisp/window.el (window-state-put): Undedicate target window
30984         before putting STATE into it.  (Bug#20848)
30986 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
30988         Merge from origin/emacs-24
30989         a5e6f33 Fixes: debbugs:20832
30990         b9f02cf Fixes: debbugs:20832
30992 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
30994         Fix file-in-directory-p when the directory is UNC
30995         * lisp/files.el (file-in-directory-p): Support files and
30996         directories that begin with "//".  (Bug#20844)
30998 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
31000         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
31001         in the minibuffer.  (Bug#20832)
31003 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
31005         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
31006         for adding new todo file is empty but modified.  (Bug#20832)
31008 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
31010         (filepos-to-bufferpos): Further tweaks to the utf-16 code
31011         * lisp/international/mule-util.el (filepos-to-bufferpos):
31012         Fix typo.  Move non-exact check to the utf-16 branch (the only one
31013         affected).  Don't use byte-to-position for the utf-16 case.
31015 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
31017         Minor fixes in filepos-to-bufferpos
31018         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
31019         test for utf-8-emacs.  Exempt single-byte encodings from the
31020         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
31021         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
31022         UTF-16 encoded files for CR-LF EOLs.
31024 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
31026         Improve the optional translation of quotes
31027         Fix several problems with the recently-added custom variable
31028         help-quote-translation where the code would quote inconsistently
31029         in help buffers.  Add support for quoting 'like this', which
31030         is common in other GNU programs in ASCII environments.  Change
31031         help-quote-translation to use more mnemonic values: values are now the
31032         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
31033         traditional Emacs help-buffer quoting style `like this'.  Change the
31034         default behavior of substitute-command-keys to match what's done in
31035         set-locale-environment, i.e., quote ‘like this’ if displayable,
31036         'like this' otherwise.
31037         * doc/lispref/help.texi (Keys in Documentation): Document
31038         new behavior of substitute-command-keys, and document
31039         help-quote-translation.
31040         * doc/lispref/tips.texi (Documentation Tips):
31041         Mention the effect of help-quote-translation.
31042         * etc/NEWS: Mention new behavior of substitute-command-keys,
31043         and merge help-quote-translation news into it.
31044         When talking about doc strings, mention new ways to type quotes.
31045         * lisp/cedet/mode-local.el (overload-docstring-extension):
31046         Revert my recent change to this function, which shouldn't be
31047         needed as the result is a doc string.
31048         * lisp/cedet/mode-local.el (mode-local-print-binding)
31049         (mode-local-describe-bindings-2):
31050         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
31051         * lisp/cus-theme.el (describe-theme-1):
31052         * lisp/descr-text.el (describe-text-properties-1, describe-char):
31053         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
31054         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
31055         (eieio-help-constructor):
31056         * lisp/emacs-lisp/package.el (describe-package-1):
31057         * lisp/faces.el (describe-face):
31058         * lisp/help-fns.el (help-fns--key-bindings)
31059         (help-fns--compiler-macro, help-fns--parent-mode)
31060         (help-fns--obsolete, help-fns--interactive-only)
31061         (describe-function-1, describe-variable):
31062         * lisp/help.el (describe-mode):
31063         Use substitute-command-keys to ensure a more-consistent quoting
31064         style in help buffers.
31065         * lisp/cus-start.el (standard):
31066         Document new help-quote-translation behavior.
31067         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
31068         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
31069         (help-xref-url-regexp):
31070         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
31071         * lisp/wid-edit.el (widget-documentation-link-regexp):
31072         Also match 'foo', in case we're in a help buffer generated when
31073         help-quote-translation is ?'.
31074         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
31075         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
31076         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
31077         (Fsubstitute_command_keys): Document and implement new behavior.
31078         (Vhelp_quote_translation): Document new behavior.
31080 2015-06-18  Glenn Morris  <rgm@gnu.org>
31082         * lisp/cus-start.el (help-quote-translation): Add :version.
31084         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
31086 2015-06-18  Alan Mackenzie  <acm@muc.de>
31088         Make translation of quotes to curly in doc strings optional.
31089         * src/doc.c (traditional, prefer-unicode): New symbols.
31090         (help-quote-translation): New variable.
31091         (Fsubstitute_command_keys): Make translation of quotes dependent on
31092         `help-quote-translation'; also translate curly quotes back to ASCII
31093         ones.
31094         * lisp/cus-start.el (top-level): Add a customization entry for
31095         `help-quote-translation'.
31097 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
31099         * lisp/emacs-lisp/package.el: Don't always propagate async errors
31100         (package--with-work-buffer-async): Only propagate the error if the
31101         callback returns non-nil.
31102         (package--download-one-archive): Return nil on the signature
31103         checking callback if we accept unsigned.
31104         (package--download-and-read-archives): Return non-nil on the
31105         archive download callback.
31107 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
31109         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
31110         * src/nsfns.m (Fx_create_frame):
31111         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
31112         image_cache_refcount before first x_default_parameter call.
31114 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
31116         Improve and extend filepos-to-bufferpos
31117         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
31118         Don't barf if F returns nil for some argument.
31119         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
31120         that every encoding of type 'charset' is single-byte.
31122 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
31124         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
31125         Properly delete packages.  (Bug#20836)
31127 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
31129         Update data files from just-released Unicode 8.0
31130         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
31131         status.
31132         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
31133         * admin/unidata/BidiMirroring.txt:
31134         * admin/unidata/BidiBrackets.txt:
31135         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
31137 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
31139         Document curved quotes a bit better
31140         * doc/emacs/basic.texi (Inserting Text):
31141         Mention C-x 8.  Change example to use curved quote rather
31142         than infinity, as this lets us give more ways to do it.
31143         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
31144         and quotation marks.
31145         * doc/emacs/text.texi (Quotation Marks):
31146         * doc/lispref/tips.texi (Documentation Tips):
31147         Add "curly quotes" and "curved quotes" to the index.
31148         * doc/emacs/text.texi (Quotation Marks):
31149         Give the C-x 8 shorthands for curved quotes.
31150         Cross-reference to "Quotation Marks".
31152 2015-06-17  Daiki Ueno  <ueno@gnu.org>
31154         Add pinentry.el for better GnuPG integration
31155         * lisp/pinentry.el: New file.
31156         * etc/NEWS: Add entry about pinentry.el.
31157         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
31158         (Bug#20550)
31160 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
31162         * lisp/emacs-lisp/package.el: Slightly better error reporting.
31164 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
31166         (define-minor-mode): Use setq-default for :global minor modes
31167         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
31168         Use setq-default for :global minor modes (bug#20712).
31170 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
31172         Avoid infloop in redisplay with tall images
31173         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
31174         down near ZV.  (Bug#20808)
31175         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
31176         instead of CHARPOS.
31178 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
31180         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
31181         Fix error reporting.
31183         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
31185         * lisp/emacs-lisp/package.el: Revert buffer after any operation
31186         Call `package-menu--post-refresh' after any operation that changes
31187         the package database (`package-install' and `package-delete').  To
31188         avoid performance issues in large transactions, these functions
31189         add `post-refresh' to `post-command-hook' instead of calling it
31190         immediately.
31191         (package-menu--mark-or-notify-upgrades): New function.
31192         (list-packages): Add it to `package--post-download-archives-hook'.
31193         (package-menu--post-refresh): Lose the upgrade-checking code, add
31194         code to remove itself from `post-command-hook'.
31195         (package-install, package-delete): Add it to `post-command-hook'.
31196         (package-menu-execute): Don't call `package-menu--post-refresh'.
31198 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
31200         Add missing function xref-location-group for elisp-mode.
31201         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
31203 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
31205         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
31206         The behavior now matches the description in the manual.  (Bug#20783)
31208 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
31210         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
31212 2015-06-17  Glenn Morris  <rgm@gnu.org>
31214         Generate char-script-table from Unicode source.  (Bug#20789)
31215         * admin/unidata/Makefile.in (AWK): New, set by configure.
31216         (all): Add charscript.el.
31217         (blocks): New variable.
31218         (charscript.el, ${unidir}/charscript.el): New targets.
31219         (extraclean): Also remove generated charscript.el.
31220         * admin/unidata/blocks.awk: New script.
31221         * admin/unidata/Blocks.txt: New data file, from unicode.org.
31222         * lisp/international/characters.el: Load charscript.
31223         * src/Makefile.in (charscript): New variable.
31224         (${charscript}): New target.
31225         (${lispintdir}/characters.elc): Depend on charscript.elc.
31226         (temacs$(EXEEXT)): Depend on charscript.
31228         * lisp/international/characters.el (char-script-table): Tweak
31229         some ranges to better match the source.  (Bug#20789#17)
31231         Remove "no-byte-compile: t" from a few files.
31232         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
31233         * lisp/obsolete/patcomp.el: No reason not to compile these.
31235 2015-06-16  Glenn Morris  <rgm@gnu.org>
31237         Fix some typos in copied Unicode data.  (Bug#20789)
31238         * lisp/international/characters.el (char-script-table):
31239         * lisp/international/fontset.el (script-representative-chars)
31240         (setup-default-fontset): Fix typos.
31242         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
31243         Don't print filename twice (it's in the prefix now).
31245         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
31246         No longer needed.
31248         Address a compilation warning.
31249         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
31250         Replace 't' with '_' in pcase.
31252         Address some check-declare warnings.
31253         * lisp/simple.el (tabulated-list-print):
31254         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
31255         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
31256         (ns-get-selection): Update declarations.
31258         Address some compilation warnings.
31259         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
31260         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
31261         Replace 't' with '_' in pcase.
31263         Address some compilation warnings.
31264         * lisp/face-remap.el (text-scale-adjust):
31265         * lisp/menu-bar.el (popup-menu-normalize-position):
31266         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
31267         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
31268         * lisp/emacs-lisp/generator.el (cps--transform-1):
31269         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
31270         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
31271         * lisp/progmodes/octave.el (octave-goto-function-definition)
31272         (octave-find-definition-default-filename):
31273         Replace 't' with '_' in pcase.
31275         * lisp/emacs-lisp/pcase.el (pcase--u1):
31276         Paper-over today's bootstrap failure.
31278 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
31280         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
31282         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
31284         Better confirmation message in `find-alternate-file' (Bug#20830)
31285         * lisp/files.el (find-alternate-file'): Improve the confirmation
31286         message to show the buffer name.
31288         Better docstring for null.  (Bug#20815)
31289         * src/data.c (null): Improves the docstring, saying what null returns
31290         when OBJECT is non-nil.
31292 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
31294         * lisp/net/newst-treeview.el: Use lexical-binding.
31296         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
31297         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
31298         New auxiliary function, extracted from filepos-to-bufferpos.
31299         Make sure it terminates.
31300         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
31301         Add support for the `exact' quality.
31303 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
31305         Identify feeds in newsticker treeview with :nt-feed property
31306         * lisp/net/newst-treeview.el:
31307         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
31309 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
31311         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
31312         (pcase--self-quoting-p): Floats aren't self-quoting.
31313         (pcase): Tweak docstring.
31314         (pcase--u1): Deprecate the t pattern.  Improve error detection for
31315         the nil pattern.
31316         (\`): Tweak docstring.  Signal an error for unrecognized cases.
31317         (bug#20784)
31319 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
31321         Fix infloop in filepos-to-bufferpos
31322         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
31323         offset calculation, and make it conditional on the eol-type of the
31324         file's encoding.  (Bug#20825)
31326 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
31328         Fix handling of image cache refcounts.  (Bug#20802)
31329         This backports Eli Zaretskii's solution of this problem for W32
31330         to X and NS.
31331         * src/nsfns.m (image_cache_refcount): Define unconditionally.
31332         (unwind_create_frame): If the image cache's reference count
31333         hasn't been updated yet, do that now.
31334         (Fx_create_frame): Set image_cache_refcount unconditionally.
31335         * src/xfns.c (image_cache_refcount): Define unconditionally.
31336         (unwind_create_frame): If the image cache's reference count
31337         hasn't been updated yet, do that now.
31338         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
31339         unconditionally.
31340         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
31341         X and NS.
31343 2015-06-16  Nils Ackermann  <nils@ackermath.info>
31345         Improve reftex-label-regexps default value
31346         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
31347         keyvals label regexp more strict to better cope with unbalanced
31348         brackets common in math documents.
31350 2015-06-16  Glenn Morris  <rgm@gnu.org>
31352         * doc/emacs/calendar.texi (Format of Diary File):
31353         Move "nonmarking" from here...
31354         (Displaying the Diary): ... to here.
31356         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
31357         Swap the order of these nodes.
31358         * doc/emacs/emacs.texi: Update detailed menu for the above change.
31360         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
31361         Update date of examples.
31362         (Diary, Format of Diary File): Move example from former to latter.
31363         Reduce duplication.
31365         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
31366         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
31367         Don't set no-byte-compile in the outputs.
31368         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
31370 2015-06-15  Glenn Morris  <rgm@gnu.org>
31372         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
31373         * doc/emacs/calendar.texi (Diary, Format of Diary File):
31374         Update for above diary-file change.
31376         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
31377         (apply-macro-to-region-lines): Use user-error.
31379         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
31380         (pages-directory-for-addresses): Doc fixes.
31382 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
31384         * lisp/info.el: Cleanup bytepos/charpos issues
31385         * lisp/international/mule-util.el: Use lexical-binding.
31386         (filepos-to-bufferpos): New function.
31387         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
31388         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
31389         (Info-read-subfile, Info-search): Use 0-based file positions.
31391         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
31392         (perl--syntax-exp-intro-keywords): New var.
31393         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
31394         (bug#20800).
31396 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
31398         Fix quoting when making derived mode docstring
31399         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
31400         Nest regexp-quote inside format, not the reverse.
31401         Problem reported by Artur Malabarba in:
31402         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
31404 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
31406         Fix current-iso639-language on MS-Windows
31407         * lisp/international/mule-cmds.el (set-locale-environment):
31408         Downcase the locale name before interning it.  This is so the
31409         'current-iso639-language' on MS-Windows matches the ':lang'
31410         property of font-spec objects.
31412         Limit Symbola usage some more
31413         * lisp/international/fontset.el (setup-default-fontset): Limit
31414         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
31415         (Bug#20727)
31417 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
31419         * lisp/emacs-lisp/map.el (map-let): Better docstring.
31421 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
31423         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
31424         (help-fns-test-funny-names): Spelling fixes.
31426 2015-06-14  Glenn Morris  <rgm@gnu.org>
31428         * lisp/version.el (emacs-repository-version-git): Demote errors.
31429         Check result is a hash.
31431 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
31433         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
31434         Catch errors that happen before going async.  (Bug#20809)
31436 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
31438         Another improvement of documentation of set-fontset-font
31439         * doc/lispref/display.texi (Fontsets): Say explicitly that
31440         CHARACTER can be a single codepoint.
31441         * src/fontset.c (Fset_fontset_font): Doc fix.
31443         Another improvement for symbol and punctuation characters
31444         * lisp/international/fontset.el (setup-default-fontset): Exclude
31445         from Symbola character ranges for symbols and punctuation covered
31446         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
31447         installed and where its coverage of symbols and punctuation is
31448         known to be good.  (Bug#20727)
31450 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
31452         Some generic support for multi-mode indentation.
31453         * lisp/progmodes/prog-mode.el (prog-indentation-context):
31454         New variable.
31455         (prog-first-column, prog-widen): New convenience functions.
31457 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
31459         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
31460         Don't assume that `tabulated-list-printer' will leave point at the
31461         end of the buffer.  (Bug#20810)
31463 2015-06-13  Glenn Morris  <rgm@gnu.org>
31465         Tweaks for getting repository version; a bit more like it was for bzr
31466         * lisp/version.el (emacs-repository-version-git)
31467         (emacs-repository--version-git-1): New functions,
31468         split from emacs-repository-get-version.
31469         (emacs-repository-get-version): Make the second argument meaningful.
31471         * lisp/startup.el (command-line-1): Inform if skipping relative
31472         file names due to deleted PWD.
31474         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
31475         when starup directory is missing.  (Bug#18851)
31476         (errno.h): Include it.
31478 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
31480         Better fix for documenting `X as "`X"
31481         Fix suggested by Stefan Monnier.
31482         * lisp/help-fns.el (help-fns--signature):
31483         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
31484         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
31485         Don't treat `X specially, as help-fns--signature now handles this.
31487 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
31489         Improve the default fontset when Symbola is not installed
31490         * lisp/international/fontset.el (setup-default-fontset): Only
31491         prepend Symbola and FreeMono font specs for symbols and
31492         punctuation; do not replace the default spec for them.  This
31493         should have better results when Symbola/FreeMono are not
31494         installed.  (Bug#20727)
31496         Improve documentation of ':lang' in font specs
31497         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
31498         use of the ':lang' property of the font spec.
31499         * doc/emacs/frames.texi (Fonts): Document the language names that
31500         can be in the STYLE part of XLFD.
31501         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
31502         property.
31504         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
31506         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
31508         Revert last change in fontset.el
31509         * lisp/international/fontset.el (setup-default-fontset): Revert
31510         the change "Configure Symbola font only if installed", since font
31511         search is evidently not yet set up when this function is called.
31512         (Bug#20727)
31514 2015-06-12  Glenn Morris  <rgm@gnu.org>
31516         Ensure early startup warnings are visible at the end.  (Bug#20792)
31517         * lisp/emacs-lisp/warnings.el (display-warning):
31518         If startup isn't complete, delay the warning.
31519         * lisp/startup.el (normal-top-level, command-line):
31520         Let display-warning automatically handle the needed delays.
31521         Run delayed-warnings-hook.
31523         * lisp/version.el (emacs-repository-get-version):
31524         Avoid calling external executable if possible.  (Bug#20799)
31526 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
31528         Document `X as "`X", not as "(` X)"
31529         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
31530         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
31532         * src/print.c (print_object): Minor simplification.
31534 2015-06-12  Glenn Morris  <rgm@gnu.org>
31536         * src/buffer.c (init_buffer): Add final newline to message.
31538 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
31540         Configure Symbola font only if installed
31541         * lisp/international/fontset.el (setup-default-fontset):
31542         Don't specify the Symbola font if it's not installed.
31543         Likewise for FreeMono.  (Bug#20727)
31545 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
31547         Configure Symbola font only for symbols and punctuation
31548         * lisp/international/fontset.el (setup-default-fontset): Leave
31549         only symbols and punctuation in the fontset setup for Symbola
31550         font; remove "Greek and Coptic" and "Cyrillic Supplement".
31551         (Bug#20798)
31553 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
31555         Fix crash in fontset-info
31556         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
31557         non-nil.
31559 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
31561         Port to Solaris 10 sparc + Sun C 5.13
31562         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
31563         Adjust to process.c change.
31564         * src/process.c (create_process): Declare volatile variables at
31565         top level of this function, so that they're less likely to be
31566         reused later in the function in the code executed by the vforked
31567         child.  Do not declare locals used only in the vforked child, as
31568         they might share memory with locals still live in the parent.
31569         Instead, use the same variables in the child as in the parent.
31570         This works around a subtle bug that causes a garbage collector
31571         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
31573 2015-06-12  Glenn Morris  <rgm@gnu.org>
31575         * lisp/startup.el (normal-top-level): Don't let *Messages* get
31576         a nil default-directory.
31578 2015-06-11  Glenn Morris  <rgm@gnu.org>
31580         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
31582         Some progress towards starting with PWD deleted.  (Bug#18851)
31583         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
31584         * lisp/startup.el (normal-top-level, command-line-1):
31585         * lisp/minibuffer.el (read-file-name-default):
31586         Handle default-directory being nil.
31588 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
31590         Fix "not a tty" bug on Solaris 10
31591         * configure.ac (PTY_OPEN): Define to plain 'open'
31592         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
31593         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
31594         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
31595         hosts that call grantpt which does its work via a setuid subcommand
31596         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
31597         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
31598         seems relevant in that case too.
31600 2015-06-11  Juri Linkov  <juri@linkov.net>
31602         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
31603         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
31604         (Bug#20785)
31606 2015-06-11  Glenn Morris  <rgm@gnu.org>
31608         * lisp/international/characters.el (char-script-table): Fix typo.
31610 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
31612         Fix quoting of help for functions with odd names
31613         While investigating Bug#20759, I discovered other quoting problems:
31614         C-h f mishandled characters like backslash and quote in function names.
31615         This fix changes the behavior so that 'C-h f pcase RET' now
31616         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
31617         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
31618         in src/lread.c's read1 function says that the backslash will be
31619         needed starting in Emacs 25, which implies that 'format' is
31620         correct and the old pcase documention was wrong to omit the backslash.
31621         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
31622         * lisp/help-fns.el (help-fns--signature):
31623         * lisp/help.el (help-add-fundoc-usage):
31624         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
31625         Use help--make-usage-docstring rather than formatting
31626         help-make-usage.
31627         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
31628         Return raw docstring.
31629         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
31630         raw docstring.  Take more care to distinguish raw from cooked dstrings.
31631         (describe-function-1): Let help-fns--signature substitute
31632         command keys.
31633         * lisp/help.el (help--docstring-quote): New function.
31634         (help-split-fundoc): Use it, to quote funny characters more
31635         systematically.
31636         (help--make-usage): Rename from help-make-usage, since this
31637         should be private.  Leave an obsolete alias for the old name.
31638         (help--make-usage-docstring): New function.
31639         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
31641 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
31643         * lisp/thingatpt.el (in-string-p): Revert last change,
31644         since in-string-p is not used in thingatpt.el but only from outside.
31645         Also, use lexical binding.
31647 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
31649         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
31650         * test/automated/let-alist.el (let-alist-cons): Test it.
31652 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
31654         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
31656 2015-06-10  Glenn Morris  <rgm@gnu.org>
31658         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
31660         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
31661         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
31662         * admin/gitmerge.el (gitmerge-commit-message):
31663         Exclude "skipped" messages from ChangeLog once again.
31665         Slight namespace cleanup for thingatpt.el.
31666         * lisp/thingatpt.el (thing-at-point--in-string-p)
31667         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
31668         (thing-at-point--read-from-whole-string): Rename from
31669         old versions without "thing-at-point--" prefix.
31670         Keep old versions as obsolete aliases.  Update all uses.
31672         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
31673         Move requiring of finder from here...
31674         (checkdoc-package-keywords): ... to here.
31676         Use 'user-error' in a few calendar files.
31677         * lisp/calendar/appt.el (appt-add):
31678         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
31679         (calendar-generate):
31680         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
31681         Replace 'error' with 'user-error'.
31683         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
31685         * lisp/files-x.el (add-file-local-variable):
31686         Special-case 'lexical-binding'.  (Bug#20641)
31688         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
31689         No longer autoload.
31690         * doc/misc/autotype.texi (Executables):
31691         Undocument executable-self-display.
31693         * lisp/progmodes/executable.el (executable-self-display):
31694         Use non-obsolete tail syntax.  (Bug#20779)
31695         (executable-self-display): Doc update.
31697 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
31699         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
31700         (finder-known-keywords): Silence byte-compiler.
31702 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
31704         * lisp/simple.el (eval-expression): Macroexpand before evaluating
31705         (bug#20730).
31707         * lisp/progmodes/sh-script.el: Better handle nested quotes.
31708         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
31709         (sh-font-lock-quoted-subshell): Make sure double quotes within single
31710         quotes don't mistakenly end prematurely the surrounding string.
31712         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
31714 2015-06-09  Glenn Morris  <rgm@gnu.org>
31716         * test/automated/Makefile.in (ELFILES): Sort.
31718         * Makefile.in (SUBDIR_MAKEFILES):
31719         * lwlib/Makefile.in (WARN_CFLAGS):
31720         Use built-in Make functions rather than echo+sed.
31722 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
31724         Update char-script-table
31725         * lisp/international/characters.el (char-script-table): Update
31726         from Unicode 8.0 Draft.
31728         Improve font selection for punctuation and other symbols
31729         * src/fontset.c (face_for_char): If the character's script is
31730         'symbol', and the font used for ASCII face has a glyph for it, use
31731         the font for the ASCII face instead of searching the fontsets.
31732         This comes instead of NS-specific code that used the current
31733         face's font instead, which is now disabled due to undesirable
31734         consequences.  (Bug#20727)
31736 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
31738         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
31739         Skip past `#' to find BEG (bug#20771).
31740         * test/automated/elisp-mode-tests.el
31741         (elisp-completes-functions-after-hash-quote): New test.
31743 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
31745         Fix compilation warning/error in --without-x builds
31746         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
31747         code on HAVE_WINDOW_SYSTEM.
31749         Improve the default fontset wrt symbols
31750         * lisp/international/fontset.el (setup-default-fontset): Better
31751         setup of fontset-default for symbols: use Symbola and FreeMono.
31752         (Bug#20727)
31754 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
31756         Add new command checkdoc-package-keywords
31757         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
31758         New defcustom.
31759         (checkdoc-list-of-strings-p): Add doc.
31760         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
31761         non-nil, call `checkdoc-package-keywords'.
31762         (checkdoc-get-keywords): New defun.
31763         (checkdoc-package-keywords): New command.  Warns if the current file
31764         has package.el-style keywords that aren't in `finder-known-keywords'.
31765         * etc/NEWS: Add entry.
31767 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
31769         Avoid crashes when key-binding is called from a timer
31770         * src/keymap.c (Fkey_binding): Don't segfault if called with an
31771         empty vector as KEY.  (Bug#20705)
31773         Fix a thinko in arc-mode.el
31774         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
31775         non-Zip64 case.  (Bug#20769)
31777 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
31779         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
31781 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
31783         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
31784         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
31785         "*warn*", print the warning to the standard output.  (bug#20754)
31787 2015-06-07  Glenn Morris  <rgm@gnu.org>
31789         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
31791         * src/font.c (syms_of_font) <font-log>: Doc fix.
31793         Remove the obsolete leading "*" from some C doc strings.
31794         * src/coding.c (syms_of_coding):
31795         * src/font.c (syms_of_font): Remove leading "*" from docs.
31796         * lisp/cus-start.el (enable-character-translation): Add it.
31798 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
31800         Move gen_origin from program to data
31801         That way, 'make change-history' needs to change only ChangeLog.2,
31802         instead of having to change two files.
31803         * ChangeLog.2: Add commit info for range that this file covers.
31804         * Makefile.in (new_commit_regexp): New macro.
31805         (change-history-nocommit): Simplify, by putting what used to be
31806         the gen_origin value into the data (ChangeLog.2) rather than
31807         into the program (gitlog-to-emacslog).
31808         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
31809         the input file (e.g., ChangeLog.2) rather than by having a
31810         constant in the program.  Substitute it into the output.
31812 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
31814         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
31815         function name (bug#20759).
31817 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
31819         Adapt 'struct timespec' to next release of MinGW runtime
31820         * nt/inc/ms-w32.h (struct timespec): Don't declare if
31821         __struct_timespec_defined is defined.
31823 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
31825         Merge from gnulib
31826         This incorporates:
31827         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
31828         2015-06-05 stdio: Don't redefine gets when using C++
31829         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
31830         2015-06-02 file-has-acl: fix build on Mac OS X 10
31831         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
31832         2015-06-01 pthread_sigmask: discount system version if a simple macro
31833         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
31834         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
31835         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
31836         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
31837         * lib/gnulib.mk: Regenerate.
31839 2015-06-06  Juri Linkov  <juri@linkov.net>
31841         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
31842         before calling grep-compute-defaults because now it affects the
31843         command lines computed in grep-compute-defaults.  (Bug#20728)
31845 2015-06-06  Glenn Morris  <rgm@gnu.org>
31847         Address some compilation warnings.
31848         * lisp/international/mule-cmds.el (w32-get-console-codepage)
31849         (w32-get-console-output-codepage):
31850         * lisp/progmodes/elisp-mode.el (xref-collect-references):
31851         * lisp/version.el (cairo-version-string): Declare.
31852         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
31854 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
31856         Fix display when a font claims large values of ascent and descent
31857         This fixes bug#20628.
31858         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
31859         coordinate of a hollow cursor glyph when the original glyph's
31860         ascent is too small.
31861         (get_font_ascent_descent, normal_char_ascent_descent)
31862         (normal_char_height): New functions.
31863         (handle_single_display_spec, append_space_for_newline)
31864         (calc_pixel_width_or_height, produce_stretch_glyph)
31865         (calc_line_height_property): Use normal_char_ascent_descent and
31866         normal_char_height.
31867         (x_produce_glyphs): When font-global values of ascent and descent
31868         are too large, use per-character glyph metrics instead, if
31869         possible.  But don't allow the glyph row's ascent and descent
31870         values become smaller than the values from the metrics of the
31871         font's "normal" character.
31872         * src/xftfont.c (xftfont_draw):
31873         * src/w32font.c (w32font_draw): Correct the values of ascent and
31874         descent used to draw glyphless characters' hex code in a box.
31875         * src/xterm.c (x_draw_glyph_string_background):
31876         * src/xdisp.c (x_produce_glyphs):
31877         * src/w32term.c (x_draw_glyph_string_background):
31878         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
31879         to detect fonts whose global ascent and descent values are too
31880         large to be used in layout decision, and redraw the background
31881         when that happens.
31882         * src/dispextern.h (FONT_TOO_HIGH): New macro.
31883         (get_font_ascent_descent): Add prototype.
31884         * src/xterm.c (x_new_font):
31885         * src/w32term.c (x_new_font):
31886         * src/nsterm.m (x_new_font):
31887         * src/font.c (font_open_entity):
31888         * src/composite.c (composition_gstring_width):
31889         Use get_font_ascent_descent to obtain reasonable values for ascent
31890         and descent of a font.
31892 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
31894         Add assertion in adjust_point_for_property
31895         * src/keyboard.c (adjust_point_for_property): Add eassert for
31896         current buffer being shown in selected window.
31898 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
31900         Replace uses of in-string-p; make it obsolete
31901         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
31902         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
31904 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
31906         Fix Dired display of an explicit list of files by ls-lisp.el
31907         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
31908         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
31909         correct for when displaying individual files separately, not as
31910         part of listing a directory, in which case these values are not
31911         recomputed by 'ls-lisp-insert-directory', but used verbatim.
31913         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
31915 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
31917         Do not adjust point in a non-selected window
31918         * src/keyboard.c (command_loop_1): Do not adjust point when
31919         current buffer is not shown in selected window (Bug#20590).
31921         * etc/DEBUG: Mention 'maybe_call_debugger'
31923 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
31925         Fix a unit test for map.el
31926         * test/automated/map-tests.el (test-map-let): Fix the test to work
31927         with the new syntax of `map-let'.
31929         * lisp/emacs-lisp/map.el (map-let): Better docstring.
31931         Better syntax for the map pcase pattern
31932         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
31933         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
31935         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
31937         Fix a byte-compiler error in map-put and map-delete
31938         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
31939         called with a symbol.
31941 2015-06-05  Glenn Morris  <rgm@gnu.org>
31943         * admin/gitmerge.el (gitmerge-commit-message):
31944         Revert to including "skipped" messages in ChangeLog once again.
31946 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
31948         Use string> instead of equiv lambda with string<
31949         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
31950         lambda with string<.
31952 2015-06-05  Glenn Morris  <rgm@gnu.org>
31954         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
31955         (map--delete-array): Fix typo.
31957         * test/automated/map-tests.el: Replace "assert" with "should".
31959         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
31960         (SUBDIRS_REL): Derive from SUBDIRS.
31962         Tweak some build messages.
31963         * lisp/Makefile.in ($(lisp)/loaddefs.el):
31964         * lisp/cus-dep.el (custom-make-dependencies):
31965         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
31966         * lisp/international/titdic-cnv.el (batch-titdic-convert):
31967         Don't say how to compile.
31969 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
31971         Omit U+0332 COMBINING LOW LINE in previous change
31972         It turns out that it does not work on Ubuntu 15.04.
31974         Fix transliteration of Bahá'í months
31975         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
31976         Improve quality of Latin transliteration of Bahá'í month names.
31978         Fix curved quotes in a few places
31979         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
31980         The strings in question are not doc strings, so this partially
31981         undoes the recent change that assumed they were doc strings.
31982         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
31983         * lisp/info.el (Info-finder-find-node):
31984         Use curved quotes.
31985         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
31986         Also allow curved quotes in doc strings.
31988 2015-06-04  Glenn Morris  <rgm@gnu.org>
31990         * lisp/Makefile.in (AM_V_at): Add missing definition.
31992         * lisp/Makefile.in: Quieten output a bit.
31993         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
31994         Don't echo directories, since the commands we invoke print them.
31996         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
31997         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
31998         (SUBDIRS_SUBDIRS): New variables.
31999         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
32000         Remove.
32001         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
32002         (update-subdirs, compile-main, compile-clean):
32003         Replace "setwins" usage with new "SUBDIRS" variables.
32005         * lisp/vc/compare-w.el (compare-windows-get-window-function):
32006         Fix :version tag.
32008 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32010         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
32012         Undo removal of x_clear_area call on expose for GTK3 or cairo
32013         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
32014         Clear exposed area.  (Bug#20677)
32016 2015-06-04  Glenn Morris  <rgm@gnu.org>
32018         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
32020         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
32022         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
32023         Rename from quail-lao-update-translation, since lao.el defines that.
32025 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
32027         Handle new-style advice in find-funct
32028         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
32029         Handle new-style advice.  Return the symbol's function definition.
32030         (Bug#20718)
32031         (find-function-library): Update accordingly.
32033 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
32035         Merge branch 'map'
32037         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
32039         Add new function string-greaterp
32040         * lisp/subr.el (string-greaterp): New function.  Also aliased to
32041         `string>'.
32042         * test/automated/subr-tests.el (string-comparison-test): Add unit
32043         tests for `string>'and `string<'.
32044         * src/fns.c (string-lessp): Better docstring.
32046 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
32048         Fix timezone-related functions on MS-Windows
32049         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
32050         'xputenv', even if no reallocation of tzvalbuf was necessary.
32051         This fixes a bug in timezone-related functions on MS-Windows.
32052         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
32054 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
32056         Don't pass raw directory name to 'error'
32057         * lisp/files.el (basic-save-buffer-2): Avoid format error if
32058         a directory name contains a string like "%s".
32060 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
32062         Override 'grep --color=always'
32063         * lisp/progmodes/xref.el (xref-collect-matches):
32064         Override --color=always in grep-find-template.
32066 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
32068         Fix error introduced recently in file-notify-tests.el
32069         * test/automated/file-notify-tests.el
32070         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
32071         (file-notify--deftest-remote): Revert previous patch, not
32072         necessary anymore.
32074 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
32076         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
32077         Starting from a display string after a newline, point went to the
32078         previous line.  Also, fix an inadvertent use of a buffer position
32079         with FETCH_BYTE.  (Bug#20701)
32081 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
32083         Instrument file-notify-test.el in order to catch hydra error
32084         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
32085         Wrap body by `ignore-case', in order to trap non-local errors.
32087 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32089         Undo previous changes in non-toolkit scroll bar drawing
32090         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
32091         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
32093 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
32095         * .gitignore: Also ignore doc/*/*/*.html and .ps.
32097         Support quotes 'like this' in info files
32098         This is possible when 'makeinfo --disable-encoding' is used
32099         in Texinfo 5.
32100         * lisp/calc/calc-help.el (calc-describe-thing):
32101         * lisp/gnus/gnus-art.el (gnus-button-alist):
32102         * lisp/info.el (Info-find-index-name):
32103         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
32104         Also support quotes 'like this'.
32105         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
32106         * lisp/finder.el (finder-font-lock-keywords): Remove var that
32107         hasn't been used in years, instead of bothering to fix its quoting.
32109 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
32111         * .gitignore: Remove !test/etags/html-src/*.html.
32112         It's no longer needed, since *.html was removed.  Sort.
32114 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
32116         Restore <D> instead of '.' in grep-find-template
32117         * lisp/cedet/semantic/symref/grep.el
32118         (semantic-symref-grep-use-template): Update a comment.
32119         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
32120         instead of '.' in grep-find-template (bug#20719).
32121         (rgrep): Pass nil as the directory to rgrep-default-command.
32122         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
32123         default value for DIR.
32124         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
32125         workaround.
32127 2015-06-02  Glenn Morris  <rgm@gnu.org>
32129         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
32131         * configure.ac (emacs_config_features): Add Cairo.
32133         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
32135 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
32137         Ensure that autorevert works for remote files in file-notify-tests.el
32138         * test/automated/file-notify-tests.el (file-notify--test-desc):
32139         New defvar.
32140         (file-notify--test-remote-enabled)
32141         (file-notify-test00-availability, file-notify-test01-add-watch)
32142         (file-notify-test02-events): Use it.
32143         (file-notify--test-event-test): Check proper descriptor.
32144         (file-notify-test03-autorevert): Ensure that
32145         `visited-file-modtime' has changed.  (Bug#20392)
32147 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
32149         Add a pcase pattern for maps and `map-let' based on it
32150         * lisp/emacs-lisp/map.el (map-let): New macro.
32151         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
32152         * test/automated/map-tests.el: New test for `map-let'.
32154 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
32156         Reuse rgrep mechanics in xref-find-regexp
32157         * lisp/progmodes/grep.el (rgrep-default-command):
32158         Extract from `rgrep'.
32159         * lisp/progmodes/xref.el (xref-collect-references): Split from
32160         `xref-collect-matches'.  Only handle the case of symbol search.
32161         (xref-collect-matches): Instead of Semantic Symref, use
32162         `rgrep-default-command', to take advantage of its directory and
32163         file ignore settings.
32164         (xref--collect-match): Remove the last argument, leaving the
32165         regexp construction up to the caller.
32166         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
32167         Change to take the xref-collect- function to use as an argument.
32168         (elisp-xref-find): Update accordingly.
32169         * lisp/progmodes/etags.el (etags--xref-find-matches)
32170         (etags-xref-find): Same.
32172         Move xref-elisp-location to elisp-mode.el
32173         * lisp/progmodes/xref.el (xref-elisp-location)
32174         (xref-make-elisp-location, xref-location-marker): Remove here.
32175         (xref--xref): Don't limit the type of the location slot.
32176         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
32177         Define as a cl-struct here.
32178         (xref-location-marker): Move here.
32180 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
32182         Minor tweaks for .gitignore
32183         * .gitignore: Don't ignore versioned *.html and *.ps files.
32184         Don't ignore admin/notes/tags that might be ignored as TAGS
32185         on case-insensitive filesystems.  (Bug#20710)
32187 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
32189         Generate curved quotes in ert doc
32190         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
32191         (ert-results-mode-menu)
32192         (ert-results-pop-to-backtrace-for-test-at-point)
32193         (ert-results-pop-to-messages-for-test-at-point)
32194         (ert-results-pop-to-should-forms-for-test-at-point)
32195         (ert-describe-test):
32196         Quote ‘like this’, not `like this', when generating doc strings
32197         and the like.
32198         * test/automated/ert-x-tests.el (ert-test-describe-test):
32199         Allow quoting ‘like this’.
32201 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
32203         Add test for previous commit
32204         * test/automated/replace-tests.el: New file.
32205         (query-replace--split-string-tests): Add test for previous commit.
32207         Avoid confusion in query-replace history when replacing NUL chars
32208         * lisp/replace.el (query-replace--split-string): New function.
32209         (query-replace-read-from): Rely on the 'separator' property
32210         instead of searching for the NUL character (Bug#20690).
32212 2015-06-02  Glenn Morris  <rgm@gnu.org>
32214         Merge from origin/emacs-24
32215         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
32217         * admin/gitmerge.el (gitmerge-commit-message):
32218         Exclude "skipped" messages from ChangeLog.
32220 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
32222         Sync with Tramp repository
32223         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
32224         messages.
32225         (tramp-handle-make-auto-save-file-name): When calling
32226         `make-auto-save-file-name' internally, make sure it uses Unix-like
32227         behavior, not Windows-like behavior.
32228         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
32229         the local case, because "chown" might fail on w32.
32230         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
32231         for XEmacs.
32233 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
32235         MS-Windows followup for batch stdout/stderr output changes
32236         * lisp/international/mule-cmds.el (set-locale-environment):
32237         In batch mode, use console codepages for keyboard and terminal
32238         encoding.  (Bug#20545)
32240         Update .gitattributes for DOS EOL files
32241         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
32242         CRLF end-of-line format.
32244         NS equivalents of xterm.c and w32term.c changes
32245         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
32246         glyph string background also when the font in use claims
32247         preposterously large global height value.  Helps to remove
32248         artifacts left from previous displays when glyphless characters
32249         are displayed as hex code in a box.
32250         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
32251         value for FRAME_LINE_HEIGHT, even when a font claims very large
32252         value for its height.
32254 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
32256         Avoid grave accent quoting in stderr diagnostics
32257         A few Emacs diagnostics go directly to stderr, and so can't easily
32258         contain curved quotes (as non-UTF-8 locales might mishandle them).
32259         Instead of bothering to add support for this rarity, reword the
32260         diagnostics so that they don't use grave accent to quote.
32261         * src/alloc.c (mark_memory): Fix comment.
32262         * src/buffer.c (init_buffer):
32263         * src/dispnew.c (init_display):
32264         * src/emacs.c (main, sort_args):
32265         * src/lread.c (dir_warning):
32266         * src/term.c (init_tty):
32267         * src/unexmacosx.c (unexec):
32268         * src/xfns.c (select_visual):
32269         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
32270         Reword stderr diagnostics to avoid quoting `like this'.
32271         * src/unexmacosx.c: Include errno.h.
32272         * src/xfns.c (select_visual): Encode value for locale.
32274 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
32276         Treat batch stdout/stderr like standard display
32277         Calls like (print FOO) could generate improperly encoded or
32278         hard-to-read output if FOO contains characters outside the system
32279         locale.  Fix this by treating batch stdout and stderr like
32280         interactive standard display, when it comes to transliterating and
32281         encoding characters (Bug#20545).
32282         * doc/emacs/mule.texi (Communication Coding):
32283         * doc/lispref/display.texi (Active Display Table):
32284         * doc/lispref/nonascii.texi (Locales):
32285         * etc/NEWS:
32286         * src/coding.c (syms_of_coding):
32287         * src/dispnew.c (syms_of_display):
32288         Document this.
32289         * src/print.c: Include disptab.h.
32290         (printchar_to_stream): New function, with much of the guts of the
32291         old Fexternal_debugging_output, except this one also uses the
32292         standard display table.
32293         (printchar, strout, Fexternal_debugging_output): Use it.
32295 2015-05-31  Glenn Morris  <rgm@gnu.org>
32297         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
32299 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
32301         Remove DEFSYMs that aren't used at the C level.  Also:
32302         * src/decompress.c (Qzlib_dll):
32303         * src/font.c (Qunicode_sip):
32304         * src/frame.c (Qtip_frame):
32305         * src/ftfont.c (Qserif):
32306         * src/gnutls.c (Qgnutls_dll):
32307         * src/xml.c (Qlibxml2_dll):
32308         Move from here ...
32309         * src/w32fns.c (syms_of_w32fns): ... to here,
32310         as these are used only on MS-Windows.
32312 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
32314         Use another default value for tramp-histfile-override
32315         * lisp/net/tramp-sh.el (tramp-histfile-override):
32316         Use ".tramp_history" as default.
32317         Fixes bug#20446
32319 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
32321         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
32323 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
32325         * etc/NEWS: Add an entry about map.el.
32327         Improve the docstring of functions in map.el
32328         Since a map is not a data structure but a concept, adding information
32329         about the possible types of maps can be useful information.
32330         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
32331         each public function.
32333 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
32335         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
32336         specific tests depending on the type of the map.
32338         * lisp/emacs-lisp/map.el: Better docstrings.
32340 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
32342         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
32344 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
32346         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
32348         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
32350         Fix a false negative in `map-elt' with alists and values being nil
32351         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
32352         found but its associated value is nil, do not return the default
32353         value.
32354         * test/automated/map-tests.el: Add a regression test.
32356 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
32358         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
32360         Do not signal an error when trying to delete a key from an array
32361         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
32362         the key is present to avoid signaling an error.
32363         * test/automated/map-tests.el: Add a test for deleting non-existing
32364         keys from maps.
32366         * lisp/emacs-lisp/map.el: Better docstring.
32368         Minor improvement in map-elt
32369         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
32370         doing a lookup in arrays, but check the boundaries of the array
32371         instead.
32372         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
32373         and a negative integer as key.
32375 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
32377         * test/automated/map-tests.el: Refactoring of test methods.
32379         * test/automated/map-tests.el: Renamed from map-test.el.
32381 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
32383         * lisp/emacs-lisp/map.el (map-into): Better error message.
32385         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
32387         Throw an error when converting a map into an unknown map type
32388         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
32389         not valid.
32390         * test/automated/map-tests.el: Add a regression test.
32392         New library map.el similar to seq.el but for mapping data structures.
32393         * test/automated/map-tests.el: New file.
32394         * lisp/emacs-lisp/map.el: New file.
32396 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
32398         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
32399         there's no explicit tag name (bug#20629).
32401 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
32403         Remove format2
32404         * src/editfns.c, src/lisp.h (format2): Remove.
32405         It is more trouble than it's worth, now that we have CALLN.
32406         This is just a minor refactoring.
32407         * src/buffer.c (Fkill_buffer):
32408         * src/dbusbind.c (XD_OBJECT_TO_STRING):
32409         * src/fileio.c (barf_or_query_if_file_exists):
32410         Adjust to format2 going away.
32412         Don't misencode C-generated messages
32413         Also, be more consistent about calls to 'Fmessage' vs 'message'.
32414         * src/alloc.c (Fgc_status):
32415         Prefer AUTO_STRING to build_string for Fmessage call.
32416         * src/data.c (Fmake_variable_buffer_local)
32417         (Fmake_local_variable, Fmake_variable_frame_local):
32418         * src/doc.c (store_function_docstring):
32419         Use Fmessage, not message, since the argument can contain
32420         non-ASCII characters, and this can cause the resulting message
32421         to be incorrectly encoded for the current environment.
32422         * src/fns.c (maybe_resize_hash_table):
32423         * src/xselect.c (x_clipboard_manager_save_all):
32424         Use message, not Fmessage, since Fmessage's power isn't needed here.
32425         * src/process.c (Fmake_network_process): Reword message to avoid %s.
32426         * src/xdisp.c (vmessage): Document restrictions on message contents.
32427         (message_nolog) [false]: Remove unused code.
32429         Use \r rather than ^M in string literals
32430         This is less likely to cause problems on platforms that
32431         use CRLF (or CR!) termination for lines.
32433         Update .gitattributes to match current sources
32434         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
32435         * .gitattributes: Accommodate tests that insist on DOS format.
32436         Remove test/automated/data/decompress/foo-gzipped.
32437         Add etc/e/eterm-color.
32439 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
32441         * doc/emacs/mule.texi (Modifying Fontsets):
32442         Document face-ignored-fonts.  (Bug#20628)
32444         Add etags test for the new -Q option
32445         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
32446         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
32447         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
32448         test-case changes below.
32449         * test/etags/ETAGS.good_6: New file.
32450         * test/etags/cp-src/x.cc: New file.
32451         * test/etags/Makefile (CPSRC): Add x.cc.
32452         (check): Add one more test, for -Q.
32454 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
32456         Use list for the tags completion table, not obarray
32457         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
32458         list instead of an obarray
32459         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
32460         (tags-completion-table): Combine those lists.
32461         (tags-completion-table): Update the docstring.
32463 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
32465         Restore EOL format testing in etags
32466         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
32467         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
32468         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
32469         test-case changes below.
32470         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
32471         * test/etags/cp-src/c.C (B): Add back stray CR character.
32472         * test/etags/c-src/dostorture.c: Add back.
32473         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
32475 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
32477         Declare Emacs on MS-Windows to be DPI-aware
32478         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
32479         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
32480         This avoids Windows entering compatibility mode for Emacs,
32481         which causes fonts to look less nice.
32483 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
32485         Improve Tramp traces
32486         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
32487         * lisp/net/tramp.el (tramp-debug-message): Use it.
32489 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
32491         backup-buffer minor reworking of internals
32492         * lisp/files.el (backup-buffer): Rework to avoid a couple of
32493         unused locals inadvertently introduced in the previous change.
32495         backup-buffer now reports .emacs.d/%backup% ills
32496         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
32497         fails due to disk space exhaustion or whatever, do not pretend
32498         that it succeeded.  More generally, do a better job of checking
32499         for I/O failures, and limit the scope of the condition-case to
32500         just the operations where file errors should be caught and ignored
32501         (Bug#20595).  Also, don't bother trying to delete later backups if
32502         an earlier deletion fails, as this is a sign of trouble and it's
32503         better to stop when there's trouble.
32505         copy-file now truncates output after writing
32506         * src/fileio.c (Fcopy_file): Truncate output after writing rather
32507         than before.  This is more likely to work than truncation before
32508         writing, if the file system is out of space or the user is over
32509         disk quota (Bug#20595).  Also, check for read errors.
32511 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
32513         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
32514         Don't load descriptors from directories above the package directories.
32516 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
32518         Merge from gnulib
32519         This incorporates the following (Bug#20681):
32520         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
32521         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
32522         * lib/set-permissions.c: Copy from gnulib.
32524 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
32526         Improve Tramp traces
32527         * lisp/net/tramp.el (tramp-call-process-region): New defun.
32528         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
32530 2015-05-29  Glenn Morris  <rgm@gnu.org>
32532         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
32534 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
32536         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
32537         The signature was changed in the cairo branch, merged on 2015-05-23.
32538         This oversight broke compiling only the non-toolkit X version.
32540 2015-05-29  Samer Masterson  <samer@samertm.com>
32542         * doc/lispref/os.texi: Update initial-buffer-choice docs.
32544 2015-05-29  Glenn Morris  <rgm@gnu.org>
32546         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
32547         Mark as an expected failure.
32549 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
32551         Change package test to look for curved quotes
32552         * test/automated/package-test.el (package-test-describe-package)
32553         (package-test-signed): Search for curved single quotes as well as
32554         for grave accent and apostrophe.
32556 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
32558         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
32559         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
32561 2015-05-28  Samer Masterson  <samer@samertm.com>
32563         Show files when `initial-buffer-choice' is non-nil
32564         * lisp/startup.el (command-line-1): When Emacs is given a file as an
32565         argument and `initial-buffer-choice' is non-nil, display both the file
32566         and `initial-buffer-choice'.  For more than one file, show
32567         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
32568         commands out of the command line arg parser.
32569         (initial-buffer-choice): Clarify docstring.
32571 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
32573         Fix last commit
32574         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
32575         (gnulib module qcopy-acl): Add back, as it is harmless.  This
32576         minimizes differences wrt lib/gnulib.mk.
32578         Fix the MS-Windows build as followup to gnulib update
32579         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
32580         set-permissions.c, as they don't compile on MinGW.
32581         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
32583 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
32585         Revert my change to gnus-art.el
32586         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
32587         It wasn't that important, and it caused a Gnus build to fail.  See:
32588         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
32590         New minor mode Electric Quote
32591         This lets you easily insert quotes ‘like this’ by typing
32592         quotes `like this', and similarly you can easily insert
32593         quotes “like this” by typing quotes ``like this'' (Bug#20545).
32594         * doc/emacs/basic.texi (Inserting Text):
32595         * doc/emacs/modes.texi (Minor Modes):
32596         * etc/NEWS: Document it.
32597         * doc/emacs/text.texi (Quotation Marks): New section.
32598         * lisp/electric.el (electric-quote-comment)
32599         (electric-quote-string, electric-quote-paragraph):
32600         New custom vars.
32601         (electric--insertable-p)
32602         (electric-quote-post-self-insert-function): New functions.
32603         (electric-quote-mode, electric-quote-local-mode): New minor modes.
32604         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
32605         Add curved single quotes to electric-pair-text-pairs.
32606         Set electric-quote-string in this buffer.
32608         A few more doc string fixes (Bug#20385)
32610         Accept curved quotes in doc strings
32611         * lisp/info-look.el (info-lookup-guess-custom-symbol):
32612         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
32614         Generate curved quotes in pseudo-info nodes
32615         * lisp/info.el (Info-virtual-index-find-node)
32616         (Info-virtual-index, Info-apropos-find-node, info-apropos):
32617         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
32619         Fix minor quoting problems in doc strings
32620         Most of these fixes involve escaping grave accents that are
32621         actually intended to be grave accents, not left quotes.
32622         (Bug#20385)
32624         Support curved quotes in doc strings
32625         Emacs's traditional doc string style has been to quote symbols
32626         `like this'.  This worked well on now-obsolete terminals where
32627         ` and ' were symmetric quotes, but nowadays curved quotes
32628         ‘like this’ look better.  Support quoting the new way too.
32629         (Bug#20385)
32630         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
32631         ‘like-this’ as well as `like-this'.
32632         * etc/NEWS: Mention this.
32633         * lisp/cedet/mode-local.el (overload-docstring-extension)
32634         (mode-local-print-binding, mode-local-describe-bindings-2):
32635         * lisp/cus-theme.el (describe-theme-1):
32636         * lisp/descr-text.el (describe-text-properties-1, describe-char):
32637         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
32638         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
32639         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
32640         (eieio-help-constructor):
32641         * lisp/emacs-lisp/package.el (describe-package-1):
32642         * lisp/faces.el (describe-face):
32643         * lisp/help-fns.el (help-fns--key-bindings)
32644         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
32645         (help-fns--interactive-only, describe-function-1):
32646         (describe-variable):
32647         * lisp/help.el (describe-mode):
32648         * lisp/international/mule-cmds.el (describe-input-method)
32649         (describe-language-environment):
32650         * lisp/international/mule-diag.el (describe-character-set)
32651         (print-coding-system-briefly, list-input-methods)
32652         (list-input-methods-1):
32653         Insert curved quotes rather than grave accent and apostrophe.
32654         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
32655         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
32656         (checkdoc-proper-noun-region-engine):
32657         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
32658         (lisp-cl-font-lock-keywords-2):
32659         * lisp/finder.el (finder-font-lock-keywords):
32660         * lisp/gnus/gnus-art.el (gnus-button-alist):
32661         * lisp/help-fns.el (help-do-arg-highlight)
32662         (describe-function-1, describe-variable):
32663         * lisp/help-mode.el (help-xref-symbol-regexp)
32664         (help-xref-info-regexp, help-xref-url-regexp):
32665         * lisp/help.el (describe-mode):
32666         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
32667         * lisp/wid-edit.el (widget-documentation-link-regexp):
32668         Parse symbols quoted ‘like-this’ as well as `like-this'.
32669         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
32670         Add "‘" and "’" to electric-pair-text-pairs.
32671         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
32672         (elisp-completion-at-point, elisp--preceding-sexp):
32673         Also treat "‘" and "’" as quoting chars.
32675         substitute-command-keys now curves quotes
32676         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
32677         * doc/lispref/help.texi (Keys in Documentation):
32678         * etc/NEWS: Document this.
32679         * src/doc.c (Fsubstitute_command_keys): Implement it.
32681 2015-05-28  Glenn Morris  <rgm@gnu.org>
32683         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
32684         (rmail-summary-by-topic, rmail-summary-by-senders):
32685         No longer strip leading/trailing whitespace.
32687         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
32688         (f90-no-block-limit): Add "enum".  (Bug#20680)
32689         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
32690         New tests.
32692 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
32694         * lisp/isearch.el (isearch--current-buffer): Give a default value.
32695         Un-revert changes mistakenly dropped by f9fabb2b.
32697 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
32699         Merge from gnulib
32700         This incorporates:
32701         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
32702         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
32703         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
32704         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
32705         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
32706         2015-05-26 stdio: fix probe on mingw under gcc 5.1
32707         * admin/merge-gnulib (GNULIB_MODULES):
32708         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
32709         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
32710         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
32711         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
32712         Get latest versions from gnulib.
32713         * lib/get-permissions.c, lib/set-permissions.c: New files.
32714         * lib/gnulib.mk, m4/gnulib-comp.m4:
32715         Regenerate.
32716         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
32718 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
32720         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
32721         process here.
32722         (vc-do-command): Rather than here (bug#20608).
32724 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
32726         Avoid gratuitous delete-dups in face-at-point
32727         * lisp/faces.el (face-at-point): Do not compute the properly
32728         ordered, duplicate-free list if only a single value is
32729         requested anyway.  (Bug#20519)
32731         Show the exact C-x 8 RET invocation in describe-char
32732         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
32733         invocation instead of a template.  (Bug#20522)
32735 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
32737         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
32738         (package-menu--post-refresh): Call `tabulated-list-print' with the
32739         UPDATE argument.  This only affects the refresh action, the revert
32740         action still erases tags.
32741         (package-menu-get-status): Change `assq' to `assoc'.
32742         (package-menu--mark-upgrades-1): New function.
32743         (package-menu--mark-upgrades-pending): New variable.
32744         (package-menu-mark-upgrades): Use them to delay marking until
32745         after refresh is done.
32746         (package-menu--post-refresh): Call mark-upgrades-1 if
32747         mark-upgrades-pending is non-nil.
32749 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
32751         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
32752         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
32753         (commit 3953c4be2816537be95520605d45b866dc731f4b).
32755 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
32757         * lisp/isearch.el (isearch--current-buffer): New var.
32758         (isearch-update): Set cursor-sensor-inhibit here.
32759         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
32760         (bug#20532).
32762         Change inhibit-point-motion-hooks to t
32763         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
32764         to t and document it as obsolete.
32766 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
32768         Support ZIP files that use Zip64 extensions
32769         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
32770         format of central directory offsets used by Zip64 extensions.
32771         (Bug#20665)
32773 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
32775         New test tramp-test30-make-auto-save-file-name
32776         * test/automated/tramp-tests.el
32777         (tramp-test30-make-auto-save-file-name): New test.
32778         (tramp-test31-special-characters)
32779         (tramp-test31-special-characters-with-stat)
32780         (tramp-test31-special-characters-with-perl)
32781         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
32782         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
32783         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
32784         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
32786         Improve tramp-handle-make-auto-save-file-name
32787         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
32788         (tramp-handle-make-auto-save-file-name): Let native
32789         `make-auto-save-file-name' use `auto-save-file-name-transforms',
32790         if `tramp-auto-save-directory' is not set.
32792 2015-05-27  Glenn Morris  <rgm@gnu.org>
32794         No longer set dired-directory in eshell.  (Bug#16477)
32795         * lisp/eshell/esh-mode.el (eshell-mode):
32796         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
32798         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
32800         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
32801         * lisp/progmodes/cc-mode.el (c-mode-help-address):
32802         Change to submit@debbugs.
32803         (c-mode-bug-package): New constant.
32804         (mail-position-on-field): Declare.
32805         (c-submit-bug-report): Insert X-Debbugs-Package header.
32806         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
32807         Mention debbugs.gnu.org.
32809 2015-05-26  Glenn Morris  <rgm@gnu.org>
32811         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
32812         (rmail-summary-by-recipients, rmail-summary-by-topic)
32813         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
32814         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
32816 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
32818         Handle curved quotes in info files
32819         * lisp/calc/calc-help.el (calc-describe-thing):
32820         * lisp/info.el (Info-find-index-name)
32821         (Info-try-follow-nearest-node, Info-fontify-node):
32822         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
32823         In info files, process quotes ‘like this’ the same way we process
32824         quotes `like this'.  This catches a few places we missed earlier.
32826 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
32828         xref-prompt-for-identifier: Use a list value
32829         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
32830         value, to be interpreted as a list of commands.
32831         (xref--prompt-p): New function.
32832         (xref--read-identifier): Use it.
32834 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
32836         Teach MS-Windows font back-end return per-glyph ascent/descent
32837         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
32838         values.
32839         * src/w32font.c (w32font_text_extents): Compute, cache, and
32840         accumulate per-glyph ascent and descent values, instead of copying
32841         global values from the font.  If the values are not available from
32842         the font data, i.e., non-TTF fonts, fall back on font-global values.
32843         (compute_metrics): Compute and return per-glyph ascent and descent
32844         values, if returned by GetGlyphOutlineW, falling back on
32845         font-global values.  (Bug#20628)
32846         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
32847         height of rectangle to be drawn, to be compatible with
32848         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
32849         box, when per-glyph ascent/descent values are used.
32851 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
32853         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
32854         Don't sort if sorter is nil.
32856 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
32858         Fix Bug#20621
32859         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
32860         are major modes which set `auto-save-mode' on their own rules;
32861         Tramp shall not overwrite such settings.
32863 2015-05-26  Glenn Morris  <rgm@gnu.org>
32865         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
32866         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
32867         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
32868         Doc updates.
32869         (vc-dir-mode): Remove unnecessary autoload.
32871 2015-05-25  Philipp Stephani  <phst@google.com>
32873         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
32874         (xterm--extra-capabilities-type): Add `getSelection'.
32875         (xterm--query): Add `no-async' argument.
32876         (xterm--init-activate-get-selection): New function.
32877         (terminal-init-xterm): Use it.
32878         (xterm--init-modify-other-keys): Rename from
32879         terminal-init-xterm-modify-other-keys.
32880         (xterm--init-bracketed-paste-mode): Rename from
32881         terminal-init-xterm-bracketed-paste-mode.
32882         (xterm--init-activate-set-selection): Rename from
32883         terminal-init-xterm-activate-set-selection.
32884         (xterm--selection-char): New function.
32885         (gui-backend-set-selection): Use it.  Use the &context to only apply
32886         this method in terminals where we enabled the feature.
32887         (gui-backend-get-selection): New method.
32889 2015-05-25  Daniel Colascione  <dancol@dancol.org>
32891         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
32892         keyword constants to C++.
32894 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
32896         Make TAGS files more portable to MS-Windows
32897         * etc/NEWS: Document this.
32898         * lib-src/etags.c (readline_internal) [DOS_NT]:
32899         Don't treat CRs differently from GNUish hosts.
32900         * lisp/progmodes/etags.el (etags-goto-tag-location):
32901         Adjust STARTPOS to account for the skipped CRs in dos-style files.
32903 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
32905         Improve fix of bug#20634 in tramp-sh.el
32907 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
32909         Fix a typo in last commit
32910         * lib-src/etags.c (C_entries): Fix a typo.
32911         * test/etags/ETAGS.good_1:
32912         * test/etags/ETAGS.good_2:
32913         * test/etags/ETAGS.good_3:
32914         * test/etags/ETAGS.good_4:
32915         * test/etags/ETAGS.good_5:
32916         * test/etags/CTAGS.good: Update due to the change in etags.c.
32918         Fix tagging of class members in C-like OO languages
32919         * lib-src/etags.c (longopts): Add new option --class-qualify and
32920         its shorthand -Q.
32921         (print_help): Add help text for --class-qualify.
32922         (main): Add handling of -Q.
32923         (consider_token, C_entries) <omethodparm>: Append argument types
32924         to Objective C methods only if --class-qualify was specified.
32925         Qualify C++, Objective C, and Java class members with their class
32926         names only if --class-qualify was specified.
32927         (C_entries): If --class-qualify was not specified, remove the
32928         namespace and class qualifiers from tag names of C++ methods.
32929         This allows to use etags.el as xref back-end without the
32930         tag-symbol-match-p method, which greatly increases the number of
32931         potentially false positives.  (Bug#20629)
32932         * doc/man/etags.1: Update to document the new --class-qualify
32933         option.
32934         * test/etags/ETAGS.good_1:
32935         * test/etags/ETAGS.good_2:
32936         * test/etags/ETAGS.good_3:
32937         * test/etags/ETAGS.good_4:
32938         * test/etags/ETAGS.good_5:
32939         * test/etags/CTAGS.good: Update due to changes in etags.c.
32941 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
32943         (cl-generic-define-method): Side effects are evil (bug#20644)
32944         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
32945         cons-cells that might be used as keys in an `equal' hash-table.
32947 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
32949         Make erc timestamps visible again
32950         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
32951         Make timestamps visible again (if requested).
32953 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
32955         Fix last change in etags.c that broke tagging compresed files
32956         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
32957         quoting of decompression shell command for MS-Windows/MS-DOS.
32959 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
32961         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
32962         (Bug#20639)
32964 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
32966         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
32967         Fix typo in "Inhibit `epa-file-handler' in Tramp"
32968         (commit 89035e247591c8d688fce922b7079881aa110f33).
32970 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
32972         Fix IPv6 addresses in Tramp
32973         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
32974         Add square brackets around host name.
32976 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
32978         Inhibit `epa-file-handler' in Tramp (Bug#20634)
32979         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
32980         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
32981         `epa-file-handler'.
32983 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
32985         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
32986         (pcase-let): Document the behavior in case the pattern doesn't match.
32988 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
32990         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
32991         (tabulated-list-print): New optional argument, UPDATE.  If
32992         non-nil, the list is printed by only adding and deleting the
32993         changed entries, instead of erasing the whole buffer.  This method
32994         is much faster when few or no entries have changed.
32995         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
32996         * etc/NEWS: Document it.
32998         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
32999         (tabulated-list--get-sorter): New function.
33000         (tabulated-list-print): Restore window-line when remember-pos is
33001         passed and optimize away the `nreverse'.
33003 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
33005         Simpilify etags TEX mode scanning
33006         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
33007         Remove static vars.
33008         (TeX_commands): Deduce escapes here instead.
33009         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
33010         This removes the need for a reset_input call.
33012         Improve etags I/O error reporting
33013         * lib-src/etags.c:
33014         Don't include sys/types.h and sys/stat.h; no longer needed.
33015         (infilename): New static var.
33016         (process_file_name): Don't call 'stat'.  Instead, just open the
33017         file for reading and report any errors.  Don't bother making
33018         a copy of the file argument; it's not needed.  Be more careful to
33019         use the failing errno when reporting an error.
33020         Quote the real name better (though no perfectly)
33021         when passing it to the shell.
33022         (reset_input): New function, which reports I/O errors.
33023         All uses of 'rewind' changed to use this function.
33024         (perhaps_more_input): New function, which also checks for
33025         I/O errors.  All uses of 'feof' changed to use this function.
33026         (analyze_regex): Report an error if fclose fails.
33027         (readline_internal): Report an error if getc fails.
33028         (etags_mktmp): Return an error if close fails.
33030         etags.c: avoid side effects in 'if'
33031         * lib-src/etags.c (process_file_name, Perl_functions)
33032         (TEX_decode_env): Hoist side effects into previous statement.
33034         .gitignore tweaks
33035         * .gitignore: Ignore all *.stamp files.  Sort.
33036         Ignore [0-9]*.txt (commonly used name for git patches)
33037         and /vc-dwim-log-* (vc-dwim temporary).
33039 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
33041         Fix last change in etags.c, which failed the test suite
33042         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
33043         before the last change.
33045 2015-05-23  Glenn Morris  <rgm@gnu.org>
33047         Remove charset map files from repository, generate in first bootstrap
33048         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
33049         (all): Create the stamp file.
33050         (extraclean): Delete the stamp file.
33051         * src/Makefile.in (lispintdir, charsets): New variables.
33052         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
33053         New rules.
33054         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
33055         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
33056         * etc/charsets/*.map: Remove from repository.
33058 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
33060         Cleanup etags.c to use locale-independent code
33061         Although this doesn't alter behavior (as etags doesn't use
33062         setlocale), the new version is more clearly locale-independent and
33063         the executable is a bit smaller on my platform.
33064         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
33065         Include <c-ctype.h> instead of <ctype.h>.
33066         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
33067         (begtk, midtk):
33068         Remove; no longer needed.
33069         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
33070         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
33071         c_islower, c_tolower, respectively.
33072         (notinname, begtoken, intoken, endtoken): Rewrite as functions
33073         instead of macros, and initialize the tables at compile-time
33074         rather than at run-time.
33076         Put default action first in src/Makefile
33077         * src/Makefile.in (all): Put this rule before lisp.mk.
33078         That way, plain 'make' works in the src directory again.
33080 2015-05-23  Glenn Morris  <rgm@gnu.org>
33082         * Makefile.in: Fix extraclean rule.
33083         (extraclean_dirs): New.
33084         (extraclean): Use it.
33086 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
33088         Avoid compiler warning in image.c on MS-Windows
33089         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
33090         warning in image.c.
33092 2015-05-23  Glenn Morris  <rgm@gnu.org>
33094         Fix --without-toolkit-scroll-bars builds.
33095         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
33096         Add new argument to x_clear_area1.
33097         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
33098         Update x_clear_area arguments.
33100         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
33101         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
33102         Change to included version.
33103         (LOCAL, local, totalclean): Remove.
33104         (extraclean): Delete all generated files.
33106 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
33108         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
33109         CVS/Entries exists.
33111         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
33113         * lisp/progmodes/etags.el (tags-completion-at-point-function):
33114         Don't trust the find-tag function.
33116 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
33118         Pacify --enable-gcc-warnings
33119         * src/frame.h (x_query_color): Remove redundant extern decl.
33120         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
33121         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
33122         (ftcrfont_text_extents, ftcrfont_draw):
33123         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
33124         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
33125         (x_ins_del_lines, frame_highlight, frame_unhighlight)
33126         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
33127         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
33128         (x_update_window_begin, x_connection_closed)
33129         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
33130         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
33131         (*x_gc_get_ext_data, x_extension_initialize)
33132         (x_cr_accumulate_data):
33133         Remove redundant static decl.  Many of these GCC doesn't complain
33134         about, but we might as well clean out the duplication while we're
33135         in the neighborhood.
33136         * src/xterm.c (x_fill_trapezoid_for_relief):
33137         Remove decl of nonexistent function.
33139 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
33141         Replace gui-method macros with cl-generic with &context
33142         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
33143         (gui-method-declare, gui-call): Remove.
33144         (frame-creation-function): Use cl-defgeneric.
33145         (make-frame): Adjust callers.
33146         * lisp/menu-bar.el (menu-bar-edit-menu):
33147         Use gui-backend-selection-exists-p.
33148         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
33149         (gui-backend-get-selection): New cl-generic to replace
33150         gui-get-selection method.
33151         (gui-backend-set-selection): New cl-generic to replace
33152         gui-set-selection method.
33153         (gui-selection-owner-p): New cl-generic to replace
33154         gui-selection-owner-p method.
33155         (gui-backend-selection-exists-p): New cl-generic to replace
33156         gui-selection-exists-p method.  Adjust all callers.
33157         * lisp/server.el (server-create-window-system-frame): Don't ignore
33158         window-system spec even when unsupported.
33159         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
33160         * lisp/startup.el (handle-args-function, window-system-initialization):
33161         Use cl-defgeneric.
33162         (command-line): Adjust calls accordingly.
33163         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
33164         a window-system-initialization method.
33165         (handle-args-function, frame-creation-function): Use cl-defmethod.
33166         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
33167         (gui-get-selection): Use cl-defmethod on the new functions instead.
33168         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
33169         a gui-backend-get-selection method.
33170         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
33171         Use cl-defmethod on the new functions instead.
33172         (msdos-window-system-initialization): Turn into
33173         a window-system-initialization method.
33174         (frame-creation-function, handle-args-function): Use cl-defmethod.
33175         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
33176         a window-system-initialization method.
33177         (handle-args-function, frame-creation-function): Use cl-defmethod.
33178         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
33179         (gui-get-selection): Use cl-defmethod on the new functions instead.
33180         * lisp/term/x-win.el (x-window-system-initialization): Turn into
33181         a window-system-initialization method.
33182         (handle-args-function, frame-creation-function): Use cl-defmethod.
33183         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
33184         (gui-get-selection): Use cl-defmethod on the new functions instead.
33185         * lisp/term/xterm.el (xterm--set-selection): Turn into
33186         a gui-backend-set-selection method.
33187         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
33188         (Fns_selection_owner_p): Remove unused arg `terminal'.
33189         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
33191 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
33193         Revert "Fix etags Bug#20629 that broke C++ support"
33194         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
33196 2015-05-23  Jan D  <jan.h.d@swipnet.se>
33198         Fix etags Bug#20629 that broke C++ support
33199         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
33200         Revert commit from Sun May 10 (Bug#20629).
33202         Merge branch 'cairo'.
33203         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
33204         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
33206         Merge branch 'master' into cairo
33208         Fixes to compile cairo branch without cairo
33209         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
33210         first argument.
33211         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
33212         USE_CAIRO.
33214 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
33216         * lisp/emacs-lisp/package.el: Always update selected-packages.
33217         (package--update-selected-packages): New function.
33218         (package-menu-execute): Use it before starting the transaction,
33219         this way the list of selected packages is updated even when the
33220         transaction fails.
33221         (package-menu--perform-transaction): Don't edit selected-packages.
33223 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
33225         Fix etags reading of compressed files
33226         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
33227         Include fcntl.h, for O_CLOEXEC.
33228         (process_file_name): Don't use 'popen', whose streams cannot be
33229         rewound.  Instead, uncompress the file to a temporary file,
33230         created by 'etags_mktmp', and read from that as usual.
33231         (etags_mktmp): New function.
33232         * test/etags/ETAGS.good_1:
33233         * test/etags/ETAGS.good_2:
33234         * test/etags/ETAGS.good_3:
33235         * test/etags/ETAGS.good_4:
33236         * test/etags/ETAGS.good_5: Update to be consistent with latest
33237         changes in etags.c regarding reading compressed files.
33239         Improve documentation of 'set-fontset-font'
33240         * doc/lispref/display.texi (Fontsets): Document the value of nil
33241         for the 3rd argument of 'set-fontset-font'.
33243         Fix documentation of forward-line
33244         * src/cmds.c (Fforward_line): Clarify the return value if the line
33245         at end of accessible portion of the buffer has no newline.
33246         * doc/lispref/positions.texi (Text Lines): Document what happens
33247         if the line at end of accessible portion of buffer has no newline.
33248         (Bug#20587)
33250 2015-05-22  Glenn Morris  <rgm@gnu.org>
33252         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
33254         * admin/charsets/mapconv (LC_ALL): Set to C.
33256         * Makefile.in: Add admin/charsets into top-level clean rules.
33257         (clean): Add admin/charsets.
33258         (maybeclean_dirs): New variable.
33259         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
33261         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
33263 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
33265         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
33267 2015-05-22  Glenn Morris  <rgm@gnu.org>
33269         Generate admin/charsets Makefile via configure, and make more portable
33270         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
33271         (admin/charsets/Makefile): Generate it.
33272         * admin/charsets/Makefile.in: Rename from Makefile.
33273         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
33274         New variables, set by configure.
33275         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
33276         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
33277         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
33278         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
33279         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
33280         (all): Declare PHONY.
33281         (local): New PHONY target.
33282         (map_template): New template.  Use to define short PHONY aliases.
33283         (*.map): Add directory prefixes to targets and prerequisites.
33284         Respect make verbosity.
33285         (JISC6226.map): Replace non-portable sed append without newline.
33286         (install): Remove rule.
33287         (clean): Only delete temporary sedscript.
33288         (bootstrap-clean, distclean, maintainer-clean, extraclean)
33289         (totalclean): New PHONY rules.
33290         * admin/charsets/mapconv (BASE): Replace basename with expr.
33291         (FILE): Add "mapfiles" subdirectory.
33292         (AWK): New variable.  Use throughout in place of "awk".
33293         (main): Use "gunzip -c" in place of "zcat".
33294         Don't leave whitespace before "p", for older sed.
33295         * admin/charsets/mapfiles/PTCP154: Add final newline,
33296         to make older sed versions happy.
33298 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
33300         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
33301         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
33302         (auto-revert-notify-watch-descriptor): Use defvar-local.
33303         (find-file-hook, auto-revert-tail-mode)
33304         (auto-revert-notify-add-watch): Use setq-local.
33305         (auto-revert-notify-add-watch): Don't call make-local-variable on
33306         kill-buffer-hook (bug#20601).
33308 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
33310         Change defgeneric so it doesn't completely redefine the function
33311         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
33312         previously defined methods.
33313         (cl-generic-define-method): Let-bind purify-flag instead of
33314         using `fset'.
33315         (cl--generic-prefill-dispatchers): Only define during compilation.
33316         (cl-method-qualifiers): Remove redundant alias.
33317         (help-fns-short-filename): Silence byte-compiler.
33318         * test/automated/cl-generic-tests.el:
33319         Adjust to new defgeneric semantics.
33321 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
33323         * lisp/emacs-lisp/package.el (package-menu-execute):
33324         Remove reference to remove-dups.
33326 2015-05-21  kwhite  <kwhite@gnu.org>
33328         * lisp/erc/erc.el: Hide network/channel messages.
33329         (erc-network-hide-list, erc-channel-hide-list): New lists to define
33330         message types per network/channel.
33331         (erc-add-targets): New function to parse list of targets.
33332         (erc-hide-current-message-p): Modify to check for new targets.
33334 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
33336         Don't quote nil and t in doc strings
33337         This is as per "Tips for Documentation Strings" in the elisp manual.
33338         For consistency, do the same in diagnostics and comments.
33340 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
33342         Fix a minor problem with mouse-face on mode line
33343         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
33344         mouse face also if the mouse pointer hovers above mode-line glyphs
33345         that don't come from any Lisp string.  (Bug#20620)
33347 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
33349         * lisp/emacs-lisp/package.el: Fix selected-package logic.
33350         (package-menu-execute): Mark as selected all non-upgrade packages
33351         being installed.
33352         (package-menu--perform-transaction): Don't mark anything.
33354         * lisp/emacs-lisp/package.el: Mode-line progress report.
33355         (package-menu--transaction-status): New variable.
33356         (package-menu-mode, package-menu--perform-transaction): Use it.
33358         * lisp/emacs-lisp/package.el: Better transaction messages.
33359         (package-menu--partition-transaction): New function.
33360         (package-menu--prompt-transaction-p, package-menu-execute):
33361         Use it.
33362         (package-menu--perform-transaction): Don't do any messaging.
33364         * lisp/emacs-lisp/package.el: Revert async package transactions.
33365         (package-menu-async): Update doc.
33366         (package-install-from-archive, package-download-transaction)
33367         (package-install, package-menu--perform-transaction)
33368         (package-menu-execute): Remove asynchronous functionality.
33370 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
33372         Revert doc string changes to f90.el
33373         Problem reported by Glenn Morris in:
33374         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
33375         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
33376         Revert recent changes to doc strings, as it's intended that they
33377         use grave accent, not quote.
33379 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
33381         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
33382         Improve parameter name.
33384         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
33386 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
33388         Don't require help-fns when not needed
33389         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
33390         * lisp/emacs-lisp/elint.el:
33391         Don't require help-fns at the top level
33392         * lisp/emacs-lisp/advice.el (ad-arglist):
33393         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
33394         Don't require help-fns.  (Bug#17001)
33396 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
33398         Fix slash collapsing in etags on MS-Windows
33399         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
33400         MS-Windows code from the Posix code, and support collapsing both
33401         forward- and back-slashes on MS-Windows.  Fixes a regression found
33402         by the test suite.
33404         Improve documentation of glyphless-char-display
33405         * doc/lispref/display.texi (Glyphless Chars): Improve
33406         documentation of glyphless character display.
33408         Fix "acronym" display of glyphless characters on w32
33409         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
33410         ignore "acronym" substitutes of 1 character for glyphless characters.
33412 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
33414         Add an automated test for let-when-compile
33415         * test/automated/subr-tests.el (let-when-compile): New test.
33417         Add let-when-compile macro instead of using pcase-let
33418         * lisp/subr.el (let-when-compile): New let-like macro that makes its
33419         bindings known to macros like `eval-when-compile' in the body.
33420         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
33421         a `let-when-compile'.  Also comment out the unused lexical var
33422         `el-kws-re'.
33423         The change greatly improves readability, while providing almost the
33424         same (even shorter) byte code: instead of pre-evaluating 10 variables,
33425         tossing them into a list, and destructuring that list a full screen
33426         page later, the variables are simply bound as they are evaluated,
33427         wrapped individually in `eval-when-compile'.
33429 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
33431         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
33432         (package-delete-button-action): New function.
33433         (describe-package-1): Add Delete button.
33435         * lisp/emacs-lisp/package.el: Better dependency description.
33436         (package--used-elsewhere-p): New optional arg, ALL, and return
33437         package-desc objects instead of names.
33438         (package-delete): Update accordingly.
33439         (describe-package-1): Describe which packages require the package.
33441 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
33443         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
33444         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
33445         Fix doc-string.
33447         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
33448         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
33449         (switch-to-buffer): If the selected window is strongly dedicated
33450         to its buffer, signal error before prompting for buffer name.
33451         Handle `switch-to-buffer-in-dedicated-window'.
33452         * doc/lispref/windows.texi (Switching Buffers):
33453         Document `switch-to-buffer-in-dedicated-window'.
33455 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
33457         Prefer "this" to “this” in doc strings
33458         This mostly just straightens quotes introduced in my previous patch.
33459         Suggested by Dmitry Gutov in:
33460         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
33461         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
33462         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
33463         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
33464         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
33465         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
33466         Prefer straight double quotes to curved double quotes in doc strings.
33468         Fix minor quoting problems in doc strings
33469         These were glitches regardless of how or whether we tackle the
33470         problem of grave accent in doc strings.
33471         * lisp/calc/calc-aent.el (math-restore-placeholders):
33472         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
33473         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
33474         * lisp/leim/quail/hebrew.el ("hebrew-new")
33475         ("hebrew-biblical-sil"):
33476         * lisp/leim/quail/thai.el ("thai-kesmanee"):
33477         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
33478         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
33479         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
33480         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
33481         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
33482         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
33483         (semantic-tag-components):
33484         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
33485         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
33486         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
33487         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
33488         * lisp/emacs-lisp/generator.el (iter-next):
33489         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
33490         (gnus-article-mode-syntax-table):
33491         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
33492         * lisp/net/soap-client.el (soap-wsdl-get):
33493         * lisp/net/telnet.el (telnet-mode):
33494         * lisp/org/org-compat.el (org-number-sequence):
33495         * lisp/org/org.el (org-remove-highlights-with-change)
33496         (org-structure-template-alist):
33497         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
33498         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
33499         (handwrite-12pt, handwrite-13pt):
33500         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
33501         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
33502         * lisp/progmodes/verilog-mode.el (verilog-tool)
33503         (verilog-string-replace-matches, verilog-preprocess)
33504         (verilog-auto-insert-lisp, verilog-auto-insert-last):
33505         * lisp/textmodes/makeinfo.el (makeinfo-options):
33506         * src/font.c (Ffont_spec):
33507         Fix minor quoting problems in doc strings, e.g., missing quote,
33508         ``x'' where `x' was meant, etc.
33509         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
33510         Fix minor quoting problem in other string.
33511         * lisp/leim/quail/ethiopic.el ("ethiopic"):
33512         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
33513         Omit unnecessary quotes.
33514         * lisp/faces.el (set-face-attribute, set-face-underline)
33515         (set-face-inverse-video, x-create-frame-with-faces):
33516         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
33517         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
33518         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
33519         * lisp/net/tramp.el (tramp-methods):
33520         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
33521         * lisp/textmodes/artist.el (artist-ellipse-right-char)
33522         (artist-ellipse-left-char, artist-vaporize-fuzziness)
33523         (artist-spray-chars, artist-mode, artist-replace-string)
33524         (artist-put-pixel, artist-text-see-thru):
33525         * lisp/vc/ediff-util.el (ediff-submit-report):
33526         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
33527         Use double-quotes rather than TeX markup in doc strings.
33528         * lisp/skeleton.el (skeleton-pair-insert-maybe):
33529         Reword to avoid the need for grave accent and apostrophe.
33530         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
33531         Don't use grave and acute accents to quote.
33533 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
33535         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
33536         Silence compiler.
33538 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
33540         Try to port new etags tests to MS-Windows
33541         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
33542         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
33543         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
33544         Adjust to test-case changes below.
33545         * test/etags/Makefile (CSRC): Remove dostorture.c.
33546         Whatever it was trying to test, wasn't working portably.
33547         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
33548         just a line-ending problem.
33549         * test/etags/c-src/dostorture.c: Remove.
33550         * test/etags/cp-src/c.C: Remove stray CR.
33551         * test/etags/html-src/algrthms.html: Remove trailing CRs.
33552         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
33553         but if someone edits it later it should stay UTF-8-compatible.
33555 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
33557         Fix display of overlapping window-specific overlays
33558         * src/keyboard.c (adjust_point_for_property): When adjusting point
33559         due to display strings, ignore overlays that are specific to
33560         windows other than the currently selected one.
33561         * src/xdisp.c (handle_single_display_spec): If the display
33562         property comes from an overlay, arrange for buffer iteration to
33563         resume only after the end of that overlay.  (Bug#20607)
33565 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
33567         New command icomplete-force-complete-and-exit
33568         * lisp/icomplete.el (icomplete-force-complete-and-exit):
33569         New command
33570         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
33571         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
33572         (icomplete-minibuffer-map): Bind C-j to it.
33573         (icomplete-forward-completions, icomplete-backward-completions):
33574         Mention the new command in the docstring.
33575         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
33576         Revert the previous fix for bug#17545.
33578 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
33580         Fix last commit
33582         In Elisp manual explain how to override window manager positioning
33583         (Bug#20552)
33584         * doc/lispref/frames.texi (Position Parameters): Give example of
33585         how to override a window manager positioning decision.
33587         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
33588         * src/frame.c (Fdelete_frame): In doc-string mention that frame
33589         can't be deleted if it has a surrogate minibuffer.
33590         * doc/lispref/frames.texi (Minibuffers and Frames)
33591         (Deleting Frames): Explain "surrogate minibuffer frames".
33593         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
33595 2015-05-18  Glenn Morris  <rgm@gnu.org>
33597         Add option to ignore commit lines matching a pattern in ChangeLog
33598         * build-aux/gitlog-to-changelog: Add --ignore-line option.
33599         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
33601 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
33603         Don't skip new etags tests on non-UTF-8 hosts
33604         Problem reported by Eli Zaretskii for MS-Windows.
33605         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
33606         (LC_ALL): Set to C if the current locale isn't UTF-8.
33607         (.PHONY): Remove ediff_1 thru ediff_5.
33608         (check): Always run.
33610 2015-05-18  Glenn Morris  <rgm@gnu.org>
33612         * lisp/calculator.el (calculator-funcall):
33613         * lisp/textmodes/artist.el (artist-spray-random-points):
33614         Use standard degree/radian conversion utilities.
33616         Further lisp-complete-symbol related cleanup.
33617         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
33618         Unadvertise non-functional argument.  Replace obsolete alias.
33620 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
33622         Add a test case for Maven warning ouput
33623         * test/automated/compile-tests.el
33624         (compile-tests--test-regexps-data): Add a case for Maven warning
33625         ouput.
33626         (compile--test-error-line): Check the compilation message type, if
33627         it's specified in the test data.
33629 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
33631         Update Maven compilation-mode entry to distinguish warnings
33632         * lisp/progmodes/compile.el
33633         (compilation-error-regexp-alist-alist): Update Maven entry to
33634         distinguish warnings (bug#20556).
33636 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
33638         * test/automated/sgml-mode-tests.el: New file.
33640 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
33642         Improve handling of the first Git revision
33643         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
33644         there's no next entry, delete until the end of the buffer.
33645         (log-view-end-of-defun-1): Stop at eob.
33646         * lisp/vc/vc-annotate.el
33647         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
33648         when previous-revision is nil.
33649         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
33650         with `--' to avoid ambiguity.
33651         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
33652         returned revision string.
33653         (vc-git-annotate-time): Expect `^' before the first revision.
33654         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
33655         REV1 is nil, and REV2 is not.
33656         * lisp/vc/vc.el: Update the description of the `diff' function.
33658 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
33660         Allow checkdoc to be called in batch
33661         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
33662         is non-nil, echo the error with `warn'.
33663         How it can be used in -batch:
33664         (with-current-buffer (find-file "checkdoc.el")
33665           (checkdoc-current-buffer t))
33667 2015-05-18  Glenn Morris  <rgm@gnu.org>
33669         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
33671 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
33673         * admin/notes/unicode: New section "binary files".
33675         Change new etags test to use UTF-8 encoding
33676         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
33677         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
33678         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
33679         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
33680         * test/etags/html-src/softwarelibero.html:
33681         Switch to UTF-8 encoding.
33682         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
33683         Remove Makefile, as it's too incestuous to have the test input
33684         include the build procedure.
33685         (UTF8_LOCALE, UTF_ENCODING): New macros.
33686         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
33687         (check): Skip if not UTF-8.
33688         (.PHONY): New rule.
33689         (FRC): Remove, as superseded by .PHONY.  All uses removed.
33690         (regexfile): Prefer printf to echo when outputting oddball chars.
33691         (.PRECIOUS): Remove, as these files are not built.
33693         Rename 'foo-gzipped' to 'foo.gz'
33694         * test/automated/data/decompress/foo.gz:
33695         Rename from test/automated/data/decompress/foo-gzipped,
33696         to make it easier for other tools to tell that it's compressed.
33697         * test/automated/zlib-tests.el (zlib--decompress):
33698         Adjust to renamed file.
33700 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
33702         Set up default-directory
33703         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
33704         binding for `v'.
33705         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
33706         appropriate value for default-directory.
33708 2015-05-17  Samer Masterson  <samer@samertm.com>
33710         * lisp/eshell/em-term.el (eshell-term-sentinel):
33711         No-op by default, only kills term buffer if
33712         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
33713         (eshell-destroy-buffer-when-process-dies): New custom to preserve
33714         previous behavior.
33716         eshell: Introduce new buffer syntax
33717         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
33718         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
33719         needed (Bug#19319).
33720         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
33721         (eshell-get-target): Remove shorthand-specific code.
33722         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
33723         '#<buffer-name>'.
33725 2015-05-17  Jan D  <jan.h.d@swipnet.se>
33727         Merge branch 'master' into cairo
33729 2015-04-26  Jan D  <jan.h.d@swipnet.se>
33731         Merge branch 'master' into cairo
33733         Add PBM support for cairo
33734         * src/image.c (xcolor_to_argb32): New function.
33735         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
33736         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
33737         XImagePtr if ! USE_CAIRO.
33738         (pbm_load): Add cairo support.
33740 2015-04-12  Jan D  <jan.h.d@swipnet.se>
33742         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
33743         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
33744         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
33745         x_free_cr_resources.
33747         Handle specified bg in images.  Use generic libpng code for PNGs.
33748         * src/image.c (get_spec_bg_or_alpha_as_argb)
33749         (create_cairo_image_surface): New functions when USE_CAIRO.
33750         (xpm_load): Call the above functions.  Handle XPM without mask
33751         when USE_CAIRO.
33752         (png_load_body): Handle USE_CAIRO case.
33753         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
33754         instead.
33755         (jpeg_load_body): Call create_cairo_image_surface.
33756         (gif_load, svg_load_image): Handle specified background, call
33757         create_cairo_image_surface.
33758         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
33760 2015-04-11  Jan D  <jan.h.d@swipnet.se>
33762         Support GIF and TIFF with cairo
33763         * configure.ac: Allow jpeg with cairo.
33764         Allow tiff and gif with cairo.
33765         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
33766         (tiff_load): Create cairo image surface if USE_CAIRO.
33767         (gif_load): Ditto.
33769         Support JPEG with USE_CAIRO
33770         * configure.ac: Allow jpeg with cairo.
33771         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
33773 2015-04-05  Jan D  <jan.h.d@swipnet.se>
33775         Support RSVG and cairo
33776         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
33777         * src/dispextern.h (struct image): Add cr_data2 if cairo.
33778         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
33779         (x_clear_image): Free cr_data and cr_data2 if set.
33780         (xpm_load): Assign data to cr_data2.
33781         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
33783 2015-04-03  Jan D  <jan.h.d@swipnet.se>
33785         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
33786         * configure.ac (HAVE_RSVG): Move after cairo.
33787         (USE_CAIRO): Disable rsvg, don't disable Xpm.
33788         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
33789         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
33790         don't return early.
33791         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
33792         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
33793         and create a surface.
33795         Tool tips for menus did not show any text.
33796         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
33797         tip frames, the geometry may be wrong.
33799         Merge branch 'master' into cairo, fixes tooltips not shown.
33801         Merge branch 'master' into cairo
33803         Add CAIRO_CFLAGS to lwlib/Makefile.in
33804         * Makefile.in (CAIRO_CFLAGS): Add.
33806 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33808         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
33810 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33812         Draw outermost line using black relief and erase corners also for cairo.
33813         * src/xterm.c [USE_CAIRO]: Include math.h.
33814         (enum corners) [USE_CAIRO]: New enum.
33815         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
33816         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
33817         than 1, draw the outermost line using the black relief.
33819         * src/xterm.c (x_fill_trapezoid_for_relief):
33820         Remove unnecessary cairo_close_path.
33822 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33824         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
33826         * src/xterm.c (x_draw_stretch_glyph_string):
33827         Call x_reset_clip_rectangles instead of XSetClipMask.
33829         Use int instead of unsigned int for width and height args.
33830         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
33831         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
33832         width and height args.
33834         Modernize k&r cairo-related function declarations.
33835         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
33836         (xg_print_frames_dialog): Modernize k&r declarations.
33837         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
33838         (Fx_print_frames_dialog): Modernize k&r declarations.
33839         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
33840         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
33841         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
33842         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
33843         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
33844         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
33845         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
33846         (x_clear_area): Modernize k&r declarations.
33848         Implement wave-style variant of underlining for cairo.
33849         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
33850         (x_draw_underwave) [USE_CAIRO]: Use it.
33852         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
33853         instead of XFillRectangle.
33855 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33857         Fix fringe bitmap initialization for cairo
33858         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
33859         data for cairo image surface.
33860         * src/xterm.c (x_cr_define_fringe_bitmap):
33861         Call cairo_surface_mark_dirty.
33863 2015-02-11  Jan D  <jan.h.d@swipnet.se>
33865         Add cairo drawing
33866         * configure.ac (with-cairo): New option.
33867         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
33868         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
33869         Output "Does Emacs use cairo?".
33870         * lisp/version.el (emacs-version): Add cairo version.
33871         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
33872         (FONT_OBJ): Add comment about ftcrfont.
33873         (ALL_CFLAGS): Add CAIRO_CFLAGS.
33874         (LIBES): Add CAIRO_LIBS.
33875         * src/dispextern.h (struct image): Add cr_data for cairo.
33876         (x_cr_init_fringe): Declare.
33877         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
33878         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
33879         * src/fringe.c (x_cr_init_fringe): New function name that shares code
33880         with w32_init_fringe.
33881         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
33882         * src/ftfont.c (ftfont_info_size); New global variable.
33883         (ftfont_open2): New extern function almost the same as old ftfont_open,
33884         but takes the font_object as argument.
33885         (ftfont_open): Build font object and call ftfont_open2.
33886         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
33887         * src/gtkutil.c (xg_clear_under_internal_border)
33888         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
33889         Only queue_draw if not cairo.  Change args to x_clear_area.
33890         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
33891         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
33892         (xg_print_frames_dialog): New functions for printing.
33893         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
33894         (xg_print_frames_dialog): Declare.
33895         * src/image.c: Add defined (USE_CAIRO) for PNG.
33896         Add !defined USE_CAIRO for W32 PNG code.
33897         (x_clear_image): If cairo, destroy the surface in cr_data.
33898         (png_load): Add new cairo compatible implementation.
33899         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
33900         * src/xfns.c: New section Printing.
33901         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
33902         (x-print-frames-dialog): New printing functions.
33903         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
33904         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
33905         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
33906         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
33907         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
33908         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
33909         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
33910         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
33911         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
33912         Declare.
33913         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
33914         (max_fringe_bmp, fringe_bmp): New variables.
33915         (x_gc_get_ext_data, x_extension_initialize)
33916         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
33917         (x_set_cr_source_with_gc_foreground)
33918         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
33919         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
33920         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
33921         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
33922         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
33923         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
33924         (x_update_begin): Create cairo surface if needed.
33925         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
33926         (x_update_end): Paint cairo drawing surface to xlib surface.
33927         (x_clear_under_internal_border, x_after_update_window_line): Adjust
33928         arguments to x_clear_area.
33929         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
33930         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
33931         of XSetClipMask.
33932         (x_set_glyph_string_clipping)
33933         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
33934         instead of XSetClipRectangles.
33935         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
33936         Use x_fill_rectangle instead of XFillRectangle.
33937         (x_draw_glyph_string_foreground)
33938         (x_draw_composite_glyph_string_foreground)
33939         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
33940         instead of XDrawRectangle.
33941         (x_draw_relief_rect): Add code for USE_CAIRO.
33942         Call x_reset_clip_rectangles instead of XSetClipMask.
33943         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
33944         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
33945         instead of XSetClipMask.
33946         (x_draw_image_foreground, x_draw_image_foreground_1):
33947         x_draw_rectangle instead of XDrawRectangle.
33948         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
33949         XFillRectangle.
33950         (x_draw_image_glyph_string): If img has cr_data, use it as
33951         a cairo surface.
33952         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
33953         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
33954         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
33955         x_reset_clip_rectangles instead of XSetClipMask.
33956         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
33957         (x_clear_area1): New function that calls XClearArea.
33958         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
33959         non-cairo.
33960         (x_clear_frame): x_clear_window instead of XClearWindow.
33961         (x_scroll_run): Set frame garbaged if cairo.
33962         (XTmouse_position): Initialize *part to 0.
33963         (x_scroll_bar_create): Adjust arguments to x_clear_area.
33964         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
33965         x_fill_rectangle instead of XFillRectangle.
33966         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
33967         arguments to x_clear_area.
33968         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
33969         (handle_one_xevent): Adjust arguments to x_clear_area.
33970         Destroy cairo surface for frame if ConfigureNotify.
33971         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
33972         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
33973         x_reset_clip_rectangles instead of XSetClipMask.
33974         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
33975         x_reset_clip_rectangles instead of XSetClipMask.
33976         (x_clear_frame_area): Adjust arguments to x_clear_area.
33977         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
33978         (x_term_init): Call x_extension_initialize if cairo.
33979         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
33980         x_cr_destroy_fringe_bitmap for cairo.
33981         (x_initialize): Call x_cr_init_fringe for cairo.
33982         * src/xterm.h: Add include of cairo header files.
33983         (x_bitmap_record): Add img if cairo.
33984         (x_gc_ext_data): New struct for cairo.
33985         (x_display_info): Add ext_codes for cairo.
33986         (x_output): Add cr_context and cr_surface for cairo.
33987         (x_clear_area): Change arguments from Display*/Window to frame pointer.
33988         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
33989         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
33990         (x_cr_draw_frame, x_cr_export_frames): Declare.
33992 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
33994         Fix integer-valued `mouse-highlight' (Bug#20590)
33995         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
33997 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
33999         MS-Windows followup for ASCIIfication of curved quotes
34000         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
34001         test for curved quotes being displayable, after switching the
34002         terminal encoding.  (Bug#20545)
34004 2015-05-17  Jan D  <jan.h.d@swipnet.se>
34006         Add comment that x_shift_glyphs_for_insert is never called
34007         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
34008         Add comment that this function is never called.
34010 2015-05-16  Glenn Morris  <rgm@gnu.org>
34012         * src/lisp.mk: Remove from repository and generate at build-time.
34013         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
34014         (shortlisp_filter): New variable.
34015         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
34016         (distclean): Remove lisp.mk.
34017         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
34018         * lisp/loadup.el: Tweak layout to make it easier to parse.
34019         * make-dist: Do not distribute src/lisp.mk.
34021 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
34023         Display shorter dates in Git annotate output
34024         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
34025         format (when not overridden with vc-git-annotate-switches).
34026         (vc-git-annotate-time): Support the short format, as well as ISO
34027         8601 that has been used until now (bug#5428).
34029 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
34031         ASCIIfy curved quotes on displays lacking them
34032         * lisp/international/mule-cmds.el (set-locale-environment):
34033         If curved quotes don't work, display straight ASCII approximations
34034         (Bug#20545).
34036 2015-05-16  Glenn Morris  <rgm@gnu.org>
34038         Small src/Makefile simplification
34039         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
34040         * src/Makefile.in (lisp): Derive from shortlisp.
34041         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
34043 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
34045         * lisp/help-mode.el (help-go-forward): Doc fix.
34046         (Bug#20577)
34048         * doc/lispref/debugging.texi (Profiling): Improve indexing.
34049         (Bug#20576)
34051 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
34053         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
34054         have one fewer `not'.
34056         * lisp/vc/vc-git.el (vc-git-diff-switches)
34057         (vc-git-annotate-switches, vc-git-resolve-conflicts)
34058         (vc-git-program, vc-git-root-log-format): Remove the redundant
34059         :group declarations.
34061 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
34063         Removes the predicate from lisp-complete-symbol (Bug#20456)
34064         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
34065         and remove it from the docstring.
34067 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
34069         Add new option vc-git-resolve-conflicts
34070         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
34071         (vc-git-find-file-hook): Add to after-save-hook only when the
34072         above is non-nil.
34073         (vc-git-resolve-when-done): Update to honor the new variable.
34074         (Bug#20292)
34076 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
34078         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
34079         (tabulated-list-init-header): Document new behavior.
34080         (tabulated-list-print-fake-header): Do nothing if
34081         `tabulated-list--header-string' is nil.
34082         (tabulated-list--header-string): Add a docstring.
34083         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
34084         * etc/NEWS: Document it.
34086 2015-05-15  Leo Liu  <sdl.web@gmail.com>
34088         Revert "Fix cps--gensym"
34089         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
34090         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
34092 2015-05-15  Glenn Morris  <rgm@gnu.org>
34094         Replace AC_SUBST_FILE in configure with include in Makefiles
34095         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
34096         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
34097         (AUTO_DEPEND): New output variable.
34098         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
34099         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
34100         (lwlib_deps_frag): Replace by conditional include.
34101         * lwlib/autodeps.mk: Remove file.
34102         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
34103         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
34104         (oldxmenu_deps_frag): Replace by conditional include.
34105         * oldXMenu/autodeps.mk: Remove file.
34106         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
34107         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
34108         (lisp_frag): Replace by an include.
34109         (deps_frag): Replace by conditional include.
34110         * src/autodeps.mk: Remove file.
34112         Tweak japanese.el's loading of dependencies
34113         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
34114         * lisp/language/japanese.el: Use require rather than load.
34115         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
34116         Provide a feature.
34117         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
34118         Provide a feature in the generated file.
34120 2015-05-15  Jan D  <jan.h.d@swipnet.se>
34122         Fix NS warnings
34123         * src/nsmenu.m (ns_popup_dialog)
34124         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
34125         * src/nsfns.m (Fx_create_frame): Remove unused variables.
34126         (Fns_read_file_name): Initialize fname, remove ret.
34127         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
34128         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
34129         Remove unused variable.
34130         (init): Add parantesis in if.
34131         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
34133 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
34135         Fix a enum conversion warning in macfont.m
34136         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
34137         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
34139 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
34141         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
34142         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
34144 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
34146         * lisp/cus-start.el: Add ns-confirm-quit.
34148         Fix warnings on OSX 10.10
34149         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
34150         OSX versions.
34151         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
34152         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
34153         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
34154         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
34155         setScalesWhenResized for OSX < 10.6.
34156         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
34157         * src/nsterm.m (ns_copy_bits): New function that does not use
34158         deprecated NSCopyBits.
34159         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
34160         (runAlertPanel): New function.
34161         (applicationShouldTerminate:): Call runAlertPanel.
34162         (initFrameFromEmacs, toggleFullScreen:): Only call
34163         useOptimizedDrawing for OSX < 10.10.
34164         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
34165         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
34166         (draggingEntered:): Returns NSDragOperation.
34167         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
34169 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
34171         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
34172         (package--init-file-ensured): New variable.
34173         (package-initialize, package--ensure-init-file): Use it.
34175 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
34177         Honor :fore/background for XBM on NS (Bug#14969)
34178         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
34179         initFromXBM takes bg, fg args, remove flip arg.
34180         (ns_image_from_XBM): Add bg, fg args.
34181         * src/image.c (x_create_bitmap_from_data)
34182         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
34183         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
34184         initFromXBM.  Remove flip arg.
34185         (initFromSkipXBM): Move code to initFromXBM.
34186         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
34187         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
34188         always false.
34189         Remove bit flipping (bitPat, swt), generated incorrect images when
34190         width/height wasn't a multiple of 8.
34191         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
34192         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
34193         remove flip arg.
34195 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
34197         * lisp/emacs-lisp/package.el: Be more careful with the init file.
34198         (package--ensure-init-file): Check that user-init-file is set,
34199         exists, is readable, and is writable.  (Bug#20584)
34200         Also expand the docstring.
34202 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
34204         Sync with upstream verilog-mode revision 6232468
34205         * lisp/progmodes/verilog-mode.el
34206         (verilog-font-lock-grouping-keywords-face)
34207         (verilog-highlight-grouping-keywords): Fix use of face when
34208         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
34209         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
34210         parent is reset, bug906.  Reported by Ken Schmidt.
34211         (verilog-auto-inout-module): Add fourth regexp argument to
34212         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
34213         Reported by John Tillema.
34214         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
34215         modport if signal attachment is itself a modport.  Reported by
34216         Matthew Lovell.
34217         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
34218         always_comb and always_latch, bug844.  Reported by Greg Hilton.
34219         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
34220         with many curly-bracket pairs, bug663.
34221         (verilog-set-auto-endcomments): Fix end comments for functions of
34222         type void, etc.  Reported by Alex Reed.
34223         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
34224         caused by indent-line-to deleting tabls pre 24.5.
34225         (verilog-nameable-item-re): Fix nameable items that can have an
34226         end-identifier to include endchecker, endgroup, endprogram,
34227         endproperty, and endsequence.  Reported by Alex Reed.
34228         (verilog-label-be): When auto-commenting a buffer, consider
34229         auto-comments on all known keywords (not just a subset thereof).
34230         Reported by Alex Reed.
34231         (verilog-auto-end-comment-lines-re)
34232         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
34233         Automatically comment property/endproperty blocks to match other
34234         similar blocks like sequence/endsequence, function/endfunction, etc.
34235         Reported by Alex Reed.
34236         (verilog-set-auto-endcomments): Detect the function- or task-name
34237         when auto-commenting blocks that lack an explicit portlist.
34238         Reported by Alex Reed.
34239         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
34240         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
34241         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
34242         is nil, fix indenting initial/final to match always statements,
34243         bug825.  Reported by Tim Clapp.
34244         (verilog-extended-complete-re): Fix indentation of DPI-C imports
34245         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
34246         Mao and Jason Forkey.
34247         (verilog-read-decls): Fix parsing typed interfaces.  Fix
34248         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
34249         Fix localparam not being ignored in AUTOINSTPARAM,
34250         bug889.  Reported by Shannon Hill.
34251         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
34252         bug793.  Reported by Pierre-David Pfister.
34253         (verilog-auto-arg-format, verilog-auto-arg-ports):
34254         Add verilog-auto-arg-format to support newlines in AUTOARG.
34255         Reported by Jie Xiao.
34256         (verilog-batch-execute-func): Do not batch re-auto files loaded by
34257         Local Variables.  Fix printing "no changes to be saved" with
34258         verilog-batch.  Reported by Dan Dever.
34259         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
34260         interface-only modules, bug721.  Reported by Dean Hoyt.
34261         Author: Alex Reed <acreed4@gmail.com>
34262         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
34263         Don't treat '<keyword>:<identifier>' as the start of a labeled
34264         statement, bug905.  Reported by Enzo Chi.
34265         (verilog-directive-re, verilog-compiler-directives)
34266         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
34267         directives (plus some extras) when determining indentation, bug
34268         901.  Reported by Bernd Beuster.
34269         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
34270         iff expression doesn't start with word-character, bug900.
34271         (verilog-optional-signed-range-re, verilog-optional-signed-re):
34272         Fix incorrect indentation/alignment of unsigned declarations,
34273         bug897.
34274         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
34275         always constructs, bug895.
34276         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
34277         Reported by Eric Mastromarchi.
34278         (verilog-beg-of-statement): Fix indenting for some forms of
34279         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
34280         continued assignment incorrect if first line ends with ']', bug437.
34281         Reported by Dan Dever.  Fix indention of cover inside an
34282         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
34283         blocks, bug842.
34284         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
34285         Reported by Kaushal Modi.
34286         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
34287         (verilog-backward-token): Fix indenting sensitivity lists with
34288         named events, bug840.  Reed.
34289         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
34290         nil not honoring 'forever', 'foreach', and 'do' keywords.
34292 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
34294         Check for invalid GTK+ monitor scales
34295         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
34296         INT_MAX for too-large scales.  All callers changed to assume the
34297         result is valid (Bug#20432).
34298         (xg_frame_set_char_size, xg_update_scrollbar_pos):
34299         Calculate scale only if needed.
34300         Show ASCII approximations instead.
34302 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
34304         Fix daemon crashes when linum-mode is turned on early on
34305         * src/window.c (Fwindow_end): Don't try calling display engine
34306         functions on initial-frame frame.  (Bug#20565)
34308         Fix selective diff browsing in Ediff
34309         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
34310         Go to the beginning of the region before searching for the
34311         ediff-regexp-focus-* regexps.  (Bug#20568)
34313 2015-05-14  Jan D  <jan.h.d@swipnet.se>
34315         Fixes bug#20142
34316         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
34317         arrive in the main loop, even for Gtk 3 (Bug#20142).
34319         Don't access display after i/o error (Bug#19147).
34320         * src/xterm.c (x_connection_closed): Add third arg ioerror.
34321         If ioerror, set display to 0 (Bug#19147).
34322         (x_error_quitter): Call x_connection_closed with third arg false.
34323         (x_io_error_quitter): Call x_connection_closed with third arg true.
34325         Handle GTK_SCALE, fixes Bug#20432.
34326         * src/gtkutil.c (xg_get_gdk_scale): New function.
34327         (xg_frame_set_char_size)
34328         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
34329         (xg_get_default_scrollbar_height)
34330         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
34331         when setting sizes (Bug#20432).
34333 2015-05-13  Leo Liu  <sdl.web@gmail.com>
34335         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
34337 2015-05-13  Glenn Morris  <rgm@gnu.org>
34339         Fix bootstrap (void function cl-member).
34340         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
34341         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
34343 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34345         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
34346         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
34347         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
34348         Avoid defalias for closures which are not immutable.
34349         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
34350         the dispatchers table with various entries.
34351         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
34352         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
34354 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
34356         Improve tagging of C bindings in DEFVAR_*
34357         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
34358         from DEFVAR_*.
34360 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
34362         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
34364 2015-05-12  Glenn Morris  <rgm@gnu.org>
34366         * lisp/progmodes/tcl.el (tcl-filter):
34367         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
34369         Add basic VC push support
34370         * lisp/vc/vc.el (vc-push): New autoloaded command.
34371         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
34372         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
34373         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
34374         (vc-bzr-push): New.
34375         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
34376         (vc-git-pull): Reimplement using vc-git--pushpull.
34377         (vc-git-push): New.
34378         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
34379         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
34380         * doc/emacs/maintaining.texi (Pulling / Pushing):
34381         Rename from "VC Pull".  Mention pushing.
34382         (VC With A Merging VCS, VC Change Log): Update xrefs.
34383         (Branches): Update menu.
34384         * doc/emacs/emacs.texi: Update menu.
34385         * etc/NEWS: Mention this.
34387 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
34389         Improve the seq pcase pattern and the `seq-let' macro
34390         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
34391         object is a sequence, and binds each element of ARGS to the
34392         corresponding element of the sequence.
34394 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
34396         Fix tags created from DEFVAR_* declarations in C
34397         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
34398         to make tags extracted from DEFVAR_* declarations more accurate.
34400         Add a test suite for etags
34401         * test/etags/: New test suite, adapted from
34402         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
34403         whose original author is Francesco Potortì <pot@gnu.org>.
34405         Fix tagging of symbols in C enumerations
34406         * lib-src/etags.c (consider_token): Don't tag symbols in
34407         expressions that assign values to enum constants.  See
34408         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
34409         for details.
34410         (C_entries): Reset fvdef to fvnone after processing a preprocessor
34411         conditional and after a comma outside of parentheses.
34413 2015-05-12  Glenn Morris  <rgm@gnu.org>
34415         * lisp/url/url-handlers.el (url-file-name-completion)
34416         (url-file-name-all-completions): Silence compiler.
34418         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
34420         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
34422 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
34424         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
34425         (cl--generic-mandatory-args): Remove.
34426         (cl--generic-split-args): New function.
34427         (cl-generic-define, cl--generic-lambda): Use it.
34428         (cl-generic-define-method): Use it as well, and add support for
34429         context args.
34430         (cl--generic-get-dispatcher): Handle &context dispatch.
34431         (cl--generic-cache-miss): `dispatch-arg' can now be a
34432         context expression.
34433         (cl--generic-dispatchers): Pre-fill.
34434         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
34435         New test.
34437 2015-05-11  Glenn Morris  <rgm@gnu.org>
34439         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
34441 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
34443         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
34444         * lisp/term/rxvt.el: Require term/xterm.
34445         (rxvt-function-map): Use xterm-rxvt-function-map.
34446         (rxvt-standard-colors): Move before first use.
34447         (terminal-init-rxvt): Use xterm--push-map and
34448         xterm-register-default-colors.
34449         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
34450         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
34451         Move shared bindings between rxvt and xterm to it.
34452         (xterm-function-map): Use it.  Move the xterm-paste binding to
34453         xterm-rxvt-function-map (bug#20444).
34454         (xterm-standard-colors): Move before first use.
34455         (xterm--push-map): New function.
34456         (xterm-register-default-colors): Take standard colors as argument.
34457         (terminal-init-xterm): Use it.  Adjust call to
34458         xterm-register-default-colors.
34460 2015-05-11  Glenn Morris  <rgm@gnu.org>
34462         * lisp/term/x-win.el: Quieten --without-x compilation.
34463         (x-own-selection-internal, x-disown-selection-internal)
34464         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
34465         Declare.
34467         * Makefile.in (emacslog): Remove srcdir.
34468         (ChangeLog): Update for the above.
34470 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
34472         python.el: better limit for looking-back calls
34473         * lisp/progmodes/python.el (python-shell-accept-process-output):
34474         Use last comint prompt start as limit for looking-back.
34476 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
34478         CEDET (srecode-insert-fcn): Fix use of oref on a class
34479         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
34480         on a class.  Reported by Pierre Lorenzon.
34481         (srecode-template-inserter-point): Remove declaration.
34483         CEDET (srecode-create-dictionary): Avoid obsolete object name
34484         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
34485         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
34487 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
34489         C-x 8 shorthands for curved quotes, Euro, etc.
34490         Although C-x 8 lets you insert arbitrary Unicode characters,
34491         it's awkward to use this to insert commonly used symbols such as curved
34492         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
34493         characters commonly found in English text and in basic math.
34494         For example, assuming the Alt key works on your keyboard and iso-transl
34495         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
34496         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
34497         (Bug#20499)
34498         * doc/emacs/mule.texi (Unibyte Mode):
34499         A few other printing characters now work too.
34500         * etc/NEWS: Document this.
34501         * lisp/international/iso-transl.el (iso-transl-char-map):
34502         Also support the following characters:
34503         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
34505 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
34507         Add xref-find-regexp
34508         * lisp/progmodes/xref.el (xref-find-function): Describe the
34509         `matches' action.
34510         (xref-find-regexp): New command, using it.
34511         (xref-collect-references): Rename to xref-collect-matches.
34512         (xref--collect-reference): Rename to xref--collect-match.
34513         (xref-collect-matches, xref--collect-match): Accept new argument,
34514         KIND.  Update accordingly.
34515         (xref--regexp-to-extended): New function.
34516         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
34517         `matches' action.
34518         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
34519         * lisp/progmodes/etags.el (etags-xref-find):
34520         Support the `matches' action.
34521         (etags--xref-find-matches): New function.
34523 2015-05-10  Glenn Morris  <rgm@gnu.org>
34525         * Makefile.in: Fixes for recent change-history changes.
34526         (change-history-nocommit): Update footer regexp.
34527         Ensure output script stays executable.
34529 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
34531         New version of `seq-let' based on a pcase pattern
34532         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
34533         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
34535 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
34537         Add basic HTML5 tags and a template
34538         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
34539         (html-tag-alist): Add HTML5 tags.
34540         (html-tag-help): Add new tags descriptions.
34541         (html-navigational-links): Template for nav links.
34542         (html-html5-template): Template for a HTML5 page.
34544 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
34546         semantic/symref/grep: Don't use word boundaries
34547         * lisp/cedet/semantic/symref/grep.el
34548         (semantic-symref-perform-search): Instead of wrapping input in
34549         word boundaries, check that the characters before and after are
34550         not word constituents.
34552         semantic/symref/grep: Support regexp search
34553         * lisp/cedet/semantic/symref.el
34554         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
34555         the search type is regexp.
34556         * lisp/cedet/semantic/symref/grep.el
34557         (semantic-symref-perform-search): Support the regexp search type.
34558         Pass -E to Grep when it's used.
34560         semantic-symref-regexp: Allow to input an arbitrary string
34561         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
34562         Allow to input an arbitrary string interactively.
34564         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
34565         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
34566         Remove tag-symbol-match-p from the default value
34567         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
34569         Declare find-tag obsolete
34570         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
34571         xref-find-definitions.
34573 2015-05-10  Jan D  <jan.h.d@swipnet.se>
34575         Draw composite string correctly (Bug#20537)
34576         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
34577         New function.
34578         (ns_draw_glyph_string): Call it.
34580 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
34582         Avoid infloop in ERC
34583         * lisp/simple.el (line-move-to-column): Ignore field boundaries
34584         while computing line beginning position.  (Bug#20498)
34586 2015-05-08  Glenn Morris  <rgm@gnu.org>
34588         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
34589         * build-aux/gitlog-to-emacslog: Check called from right directory.
34590         (srcprefix): Remove.
34592         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
34593         * Makefile.in (ChangeLog): No longer pass "distprefix".
34594         * make-dist: Update "make ChangeLog" syntax for the above change.
34596         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
34597         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
34599         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
34601         Add command-line option-parsing to gitlog-to-emacslog
34602         * build-aux/gitlog-to-emacslog: Add command-line options.
34603         By default, refuse to remove an existing output file.
34604         * Makefile.in (CHANGELOG): Update default.
34605         (ChangeLog): Do not test for existing file.
34606         (change-history-nocommit): Ensure temp file does not exist.
34608         Quieten --without-x compilation
34609         * lisp/term/common-win.el: Provide a feature.
34610         * lisp/term/x-win.el (term/common-win): Require it.
34612         * lisp/dired-aux.el (dired-do-print): Require lpr.
34614         Quieten compilation, eg in --without-x builds
34615         * lisp/dired-aux.el (lpr-printer-switch):
34616         * lisp/frame.el (tool-bar-height):
34617         * lisp/linum.el (font-info):
34618         * lisp/window.el (font-info, overflow-newline-into-fringe)
34619         (tool-bar-height):
34620         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
34621         * lisp/gnus/gnus-util.el (iswitchb-mode):
34622         * lisp/mail/rmailmm.el (libxml-parse-html-region):
34623         * lisp/net/nsm.el (gnutls-peer-status)
34624         (gnutls-peer-status-warning-describe):
34625         * lisp/net/shr.el (libxml-parse-xml-region):
34626         * lisp/url/url-http.el (gnutls-peer-status): Declare.
34628 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
34630         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
34631         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
34632         `subclass' since they're never called with a class.
34633         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
34634         srecode-dictionary-child-p.
34636 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
34638         * lisp/help.el (help--binding-locus): Document argument POSITION.
34639         (Bug#20530)
34641 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
34643         Merge from gnulib
34644         * doc/misc/texinfo.tex: Get latest version.
34646 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
34648         ffap.el (ffap-read-file-or-url): Fix completing-read call
34649         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
34650         `completing-read' should be a symbol.
34652 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
34654         Verify file modifications by other programs
34655         * src/filelock.c (lock_file): Check whether the file was modified
34656         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
34658         Fix keyboard macros that include function keys
34659         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
34660         keys in the macro before returning.  (Bug#20454)
34662 2015-05-08  Glenn Morris  <rgm@gnu.org>
34664         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
34665         "Copyright-paperwork-exempt".  (Bug#20324)
34667         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
34668         (log-edit-rewrite-tiny-change): New variable.
34669         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
34670         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
34671         * etc/NEWS: Mention this.
34673         * lisp/calc/calc.el (math-zerop): Declare.
34675         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
34677 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
34679         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
34680         Support the case when BINDINGS is a single tuple.  (Bug#20525)
34682         * etc/NEWS: Fix typo in previous commit
34683         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
34685 2015-05-07  Jan D  <jan.h.d@swipnet.se>
34687         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
34688         Output URL to Gtk+ bug (Bug#20452).
34690         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
34692 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
34694         * lisp/emacs-lisp/package.el: New "external" package status.
34695         An external package is any installed package that's not built-in
34696         and not from `package-user-dir', which usually means it's from an
34697         entry in `package-directory-list'.  They are treated much like
34698         built-in packages, in that they cannot be through the Package Menu
34699         deleted and are not considered for upgrades.
34700         (package-desc-status): Identify if a package is installed outside
34701         `package-user-dir'.
34702         (package-menu--print-info-simple)
34703         (package-menu--status-predicate): Add support for it.
34704         * etc/NEWS: Document it.
34706 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
34708         * lisp/mail/rmail.el: Use lexical-binding.
34709         (rmail-bury): Remove unused var `buffer-to-bury'.
34710         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
34711         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
34712         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
34713         (rmail-insert-inbox-text): Remove unused var `movemail'.
34714         (rmail-add-mbox-headers): Remove unused var `limit'.
34715         (rmail-undelete-previous-message): Remove unused var `value'.
34716         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
34717         `resent-reply-to'.
34718         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
34719         (rmail-restore-desktop-buffer): Rename arguments.
34721 2015-05-06  Glenn Morris  <rgm@gnu.org>
34723         * Makefile.in (change-history-commit): Add missing piece of previous.
34725         Avoid unnecessary bumping of Makefile.in's timestamp
34726         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
34727         (emacslog): New variable.
34728         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
34729         (unchanged-history-files): Use $emacslog rather than Makefile.in.
34730         (change-history-nocommit): Store hash in $emacslog.
34731         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
34732         * admin/update_autogen (changelog_files): Update for the above.
34734         * Makefile.in: Don't always insist on removing existing "ChangeLog".
34735         (CHANGELOG): New variable.
34736         (no-ChangeLog): Remove.
34737         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
34738         (change-history-nocommit): Use a temp file rather than insisting
34739         on deletion of any existing "ChangeLog".
34741         * build-aux/gitlog-to-emacslog: Allow specification of output.
34743         * admin/update_autogen: Add option to update ChangeLog.
34744         (usage): Mention -H.
34745         (changelog_flag, changelog_n, changelog_files): New variables.
34746         (main): Check for -H, and maybe run change-history-nocommit.
34748 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
34750         * lisp/subr.el (delete-dups): Pre-size the hashtable.
34752         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
34753         cl--arglist-args is defined (bug#20517).
34755 2015-05-06  Glenn Morris  <rgm@gnu.org>
34757         * Makefile.in (change-history-nocommit): New.
34759 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
34761         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
34762         timer when it is non-nil
34763         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
34765 2015-05-06  Glenn Morris  <rgm@gnu.org>
34767         Quieten CEDET compilation
34768         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
34769         Invert fboundp test to quieten on current Emacs.
34770         * lisp/cedet/ede/config.el (ede-shell-run-something)
34771         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
34772         (semanticdb-refresh-table): Declare.
34773         (ede-preprocessor-map): Require semantic/db.
34775         Quieten cc-mode compilation
34776         * lisp/progmodes/cc-awk.el (c-forward-sws):
34777         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
34778         Declare.
34780 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
34782         * lisp/subr.el (delete-dups): Avoid nreverse.
34784 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
34786         * lisp/subr.el (delete-dups): Make it destructive again.
34788 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
34790         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
34792 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
34794         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
34795         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
34796         (testcover--read): Rename from testcover-read.  Change calling
34797         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
34798         is gone.
34799         (testcover-start): Use add-function.  Move edebug-all-defs binding to
34800         testcover--read.
34801         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
34802         (testcover-mark): Remove unused var `item'.
34803         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
34805 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
34807         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
34808           use a hash table.  This can result in ~500 times speed-up for typical
34809           collections of size 5000, like that of `load-library'.
34811 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
34813         CEDET: Avoid `oref' on classes in a few more cases
34814         * lisp/cedet/ede/generic.el (ede-find-target):
34815         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
34816         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
34817         var `prefix'.
34819         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
34820         (grepflags, greppattern): Declare.
34821         (semantic-symref-perform-search): Remove unused var `pat'.
34823         CEDET (srecode-compile-inserter): Avoid `oref' on classes
34824         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
34825         Avoid `oref' on classes (bug#20491).
34826         (srecode-compile-split-code): Remove unused var `key'.
34828 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
34830         Clean up pulse.el a little
34831         * lisp/cedet/pulse.el (pulse): Remove.
34832         (pulse-momentary-timer): Save instead of the stop time.
34833         (pulse-momentary-highlight-overlay):
34834         Call pulse-momentary-unhighlight first thing.
34835         Treat pulse-momentary-overlay as a single value, not a list.
34836         Save the created timer.  Only pass the stop time to the timer.
34837         (pulse-tick): Update accordingly.
34838         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
34839         single value.  Cancel the timer.
34841 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
34843         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
34844         Support the biblatex journaltitle field.
34846 2015-05-05  Glenn Morris  <rgm@gnu.org>
34848         Minor declare-function improvement
34849         * lisp/emacs-lisp/bytecomp.el
34850         (byte-compile-macroexpand-declare-function):
34851         Handle declarations after calls.  (Bug#20509)
34853         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
34855         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
34857 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
34859         Pulse using a timer
34860         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
34861         (pulse-momentary-highlight-overlay): Set up the timer instead of
34862         calling `pulse'
34863         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
34864         (pulse-tick): New function.
34865         (pulse-momentary-unhighlight): Cut off the stop time.
34866         (pulse-delay): Update the docstring WRT to not using sit-for.
34868         Add semantic/symref/grep file patterns for ruby-mode
34869         * lisp/cedet/semantic/symref/grep.el
34870         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
34871         Clarify the docstring.
34873         Don't require match
34874         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
34875         match.  That doesn't work for every command, and some identifier
34876         completion tables are bound to be imperfect anyway.
34878 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
34880         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
34881         (semantic-grammar--template-expand): New function.
34882         (semantic-grammar-header, semantic-grammar-footer): Use it.
34883         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
34884         (semantic-grammar-file-regexp): Refine regexp.
34885         (semantic-grammar-eldoc-get-macro-docstring):
34886         Use elisp-get-fnsym-args-string when available.
34887         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
34888         instead of the old eldoc-* names.
34889         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
34890         from elisp-mode.el.  Tweak calling convention.
34891         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
34892         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
34893         elisp--get-fnsym-args-string.
34894         (elisp--highlight-function-argument): Add `prefix' arg.
34895         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
34896         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
34898 2015-05-05  Glenn Morris  <rgm@gnu.org>
34900         * lisp/help-fns.el (describe-function-1):
34901         Handle builtins with advertised calling conventions.  (Bug#20479)
34903 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
34905         Merge branch 'seq-let'
34907         Update `seq-let' documentation
34908         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
34909         with the support of  `&rest'.
34911         Add support for &rest in `seq-let'
34912         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
34913         in the argument list.
34914         * test/automated/seq-tests.el: Add a test for parsing and binding
34915         `&rest' in `seq-let'.
34917 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
34919         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
34920         Add missing increment (Bug#20467).
34921         (eieio-object-value-create): Adjust to new slots representation
34922         (Bug#20467).
34923         (eieio-object-value-create): Fix missed adjustment to new
34924         representation of slots metadata.
34926 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
34928         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
34930 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
34932         Work around "Attempt to modify read-only object"
34933         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
34934         elisp--xref-find-definitions, to work around "Attempt to modify
34935         read-only object" error.
34937         Only skip some variables that have function counterparts
34938         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
34939         Only skip minor-mode-named variable if it's defined in a Lisp
34940         file, and it's in minor-mode-list (bug#20506).
34941         * test/automated/elisp-mode-tests.el
34942         (elisp-xref-finds-both-function-and-variable)
34943         (elisp-xref-finds-only-function-for-minor-mode): New tests.
34945 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
34947         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
34948         previous change.
34949         (xref--insert-xrefs): Buttonize the whole line, including the
34950         number at the beginning.
34952         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
34953         Make sure we're inside the let bindings.
34954         * test/automated/elisp-mode-tests.el
34955         (elisp-completes-functions-after-let-bindings): New test.
34957 2015-05-04  Glenn Morris  <rgm@gnu.org>
34959         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
34960         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
34961         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
34962         Remove outdated declarations.
34964         Replace instances of "(eval-when-compile (autoload ...))"
34965         * lisp/gnus/gnus-art.el (nneething-get-file-name):
34966         Declare rather than autoload.
34967         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
34968         Remove pointless autoload.
34969         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
34970         (gnus-topic-create-topic, gnus-topic-enter-dribble):
34971         Declare rather than autoload.
34972         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
34973         (mailcap-extension-to-mime): Autoload at run-time.
34974         * lisp/gnus/mm-util.el (latin-unity-massage-name)
34975         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
34976         (latin-unity-representations-present-region):
34977         Declare rather than autoload.
34978         * lisp/gnus/mml-smime.el (epg-make-context)
34979         (epg-passphrase-callback-function): Autoload at run-time.
34980         (epg-context-set-signers, epg-context-result-for)
34981         (epg-new-signature-digest-algorithm)
34982         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
34983         (epg-sign-string, epg-encrypt-string)
34984         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
34985         (epg-configuration, epg-expand-group, epa-select-keys):
34986         Declare rather than autoload.
34987         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
34988         Autoload at run-time.
34989         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
34990         (gnus-registry-get-id-key, gnus-registry-action):
34991         Declare rather than autoload.
34992         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
34993         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
34994         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
34995         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
34996         (spam-stat-split-fancy): Remove pointless autoloads.
34997         * lisp/net/mairix.el: Load gnus-util when compiling.
34998         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
34999         (message-field-value): Declare rather than autoload.
35000         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
35001         Check gnus-alive-p is fbound.
35002         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
35003         (vm-check-for-killed-summary, vm-error-if-folder-empty)
35004         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
35005         Declare rather than autoload.
35007         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
35009         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
35010         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
35012         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
35014         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
35016         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
35017         * lisp/emacs-lisp/package.el (epg-signature-status):
35018         Fix declarations.
35020         * lisp/play/gametree.el (gametree-show-children-and-entry)
35021         (gametree-apply-layout, gametree-mouse-show-subtree)
35022         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
35024         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
35025         Handle cl-defgeneric, cl-defmethod.
35027 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
35029         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
35030         Highlight both type and symbol name.
35032         Insert, highlight and align line numbers in xref output
35033         * lisp/progmodes/etags.el (xref-location-line): Specialize for
35034         xref-etags-location.
35035         * lisp/progmodes/xref.el (xref-location-line): New generic method.
35036         (xref-file-location): Add reader for the line slot.
35037         (xref--location-at-point): Skip to the `xref-location' property.
35038         (xref--collect-reference): Drop the line number from description.
35039         (xref--insert-xrefs): Insert, highlight and align line numbers.
35041 2015-05-04  Daniel Colascione  <dancol@dancol.org>
35043         * lisp/simple.el (save-mark-and-excursion--save)
35044         (save-mark-and-excursion--restore): Fix previous commit
35045         (255a011f0ecf004b31c59945b10154b10fac3af1).
35047 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
35049         Don't pulse the indentation, or the newline
35050         * lisp/cedet/pulse.el (pulse-lighten-highlight)
35051         (pulse-reset-face): Fall back to the inherited background
35052         attribute in FACE.
35053         (pulse-momentary-highlight-region): Add autoload cookie.
35054         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
35055         indentation, or the newline, if the line's non-empty
35056         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
35058 2015-05-04  Daniel Colascione  <dancol@dancol.org>
35060         Add `save-mark-and-excursion', which has the old
35061         `save-excursion' behavior
35062         * doc/lispref/positions.texi (Excursions):
35063         Document `save-mark-and-excursion'.
35064         * lisp/font-lock.el (font-lock-fontify-block):
35065         Use `save-mark-and-excursion' instead of `save-excursion',
35066         restoring Emacs 24 behavior.
35067         * lisp/simple.el (save-mark-and-excursion--save)
35068         (save-mark-and-excursion--restore): New functions.
35069         (save-mark-and-excursion): New user macro.
35070         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
35071         in `save-excursion' documentation.
35073 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
35075         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
35076         Classify lone symbol inside let varlist as variable.
35077         * test/automated/elisp-mode-tests.el
35078         (completest-variables-in-let-bindings): New test.
35080         Add xref-pulse-on-jump
35081         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
35082         Add autoload cookie.
35083         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
35084         (xref--maybe-pulse): New function.
35085         (xref-pop-marker-stack, xref--pop-to-location)
35086         (xref--display-position): Use it.
35087         (xref--location-at-point): Use back-to-indentation.
35089 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
35091         lisp/org/org-{macs,list}.el: Fix lexical warnings
35092         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
35093         (org-list-get-next-item, org-list-get-prev-item)
35094         (org-list-get-children): Mark unused arg `struct'.
35095         (org-list-use-alpha-bul-p): Remove unused var `bul'.
35096         (org-toggle-checkbox): Mark unused var.
35097         (org-update-checkbox-count): Remove unused var `box-num'.
35098         (org-adapt-indentation): Declare.
35099         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
35100         (org-list-send-list): Remove unused var `txt'.
35101         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
35102         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
35103         * lisp/org/org-macs.el: Use `declare'.
35104         (org-with-limited-levels): Declare dyn-bound vars.
35106 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
35108         Fix minor issues with CEDET on MS-Windows
35109         * lisp/cedet/semantic/symref/idutils.el
35110         (semantic-symref-parse-tool-output-one-line): Fix the search
35111         regexp to match MS-Windows file names with drive letters.
35112         (Bug#19468)
35113         * lisp/cedet/semantic/symref/grep.el
35114         (semantic-symref-grep-use-template): Remove "--color=always" from
35115         Grep switches on MS-Windows.
35116         (semantic-symref-grep-shell): Use shell-file-name as the default
35117         value, so this works not only on Posix platforms.
35118         (semantic-symref-perform-search): Use shell-quote-argument instead
35119         of literal '..' for portable quoting of Grep command-line
35120         argument.  Use shell-command-switch instead of a literal "-c".
35121         * lisp/cedet/semantic/bovine/gcc.el
35122         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
35123         for an absolute file name in a portable way.
35125 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
35127         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
35128         (package-import-keyring, package-refresh-contents)
35129         (package-compute-transaction, package--save-selected-packages)
35130         (package-install-from-archive, package-delete)
35131         (package-menu--perform-transaction): Use `inhibit-message' instead.
35132         (package--compile): Set `warning-minimum-level' to :error.
35134 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
35136         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
35137         (terminal-init-screen): Use it (bug#20356).
35138         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
35139         (xterm--extra-capabilities-type): New const.
35140         (xterm-extra-capabilities): Use it.
35141         (xterm--version-handler): Lower the pseudo-version for `screen'.
35143 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
35145         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
35146         Always insert a newline at the end (to avoid mouse-face background
35147         tail at the last line).
35149         elisp-completion-at-point: Prioritize being quoted over funpos
35150         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
35151         Only consider function position when not inside quoted form
35152         (bug#20425).
35153         * test/automated/elisp-mode-tests.el: New file.
35155         Stop vc-print-log from jumping to the top
35156         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
35157         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
35158         is not specified.
35159         (vc-incoming-outgoing-internal): Always pass nil.
35160         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
35161         call it, and don't set vc-sentinel-movepoint (bug#15322).
35162         (vc-print-root-log): Don't fetch the root working revision, nor
35163         pass it to vc-print-log-internal.
35165 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
35167         Fix display of keyboard layouts for right-to-left scripts
35168         * lisp/international/quail.el (quail-insert-kbd-layout):
35169         Force left-to-right paragraph direction.
35171 2015-05-02  K. Handa  <handa@gnu.org>
35173         * src/cmds.c (internal_self_insert): When we insert spaces for
35174         padding, set point before the padding spaces, not after them.
35176 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
35178         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
35180 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
35182         Fix etags-xref-find for references
35183         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
35184         Use `cl-mapcan'.
35185         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
35186         directory if no tags tables are loaded (bug#19468).
35188 2015-05-02  Philipp Stephani  <phst@google.com>
35190         Update the options in whitespace-style defcustom
35191         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
35192         `repeat' because the option is really set-like.  Add missing
35193         options.  Reorder options to match the order in the
35194         documentation.  (Bug#20346)
35196 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
35198         Fix error diagnostics of c-macro-expand
35199         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
35200         too early if no start-marker string was found -- that generally
35201         means cpp exited abnormally, and we still want to show its error
35202         messages to the user.
35204         Don't require Texinfo 5.0 for Emacs documentation
35205         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
35206         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
35207         "@codequoteundirected on", respectively, to avoid requiring
35208         Texinfo 5.x for Emacs documentation.
35210 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
35212         * lisp/files.el (pwd):
35213         When called with a prefix argument, insert the current default
35214         directory at point.
35216 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
35218         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
35219         * lisp/isearch.el (isearch-mode-map): Don't inhibit
35220         function-key-map remapping for backspace (bug#20466).
35222 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
35224         Implement xref-find-references in etags and elisp-mode
35225         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
35226         (elisp-xref-find): Use it.
35227         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
35228         * lisp/progmodes/xref.el (xref-collect-references):
35229         (xref--collect-reference): New functions.
35231 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
35233         Prefer plain characters to Texinfo circumlocutions
35234         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
35235         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
35237         Fix single-quoting style in PDF manuals
35238         The PDF versions of the GNU manuals used curved single quotes to
35239         represent grave accent and apostrophe, which made it a pain to cut
35240         and paste code examples from them.  Fix the PDF versions to use
35241         grave accent and apostrophe for Lisp source code, keystrokes, etc.
35242         This change does not affect the info files, nor does it affect
35243         ordinary uses of curved single quotes in PDF.
35244         * doc/emacs/docstyle.texi: New file, which specifies treatment for
35245         grave accent and apostrophe, as well as the document encoding.
35246         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
35247         * doc/lispintro/emacs-lisp-intro.texi:
35248         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
35249         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
35250         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
35251         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
35252         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
35253         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
35254         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
35255         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
35256         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
35257         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
35258         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
35259         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
35260         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
35261         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
35262         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
35263         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
35264         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
35265         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
35266         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
35267         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
35268         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
35269         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
35270         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
35271         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
35272         * doc/misc/woman.texi:
35273         Use it instead of '@documentencoding UTF-8', to lessen the need for
35274         global changes like this in the future.
35275         * doc/emacs/Makefile.in (EMACS_XTRA):
35276         * doc/lispintro/Makefile.in (srcs):
35277         * doc/lispref/Makefile.in (srcs):
35278         Add dependency on docstyle.texi.
35279         * doc/misc/Makefile.in (style): New macro.
35280         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
35281         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
35282         Use it.
35284 2015-05-01  Glenn Morris  <rgm@gnu.org>
35286         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
35288         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
35289         (help-fns--signature): Declare.
35291         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
35293 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
35295         New macro seq-let, providing destructuring support to seq.el
35296         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
35297         to `cl-destructuring-bind' but works on all sequence types supported
35298         by `seq.el'.  Bump version number to 1.6.
35299         * test/automated/seq-tests.el: Add tests for seq-let.
35300         * doc/lispref/sequences.texi: Add documentation for seq-let.
35302 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
35304         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
35306 2015-05-01  Glenn Morris  <rgm@gnu.org>
35308         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
35310 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
35312         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
35313         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
35314         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
35315         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
35316         (Bug#20445).
35318 2015-05-01  K. Handa  <handa@gnu.org>
35320         * lisp/international/mule-cmds.el (input-method-use-echo-area):
35321         Change :type to 'boolean.
35323 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
35325         Start using proportional fonts in eww by default
35326         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
35327         it seems to work well.
35329         Fix links in tables in shr
35330         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
35331         makes (some) links in tables not work.
35333 2015-05-01  Jan D  <jan.h.d@swipnet.se>
35335         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
35337 2015-04-30  Glenn Morris  <rgm@gnu.org>
35339         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
35340         Update for 2015-02-08 change to indirect-function.
35342         * lisp/term/ns-win.el (ns-get-selection-internal):
35343         Remove declaration for function deleted 2014-10-21.
35345         * lisp/dom.el: Load subr-x when compiling, for when-let.
35347         Silence some compilation warnings
35348         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
35349         * lisp/emulation/cua-base.el (delete-active-region):
35350         * lisp/net/net-utils.el (w32-get-console-output-codepage):
35351         * lisp/term/ns-win.el (ns-own-selection-internal)
35352         (ns-disown-selection-internal, ns-selection-owner-p)
35353         (ns-selection-exists-p, ns-get-selection):
35354         Declare for compiler.
35356         Function declaration updates prompted by 'make check-declare'
35357         * lisp/emacs-lisp/package.el (lm-homepage):
35358         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
35359         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
35360         * lisp/gnus/mml.el (libxml-parse-html-region):
35361         * lisp/gnus/nnrss.el (libxml-parse-html-region):
35362         * lisp/net/eww.el (libxml-parse-html-region):
35363         * lisp/net/shr.el (libxml-parse-html-region):
35364         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
35365         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
35366         * lisp/vc/vc-git.el (vc-annotate-convert-time):
35367         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
35368         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
35369         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
35370         Update declaration.
35372         Remove compatibility code for 20-year old function renaming
35373         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
35374         Make it an obsolete alias.
35375         (idlwave-shell-filter): Change all uses to comint-output-filter.
35377 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
35379         Add ace-window face config
35380         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
35381         configuration.
35383 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
35385         Unclutter 'make doc' output a bit
35386         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
35387         Use make subst rather than sh IFS to split target string apart.
35388         This makes 'make' output easier to follow.
35390         Merge from gnulib
35391         * doc/misc/texinfo.tex: Update from gnulib.
35393 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
35395         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
35396         (package-menu--print-info): Obsolete.
35397         (package-menu--print-info-simple): New function.
35398         (package-menu--refresh): Use it, simplify code, and improve
35399         performance.
35400         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
35401         Tiny performance improvement.
35403         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
35405 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
35407         Omit -Wstrict-overflow workaround in GCC 5
35408         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
35409         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
35411         Merge from gnulib
35412         This incorporates:
35413         2015-04-29 extern-inline: no need for workaround in GCC 5.1
35414         2015-04-26 file-has-acl: port to CentOS 6
35415         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
35417 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
35419         Set next-error-* in xref--xref-buffer-mode
35420         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
35421         Set `next-error-function' and `next-error-last-buffer'.
35422         (xref--next-error-function): New function.
35423         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
35425 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
35427         python.el: Fix warnings on looking-back calls missing LIMIT
35428         * lisp/progmodes/python.el (python-shell-accept-process-output):
35429         Pass LIMIT arg to looking-back.
35431 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
35433         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
35434         (package--download-and-read-archives): Use pushnew instead of
35435         append.  If something terrible happened during a previous
35436         download, simply refreshing should now make things work again.
35438 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
35440         Introduce etags-xref-find-definitions-tag-order
35441         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
35442         New variable.
35443         (etags--xref-find-definitions): Use it (bug#19468).
35445 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
35447         PATH- and completion-related fixes in Eshell on MS-Windows
35448         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
35449         MS-Windows, prepend "." to list of directories produced from PATH,
35450         as Windows always implicitly searches the current directory first.
35451         (eshell-force-execution): Make it have a non-nil default value on
35452         MS-Windows and MS-DOS.
35453         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
35454         eshell-force-execution is non-nil, complete on readable files and
35455         directories, not only executables.  When running on MS-Windows,
35456         prepend "." to list of directories produced from PATH, as Windows
35457         always implicitly searches the current directory first.
35459 2015-04-29  Sam Steingold  <sds@gnu.org>
35461         Bury RCIRC buffers when there is no activity
35462         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
35463         (rcirc-bury-buffers): New function.
35464         (rcirc-next-active-buffer): When there is no new activity, use
35465         `rcirc-bury-buffers' to hide all RCIRC buffers.
35467 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
35469         Fix DBUS query result parsing for secrets-search-items
35470         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
35471         parsing.  The function assumed that return value of the
35472         SearchItems method called on a collection is a list of two lists,
35473         however this is true only when no collection is specified.  GNOME
35474         had used to incorrectly return a list of two lists in both cases,
35475         but this was already fixed:
35476         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
35477         incorrect information in the secrets-search-items’ docstring.
35478         (Bug#20449)
35480 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
35482         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
35483         Use `inhibit-message' instead of hiding the previous message
35484         with (message nil).
35486 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
35488         Remove the deprecated INTERNAL_FIELD macro by expanding it
35489         * src/lisp.h (INTERNAL_FIELD): Remove.
35490         (DEFVAR_KBOARD): Modify accordingly.
35491         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
35492         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
35493         * src/buffer.c (compact_buffer): Use BVAR.
35495 2015-04-29  Glenn Morris  <rgm@gnu.org>
35497         Replace an obsolete function alias
35498         * lisp/isearch.el (isearch-yank-x-selection):
35499         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
35500         (mouse-drag-secondary-moving):
35501         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
35502         Replace obsolete alias x-get-selection with gui-get-selection.
35504 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
35506         * lisp/mail/rmailsum.el: Use lexical-binding.
35508 2015-04-29  Glenn Morris  <rgm@gnu.org>
35510         * test/automated/package-test.el (package-test-update-archives-async):
35511         Skip test on hydra.nixos.org.
35513 2015-04-28  Glenn Morris  <rgm@gnu.org>
35515         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
35516         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
35517         (foldout-mouse-hide-or-exit): Use new names for outline functions.
35519         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
35520         Update for 2014-06-26 hideif.el change.
35522         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
35523         (rmail--decode-and-apply): New function.
35524         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
35526         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
35528 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
35530         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
35531         (package-menu--refresh): Delegate obsolete-hiding to
35532         `package--remove-hidden'.
35533         (package--remove-hidden): Disregard high-priority package if it is
35534         older than the installed one.
35536 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
35538         Update source file encoding list
35539         Update admin/notes/unicode, along with coding system cookies in
35540         other files, so that the two match each other better.
35541         * admin/notes/unicode: lisp/language/ethio-util.el and
35542         lisp/language/ethiopic.el also use utf-8-emacs.
35543         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
35544         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
35545         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
35546         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
35547         * etc/refcards/sk-survival.tex:
35548         Add "coding: utf-8" so that this file is not mishandled in a
35549         Latin-1 or Big-5 locale.
35550         * lisp/international/robin.el, lisp/org/ox-ascii.el:
35551         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
35552         * lisp/language/ethio-util.el: Fix trailer.
35554 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
35556         Fix synchronous invocation of Ispell
35557         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
35558         value to ispell-process-directory before calling ispell-init-process.
35559         Don't call set-process-coding-system if ispell-async-processp is nil.
35560         (Bug#20448)
35562 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
35564         * lisp/emacs-lisp/package.el: Skip space and comments in init file
35565         (package--ensure-init-file): Insert snippet at first
35566         non-whitespace non-comments line.  Respects local-vars at the top
35567         of the file.
35569 2015-04-28  Glenn Morris  <rgm@gnu.org>
35571         * lisp/mail/rmail.el (rmail-copy-headers):
35572         Handle rmail-nonignored-headers being nil.  (Bug#18878)
35574         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
35576         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
35577         Don't get confused by a bzrlib version mismatch warning.
35579 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
35581         Change default location of EUDC options file
35582         * etc/NEWS: Document change to EUDC options file's default location.
35583         * lisp/net/eudc-vars.el (eudc-options-file): Use
35584         `locate-user-emacs-file' to change default options file location.
35586 2015-04-27  Glenn Morris  <rgm@gnu.org>
35588         * test/automated/package-test.el (package-test-update-archives-async):
35589         Try to handle the test server script dying.
35591 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
35593         * lisp/saveplace.el (save-place-mode): New minor mode.
35594         (save-place): Redefine as an obsolete alias.
35596         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
35597         * lisp/midnight.el: Use lexical-binding.
35598         (midnight-mode): Make it a proper minor mode.
35599         (midnight-buffer-display-time): Make arg non-optional.
35600         (midnight-find): Remove.
35601         (clean-buffer-list-kill-never-regexps)
35602         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
35603         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
35604         contain functions.
35605         (clean-buffer-list): Use cl-find.
35606         Allow clean-buffer-list-kill-never-regexps to contain functions.
35608 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
35610         Bump version of seq.el to 1.5
35611         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
35612         from seq-doseq.  Bump version number of seq.el.
35614 2015-04-27  Glenn Morris  <rgm@gnu.org>
35616         * lisp/mail/rmail.el (rmail-reply):
35617         Decode subject before matching "Re:" prefix.  (Bug#20396)
35619 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
35621         * lisp/emacs-lisp/package.el: Small improvements
35622         (package--with-work-buffer-async): More informative error.
35623         (package-install-user-selected-packages): Rename to
35624         `package-install-selected-packages'.
35626 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
35628         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
35629         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
35630         (eieio--class-make): Remove leftover `tag'.
35632 2015-04-27  Glenn Morris  <rgm@gnu.org>
35634         * lisp/gnus/message.el (gnus-extract-address-components):
35635         Remove bogus declaration that was masking previous problem.
35637 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
35639         * lisp/gnus/message.el (message-insert-formatted-citation-line):
35640         Fix typo.  (Bug#20318)
35642 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
35644         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
35646         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
35647         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
35648         the buffer in yet another frame.
35649         (reftex-toc-visit-location): Make sure toc-window has focus at the end
35650         when `final' is nil.
35651         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
35652         silence warnings.  Use `--' to clarify that it's internal.
35653         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
35654         (reftex-toc-promote): Clarify unused argument.
35655         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
35656         Add `reftex--' prefix.  Fix all users.
35657         (reftex-toc-promote-prepare): Use _ for dummy variable.
35658         (reftex-toc-restore-region): Rename `m.
35660 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
35662         Fix a typo in bibtex.el
35663         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
35664         last change.  (Bug#20429)
35666         Fix redisplay of frame after loading new fonts
35667         * src/xdisp.c (redisplay_internal): When retrying redisplay of
35668         a frame because new fonts were loaded, disable all redisplay
35669         optimizations on that frame by calling SET_FRAME_GARBAGED.
35670         (Bug#20410)
35672 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
35674         * lisp/info.el (Info-menu): Properly provide the `default'
35675         (Bug#20391)
35677         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
35678         Catch errors from documentation (bug#20418).
35679         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
35681 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
35683         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
35684         Remove redundant ":group 'package".
35686 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
35688         Fix a typo in rmail.el
35689         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
35690         last commit.  (Bug#20429)
35692 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
35694         Introduce xref-prompt-for-identifier
35695         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
35696         (xref--read-identifier): Use it
35697         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
35699 2015-04-26  João Távora  <joaotavora@gmail.com>
35701         `tex-insert-quote' after single `'' opens quotes instead of closing
35702         Without this, it's very hard to precede double quotes with the
35703         apostrophe character, i.e. insert the sequence '``
35704         (quote-backquote-backquote), commonly useful in portuguese, for
35705         instance.
35706         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
35707         preceding chars making `tex-insert-quote' be in the "opening" context.
35709 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
35711         Pass `id' to `completing-read' as def instead of initial input
35712         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
35713         `completing-read' as the default value instead of initial input
35714         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
35716 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
35718         Don't freeze with unreadable processes
35719         Don't freeze if an exiting process can't be read from.  (Bug#19860).
35720         This fixes a bug I introduced in
35721         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
35722         "* process.c: Add sanity checks for file descriptors."
35723         Dmitry Gutov did most of the legwork in finding the problem.
35724         * src/process.c (wait_reading_process_output):
35725         Treat non-running processes that can't be read from
35726         the same as other non-running processes.
35728 2015-04-25  Alan Mackenzie  <acm@muc.de>
35730         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
35731         * lisp/subr.el (remove-yank-excluded-properties): Put
35732         `with-silent-modifications' around only the last three lines of code.
35734 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
35736         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
35737         (package--all-keywords): Deleted variable.
35739         * etc/NEWS: Document package-hiding functionality.
35741 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
35743         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
35745         Clarify the doc string of 'replace-regexp-in-string'
35746         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
35748         Improve doc string of 'insert-buffer-substring'
35749         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
35751         MS-Windows followup for the recent gnulib update
35752         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
35753         acl-internal.c.
35755 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
35757         Spelling fixes
35759         Merge from gnulib
35760         This incorporates:
35761         2015-04-24 file-has-acl: new module, split from acl
35762         2015-04-24 manywarnings: add GCC 5.1 warnings
35763         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
35764         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
35765         2015-04-15 acl: On Linux, check for acls without libacl
35766         2015-04-14 tempname: avoid unused parameter warnings (trivial)
35767         * lib/acl-internal.c: New file, from gnulib.
35768         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
35769         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
35770         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
35771         Update from gnulib.
35773         Port --enable-gcc-warnings to GCC 5.1 x86-64
35774         * lib-src/ebrowse.c (dump_sym):
35775         * lib-src/hexl.c (main):
35776         * src/ccl.c (ccl_driver):
35777         * src/character.c (string_escape_byte8):
35778         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
35779         * src/gnutls.c (Fgnutls_boot):
35780         * src/gtkutil.c (xg_check_special_colors):
35781         * src/image.c (x_build_heuristic_mask):
35782         * src/print.c (safe_debug_print, print_object):
35783         * src/term.c (produce_glyphless_glyph):
35784         * src/xdisp.c (get_next_display_element)
35785         (produce_glyphless_glyph):
35786         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
35787         Don't use a signed format to print an unsigned integer, or vice
35788         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
35789         * src/image.c (png_load_body, jpeg_load_body):
35790         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
35792 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
35794         Add new faces to tsdh-light-theme
35795         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
35796         definitions for Info-quoted, ace-jump-face-foreground,
35797         hl-paren-face, show-paren-match, and show-paren-mismatch.
35799 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
35801         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
35803 2015-04-24  Glenn Morris  <rgm@gnu.org>
35805         * build-aux/gitlog-to-emacslog:
35806         Use raw log format rather than wrapped one.
35808 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
35810         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
35811         (seq-doseq): Fix out-of-scope binding.
35812         Don't call `seq-length at every iteration.
35813         Reduce `if's from 3 to 2 per iteration.
35814         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
35816 2015-04-24  Glenn Morris  <rgm@gnu.org>
35818         * lisp/textmodes/text-mode.el (text-mode-hook):
35819         Move text-mode-hook-identify to default.
35821         * lisp/mouse.el (minor-mode-menu-from-indicator):
35822         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
35824         * lisp/help-fns.el (describe-function): More type checking.
35825         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
35827         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
35828         (Bug#20325)
35830 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
35832         shr: strip leading whitespace when expanding URLs
35833         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
35835 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
35837         Clarify "co-authored" some more
35839         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
35841         Clarify doc strings of functions that search for properties
35842         * src/textprop.c (Fnext_char_property_change)
35843         (Fprevious_char_property_change)
35844         (Fnext_single_char_property_change)
35845         (Fprevious_single_char_property_change, Fnext_property_change)
35846         (Fnext_single_property_change, Fprevious_property_change)
35847         (Fprevious_single_property_change): Clarify doc strings wrt return
35848         value and the optional LIMIT argument.  (Bug#20411)
35850 2015-04-24  Glenn Morris  <rgm@gnu.org>
35852         * test/automated/message-mode-tests.el (message-mode-propertize):
35853         Handle non-writable HOME; eg on hydra.nixos.org.
35855 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
35857         Avoid starting threads by w32-shell-execute
35858         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
35859         local file names, before invoking ShellExecute.  (Bug#20220)
35861 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
35863         Fix following doc-links in `widget-documentation-link-action'
35864         * lisp/wid-edit.el (widget-documentation-link-action): Make
35865         following doc-links less simplistic (Bug#20398).
35867 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
35869         Improve EUDC manual
35870         * doc/misc/eudc.texi (Troubleshooting):
35871         New LDAP troubleshooting subsection.
35873 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
35875         Omit needless "\ " after multibyte then newline
35876         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
35877         (print_object): When print-escape-multibyte is non-nil and a
35878         multibyte character is followed by a newline or formfeed, followed
35879         by a hex digit, don't output a needless "\ " before the hex digit.
35880         * test/automated/print-tests.el (print-hex-backslash): New test.
35882 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
35884         Add a new `inhibit-message' variable
35885         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
35886         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
35887         `inhibit_message' is non-zero.
35888         * etc/NEWS: Add an entry.
35889         * doc/lispref/display.texi: Add an entry for `inhibit-message',
35890         mention it in `message'.
35892 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
35894         Fix last fix in `display-buffer-record-window'.
35895         * lisp/window.el (display-buffer-record-window): Fix last fix.
35897 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
35899         Minor edits in CONTRIBUTE
35900         * CONTRIBUTE: Rearrange instructions about log messages.
35901         Use "Git" capitalized all over.
35902         Use 2 spaces between sentences.
35904 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
35906         * lisp/files.el (basic-save-buffer): Fix argument.
35908         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
35909         In case `(and (null custom-file) init-file-had-error)' do the same
35910         thing we'd do if `(null user-init-file)', which is to either error out
35911         or return nil.  This is in line with `custom-save-all' which would
35912         throw an error in that situation.  (Bug#20355)
35914         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
35915         (package-menu-hide-low-priority): New variable, see its doc.
35916         (package-archive-priorities): Update doc.
35917         (package-desc-priority): New function.
35918         (package-desc-priority-version): Use it.
35919         (package--remove-hidden): New function.
35920         (package-menu--refresh): Use it.
35922         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
35923         (package-menu--hide-obsolete): New variable.
35924         (package--remove-hidden): Use it.
35925         (package-menu-hide-obsolete): New interactive function to toggle
35926         the variable.
35927         (package--quick-help-keys): Document it.
35928         (package-menu-async): Add :version tag.
35929         (package-menu-mode-map): Bind package-menu-hide-obsolete.
35930         (package-desc-status): Indicate non-installed obsolete packages as
35931         avail-obso.
35932         (package-menu-mark-install): Allow installation of avail-obso.
35933         (package-menu--status-predicate): Sort avail-obso with available.
35935 2015-04-22  Alan Mackenzie  <acm@muc.de>
35937         On C-y, stop some text property entries being written into buffer-undo-list
35938         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
35939         `with-silent-modifications'.
35941 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
35943         In display-buffer-record-window record selected window if necessary
35944         * lisp/window.el (display-buffer-record-window): Store selected window
35945         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
35947 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
35949         Fix reftex-citation bug
35950         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
35951         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
35952         integration is enabled and there are no citations in the document
35953         so far.
35955 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
35957         Add or reset based on the presence of MERGE_HEAD
35958         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
35959         `vc-git-resolve-when-done' to `after-save-hook' in either case.
35960         (vc-git-conflicted-files): Add a TODO.
35961         (vc-git-resolve-when-done): Depending on the presence of
35962         MERGE_HEAD, either update the resolved file in the index, or
35963         remove it from there.  (Bug#20292)
35965 2015-04-21  Glenn Morris  <rgm@gnu.org>
35967         * lisp/custom.el (custom-declare-group): No need to purecopy
35968         custom-current-group-alist members following recent change to set
35969         it to nil before dumping.
35971         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
35972         (Bug#20399)
35974 2015-04-21  Daniel Colascione  <dancol@dancol.org>
35976         Unbreak no-op buffer save message
35977         * lisp/files.el (basic-save-buffer): Accept called-interactively as
35978         an argument instead of directly invoking called-interactively-p,
35979         which will always yield nil in that context.
35981 2015-04-21  Alan Mackenzie  <acm@muc.de>
35983         CC Mode: Do nothing in before/after-change-functions for text
35984         property changes
35985         Fixes bug#20266.
35986         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
35987         yank-handled-properties buffer local, and remove 'category from it.
35988         (c-called-from-text-property-change-p): New function.
35989         (c-before-change): Don't do anything if a call of the new function
35990         returns non-nil.
35991         (c-after-change): Don't do much if a call of the new function returns
35992         non-nil.
35993         (c-extend-after-change-region): Put changes to text property 'fontified
35994         inside c-save-buffer-state.
35996 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
35998         Fix byte-compiler warnings about looking-back
35999         * lisp/vc/log-view.el (log-view-end-of-defun-1):
36000         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
36001         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
36002         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
36003         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
36004         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
36005         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
36006         * lisp/org/org.el (org-insert-heading, org-sort-entries):
36007         * lisp/org/org-mouse.el (org-mouse-end-headline)
36008         (org-mouse-context-menu):
36009         * lisp/org/org-clock.el (org-clock-cancel):
36010         * lisp/man.el (Man-default-man-entry):
36011         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
36012         (rmail-ensure-blank-line):
36013         * lisp/mail/footnote.el (Footnote-delete-footnote):
36014         * lisp/mail/emacsbug.el (report-emacs-bug):
36015         * lisp/info.el (Info-follow-reference, Info-fontify-node):
36016         * lisp/info-look.el (info-lookup-guess-custom-symbol):
36017         * lisp/help-fns.el (help-fns--key-bindings):
36018         * lisp/files.el (hack-local-variables):
36019         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
36020         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
36021         (viper-complete-filename-or-exit):
36022         * lisp/emulation/viper-cmd.el (viper-backward-indent):
36023         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
36024         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
36025         * lisp/cus-edit.el (custom-face-edit-value-create):
36026         * lisp/calendar/todo-mode.el (todo-set-item-priority)
36027         (todo-filter-items-1, todo-convert-legacy-files)
36028         (todo-prefix-overlays): Add explicit second arg to looking-back.
36030 2015-04-20  Glenn Morris  <rgm@gnu.org>
36032         Avoid non-nil current-load-list at startup
36033         * src/process.c (init_process_emacs): Move Fprovide statement...
36034         (syms_of_process): ... to here.
36036         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
36038         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
36039         in emacs -Q.
36041 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
36043         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
36044         (Bug#20330)
36046 2015-04-20  Glenn Morris  <rgm@gnu.org>
36048         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
36050         Tweak exec-path in uninstalled case
36051         * src/callproc.c (init_callproc): If running uninstalled, do not
36052         include eventual installation libexec directory in exec-path.
36054 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
36056         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
36057         cache keywords.
36058         (package-menu-filter): Accept a list of keywords.
36059         (package--all-keywords): New variable to cache known keywords.
36060         (package-all-keywords): Populate it if necessary.
36061         (package-refresh-contents): Reset it.
36063         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
36064         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
36065         as special keywords which match agains package archive and status
36066         respectively.
36067         * etc/NEWS: Document it.
36069 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
36071         Describe and index "empty overlays".
36072         * doc/lispref/display.texi (Overlays): Improve indexing.
36073         (Managing Overlays): Describe "empty" overlays.
36074         (Overlay Properties, Finding Overlays): Add cross-reference to
36075         where empty overlays are described.
36077 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
36079         Spelling fixes
36081         Quote 'like this' in top-level files
36082         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
36083         Prefer to single-quote 'like this' (instead of the older style
36084         `like this').
36085         * configure.ac: Fix some space-before-tab problems that 'git commit'
36086         complained about.
36088         Use bool for boolean in textprop.c, undo.c
36089         * src/textprop.c (soft, hard): Now constants instead of macros.
36090         (validate_plist): Rewrite to avoid need for boolean local.
36091         (interval_has_all_properties, interval_has_some_properties)
36092         (interval_has_some_properties_list, add_properties)
36093         (remove_properties, get_char_property_and_overlay)
36094         (Fnext_single_char_property_change)
36095         (Fprevious_single_char_property_change, add_text_properties_1)
36096         (Fremove_text_properties, Fremove_list_of_text_properties)
36097         (copy_text_properties):
36098         * src/tparam.c (tparam1):
36099         * src/undo.c (record_change, record_property_change)
36100         (syms_of_undo):
36101         Use 'true' and 'false' for booleans.
36103 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
36105         * lisp/vc/vc-git.el (vc-git-find-file-hook):
36106         Call `smerge-start-session' even when dealing with a stash
36107         conflict (bug#20292).
36109 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
36111         Add option to eshell/clear to clear scrollback.
36112         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
36113         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
36114         scrollback contents are cleared.
36115         * etc/NEWS: Describe change.
36116         * doc/misc/eshell.texi: Add entry for `clear'.
36118 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
36120         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
36121         where either will do.
36123 2015-04-19  Steve Purcell  <steve@sanityinc.com>
36125         Assume package archive-contents are UTF8-encoded
36126         * lisp/emacs-lisp/package.el (package--read-archive-file):
36127         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
36128         downloaded and cached archive-contents files, so that non-ASCII
36129         characters in package descriptions are displayed correctly in the
36130         `list-packages' menu.  (Bug#20231)
36132 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
36134         Abort when looking at stashed changes
36135         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
36136         stashed changes (bug#20292).
36138 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
36140         Refactor low-level printing for simplicity
36141         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
36142         PRINTPREPARE; doable now that we assume C99.  All callers changed.
36143         (PRINTCHAR): Remove, as it adds more mystery than clarity.
36144         All callers changed.
36145         (strout): Assume that caller computes length.  All callers changed.
36146         (print_c_string): New function.
36147         (write_string, write_string_1): Compute length instead of asking
36148         the caller to compute it.  All callers changed.
36149         (write_string): Simplify by using write_string_1.
36150         (write_string_1): Simplify by using print_c_string.
36151         (Fterpri): Compute default val more clearly.
36152         (Fprin1_to_string, print_object):
36153         Assume C99 to avoid unnecessary nesting.
36154         (print_object): Prefer print_c_string to multiple printchar, or
36155         to calling strout with -1 length.  Coalesce into sprintf when
36156         this is easy.
36158 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
36160         Prefer "Bug#1234" in commit messages (Bug#20325)
36161         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
36162         as this isn't useful for Git.
36163         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
36165 2015-04-18  Glenn Morris  <rgm@gnu.org>
36167         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
36168         (Bug#19506)
36170 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
36172         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
36173         Do not use `chomp' as a function.  (Bug#19505)
36175 2015-04-18  Glenn Morris  <rgm@gnu.org>
36177         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
36179         * doc/emacs/misc.texi (Sorting): Small edit.
36180         (Bug#19896)
36182         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
36184 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
36186         css-mode.el: Support multi-line comment filling
36187         (Bug#20256)
36188         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
36189         comment filling.
36190         (css-adaptive-fill): New function.
36191         (css-mode): Set `adaptive-fill-function'.
36192         (scss-mode): Set `comment-continue'.
36194 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
36196         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
36197         Better error messages.
36199 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
36201         Minor improvements in Bulgarian input methods
36202         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
36203         Replace U+042C with U+045D, as the former character is not used in
36204         the modern Bulgarian language.
36205         (Bug#20350)
36207 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
36209         Improve EUDC manual
36210         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
36211         authentication schemes.  Add index items.  Shorten example server
36212         name.
36214 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
36216         Don't show both feature and function with the same name
36217         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
36218         Don't show both feature and function with the same name.
36220         (elisp--xref-identifier-location): Skip variable, if it's also
36221         a function
36222         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
36223         Avoid returning both the variable and the function for the same
36224         minor mode.
36226 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
36228         Fix fontification of keywords clobbered by the prompt
36229         * lisp/comint.el (comint-output-filter): Remove the uses of
36230         with-silent-modifications I introduced as part of the last change.
36231         This fixes, e.g., erratically missing highlighting when running
36232         ./configure --help; ./configure in a shell-mode buffer with
36233         compilation-shell-minor-mode turned on.
36235 2015-04-17  Glenn Morris  <rgm@gnu.org>
36237         * admin/authors.el (authors-valid-file-names)
36238         (authors-renamed-files-alist): Additions.
36240 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
36242         * lisp/indent.el (indent-region): Don't deactivate the mark.
36243         (Bug#20357)
36245 2015-04-17  Sam Steingold  <sds@gnu.org>
36247         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
36249 2015-04-16  Leo Liu  <sdl.web@gmail.com>
36251         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
36253 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
36255         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
36256         Don't use `pcomplete' any more.
36258 2015-04-16  Glenn Morris  <rgm@gnu.org>
36260         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
36262 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
36264         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
36265         * configure.ac (LIBJPEG): Leave it empty for MinGW.
36267 2015-04-16  Glenn Morris  <rgm@gnu.org>
36269         * lisp/replace.el (query-replace-from-to-separator):
36270         Delay initialization to avoid rogue setting after startup.
36272 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
36274         Pre-4.6 GCC succeeds with unknown option
36275         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
36276         (Bug#20338)
36278 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
36280         '[:graph:]' now excludes whitespace, not just ' '
36281         * doc/lispref/searching.texi (Char Classes):
36282         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
36283         sans whitespace (not sans space).
36284         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
36285         not just space.
36286         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
36288 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
36290         * lisp/subr.el (substitute-key-definition-key, special-form-p)
36291         (macrop): Drop deprecated second arg to indirect-function.
36292         (looking-back): Make the second arg non-optional.
36294         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
36295         command is actually sent to the shell.
36297 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
36299         Port jpeg configuration to Solaris 10 with Sun C
36300         * configure.ac: Check for jpeglib 6b by trying to link it, instead
36301         of relying on cpp magic that has problems in practice.  Check for
36302         both jpeglib.h and jerror.h features.  Remove special case for
36303         mingw32, which should no longer be needed (and if it were needed,
36304         should now be addressable by hotwiring emacs_cv_jpeglib).
36305         (Bug#20332)
36307 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
36309         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
36310         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
36311         Move to elisp-mode.el.
36312         (lisp-mode-variables): (Re)move elisp-specific settings.
36313         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
36314         from lisp-mode-variables.
36315         (elisp--font-lock-flush-elisp-buffers): New function, moved from
36316         lisp-mode.el.
36318         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
36319         Avoid pathological slowdown at top-level in large file.
36321 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
36323         Standardize names of ChangeLog history files
36324         Suggested by Glenn Morris in:
36325         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
36326         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
36327         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
36328         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
36329         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
36330         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
36331         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
36332         Remove.
36334         Split top-level entries into pre- and post-April 7
36335         This more clearly distingiushes pre-April-7 ChangeLog entries (which
36336         are for top-level files only) from post-April-7 entries (which are
36337         about files at all levels.  Problem reported by Glenn Morris in:
36338         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
36339         * ChangeLog.1: Move post-April-7 entries from here ...
36340         * ChangeLog.2: ... to this new file.
36341         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
36343 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
36345         Fix recent cus-start changes that added customize-rogues
36346         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
36347         vars early.
36348         * lisp/loadup.el ("cus-start"): Move to the end to reduce
36349         customize-rogue.
36351 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
36353         Define cl-concatenate as an alias to seq-concatenate
36354         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
36355           code by making cl-concatenate an alias to seq-concatenate.
36357 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
36359         * src/lread.c (intern_1): Make sure we'd find the symbol we add
36360         (Bug#20334)
36361         * src/xfaces.c (resolve_face_name): Don't use `intern' with
36362         Lisp_Strings.
36364 2015-04-15  Glenn Morris  <rgm@gnu.org>
36366         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
36368 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
36370         Clean up gnus-uu saving code slightly
36371         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
36372         save-restriction/widen calls make more sense.
36374 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
36376         Make [:graph:] act like [:print:] sans space
36377         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
36378         [:graph:] so that it matches everything that [:print:] does,
36379         except for space.
36380         * doc/lispref/searching.texi (Char Classes):
36381         * etc/NEWS:
36382         * lisp/emacs-lisp/rx.el (rx):
36383         Document [:graph:] to be [:print:] sans ' '.
36384         * src/character.c, src/character.h (graphicp): New function.
36385         * src/regex.c (ISGRAPH) [emacs]: Use it.
36386         (BIT_GRAPH): New macro.
36387         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
36388         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
36389         Return BIT_GRAPH for RECC_GRAPH.
36390         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
36391         and ISPRINT if BIT_PRINT.
36393 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
36395         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
36396         Don't use call-next-method in a cl-defmethod.
36398         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
36399         (eieio--class-p): Remove, provided by cl-defstruct.
36401 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
36403         Add seq-intersection and seq-difference to the seq library
36404         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
36405         New functions.
36406         * test/automated/seq-tests.el: Add tests for seq-intersection and
36407         seq-difference.
36408         * doc/lispref/sequences.texi: Add documentation for seq-intersection
36409         and seq-difference.
36411 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
36413         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
36414         to avoid leaking internals.
36416 2015-04-14  Sam Steingold  <sds@gnu.org>
36418         package--ensure-init-file: widen requires save-restriction
36420 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
36422         Improve the commit-msg Git hook for unibyte environments
36423         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
36424         in unibyte environments.  (Suggested by Paul Eggert
36425         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
36426         [:print:], based on UTF-8 sequences of the unprintable characters.
36428         Describe problems with cursor caused by Windows Magnifier
36429         * etc/PROBLEMS: Describe the problem with cursor shape on
36430         MS-Windows due to Windows Magnifier.
36431         (Bug#20271)
36433         Make [:print:] support non-ASCII characters correctly
36434         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
36435         (BIT_PRINT): New bit mask.
36436         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
36437         * src/character.c (printablep): New function.
36438         * src/character.h (printablep): Add prototype.
36439         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
36440         of 'print', 'alnum', and 'alphabetic'.
36441         * doc/lispref/searching.texi (Char Classes): Document the new
36442         behavior of [:print:].
36443         * etc/NEWS: Mention the new behavior of [:print:].
36445         Assign correct general-category and names to surrogates
36446         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
36447         surrogates.  This avoids assigning them the default
36448         general-category of 'Cn', i.e. unassigned codepoints.
36449         (unidata-get-name): Give surrogates synthetic names.
36451 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
36453         Assume C89 offsetof in xterm.c, xlwmenu.c
36454         * lwlib/xlwmenu.c (offset):
36455         * src/xterm.c (cvt_string_to_pixel_args):
36456         Use offsetof, not XtOffset.
36458 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
36460         Assume C89 offsetof in widget.c
36461         * src/widget.c (XtOffset): Remove; no longer needed.
36462         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
36464         Fix think-o in previous patch
36465         * src/window.c (count_windows, get_leaf_windows):
36466         Don't optimize count_windows incorrectly.
36468 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
36470         Avoid some int overflows in window.c
36471         * src/print.c (print_object):
36472         * src/window.c (sequence_number):
36473         * src/window.h (struct window.sequence_number):
36474         Don't assume window sequence number fits in int.
36475         * src/window.c (window_select_count):
36476         * src/window.h (struct window.use_time, window_select_count):
36477         Don't assume window use time fits in int.
36478         * src/window.c (Fsplit_window_internal):
36479         Don't assume user-supplied integer, or sum, fits in int.
36480         (Fset_window_configuration, count_windows, get_leaf_windows)
36481         (save_window_save, Fcurrent_window_configuration):
36482         Use ptrdiff_t for object counts.
36483         (Fset_window_configuration): Omit unused local 'n'.
36484         (count_windows): Simplify by writing in terms of get_leaf_windows.
36485         (get_leaf_windows): Don't store through FLAT if it's null.
36486         (extract_dimension): New static function.
36487         (set_window_margins, set_window_fringes, set_window_scroll_bars):
36488         Use it to avoid undefined behavior when converting user-supplied
36489         integer to 'int'.
36491 2015-04-13  Glenn Morris  <rgm@gnu.org>
36493         Minor doc copyedits
36494         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
36495         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
36497 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
36499         [Gnus] Catch the invalid-operation that idna.el will issue
36500         * lisp/gnus/gnus-art.el (gnus-use-idna):
36501         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
36502         * lisp/gnus/message.el (message-use-idna):
36503         Catch the invalid-operation that idna.el will issue.
36505 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
36507         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
36509 2015-04-13  Sam Steingold  <sds@gnu.org>
36511         package--ensure-init-file: widen before looking for
36512         "(package-initialize)"
36514 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
36516         Change diff-switches default to `-u' (Bug#20290)
36517         * doc/emacs/files.texi (Comparing Files): Document the new default
36518         value of `diff-switches'.
36519         * doc/emacs/trouble.texi (Sending Patches): Document the preference
36520         for unified diff format.  Escape the plus in the suggested `-F' regexp
36521         value.
36522         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
36524 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
36526         (gnus-group--setup-tool-bar-update): Fix last change
36527         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
36528         cursor-sensor-functions should be a list of functions.
36530 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
36532         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
36533         Use gmm-called-interactively-p.
36535 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
36537         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
36538         (Bug#20321)
36539         * lisp/cus-start.el (read-buffer-function): Don't advertise
36540         iswitchb-read-buffer any more.
36541         (iswitchb): Don't tweak this obsolete group any more.
36543 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
36545         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
36547         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
36548         Adding a string after a constructor's argument list will use
36549         that string as the constructor function docstring.  If this string
36550         is absent but the struct itself was given a docstring, use that as
36551         the constructor's docstring.
36552         Fixes bug#17284.
36554 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
36556         Deprecate `intangible' and `point-entered' properties
36557         * lisp/emacs-lisp/cursor-sensor.el: New file.
36558         * lisp/simple.el (pre-redisplay-functions): New hook.
36559         (redisplay--pre-redisplay-functions): New function.
36560         (pre-redisplay-function): Use it.
36561         (minibuffer-avoid-prompt): Mark obsolete.
36562         (redisplay--update-region-highlight): Adapt it to work as a function on
36563         pre-redisplay-functions.
36564         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
36565         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
36566         than point-entered to make the prompt intangible.
36567         * lisp/forms.el: Move `provide' calls to the end.
36568         (forms-mode): Don't use `run-hooks' on a local var.
36569         (forms--make-format, forms--make-format-elt-using-text-properties):
36570         Use cursor-intangible rather than `intangible'.
36571         (forms-mode): Enable cursor-intangible-mode.
36572         * lisp/isearch.el (isearch-mode): Use defvar-local.
36573         (cursor-sensor-inhibit): Declare.
36574         (isearch-mode): Set cursor-sensor-inhibit.
36575         (isearch-done): Set it back.
36576         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
36577         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
36578         any more.
36579         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
36580         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
36581         Add Edebug spec.
36582         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
36583         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
36584         inhibit-point-motion-hooks any more.
36585         (ses--cell-at-pos, ses--curcell): New functions, extracted from
36586         ses-set-curcell.
36587         (ses-set-curcell): Use them.
36588         (ses-print-cell, ses-setup): Use cursor-intangible instead of
36589         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
36590         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
36591         Use ses--cell-at-pos.
36592         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
36593         extracted from ses-command-hook.  Make them work with multiple windows
36594         displaying the same buffer.
36595         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
36596         Enable cursor-intangible-mode.
36597         (ses-command-hook): Remove cell highlight and mode-line update code.
36598         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
36599         Update for new name of text-property holding the cell name.
36600         (ses-rename-cell): Don't mess with mode-line-process.
36601         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
36602         cursor-sensor-functions property instead of point-entered.
36603         (erc-insert-timestamp-right, erc-format-timestamp):
36604         Use cursor-intangible rather than `intangible'.
36605         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
36606         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
36607         cursor-sensor-mode if needed.
36608         (erc-echo-timestamp): Adapt to calling convention of
36609         cursor-sensor-functions.
36610         (erc-insert-timestamp-right): Remove unused vars `current-window' and
36611         `indent'.
36612         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
36613         (gnus-update-group-mark-positions): Remove unused `topic' var.
36614         (gnus-group-insert-group-line): Remove unused var `header'.
36615         (gnus-group--setup-tool-bar-update): New function.
36616         (gnus-group-insert-group-line): Use it.
36617         (gnus-group-update-eval-form): Declare local
36618         dynamically-bound variables.
36619         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
36620         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
36621         (gnus-group-prepare-topics, gnus-topic-update-topic)
36622         (gnus-topic-change-level, gnus-topic-catchup-articles)
36623         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
36624         Use inhibit-read-only.
36625         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
36626         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
36627         * lisp/textmodes/reftex-index.el (reftex-display-index):
36628         Use cursor-intangible-mode if available.
36629         (reftex-index-post-command-hook): Check cursor-intangible.
36630         * lisp/textmodes/reftex-toc.el (reftex-toc):
36631         Use cursor-intangible-mode if available.
36632         (reftex-toc-recenter, reftex-toc-post-command-hook):
36633         Check cursor-intangible.
36634         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
36635         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
36636         (sgml-tags-invisible): Use with-silent-modifications and
36637         inhibit-read-only.  Enable cursor-sensor-mode.
36638         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
36639         calling convention of cursor-sensor-functions.
36640         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
36641         (table-point-entered-cell-hook, table-point-left-cell-hook):
36642         Don't autoload.
36643         (table-cell-entered-state): Remove var.
36644         (table--put-cell-point-entered/left-property)
36645         (table--remove-cell-properties):
36646         Use cursor-sensor-functions rather than point-entered/left.
36647         (table--point-entered/left-cell-function): Merge
36648         table--point-entered-cell-function and table--point-left-cell-function
36649         and adjust to calling convention of cursor-sensor-functions.
36651         Update ldef-boots.el
36653         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
36655         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
36657         Collapse successive char deletions in the undo log
36658         * src/cmds.c (remove_excessive_undo_boundaries): New function,
36659         extracted from Fself_insert_command.
36660         (Fdelete_char, Fself_insert_command): Use it.
36661         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
36662         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
36664         xterm and OSC 52: Add NEWS entry, and tweak the code
36665         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
36666         to top-level.
36667         (terminal-init-xterm-activate-set-selection): Set a terminal property.
36668         (xterm--set-selection): Use it instead of checking the value of
36669         `terminal-initted'.  Don't use string-bytes.
36671 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
36673         xterm.el: Implement OSC-52 functionality for setting the X selection
36674         * lisp/term/xterm.el (xterm-max-cut-length): New var.
36675         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
36676         New funs.
36677         (terminal-init-xterm, xterm--version-handler): Use them.
36679 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
36681         Remove left over code from when we used an obsolete/loaddefs.el file
36682         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
36683         when we used an obsolete/loaddefs.el file.
36685         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
36686         (semanticdb-without-unloaded-file-searches): Use declare.
36687         (semantic-fw-add-edebug-spec): Remove.
36689         * lisp/completion.el (completion-lisp-mode-hook):
36690         Use completion-separator-chars rather than local key binding.
36692         * src/*.c: Set deactivate_mark buffer-locally
36693         (Bug#20260)
36694         * src/insdel.c (prepare_to_modify_buffer_1):
36695         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
36696         buffer-locally.
36698 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
36700         python.el: Keep symmetry on sexp navigation with parens
36701         (Bug#19954)
36702         * lisp/progmodes/python.el
36703         (python-nav--forward-sexp): Add argument skip-parens-p.
36704         (python-nav-forward-sexp, python-nav-backward-sexp)
36705         (python-nav-forward-sexp-safe)
36706         (python-nav-backward-sexp-safe): Use it.
36707         * test/automated/python-tests.el
36708         (python-nav-forward-sexp-1): Fix test.
36710 2015-04-12  João Távora  <joaotavora@gmail.com>
36712         Don't use `setq-local' in Gnus code
36713         This might break upstream builds with older Emacsen
36714         * lisp/gnus/message.el (message-mode): Use `set' and
36715         `make-local-variable' instead of `setq-local'.
36717 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
36719         Update Makefile.in's .PHONY dependencies
36720         * Makefile.in (change-history-commit, master-branch-is-current)
36721         (no-ChangeLog): Now phony.
36723         Remove configure's --with-mmdf option
36724         * configure.ac (MAIL_USE_MMDF): Remove.
36725         * etc/NEWS: Document this.
36726         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
36727         (Bug#20308)
36729         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
36730         That way, 'make install' won't think it's a man page.
36731         Reported by Ashish SHUKLA in:
36732         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
36734         Improve 'make change-history' prereq tests
36735         * Makefile.in (gen_origin): Fix to match what's in the master branch.
36736         (no-ChangeLog, master-branch-is-current): New rules.
36737         (change-history): Depend on them, to avoid similar future problems.
36738         Escape the local-variables string to pacify Emacs when editing
36739         Makefile.in.
36741 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
36743         * test/automated/package-test.el (with-package-test):
36744         Kill Packages buffer.
36746         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
36747         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
36748         "Upgrade" last, and use capitalized instead of all-caps.
36750         * lisp/emacs-lisp/package.el: Completely silence async operations.
36751         (package--make-autoloads-and-stuff): Silence autoloads.
36752         (package--save-selected-packages): New function, silences
36753         `customize-save-variable'.
36754         (package--user-selected-p, package-install-from-buffer)
36755         (package-delete, package-install): Use it.
36756         (package-install-from-archive)
36757         (package-menu--perform-transaction): Silence.
36758         (package-menu-execute): Feedback when operation starts.
36760         Use delay-mode-hooks when visiting the init-file
36761         * lisp/emacs-lisp/package.el (package--ensure-init-file):
36762         delay-mode-hooks.
36763         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
36765         * lisp/files.el: Only message when saving if save-silently is nil.
36766         (save-silently): New variable.
36767         (files--message): New function.
36768         (find-file-noselect, save-buffer, basic-save-buffer)
36769         (basic-save-buffer-2, save-some-buffers, not-modified)
36770         (append-to-file): Use them.
36772 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
36774         Support debug declarations in pcase macros
36775         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
36776         (pcase-UPAT): Use it.  Remove "`".
36777         (pcase--edebug-match-macro): New function.
36778         (pcase-defmacro): Support debug declarations.
36779         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
36780         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
36781         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
36782         Add debug declaration.
36784         pcase.el: Edebug support for `app' and vector patterns
36785         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
36786         (pcase-UPAT): Use it.  Support `app' patterns.
36787         (pcase-QPAT): Support vector patterns.
36789         edebug.el: Disambiguate vector specifications
36790         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
36791         `(vector ...)' as a vector specification, not as a sublist.
36793         (gnus-summary-refer-thread): Don't clobber unread articles
36794         This fixes a bug where `A T' causes "random" articles to become marked
36795         as read.
36796         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
36797         gnus-newsgroup-unreads remains sorted.
36799         mouse-sel.el: Fix mouse-sel-get-selection-function
36800         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
36801         Use gui--last-selected-text-primary instead of no longer existing
36802         gui-last-selected-text.
36804         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
36806         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
36808 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
36810         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
36812         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
36813         right buffer.
36815         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
36816         (byte-compile--interactive): New var.
36817         (byte-compile--message): New function.
36818         (byte-compile-log-1, byte-force-recompile)
36819         (byte-recompile-directory, byte-recompile-file)
36820         (byte-compile-file, compile-defun)
36821         (byte-compile-file-form-defmumble, byte-compile)
36822         (byte-compile-file-form-defalias, display-call-tree): Use it.
36824         * lisp/files.el: Don't message when nothing happened.
36825         (save-some-buffers, basic-save-buffer): Before messaging to say
36826         "nothing was saved" check if (called-interactively-p 'any).
36828 2015-04-12  João Távora  <joaotavora@gmail.com>
36830         Summary: Improve sexp-based movement in message-mode
36831         Works by giving citations and smileys a different syntax.  This helps
36832         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
36833         sexp-based movement.
36834         * lisp/gnus/message.el (message--syntax-propertize): New function.
36835         (message-mode): Set syntax-related vars.
36836         (message-smileys): New variable.
36837         * test/automated/message-mode-tests.el: New file
36839 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
36841         Use bool for boolean in window.c
36842         * src/window.c: Omit unnecessary static function decls.
36843         (adjust_window_count, select_window, Fselect_window)
36844         (window_body_width, Fwindow_body_height, Fwindow_body_width)
36845         (set_window_hscroll, check_window_containing, Fwindow_at)
36846         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
36847         (unshow_buffer, replace_window, recombine_windows)
36848         (add_window_to_list, candidate_window_p, next_window)
36849         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
36850         (Fget_buffer_window, Fdelete_other_windows_internal)
36851         (replace_buffer_in_windows_safely, set_window_buffer)
36852         (Fset_window_buffer, Fforce_window_update)
36853         (temp_output_buffer_show, make_parent_window)
36854         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
36855         (resize_frame_windows, Fsplit_window_internal)
36856         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
36857         (Fresize_mini_window_internal, mark_window_cursors_off)
36858         (window_scroll, window_scroll_pixel_based)
36859         (window_scroll_line_based, scroll_command, Fscroll_other_window)
36860         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
36861         (Fmove_to_window_line, Fset_window_configuration)
36862         (delete_all_child_windows, apply_window_adjustment)
36863         (set_window_fringes, set_window_scroll_bars)
36864         (Fset_window_vscroll, foreach_window, foreach_window_1)
36865         (compare_window_configurations, Fcompare_window_configurations):
36866         Prefer 'bool', 'true', and 'false' for booleans.
36867         * src/window.h (WINDOW_MODE_LINE_LINES)
36868         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
36870 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
36872         Speed up byte-compilation and autoload generation by avoiding mode-hooks
36873         This prevents emacs-lisp-mode-hook from being run everytime an
36874         autoload file is generated, which can account for a fraction of
36875         package installation time depending on the hooks the user has
36876         configured.
36877         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
36878         * lisp/emacs-lisp/autoload.el (autoload-find-file)
36879         (autoload-find-generated-file): Use delay-mode-hooks.
36881         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
36882         (package-menu-refresh): Respect async and do new package checking.
36883         (list-packages): Use `package-menu-refresh' instead of repeating code.
36885         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
36886         (package--quick-help-keys): New variable.
36887         (package--prettify-quick-help-key): New function.
36888         (package-menu-quick-help): Use it.
36890         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
36891         (package--build-compatibility-table): Require finder.
36893         * test/automated/package-test.el: Fix new test.
36895         * lisp/emacs-lisp/package.el: Silence async operations.
36896         (package--silence): New variable.
36897         (package--message): New function.
36898         (package-import-keyring, package-refresh-contents)
36899         (package-compute-transaction, package-install, package-delete)
36900         (package-menu--perform-transaction, package-menu-execute): Use it.
36902         * test/automated/package-test.el: Test async functionality.
36903         (package-test-update-archives-async): New test.
36905 2015-04-11  Daiki Ueno  <ueno@gnu.org>
36907         Utilize `make-process' in epg.el
36908         * lisp/epg.el (epg-error-output): Abolish.
36909         (epg-context): New slot `error-buffer'.
36910         (epg--start): Use `make-process' and `make-pipe-process'.
36911         (epg--process-filter): Remove code separating stderr from stdout.
36912         (epg-wait-for-completion): Simplify `error-output' handling.
36913         (epg-reset): Dispose error buffer.
36915 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
36917         * .gitignore: Ignore doc temps and outputs.
36919         Port commit-msg to MSYS Bash+Gawk
36920         See Eli Zaretskii in:
36921         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
36922         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
36923         (cent_sign, print_at_sign, at_sign): Revert previous change.
36924         (print_at_sign): Prepend "BEGIN".
36925         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
36927         Port commit-msg to broken MS-Windows shell
36928         * build-aux/git-hooks/commit-msg (cent_sign):
36929         Just use UTF-8 here rather than ASCII + printf, as the latter fails
36930         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
36931         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
36933 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
36935         Support GnuTLS v3.4 and later on MS-Windows
36936         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
36937         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
36938         GnuTLS DLL to load according to value of libgnutls-version.
36939         (Bug#20294)
36941 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
36943         Minor quoting etc. fixes to misc manuals
36944         Fix some minor quoting and spacing issues.  Distinguish more
36945         clearly among grave accent and apostrophe (which are ASCII) and
36946         single quote (which is not).  Prefer the standard terms
36947         "apostrophe" and "grave accent" to alternative names that can be
36948         confusing.  Use apostrophes to single-quote ASCII text.
36949         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
36950         rather than approximating it in ASCII with grave accent.
36952 2015-04-11  Daiki Ueno  <ueno@gnu.org>
36954         Respect more keyword args in `make-process'
36955         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
36956         keywords as documented.
36958 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
36960         Extract ChangeLog entries when committing a directory
36961         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
36962         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
36963         Add a FIXME comment.
36964         (log-edit-changelog-entries): Extract from
36965         `log-edit-changelog-entries', handle FILE being a directory
36966         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
36968 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
36970         Fix problems found by --enable-gcc-warnings
36971         * src/process.c (create_process, Fmake_pipe_process)
36972         (Fmake_network_process): Omit unused locals.
36974         Fix commit-msg to handle scissors lines
36975         * build-aux/git-hooks/commit-msg:
36976         Ignore every line after a scissors line, such as a line generated
36977         by 'git commit -v'.  Problem reported by Johan Bockgård in:
36978         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
36980         port commit-msg to Gawk 3.0.4 (1999)
36981         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
36982         (print_at_sign, at_sign): New vars.  Use them to avoid problems
36983         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
36984         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
36986         Have commit-msg report commit failure
36987         * build-aux/git-hooks/commit-msg: If the commit is aborted,
36988         say so.  Simplify by doing this at the end.  Problem reported
36989         by Eli Zaretskii in:
36990         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
36992 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
36994         Clean up LDAP Configuration section of EUDC manual
36995         * doc/misc/eudc.texi: Combine indices.
36996         (LDAP Configuration): Use command markup.  Add index entries.
36997         Change formatting.  Wrap long lines.  Add noindent markup.
36999 2015-04-10  Daiki Ueno  <ueno@gnu.org>
37001         Add facility to collect stderr of async subprocess
37002         * src/w32.h (register_aux_fd): New function declaration.
37003         * src/w32.c (register_aux_fd): New function.
37004         * src/process.h (struct Lisp_Process): New member stderrproc.
37005         * src/process.c (PIPECONN_P): New macro.
37006         (PIPECONN1_P): New macro.
37007         (Fdelete_process, Fprocess_status, Fset_process_buffer)
37008         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
37009         (Fcontinue_process): Handle pipe process specially.
37010         (create_process): Respect p->stderrproc.
37011         (Fmake_pipe_process): New function.
37012         (Fmake_process): Add new keyword argument :stderr.
37013         (wait_reading_process_output): Specially handle a pipe process when
37014         it gets an EOF.
37015         (syms_of_process): Register Qpipe and Smake_pipe_process.
37016         * doc/lispref/processes.texi (Asynchronous Processes): Document
37017         `make-pipe-process' and `:stderr' keyword of `make-process'.
37018         * lisp/subr.el (start-process): Suggest to use `make-process' handle
37019         standard error separately.
37020         * test/automated/process-tests.el (process-test-stderr-buffer)
37021         (process-test-stderr-filter): New tests.
37022         * etc/NEWS: Mention new process type `pipe' and its usage with the
37023         `:stderr' keyword of `make-process'.
37025 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
37027         Minor quoting etc. fixes to lispref manual
37028         * doc/lispref/tips.texi (Documentation Tips):
37029         Distinguish more clearly among grave accent, apostrophe,
37030         and single quote.
37031         * doc/lispref/README, doc/lispref/buffers.texi:
37032         * doc/lispref/commands.texi, doc/lispref/control.texi:
37033         * doc/lispref/customize.texi, doc/lispref/display.texi:
37034         * doc/lispref/elisp.texi, doc/lispref/files.texi:
37035         * doc/lispref/frames.texi, doc/lispref/hash.texi:
37036         * doc/lispref/help.texi, doc/lispref/internals.texi:
37037         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
37038         * doc/lispref/markers.texi, doc/lispref/modes.texi:
37039         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
37040         * doc/lispref/os.texi, doc/lispref/positions.texi:
37041         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
37042         * doc/lispref/text.texi, doc/lispref/tips.texi:
37043         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
37044         Use American-style double quoting in ordinary text,
37045         and quote 'like this' when single-quoting in ASCII text.
37046         Also, fix some minor spacing issues.
37048 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
37050         Handle symlinked test directory in tramp-tests.el
37051         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
37052         (tramp--test-check-files): Use `file-truename' for directories.
37054 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
37056         Fix 'recenter' when visual-line-mode is turned on
37057         * src/window.c (Frecenter): Use the same code for GUI and TTY
37058         frames alike; use vmotion only for "initial" frames.  This is
37059         because vmotion doesn't support visual-line-mode.  Rewrite the
37060         'iarg >= 0' case to use move_it_* functions instead of using
37061         vmotion, for the same reason.  Fix the clipping of the argument
37062         value to support scroll-margin in all cases and avoid unwarranted
37063         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
37064         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
37065         which see.
37067 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
37069         * lisp/abbrev.el (define-abbrev-table): Refine last change.
37071         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
37072         use of c[ad]+r", so as to keep the "cl-" prefix on all
37073         cl-lib definitions.
37075         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
37076         Use inhibit-point-motion-hooks.
37078         * lisp/cedet/semantic: Remove some dead code.
37079         * lisp/cedet/semantic/util-modes.el
37080         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
37081         any more.
37082         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
37083         not supported any more.
37084         (semantic-safe): Use `declare'.
37085         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
37086         (semantic-tag-intangible-p): Remove unused functions.
37087         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
37088         Remove unused function.
37090         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
37091         (gnus-article-hide-text, gnus-article-unhide-text)
37092         (gnus-article-unhide-text-type): Remove special handling of
37093         `intangible' since that property is not used any more.
37094         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
37096 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
37098         Use the VC root in `log-edit-listfun'
37099         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
37100         `log-edit-listfun'.
37102 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
37104         Fix description of Unix time, mention new function.
37105         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
37106         Unix time.
37107         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
37108         (Basic Operations on Units): Mention `calc-convert-exact-units'.
37110 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
37112         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
37114 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
37116         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
37117         Don't add newline after the last entry.
37119 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
37121         css-mode.el: Add "not" pseudo-class
37122         (Bug#20267)
37123         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
37124         list of CSS pseudo-classes.
37126 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
37128         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
37130 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
37132         Stop messing with the EMACS env var
37133         * doc/emacs/misc.texi (Interactive Shell): Remove description of
37134         EMACS env var.
37136 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
37138         Adapt 'make change-history' to coding cookie
37139         * Makefile.in (change-history): Adjust to change of format of
37140         ChangeLog file, which now has a coding cookie before an indented
37141         copyright notice.
37143 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
37145         Adapt 'make change-history' to coding cookie
37146         * Makefile.in (change-history): Adjust to change of format of
37147         ChangeLog file, which now has a coding cookie before an indented
37148         copyright notice.
37150         gitlog-to-changelog coding cookie and mv -i
37151         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
37152         for copyright notice prototype, so that we get a proper "coding:"
37153         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
37154         existing ChangeLog.  Problems reported by Eli Zaretskii in:
37155         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
37157         Merge from gnulib
37158         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
37159         2015-04-09 gitlog-to-changelog: port to MS-Windows
37161 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
37163         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
37164         (Bug#20212)
37166 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
37168         Stop messing with the EMACS env var
37169         (Bug#20202)
37170         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
37171         * lisp/comint.el (comint-exec-1):
37172         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
37173         * lisp/progmodes/compile.el (compilation-start): Same and bring
37174         INSIDE_EMACS's format in line with other users.
37176         css-mode.el (css-smie-rules): Fix indentation after complex selectors
37177         (Bug#20282)
37178         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
37179         inner structure of selectors.
37181 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
37183         python.el: Indent docstring lines to base-indent
37184         (Bug#19595)
37185         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
37186         an initial patch.
37187         * lisp/progmodes/python.el
37188         (python-indent-context): Add :inside-docstring context.
37189         (python-indent--calculate-indentation): Handle :inside-docstring.
37190         (python-indent-region): Re-indent docstrings.
37191         * test/automated/python-tests.el (python-indent-region-5)
37192         (python-indent-inside-string-2): Fix tests.
37194         python.el: Increase native completion robustness
37195         (Bug#19755)
37196         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
37197         this and providing useful ideas.
37198         * lisp/progmodes/python.el
37199         (python-shell-completion-native-output-timeout): Increase value.
37200         (python-shell-completion-native-try-output-timeout): New var.
37201         (python-shell-completion-native-try): Use it.
37202         (python-shell-completion-native-setup): New readline setup avoids
37203         polluting current context, ensures output when no-completions are
37204         available and includes output end marker.
37205         (python-shell-completion-native-get-completions): Trigger with one
37206         tab only.  Call accept-process-output until output end is found or
37207         python-shell-completion-native-output-timeout is exceeded.
37209 2015-04-08  Samer Masterson  <samer@samertm.com>
37211         * lisp/eshell: Make backslash a no-op in front of normal chars
37212         (Bug#8531)
37213         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
37214         (eshell-parse-backslash): Return escaped character after backslash
37215         if it is special.  Otherwise, if the backslash is not in a quoted
37216         string, ignore the backslash and return the character after; if
37217         the backslash is in a quoted string, return the backslash and the
37218         character after.
37219         * test/automated/eshell.el (eshell-test/escape-nonspecial)
37220         (eshell-test/escape-nonspecial-unicode)
37221         (eshell-test/escape-nonspecial-quoted)
37222         (eshell-test/escape-special-quoted): Add tests for new
37223         `eshell-parse-backslash' behavior.
37225 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
37227         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
37228         after the file name.
37229         (Bug#20276)
37231 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
37233         Minor quoting etc. fixes to Emacs manual
37234         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
37235         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
37236         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
37237         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
37238         * doc/emacs/indent.texi, doc/emacs/macos.texi:
37239         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
37240         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
37241         * doc/emacs/search.texi, doc/emacs/trouble.texi:
37242         * doc/emacs/vc1-xtra.texi:
37243         Use American-style double quoting in ordinary text,
37244         and quote 'like this' when single-quoting in ASCII text.
37245         Also, fix some minor spacing issues.
37247         Minor quoting etc. fixes to elisp intro
37248         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
37249         American-style double quoting in ordinary text.  In ASCII text,
37250         consistently quote 'like this' instead of `like this', unless
37251         Emacs requires the latter.
37253 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
37255         * CONTRIBUTE: Mention log-edit-insert-changelog.
37257         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
37259 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
37261         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
37263 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
37265         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
37266         Fix inheritance of initargs.  (Bug#20270)
37268 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
37270         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
37271         while dowloading information.
37273         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
37274         (package--ensure-init-file): Check file contents before visiting.
37275         (package-initialize): Call it.
37276         (package-install-from-buffer, package-install): Don't call it.
37278 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
37280         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
37281         (Bug#17517)
37283 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
37285         * lisp/net/tramp-cache.el (tramp-flush-file-property):
37286         Fix nasty scoping bug.
37288 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
37290         Add notice to visual commands section
37291         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
37292         such as git call less with its -F option which omits pagination if
37293         the contents is less than one page long.  This interferes with
37294         eshell's visual (sub-)commands.
37296 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
37298         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
37299         environment variable expansion in file names.  (Bug#19839)
37301 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
37303         Prefer double-quote to accent-grave in man pages
37305 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
37307         (Bug#20257)
37308         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
37310 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
37312         Update etc/PROBLEMS.
37313         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
37314         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
37315         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
37316         respectively); other minor updates and tweaks.  (Bug#20011)
37318 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
37320         Add doc strings for some Isearch state vars
37321         * lisp/misearch.el (multi-isearch-buffer-list)
37322         (multi-isearch-file-list): Add doc strings.
37323         (Bug#20232)
37325 2015-04-07  Alan Mackenzie  <acm@muc.de>
37327         Always mark "<" and ">" in #include directives with text properties.
37328         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
37329         "anchored matcher" with an invocation of
37330         c-make-font-lock-search-function to allow fontification when there's
37331         no trailing space on an "#include <..>" line.
37333 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
37335         Generate a ChangeLog file from commit logs
37336         * .gitignore: Add 'ChangeLog'.
37337         * build-aux/gitlog-to-changelog: New file, from Gnulib.
37338         * build-aux/gitlog-to-emacslog: New file.
37339         * CONTRIBUTE: Document the revised workflow.
37340         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
37341         instead of just special cases.
37342         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
37343         (ChangeLog, unchanged-history-files, change-history)
37344         (change-history-commit): New rules.
37345         * admin/admin.el (make-manuals-dist--1):
37346         Don't worry about doc/ChangeLog.
37347         * admin/authors.el: Add a FIXME.
37348         * admin/make-tarball.txt:
37349         * lisp/calendar/icalendar.el:
37350         * lisp/gnus/deuglify.el:
37351         * lisp/obsolete/gulp.el:
37352         * lwlib/README:
37353         Adjust to renamed ChangeLog history files.
37354         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
37355         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
37356         Remove obsolete discussion of merging ChangeLog files.
37357         New section "Maintaining ChangeLog history".
37358         * build-aux/git-hooks/pre-commit:
37359         Reject attempts to commit files named 'ChangeLog'.
37360         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
37361         * make-dist: Make and distribute top-level ChangeLog if there's a
37362         .git directory.  Distribute the new ChangeLog history files
37363         instead of scattered ChangeLog files.  Distribute the new files
37364         gitlog-to-changelog and gitlog-to-emacslog.
37365         (Bug#19113)
37367         Rename ChangeLogs for gitlog-to-changelog
37368         This patch was implemented via the following shell commands:
37369         find * -name ChangeLog |
37370         sed 's,.*,git mv & &.1,
37371         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
37372         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
37373         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
37374         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
37375         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
37376         sh
37377         git commit -am"[this commit message]"
37379 This file records repository revisions from
37380 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
37381 2016-08-05faead6df626b3737c10f98e9c4964232aa6b9 (inclusive).
37382 2016-06-19d77d8dbd5b051bb681bacaee4a6faffbbdde9 (inclusive).
37383 2016-03-04a00c6cfb5f3cafbad92bd4584a0f50343a568 (inclusive).
37384 2016-02-15decb15e0496cec0c48d980c88a5a9d7cc00da (inclusive).
37385 2016-02-04b6d89ff9288a49099f041752908b5eb9613e (inclusive).
37386 commit ba1422e12f80ae1eb2aa9d0ce80c14e3ee4b3950 (inclusive).
37387 See ChangeLog.1 for earlier changes.
37389 ;; Local Variables:
37390 ;; coding: utf-8
37391 ;; End:
37393   Copyright (C) 2015-2016 Free Software Foundation, Inc.
37395   This file is part of GNU Emacs.
37397   GNU Emacs is free software: you can redistribute it and/or modify
37398   it under the terms of the GNU General Public License as published by
37399   the Free Software Foundation, either version 3 of the License, or
37400   (at your option) any later version.
37402   GNU Emacs is distributed in the hope that it will be useful,
37403   but WITHOUT ANY WARRANTY; without even the implied warranty of
37404   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
37405   GNU General Public License for more details.
37407   You should have received a copy of the GNU General Public License
37408   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.