* etc/AUTHORS: Update the AUTHORS file
[emacs.git] / ChangeLog.2
blobf2964efcded43bf0bd1051af497fb9564d5c59a5
1 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
3         * admin/authors.el (authors-valid-file-names): Addition.
5 2016-07-23  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-07-23  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-07-23  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-07-21  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-07-21  Achim Gratz  <Stromeko@nexgo.de>
45         * etc/PROBLEMS: Add entry about selection problems under Plasma 5.
47         Bug#24013
49 2016-07-21  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-07-21  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-07-17  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-07-17  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-07-16  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-07-15  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-07-15  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-07-14  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-07-14  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-07-14  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-07-14  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-07-13  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-07-12  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-07-12  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-07-12  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-07-10  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-07-10  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-07-10  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-07-09  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-07-09  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-07-09  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-07-08  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-07-07  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-07-06  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-07-06  Martin Rudalics  <rudalics@gmx.at>
274         Amend last addition to etc/PROBLEMS
276         * etc/PROBLEMS: Mention GTK+ problem with unexpected frame widenings
278 2016-07-06  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-07-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-07-04  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-07-03  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-07-03  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-07-03  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-07-02  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-07-01  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-06-30  Michael Albinus  <michael.albinus@gmx.de>
357         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
359 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
361         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23865)
363 2016-06-29  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-06-28  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-06-28  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-06-27  Eli Zaretskii  <eliz@gnu.org>
387         * lisp/leim/quail/indian.el ("bengali-probhat"): Change indicator to BngPB.
389 2016-06-27  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-06-27  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-06-27  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-06-26  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-06-26  উৎসব রায়  <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-06-25  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-06-23  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-06-22  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-06-22  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-06-22  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-06-21  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-06-21  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-06-20  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-06-20  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-06-18  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-06-18  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-06-17  Glenn Morris  <rgm@gnu.org>
525         * doc/misc/cl.texi (Usage): Add some more details.
527 2016-06-17  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-06-16  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-06-16  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-06-15  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-06-14  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-06-14  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-06-13  Glenn Morris  <rgm@gnu.org>
584         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
585         autoloads as aliases.  (Bug#21299)
587 2016-06-13  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-06-13  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-06-13  Eli Zaretskii  <eliz@gnu.org>
613         * doc/lispref/processes.texi (Process Buffers): Minor rewording.  (Bug#23446)
615 2016-06-13  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-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
624         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
626         Don't rewrite (funcall 'f ...) to (f ...).
628 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
630         Restore initial undo boundary with viper
632         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Add back last undo
633           boundary if it has been removed.
635         Addresses Bug#22295.
637 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
639         Revert "Fix viper undo breakage from undo-boundary changes"
641         This reverts commit c0139e32f1f3bb287b04e02a69a7848d6a040003.
643 2016-06-11  Ken Brown  <kbrown@cornell.edu>
645         Fix dbus crash on 32-bit Cygwin
647         * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store
648         connection address.  (Bug#23741)
649         (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection
650         address.
652 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
654         Bump version to 25.0.95
656         * README:
657         * configure.ac:
658         * lisp/ldefs-boot.el:
659         * msdos/sed2v2.inp: Bump Emacs version to 25.0.95.
661 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
663         * etc/AUTHORS: Update the AUTHORS file
665 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
667         add entries to authors.el
669         * admin/authors.el (authors-renamed-files-alist): Add char-fold files.
671 2016-06-10  Jules Tamagnan  <jtamagnan@gmail.com>
673         Fix eldoc-related freezes in python mode
675         * lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
676         (python-eldoc-function-timeout)
677         (python-eldoc-function-timeout-permanent): New defcustoms.
678         (python-eldoc-function): If python-eldoc--get-doc-at-point times
679         out, effectively turn off ElDoc in current buffer.  (Bug#23609)
681 2016-06-09  Martin Rudalics  <rudalics@gmx.at>
683         Handle mouse leaving initial window in `mouse-set-region' (Bug#23707)
685         * lisp/mouse.el (mouse-set-region): If the mouse ends up in
686         another window or on the menu bar, use `window-point' of
687         selected window instead of `posn-point' of the event end
688         (Bug#23707).
690 2016-06-08  Marco Wahl  <marcowahlsoft@gmail.com>
692         org.el: Fix bindings of < and > for calendar scrolling
694         [This patch taken from upstream Org repo with 8b63dc9 dated
695         2014-10-20 (Bug#23725).]
696         * lisp/org/org.el (org-read-date-minibuffer-local-map):
697         Switch to the current calendar API for scrolling the calendar.
699 2016-06-08  Phillip Lord  <phillip.lord@russet.org.uk>
701         Fix undo boundary in recursive edit (Bug#23632)
703          * src/keyboard.c (recursive_edit_1): specbind
704            undo-auto--undoably-changed-buffers.
705          * lisp/simple.el (undo-auto--undoably-changed-buffers):
706            fix docstring.
708 2016-06-07  Glenn Morris  <rgm@gnu.org>
710         Doc fixes re alist-get.  (Bug#23548)
712         * lisp/subr.el (alist-get): Doc fix.
713         * doc/lispref/lists.texi (Association Lists): Improve alist-get.
715 2016-06-07  Glenn Morris  <rgm@gnu.org>
717         * lisp/progmodes/python.el (inferior-python-mode):
718         Avoid tabs.  (Bug#23616)
720         * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>: Doc fix.
722 2016-06-07  Tino Calancha  <f92capac@gmail.com>
724         * lisp/help-fns.el (describe-function-1):
725         Fix handling of file name for aliases.  (Bug#21950)
727         * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
729         * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
731 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
733         Fix crash in syntax.c after GC
735         Problem reported by Vincent Belaïche (Bug#23704).
736         * src/syntax.c (skip_chars): Recompute pointers into the
737         buffer after every call to update_syntax_table_forward,
738         as it can GC.
740 2016-06-06  Dmitry Gutov  <dgutov@yandex.ru>
742         Improve squiggly heredoc support in non-SMIE Ruby mode
744         * lisp/progmodes/ruby-mode.el (ruby-parse-partial): Support
745         squiggly heredocs here, too (port from upstream).
747 2016-06-06  Stephen Berman  <stephen.berman@gmx.net>
749         Fix doc string quoting
751         * lisp/files.el (shell-quote-wildcard-pattern):
752         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
753         * lisp/subr.el (replace-regexp-in-string):
754         * lisp/view.el (view-mode):
755         * src/nsfns.m (syms_of_nsfns):
756         * src/syntax.c (Fbackward_prefix_chars):
757         Fix quoting problems in doc strings (Bug#23696).
759 2016-06-05  Martin Rudalics  <rudalics@gmx.at>
761         Fix mouse dragging of vertical dividers with scroll bars on left (Bug#23690)
763         * lisp/mouse.el (mouse-drag-line): With scroll bars on the left
764         adjust trailing edge of window on the left when dragging the
765         vertical divider of the mode line.  (Bug#23690)
767 2016-06-04  Eli Zaretskii  <eliz@gnu.org>
769         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
771         (Bug#23641)
773 2016-05-31  Glenn Morris  <rgm@gnu.org>
775         * test/automated/viper-tests.el (viper-test-undo-kmacro):
776         Delete temp-file at end.
778         * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
780         * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
782         * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table):
783         Fix typo.  (Bug#23654)
785 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
787         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
789 2016-05-30  Bill Wohler  <wohler@newt.com>
791         Correct cl-flet usage (Bug#22317)
793         * lisp/mh-e/mh-compat.el: Rename mh-cl-flet to mh-flet and convert alias to
794         macro using patch from Katsumi Yamaoka <yamaoka@jpl.org>.
795         * lisp/mh-e/mh-thread.el (mh-thread-set-tables):
796         * lisp/mh-e/mh-show.el (mh-gnus-article-highlight-citation):
797         * lisp/mh-e/mh-mime.el (mh-display-with-external-viewer):
798         (mh-mime-display, mh-press-button, mh-push-button):
799         (mh-display-emphasis): Call mh-flet instead of mh-cl-flet.
801 2016-05-30  Bill Wohler  <wohler@newt.com>
803         Release MH-E manual version 8.6
805         * doc/misc/mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH):
806         Update for release 8.6.
808 2016-05-30  Mike Kupfer  <m.kupfer@acm.org>
810         Update MH-E's documentation about HTML renderers
812         * doc/misc/mh-e.texi (HTML): Remove the footnote with the minimum Gnus
813         version (we are no longer trying to support multiple Emacs
814         releases). Sort the table of HTML renderers by name (the previous
815         ordering was based on a 10-year-old survey). Add shr and gnus-w3m to
816         the table. Remove the entry for w3 (no longer available).  Update
817         existing entries so that they are more consistent about what features
818         are discussed, and to reflect recent testing (Debian 8). Small tweaks
819         to existing text.
821 2016-05-30  Dmitry Gutov  <dgutov@yandex.ru>
823         Fx the we->the typo
825         * doc/emacs/trouble.texi (Sending Patches):
826         Fix the typo (bug#23657).
828 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
830         Restore frames into the current display by default
832         * lisp/desktop.el (desktop-restore-in-current-display):
833         Default to t, not nil (Bug#23604).
834         * etc/NEWS: Mention the change.
836 2016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
838         * lisp/recentf.el (recentf-open-files-item): Quick fix for (bug#22434).
840         etc/TODO: Remove out-of-place issue
842 2016-05-29  Eli Zaretskii  <eliz@gnu.org>
844         Clarify doc string of 'file-name-sans-extension'
846         * lisp/files.el (file-name-sans-extension, file-name-extension):
847         Clarify in the doc strings what is the extension, and which
848         leading period doesn't count.  (Bug#23643)
850 2016-05-28  Eli Zaretskii  <eliz@gnu.org>
852         Fix the MSDOS build
854         * msdos/sed1v2.inp (PAXCTL_dumped, PAXCTL_notdumped): Define to
855         empty, and remove the lines which use them in recipes, as that
856         causes weird error message from Make and breaks the MSDOS build.
858 2016-05-28  Andreas Schwab  <schwab@linux-m68k.org>
860         * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Call
861         substitute-command-keys to undo help--docstring-quote. (Bug#23634)
863 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
865         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
867 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
869         Fix infloop in 'number-sequence'
871         * lisp/subr.el (number-sequence): Avoid overflow leading to an
872         infloop.  (Bug#23627)
874         * test/automated/subr-tests.el (number-sequence-test): New test.
876 2016-05-26  Glenn Morris  <rgm@gnu.org>
878         * lisp/emacs-lisp/find-func.el (find-function-library):
880         Update for symbol-function no longer erroring.  (Bug#23626)
882 2016-05-26  Glenn Morris  <rgm@gnu.org>
884         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
885         (w32-get-valid-locale-ids): Improve declarations.
887 2016-05-26  Vincent Belaïche  <vincentb1@users.sourceforge.net>
889         Correct old cell name unbinding when renaming cell.
891         Bug is to unbind old cell names when renaming a cell with
892         'makunbound'. when the old cell name is of A1 type, then
893         'kill-local-variable' must be used instead, so that only the current
894         spreadsheet is affected. When the old cell name is a renamed cell,
895         then 'ses--unbind-cell-name' must be used in order to remove the old
896         name from the name hashmap.
898         * lisp/ses.el (ses-rename-cell): check consistency of cell symbol from
899         text-property and from array object. Instead of 'makunbound', use
900         either 'ses--unbind-cell-name' or 'kill-local-variable' depending on
901         whether the cell old name is a named cell or an A1 type cell
903 2016-05-25  Vincent Belaïche  <vincentb1@users.sourceforge.net>
905         Document problem: slow screen refresh on missing font.
907         See discussion of bug#22519 for more on this.
909 2016-05-25  Glenn Morris  <rgm@gnu.org>
911         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
913 2016-05-25  Glenn Morris  <rgm@gnu.org>
915         * build-aux/gitlog-to-emacslog: Handle empty generated ChangeLog.
917         This is relevant for M-x add-release-logs right after M-x authors.
919 2016-05-25  Glenn Morris  <rgm@gnu.org>
921         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
923 2016-05-25  Paul Eggert  <eggert@cs.ucla.edu>
925         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
927 2016-05-25  Glenn Morris  <rgm@gnu.org>
929         * admin/authors.el (authors): First update the ChangeLog.
931         * admin/make-tarball.txt: Related updates.
933 2016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
935         Rename vc-stay-local back to vc-cvs-stay-local
937         * lisp/vc/vc-cvs.el (vc-cvs-stay-local): Rename back from
938         vc-stay-local (bug#19548).  Improve the docstring.
939         (vc-cvs-stay-local-p): Update accordingly.
941 2016-05-24  Glenn Morris  <rgm@gnu.org>
943         * doc/emacs/files.texi (Comparing Files):
944         * doc/emacs/trouble.texi (Sending Patches): Fix external xrefs.
946         * doc/misc/eww.texi (Advanced): Fix xref.
948 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
950         Fix cross-references between manuals
952         * doc/misc/viper.texi (Viper Specials):
953         * doc/misc/url.texi (Tramp):
954         * doc/misc/sem-user.texi (Smart Jump):
955         * doc/lispintro/emacs-lisp-intro.texi (Finding More):
956         * doc/misc/efaq.texi (Replacing text across multiple files): Fix
957         cross-references between manuals.  (Bug#23612)
958         * doc/lispintro/emacs-lisp-intro.texi (etags): Node deleted: no
959         longer relevant to Emacs Lisp programming.
961 2016-05-24  Glenn Morris  <rgm@gnu.org>
963         * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to avoid ".".
965         * admin/admin.el (add-release-logs): Also update etc/HISTORY.
967 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
969         Avoid aborting due to errors in arguments of 'set-face-attribute'
971         * src/xfaces.c (Finternal_set_lisp_face_attribute): Check the
972         FRAME argument before using it.  This avoids gratuitous aborts in
973         Emacs built with --enable-checking when the luser was unlucky
974         enough to get the argument list in wrong order.
976 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
978         Add automated test for viper-tests.el
980 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
982         Fix viper undo breakage from undo-boundary changes
984         * lisp/simple.el (undo-auto-disable-boundaries): New variable
985         * lisp/emulation/viper-init.el (viper-undo-in-complex-command,
986           viper-undo-needs-adjustment): Rename
987           variable to reflect new purpose,
988           (viper-buffer-undo-list-mark): Remove
989         * lisp/emulation/viper-cmd.el (viper-set-complex-command-for-undo):
990           Add undo using `undo-boundary', disable default undo-boundary
991           addition.
992         * lisp/emulation/viper-cmd.el
993           (viper-complete-complex-command-for-undo,viper-adjust-undo):
994           Change function name, remove old undo list manipulation.
995         * lisp/emulation/viper-cmd.el (viper-undo,viper-repeat,
996           viper-change-state-to-vi,viper-change-state):
997           Update for function name change.
999         Addresses Bug #22295
1001 2016-05-22  Kaushal Modi  <kaushal.modi@gmail.com>
1003         Fix reference to obsolete fn ps-eval-switch
1005         lpr-eval-switch is functionally the same as ps-eval-switch,
1006         which was obsoleted in 2cdeb903c57126d3ad5f0cbd72e182584b76ee29.
1007         So use that instead (Bug#19717).
1008         * lisp/printing.el (pr-switches): Use lpr-eval-switch instead of
1009         ps-eval-switch.
1011 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
1013         Do not trash symlinks to init file
1015         If the user’s init file is a symbolic link, do not break the link
1016         when initializing the package system.  Problem reported by Jackson
1017         Hamilton (Bug#23050).
1018         * lisp/emacs-lisp/package.el (package--ensure-init-file):
1019         Bind find-file-visit-truename when visiting the init file, and
1020         save and restore the buffer name the way cus-edit does in a
1021         similar situation (Bug#454).
1023 2016-05-22  Alan Mackenzie  <acm@muc.de>
1025         Don't print the "decomposition" line for control chars in what-cursor-position
1027         This is a temporary workaround for bug #23594, where the decomposition line
1028         for linefeed corrupted the display on a Linux virtual terminal.
1030         * lisp/descr-text.el (describe-char): Remove `decomposition' from the list of
1031         character code properties printed for control characters.
1033 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
1035         Bring back xterm pasting with middle mouse
1037         Problem reported by Jan Synáček.
1038         Solution suggested by Stefan Monnier (Bug#23519).
1039         * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
1040         (xterm--pasted-text): New decl.
1041         (isearch-xterm-paste): New function.
1042         * lisp/term/xterm.el (xterm--pasted-text): New function,
1043         taken from xterm-paste internals.
1044         (xterm-paste): Use it.
1046 2016-05-22  Eli Zaretskii  <eliz@gnu.org>
1048         Provide workaround for xftfont rendering problem
1050         * src/xftfont.c (syms_of_xftfont) <xft-font-ascent-descent-override>:
1051         New variable.
1052         (xftfont_open): Use it to work around problems with rendering some
1053         fonts.  (Bug#23360)
1055 2016-05-21  Jun Hao  <jun_hao@aol.com>
1057         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
1059         (Bug#17693)
1061 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
1063         Mention GTK+ problems in etc/PROBLEMS
1065         * etc/PROBLEMS (GDK_SCALE, GDK_DPI_SCALE): Mention the possible
1066         problems this could create and the workaround.  (Bug#23587)
1068 2016-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
1070         * lisp/emacs-lisp/package.el (package-refresh-contents):
1072         Don't change the value of `package-check-signature'.
1073         (package-check-signature): Use `epg-find-configuration'
1074         instead of `executable-find'.
1076 2016-05-20  Daiki Ueno  <ueno@gnu.org>
1078         Revert "epg: Add a way to detect gpg1 executable for tests"
1080         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
1082 2016-05-19  Eli Zaretskii  <eliz@gnu.org>
1084         Avoid errors with Czech and Slovak input methods
1086         * lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
1087         (slovak-prog-3): Remove the kp-* key bindings, they are not needed
1088         and cause errors in "C-u C-x =".
1089         * lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
1090         (czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
1091         (Bug#23559)
1093 2016-05-19  Daiki Ueno  <ueno@gnu.org>
1095         epg: Add a way to detect gpg1 executable for tests
1097         Fixes bug#23561.
1099         * test/automated/epg-tests.el
1100         (epg-tests-program-alist-for-passphrase-callback): New
1101         constant.
1102         (epg-tests-find-usable-gpg-configuration): New function,
1103         renamed from `epg-tests-gpg-usable'.  All callers changed.
1104         (epg-tests-gpg-usable): Remove.
1106         * lisp/epg-config.el (epg-config--program-alist): Factor out
1107         constructor element to...
1108         (epg-config--configuration-constructor-alist): ...here.
1109         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
1110         and add PROGRAM-ALIST argument.
1112 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
1114         * lisp/emacs-lisp/package.el: Fix free variable warnings.
1116         (package--with-response-buffer): Replace two usages of
1117         `macroexp-let2*' with `let'.
1119 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
1121         * lisp/emacs-lisp/package.el (package--with-response-buffer):
1123         Fix some macro locals leaking into body.  (Bug#22440)
1125         * test/automated/package-test.el (package-test-signed):
1126         Manually check all possible values of `package-check-signature'.
1128 2016-05-18  Eli Zaretskii  <eliz@gnu.org>
1130         Improve documentation of 'server-name'
1132         * doc/emacs/misc.texi (Emacs Server): Fix example of setting
1133         'server-name'.  Mention how to do that with daemon sessions.
1134         (Bug#23576)
1136 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
1138         Modernize ASLR advice in etc/PROBLEMS
1140         * etc/PROBLEMS (Segfault during 'make'): Modernize advice for
1141         seccomp, Docker, and NetBSD (Bug#23529).
1143 2016-05-17  Juri Linkov  <juri@linkov.net>
1145         * lisp/char-fold.el: Rename from character-fold.el.
1147         * lisp/replace.el (replace-char-fold): Rename from replace-character-fold.
1148         * test/automated/char-fold-tests.el: Rename from character-fold-tests.el.
1149         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00529.html
1151 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
1153         Bump version to 25.0.94
1155         * README:
1156         * configure.ac:
1157         * msdos/sed2v2.inp: Bump Emacs version to 25.0.94.
1159 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
1161         etc/AUTHORS: Update the AUTHORS file
1163 2016-05-16  Alan Third  <alan@idiocy.org>
1165         Fix bug#23462: Crash when iconifying frame on OS X.
1167         * src/nsterm.m (x_iconify_frame): Block input while miniaturize is
1168         running.
1170 2016-05-16  Paul Eggert  <eggert@cs.ucla.edu>
1172         Avoid shrinking windows with Gtk+ 3.20.3
1174         Problem reported by Matthias Clasen (Bug#23144).
1175         This was fixed in a different way in master.
1176         Do not merge to master.
1177         * src/xterm.c (handle_one_xevent) [GTK_CHECK_VERSION (3, 20, 3)]:
1178         Do not call xg_frame_resized in the MapNotify case.
1180 2016-05-16  Eli Zaretskii  <eliz@gnu.org>
1182         Fix bug in default setting of 'ps-paper-type'
1184         * lisp/international/mule-cmds.el (set-locale-environment): Don't
1185         inherit the value of locale from previous examination of different
1186         environment variables, which didn't look at LC_PAPER, and so using
1187         that value would effectively ignore the setting of LC_PAPER.
1188         (Bug#23544)
1190 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
1192         Properly reject malformed or empty package sigs
1194         Problem report and fix by Lizzie Dixon (Bug#23513).
1195         * lisp/emacs-lisp/package.el (package--check-signature-content):
1196         Report an error if no good signatures OR if a fatal error.  Not AND.
1198 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
1200         Remove buggy non-native image scrolling
1202         This never worked, and could cause infinite recursion.
1203         Problem reported by Glenn Morris (Bug#22465).
1204         * lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
1205         All uses removed.
1207 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
1209         * doc/misc/texinfo.tex: Sync from gnulib.
1211 2016-05-12  Glenn Morris  <rgm@gnu.org>
1213         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
1214         (find-alias-regexp): Fix :version.
1216 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
1218         Do not mistake colon at the end of regexp for slash symbol
1220         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
1221         Check the parse state in the "Symbols with special characters"
1222         rule (bug#23515).
1224 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
1226         Make package-install-from-buffer not move point
1228         * lisp/emacs-lisp/package.el (package-install-from-buffer):
1229         Use save-excursion here (bug#22616).
1231 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
1233         Redo the fix for bug#21839
1235         * lisp/help.el (help-add-fundoc-usage): Undo the previous change.
1236         (help--make-usage-docstring): Escape newlines when printing.
1238         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
1239         Ditto (bug#21839).
1241 2016-05-10  Dmitry Gutov  <dgutov@yandex.ru>
1243         Don't treat JS spread as contination method call
1245         * lisp/progmodes/js.el (js--indent-operator-re):
1246         Allow only one dot (bug#23492).
1248         * test/indent/js.js (default): Add a corresponding example.
1250 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
1252         Allow newlines inside cl function arglists
1254         * lisp/help.el (help-add-fundoc-usage): Allow newlines inside
1255         ARGLIST (bug#21839).
1257 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
1259         Publicize cl--generic-all-functions
1261         * lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
1262         Rename from cl--generic-all-functions.  Update both callers.
1264         * lisp/cedet/semantic/db-el.el
1265         (semanticdb-find-tags-external-children-of-type-method):
1266         And use it here (bug#23042).
1268 2016-05-09  Alan Mackenzie  <acm@muc.de>
1270         Add some "safe-local-variable" declarations for compatibility with master.
1272         These enable C files from the master repository to be visited in Emacs 25
1273         without generating irritating questions about configuration variable safety.
1275         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
1276         functions.
1277         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
1278         safe-local-variable property c-string-list-p.
1279         (c-macro-names-with-semicolon): give the safe-local-variable property
1280         c-string-or-string-list-p.
1282 2016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
1284         Fix doc string in `insert'
1286         * src/editfns.c (Finsert_and_inherit): The before-insertion
1287         markers do not move.
1288         (Finsert): Ditto.
1290 2016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
1292         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
1294 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
1296         Say 'All results processed' at the end
1298         * lisp/progmodes/xref.el (xref--query-replace-1):
1299         Say 'All results processed' at the end if the user hadn't
1300         cancelled the process (bug#23284).
1302 2016-05-07  Eli Zaretskii  <eliz@gnu.org>
1304         Document automatic adjustment of process' logical window dimensions
1306         * doc/lispref/processes.texi (Process Buffers): Document
1307         'set-process-window-size' and
1308         'window-adjust-process-window-size-function'.
1310         * etc/NEWS: Mention the new functionality and variable.
1312         * src/process.c (Fset_process_window_size): Improve the doc string.
1314 2016-05-06  Michael Albinus  <michael.albinus@gmx.de>
1316         tramp-sh.el: Work around a stat bug (backport from master)
1318         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
1319         stat versions which produce shell quoted output.  See also
1320         coreutils Bug#23422.
1322         (cherry picked from commit 6aad36ace9953b9672b13be68416d205532d5e59)
1324 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
1326         Doc fixes for fclist and grep
1328         A newline is needed between two fc-list calls.
1329         egrep and fgrep have been withdrawn from POSIX,
1330         so document grep -E and grep -F instead.
1332 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
1334         Minor doc fixes for quoting
1336         * doc/lispref/control.texi (Signaling Errors):
1337         * doc/lispref/display.texi (Displaying Messages):
1338         Don’t say that formats “generate”.  Try to word more clearly.
1339         * etc/NEWS: Coalesce near-duplicate entries.
1341 2016-05-05  Dmitry Gutov  <dgutov@yandex.ru>
1343         `nreverse' the marker pairs list
1345         * lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
1346         the marker pairs list for each buffer before returning.
1348 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
1350         Use save-excursion in xref-location-marker more
1352         * lisp/progmodes/elisp-mode.el (xref-location-marker): Use
1353         save-excursion, in order not to alter the value of point if the
1354         buffer is currently open in the background (problem reported by
1355         Robert Weiner).
1357         * lisp/progmodes/etags.el (xref-location-marker): Same.
1359 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
1361         shell-quote-argument DIR when appropriate
1363         * lisp/progmodes/project.el (project-file-completion-table):
1364         `shell-quote-argument' DIR as well.
1366         * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
1367         `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
1368         pointing out the problem.  Assert that DIR doesn't start with `~'.
1370 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
1372         Rework xref-query-replace-in-results
1374         * lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
1375         all xrefs from the buffer first, then delegate most of the
1376         processing to the value returned by xref--buf-pairs-iterator.
1377         (xref--buf-pairs-iterator): New function.  Return an "iterator"
1378         which partitions returned markers into buffers, and only processes
1379         markers from one buffer at a time.  When an xref is out of date,
1380         skip it with a message instead of signaling error (bug#23284).
1381         (xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
1382         CR from both strings before comparing.
1383         (xref--query-replace-1): Remove the variable current-buf, no need
1384         to track it anymore.  Simplify the filter-predicate and search
1385         functions accordingly.  Iterate over buffer-markers pairs returned
1386         by the iterator, and call `perform-replace' for each of them.  Use
1387         multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
1388         time after the first, in order not to jump between windows.
1390         * test/automated/xref-tests.el
1391         (xref--buf-pairs-iterator-groups-markers-by-buffers-1)
1392         (xref--buf-pairs-iterator-groups-markers-by-buffers-2)
1393         (xref--buf-pairs-iterator-cleans-up-markers): New tests.
1395 2016-05-04  Juri Linkov  <juri@linkov.net>
1397         * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
1399         to set minibuffer-local value of text-property-default-nonsticky.
1400         (Bug#23418, bug#23127)
1402 2016-05-04  Stephen Berman  <stephen.berman@gmx.net>
1404         Fix todo-mode bug involving archived items (bug#23447)
1406         * lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
1407         from Todo Categories mode to a category with only archived items
1408         and todo-skip-archived-categories is non-nil, make sure the
1409         archive file buffer is in Todo Archive mode to prevent
1410         todo-category-select from raising an error, and don't set
1411         todo-current-todo-file, since that makes todo-show display the
1412         archived category.  Remove a no-op call to kill-buffer, which is
1413         already called in todo-insert-category-line.
1415 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
1417         Handle "empty line" regexp in xref searches
1419         * lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
1420         match if re-search-forward doesn't move point (bug#23426).
1422         * test/automated/xref-tests.el
1423         (xref-collect-matches-finds-an-empty-line-regexp-match):
1424         Uncomment test.
1426 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
1428         Add tests for xref-collect-matches
1430         * test/automated/xref-tests.el: New file.  Add tests for
1431         xref-collect-matches.
1433 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
1435         Use grep-find-ignored-directories instead of vc-directory-exclusion-list
1437         * lisp/dired-aux.el (dired-do-find-regexp):
1438         Use grep-find-ignored-directories instead of
1439         vc-directory-exclusion-list.  The result should be functionally
1440         similar (the former uses the latter as the default value), but it
1441         should be more consistent and appropriate WRT user
1442         customizations.
1443         (dired-do-find-regexp-and-replace): Update the docstring.
1445         * lisp/dired.el: Update the corresponding autoloads.
1447         * doc/emacs/dired.texi (Operating on Files): Update the
1448         documentation accordingly.
1450 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
1452         Clear buffer-undo-list when showing xrefs
1454         * lisp/progmodes/xref.el (xref--show-xref-buffer): Clear
1455         buffer-undo-list and temporarily bind it to t while rendering the
1456         buffer contents.
1458 2016-05-03  Alan Mackenzie  <acm@muc.de>
1460         Note the quote translation in `message' in section "incompatible changes".
1462         * etc/NEWS: Note that `message' translates quotes, that the translation
1463         cannot be disabled, and that `format' can be used to get the old
1464         behavior back.
1466 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
1468         * etc/NEWS: Mention (message "%s" (format ...)).
1470 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
1472         (Common Keywords): Correct what missing :group means
1474         * doc/lispref/customize.texi (Common Keywords): Correct what
1475         missing :group means.
1477 2016-05-03  Eli Zaretskii  <eliz@gnu.org>
1479         Improve documentation of Dired's 'A' and 'Q' commands
1481         * lisp/dired-aux.el (dired-do-find-regexp)
1482         (dired-do-find-regexp-and-replace): Mention
1483         'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
1484         also the fact that REGEXP should be palatable by Grep.  (Bug#23426)
1485         * lisp/dired.el: Update the corresponding autoload forms.
1487         * doc/emacs/dired.texi (Operating on Files): Mention
1488         'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
1489         (Bug#23429)
1491 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
1493         Doc fixes for quoting
1495         * doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
1496         * doc/lispref/control.texi, doc/lispref/display.texi:
1497         * doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
1498         * src/callint.c, src/doprnt.c, src/editfns.c:
1499         Document quoting a bit more systematically.
1500         Problem reported by Alan Mackenzie (Bug#23425).
1502 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
1504         posnp doc clarification
1506         * lisp/subr.el (posnp): Mention that a posn object is returned
1507         from `event-start' (bug#18211).
1509 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
1511         Mention what a missing :group does
1513         * doc/lispref/customize.texi (Common Keywords): Document that
1514         a missing :group reuses the group from the preceding item (bug#21601).
1516 2016-05-02  Eli Zaretskii  <eliz@gnu.org>
1518         Fix documentation of dired-aux search/replace commands
1520         * lisp/dired-aux.el (dired-do-find-regexp)
1521         (dired-do-find-regexp-and-replace): Doc fixes.  (Bug#23429)
1522         * lisp/dired.el: Update the corresponding autoload forms.
1524 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
1526         Fix quoting problem in cc-engine debug message
1528         * lisp/progmodes/cc-engine.el (c-replay-parse-state-state):
1529         Use "%s" format to pass through ‘'’ unscathed (Bug#23425), and
1530         likewise for ‘`’, and ‘%’.
1532 2016-05-02  Philipp Stephani  <phst@google.com>
1534         Add electric-quote-string unit test
1536         * test/automated/electric-tests.el (electric-quote-string): New test.
1538 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
1540         Don’t electrically quote ‘'’ in Python
1542         Problem reported by Philipp Stephani (Bug#23387).
1543         * lisp/electric.el (electric-quote-post-self-insert-function):
1544         Do not requote a string starter or ender.
1546 2016-05-02  Dmitry Gutov  <dgutov@yandex.ru>
1548         `nreverse' Grep hits before passing them to xref--convert-hits
1550         * lisp/progmodes/xref.el (xref-collect-matches): `nreverse' hits
1551         before passing them to xref--convert-hits.  Fixes a regression
1552         from cc0b7132.
1554 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
1556         * doc/misc/texinfo.tex: Sync from gnulib.
1558 2016-05-01  Juri Linkov  <juri@linkov.net>
1560         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
1562         (Bug#23410)
1564 2016-05-01  Michael Albinus  <michael.albinus@gmx.de>
1566         tramp.texi: Revert last change due to backward compatibility
1568         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
1570 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1572         cua-prefix-override-inhibit-delay doc fix
1574         * lisp/emulation/cua-base.el
1575         (cua-prefix-override-inhibit-delay): Typo fix in doc string
1576         (bug#23401).
1578         (cherry picked from commit 2b4c099822811ede787fc6e575bfbb17b3cc0681)
1580 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1582         global-eldoc-mode doc fix
1584         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
1585         specific about what "applicable" means (bug#23071).
1587         (cherry picked from commit 25e95b5dd8cd92e03788e589bf99a4b399f03114)
1589 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1591         normal-top-level-add-subdirs-to-load-path doc fix
1593         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
1594         Doc fix (bug#21962).
1596         (cherry picked from commit 28aaa6d20586e3330a23b017a65e56dd6461c003)
1598 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1600         isearch-search-fun-function doc tweak
1602         * lisp/isearch.el (isearch-search-fun-function): Mention what
1603         the STRING parameter is (bug#21552).
1605         (cherry picked from commit cafc2a5940cdc523cfea6dcf1cf540f48367c62a)
1607 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1609         Fill some imenu--index-alist doc lines
1611         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
1613         (cherry picked from commit 4b7bb8f596550628eaa83b82c0f7eabe59a84964)
1615 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1617         Fmarker_position doc string clarification
1619         * src/marker.c (Fmarker_position): Clarify the doc string
1620         (bug#21231).
1622         (cherry picked from commit eeac7c57273cec3f9408b18392dd2bafe3be4450)
1624 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1626         Further define-obsolete-* doc fixups
1628         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
1629         Fix up last change.
1630         (define-obsolete-variable-alias): Ditto.
1632         (cherry picked from commit 28e9f4390d8391c2c36be4ef515cf3a2c679a5a5)
1634 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1636         Describe WHEN in all the define-obsolete- macros
1638         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
1639         Say more verbosely what WHEN is (bug#21225).
1640         (define-obsolete-function-alias): Describe the WHEN parameter.
1641         (define-obsolete-variable-alias): Ditto.
1643         (cherry picked from commit 247c388f160581d207e41ca5926990bbf69d4a0f)
1645 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1647         Mention with-silent-modifications in the lispref manual
1649         * doc/lispref/text.texi (Changing Properties): Document
1650         with-silent-modifications (bug#21171).
1652         (cherry picked from commit fcd0d854eef6e439d51e8f07cf734d5e34e502b3)
1654 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1656         with-silent-modifications doc clarification
1658         * lisp/subr.el (with-silent-modifications): Rearrange the doc
1659         string a bit so that the most pertinent information is at the
1660         top (bug#21171).
1662         (cherry picked from commit e0e70f030e69d9696a963a86f5f7caaff4df06eb)
1664 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1666         clear-visited-file-modtime doc string fix
1668         * lisp/files.el (clear-visited-file-modtime): Fix possibly
1669         confusing doc string wording (bug#21169).
1671         (cherry picked from commit 1aaeaf1450756a71c9254a2a5b174c72084ca67a)
1673 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1675         Document mode mode line variables
1677         * doc/lispref/modes.texi (Mode Line Variables): Document
1678         `mode-line-front-space, `mode-line-misc-info',
1679         `mode-line-end-spaces' (bug#21014).
1681         (cherry picked from commit bf7a630b0a5d3900f2afb0e7a881ce62e2b9f935)
1683 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1685         Add a cross ref to Optional Mode Line
1687         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
1688         reference to the Emacs mode line node that explains things
1689         like `display-time-string' (bug#21002).
1691         (cherry picked from commit a3151a28789f413af73b14fbba557b2a587fca53)
1693 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1695         Add a doc string to display-time-string
1697         * lisp/time.el: Add a doc string to `display-time-string',
1698         because it's referred to in the manual, and is too mysterious
1699         otherwise (bug#21002).
1701         (cherry picked from commit 45559c584e5a4ddeed1539b028b50b95baa372f8)
1703 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1705         custom-buffer-style doc fix
1707         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
1708         value (bug#20724).
1710         (cherry picked from commit bcf0291d0cd02095b0809b1eb91f1e5c5c2ac5e3)
1712 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1714         Rearrange the doc of query-replace slightly
1716         * lisp/replace.el (query-replace): Move the mention of the
1717         interactive prefix arg earlier so that users can find it
1718         (bug#20654).
1720         (cherry picked from commit bcc10761c3b968fa4534718116a0a601ed7da389)
1722 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1724         apropos-print doc fix
1726         * lisp/apropos.el (apropos-print): Document the undocumented
1727         parameters (bug#20520).
1729         (cherry picked from commit 0714d7387812a151f59993ac77c7321724ef79b1)
1731 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1733         completion-table-with-predicate doc string fix
1735         * lisp/minibuffer.el (completion-table-with-predicate): t ->
1736         non-nil in the doc string (bug#20460).
1738         (cherry picked from commit b6a4d162208f239bc7804696d611ae52c686f138)
1740 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1742         Fill the completion-table-with-predicate doc string
1744         * lisp/minibuffer.el (completion-table-with-predicate): Fill
1745         the doc string (bug#20460).
1747         (cherry picked from commit 207a31432c1ed8b548003a3e4af32c49aa3441e9)
1749 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1751         replace-match-maybe-edit doc clarification
1753         * lisp/replace.el (replace-match-maybe-edit): Say what
1754         MATCH-DATA is (bug#20304).
1756         (cherry picked from commit 139874ba53c2e2de9868f8e5234d6ea2bcb97af8)
1758 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1760         add-timeout doc fix
1762         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
1763         value (bug#20181).
1765         (cherry picked from commit 921b40476f597c84d7c34aa289cd43caeb389c4a)
1767 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1769         Extremely minor doc fix in Choosing Window
1771         * doc/lispref/windows.texi (Choosing Window): There's only one
1772         action alist, I think (bug#20158).
1774         (cherry picked from commit 6c7e7f421d02d9290d6d1d85320737371160aef7)
1776 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1778         Transform mentions of `eval-after-load' to `with-eval-after-load'
1780         * doc/lispref/loading.texi (Hooks for Loading): Update text to
1781         not mention `eval-after-load' (bug#20038).
1783         (cherry picked from commit 9392193be56eebdfac702a0bbb5e954088371c7a)
1785 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1787         cursor-type doc fix
1789         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
1790         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
1792         (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
1794 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1796         Add a link from Tool Bar to Images
1798         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
1799         Images node (bug#19722).
1801         (cherry picked from commit da5d0786163a91400eced4fddba4a92b652458d1)
1803 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1805         (default-mode-line-format): More explicit obsolete info
1807         * lisp/subr.el (default-mode-line-format): Be more explicit in
1808         how default values are now handled (bug#19424).
1810         (cherry picked from commit 9dc5f6d830e72420dc4d41c8f6ca1ca6b28609c0)
1812 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1814         Fcompare_buffer_substrings doc string clarification
1816         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
1817         doc string clarification (bug#19255).
1819         (cherry picked from commit aa692acbb598a1cc8219ed7a87dde25fd7626ba5)
1821 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1823         insert-file-contents-literally doc fix
1825         * lisp/files.el (insert-file-contents-literally): Say that the
1826         parameters are explained in the other function (bug#18317).
1828         (cherry picked from commit b6481b19bc9592492b1f70dfecb4de6256f537fe)
1830 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1832         Fix custom types for cursor-in-non-selected-windows
1834         * lisp/cus-start.el (standard): Use the same custom types for
1835         cursor-in-non-selected-windows as for cursor-type (bug#19214).
1837         (cherry picked from commit b66bc0cced786e0320e1c3b0758bd3c434d4e8b5)
1839 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1841         Doc clarification to mwheel-scroll
1843         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
1844         does not apply to Windows (bug#19209).
1846         (cherry picked from commit 696052b5fdfbc5c25dff3c6b081aebe70f6d06c7)
1848 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1850         Clarify the doc of eval-expression-print-format
1852         * lisp/simple.el (eval-expression-print-format): Doc
1853         clarification (bug#19114).
1855         (cherry picked from commit cd193a871f5a8e1c81ba86fc398ac382fa814383)
1857 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1859         Explictly explain that package-initialize loads the packages
1861         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
1862         in saying that `package-initialize' obviates adjusting the
1863         path or requiring the packages, as this is a question that
1864         apparently comes up now and then (bug#18829).
1866         (cherry picked from commit 619e0aedb2f3dbfe6821ac34e2d25b4e5c181117)
1868 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1870         Have the doc strings of `load-path' and `require' mention each other
1872         * src/fns.c (Frequire): Mention `load-path' and fill the doc
1873         string (bug#18829).
1875         * src/lread.c (syms_of_lread): Mention that `require' uses
1876         `load-path'.
1878         (cherry picked from commit 3eca9a03816f95da0030665223c0b5262f223ba7)
1880 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1882         Doc fix for insert-pair-alist
1884         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
1885         COMMAND-CHAR is (bug#18809).
1887         (cherry picked from commit 2824c587e9749a8f350f1d3dddd65176b4561dcb)
1889 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1891         Move doc of backup-directory-alist to the Backup node
1893         * doc/emacs/files.texi (Backup): Move the documentation of
1894         `backup-directory-alist' here from the "Single or Numbered
1895         Backups" node, because it doesn't seem to have much to do with
1896         numbering (bug#18692).
1898         (cherry picked from commit e77b8d84b4161f2cf8720dec2bf44a3e50134398)
1900 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1902         Tiny doc clarification for create-fontset-from-fontset-spec
1904         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
1905         Clarify what the optional part is (bug#18686).
1907         (cherry picked from commit c05d186455ce9907eeb6b21ea4227e453996c681)
1909 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1911         Fill the doc string of font-lock-keywords
1913         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
1914         reorganise some explanations (bug#21427).
1916         (cherry picked from commit c05716d3a26ea7518b89eacfccaf70c9d0731df7)
1918 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1920         Doc fix for font-lock-remove-keywords
1922         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
1923         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
1925         (cherry picked from commit bc00dcf12983cd399127d0eea39647f29778eb02)
1927 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1929         Clarify whitespace-style doc string
1931         * lisp/whitespace.el (whitespace-style): Doc clarification
1932         (bug#18296).
1934         (cherry picked from commit d96c720d0cca7c9ffbb4c712ad315bb707d6625c)
1936 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1938         Doc fixed for next-error-buffer-p
1940         * lisp/simple.el (next-error-buffer-p): Clarify doc string
1941         (bug#18202).
1943         (cherry picked from commit a10eb168cc96db9f0dab2d75550cbd8f08be2363)
1945 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1947         Tiny doc fix
1949         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
1950         (and fill) (bug#18201).
1952         (cherry picked from commit 2ef0040e2363a669d9b93df935d31c98fa130132)
1954 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1956         Doc fix
1958         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
1959         slightly (bug#18092).
1961         (cherry picked from commit 6b769c81d024f7eeb90b167e7df6f87d859614d4)
1963 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1965         delsel doc touch ups
1967         * lisp/delsel.el (delete-selection-helper): Use non-nil
1968         instead of t and clarify function return values (bug#18089).
1970         (cherry picked from commit d7a5b5be9a5869bcd233434ec3103dd1976d7df7)
1972 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1974         Doc fixes for menu-bar.el
1976         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
1977         REGION parameter (bug#18028).
1978         (clipboard-kill-region): Ditto.
1980         (cherry picked from commit 33d2c67bff0992ecbc0fe38556683242b9d1a4ae)
1982 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1984         Doc fix
1986         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
1988         (cherry picked from commit 6baca4911ec901579749dbf7596011d90fea3781)
1990 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1992         Minor doc clarification
1994         * lisp/subr.el (y-or-n-p): Document the return value from "n"
1995         (bug#18024).
1997         (cherry picked from commit 5d1f3192d484edee92caa46cd7d699da3e920259)
1999 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2001         Fill font-lock-mode doc string
2003         * lisp/font-core.el (font-lock-mode): Fill the text to make it
2004         narrower (bug#18008).
2006         (cherry picked from commit 27abf372836532c57be2e9e3ed23413729cc07fc)
2008 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2010         Wrap the auto-generated doc string
2012         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
2013         string to make it less likely that we get overlong lines
2014         (bug#17999).
2016         (cherry picked from commit 323b69664914d687fd4b48593479cea223dfbcb4)
2018 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2020         Clarify hi-lock-find-patterns
2022         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
2023         (bug#17989).
2025         (cherry picked from commit 552e90ce7dff3a7107243fdf71c4de3af443e13a)
2027 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2029         Add a doc string to `winner-mode'
2031         * lisp/winner.el (winner-mode): Add a doc string based on the
2032         comments in the file (bug#17716).
2034         (cherry picked from commit 2c3ab9b6e39a3d600e7d82deacc24effaec051bb)
2036 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2038         Doc fix for align-newline-and-indent
2040         * lisp/align.el (align-newline-and-indent): Mention that
2041         alignment is done by `align' (bug#17707).
2043         (cherry picked from commit 340a224ec3e01706112a07164da9a9f3f369a5aa)
2045 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2047         Doc fix for `kbd'
2049         * lisp/subr.el (kbd): Describe more fully the format of the
2050         parameter (bug#17039).
2052         (cherry picked from commit 3a33afe25d8518f194fa4706eaccdb2a786a0348)
2054 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2056         Doc tweak
2058         * lisp/simple.el (use-empty-active-region): Doc tweak.
2059         There's only one region (bug#16513).
2061         (cherry picked from commit 35fb7897f161d5e5a87e039dc1e427094640b0c8)
2063 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2065         Link from (emacs)Exiting to (lisp)Killing Emacs
2067         * doc/emacs/entering.texi (Exiting): Link to the lispref
2068         manual for further customisations (bug#15445).
2070         (cherry picked from commit bc5f27aa099cdde02ca66e71501b89300685ab28)
2072 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2074         find-lisp doc touchups
2076         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
2077         string (bug#15047).
2078         (find-lisp-find-files): Clarify doc.
2080         (cherry picked from commit e4c7657b0d1a31d64ca24bc64b5480cd7687e332)
2082 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2084         Don't have the manual claim that it lists all CL incompatibilities
2086         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
2087         incompatibilities isn't exhaustive, so don't say that it is
2088         (bug#15171).
2090         (cherry picked from commit fb685bc91a72508c97ce7e30f970d4157677f371)
2092 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2094         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
2096         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
2097         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
2098         (bug#14554).
2100         (cherry picked from commit e4c26271f2c2fe08f8490e25c63a436ab2a804ca)
2102 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2104         Doc string change to enable-recursive-minibuffers
2106         * src/minibuf.c (syms_of_minibuf): Mention
2107         minibuffer-depth-indicator-mode in the doc string to
2108         enable-recursive-minibuffers (bug#14147).
2110         (cherry picked from commit 23ba488a5e8290c4de91e0ff4161641efa364c0d)
2112 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2114         Clarify the `interactive' doc string slightly
2116         * src/callint.c (Finteractive): Clarify the doc string slightly
2117           (bug#14577).
2119         (cherry picked from commit cd993be60da2d12db0d390001373d486c1091c47)
2121 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2123         Clarify some doc strings
2125         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
2126         Clarify doc string (bug#8693).
2127         (syntax-propertize): Clarify doc string.
2129         (cherry picked from commit ad3ef417f3c40f086de9c547d6272e5685595e42)
2131 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2133         Add some concept index entries for custom types
2135         * doc/lispref/customize.texi (Composite Types): Add concept
2136         index entries for restricted-sexp, radio and choice (bug#7385).
2138         (cherry picked from commit 388bb723fa078158d3148de05e942f9c01e95dd8)
2140 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2142         Mention `lisp-indent-function' in the lispref manual
2144         * doc/lispref/macros.texi (Indenting Macros): Mention
2145         `lisp-indent-function' (bug#3393).
2147         (cherry picked from commit a1627691a896b2afaa264f93534178bc763564c9)
2149 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2151         Clarify doc string of internal compilation function
2153         * lisp/progmodes/compile.el (compilation-get-file-structure):
2154         Clarify doc string (bug#3137).
2156         (cherry picked from commit 123191decb7428db3b32a6c01631fa755088393a)
2158 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
2160         Use ‘T *restrict’ proto, not ‘T[restrict]’
2162         * src/fns.c (sort_vector_copy): Use a different way to attempt to
2163         work around GCC 3.0-and-earlier incompatibility with C99, one that
2164         does not have problems with modern non-GCC compilers.
2166 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
2168         Fix documentation of 'url-retrieve-synchronously'
2170         * doc/misc/url.texi (Retrieving URLs): Update argument list of
2171         'url-retrieve-synchronously'.  (Bug#23411)
2173 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
2175         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
2177 2016-04-30  Leo Liu  <sdl.web@gmail.com>
2179         Fix last change to isearch-update (bug#23406)
2181         * lisp/isearch.el (isearch-update): Remove (setq cursor-sensor-inhibit
2182           nil) ie remove the original (unless (boundp 'cursor-sensor-inhibit)
2183           ...) form.
2185 2016-04-30  Leo Liu  <sdl.web@gmail.com>
2187         Autoload cursor-sensor-inhibit (bug#23406)
2189         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-inhibit): Autoload.
2190         * lisp/isearch.el (isearch-update): Remove boundp check.
2192 2016-04-30  Phillip Lord  <phillip.lord@newcastle.ac.uk>
2194         org-map-entries: Fix org-agenda-prepare-buffers call
2196         * lisp/org/org.el (org-map-entries): Check that buffer-file-name is non-nil
2197           before passing to org-agenda-prepare-buffers.
2199         This is a backport of commit 44c8cd7136e3fcd1e6bfa08895cac437b7a691fa
2200         from upstream org-mode. Addresses bug #23365.
2202 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
2204         Followup for last commit in the user manual
2206         * doc/emacs/basic.texi (Moving Point): Clarify that
2207         set-goal-column has buffer-local effect.  (Bug#23405)
2209 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
2211         Improve doc string of 'set-goal-column'
2213         * lisp/simple.el (set-goal-column): Doc fix.  (Bug#23405)
2215 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
2217         Fix the MSDOS build
2219         * config.bat:
2220         * msdos/sedlisp.inp:
2221         * msdos/sedlibmk.inp:
2222         * msdos/sedleim.inp:
2223         * msdos/sedadmin.inp:
2224         * msdos/sed6.inp:
2225         * msdos/sed3v2.inp:
2226         * msdos/sed2v2.inp:
2227         * msdos/sed1v2.inp: Adapt to Emacs 25.
2229         * src/process.c (remove_slash_colon): Move out of "#ifdef
2230         subprocesses" block, as it its called unconditionally.  Move
2231         ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
2232         reference variables only defined in that block.
2233         * src/msdos.h: Provide prototypes for IT_set_frame_parameters,
2234         faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
2235         dos_keysns, dos_keyread, run_msdos_command, and
2236         syms_of_win16select, to avoid compiler warnings.
2237         * src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
2238         'environ', depending on the DJGPP version.
2239         Remove declarations of externally-visible Lisp objects, like
2240         Qbackground_color and Qreverse.
2241         (run_msdos_command): First argument is not signed, not unsigned.
2242         Use SYS_ENVIRON.
2243         (sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
2244         the latter doesn't work when 'time_t' is an unsigned data type.
2245         This caused idle timers to behave incorrectly: they only fired
2246         after a keyboard input event.
2247         * src/frame.c (adjust_frame_size) [MSDOS]: Account for
2248         FRAME_TOP_MARGIN that isn't counted in the frame's number of
2249         lines, but dos_set_window_size needs it to be added.
2250         * src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
2251         * src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
2252         that works around compilation errors with older GCC versions.
2253         * src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
2254         Objects.
2255         * src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
2256         no-op implementations for 'lock_file' and 'unlock_file'.
2257         (Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
2258         ifdefs in all users of filelock.c functionality.
2259         * src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
2260         * src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
2261         warnings.
2262         * src/dosfns.h: Provide prototypes for dos_cleanup,
2263         syms_of_dosfns, and init_dosfns.
2264         * src/deps.mk (atimer.o): Depend on msdos.h.
2265         (emacs.o): Depend on dosfns.h.
2266         * src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
2267         warnings.
2269         * lisp/window.el (window--adjust-process-windows): Skip the body
2270         if 'process-list' is not available.  This avoids failure to start
2271         up on MS-DOS.
2272         * lisp/vc/diff.el (diff-no-select): Test 'make-process', not
2273         'start-process', as the latter is now available on all platforms.
2274         * lisp/textmodes/ispell.el (ispell-async-processp): Replace
2275         'start-process' with 'make-process' in a comment.
2276         * lisp/term/internal.el (IT-unicode-translations): Modify and add
2277         a few translations to display Info files with Unicode markup.  Fix
2278         an ancient off-by-one mismatch error with Unicode codepoints.
2279         * lisp/progmodes/compile.el (compilation-start): Test
2280         'make-process', not 'start-process', as the latter is now
2281         available on all platforms.
2282         * lisp/man.el (Man-build-man-command, Man-getpage-in-background):
2283         Test 'make-process', not 'start-process', as the latter is now
2284         available on all platforms.
2285         * lisp/international/mule-cmds.el (set-coding-system-map): Test
2286         'make-process', not 'start-process', as the latter is now
2287         available on all platforms.
2288         * lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
2289         fix.
2290         (eshell-execute-pipeline): Test 'make-process', not
2291         'start-process', as the latter is now available on all platforms.
2293 2016-04-30  Andreas Schwab  <schwab@linux-m68k.org>
2295         Remove \= from format string (bug#18190)
2297         * lisp/emacs-lisp/eieio.el (defclass): Remove \= from format
2298         string.
2300 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
2302         Fix variable-pitch font on MS-Windows
2304         * lisp/faces.el (variable-pitch) [w32]: Name a variable-pitch font
2305         explicitly, to avoid Emacs picking up a bold-italic variant on
2306         some MS-Windows systems.  See this thread for details:
2307         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00746.html.
2309 2016-04-29  Alan Mackenzie  <acm@muc.de>
2311         Restore follow-scroll-up/down to scrolling by the combined size of all windows
2313         Also rename the current follow-scroll-up/down functions to
2314         follow-scroll-up-window and follow-scroll-down-window.  These scroll by the
2315         height of the current window.
2317         This fixes bug #23347.
2319         * lisp/follow.el (follow-mode): Tweak the doc string.
2320         (follow-scroll-up-arg, follow-scroll-down-arg): new functions, extracted from
2321         follow-scroll-up/down.
2322         (follow-scroll-up-window, follow-scroll-down-window): Functions renamed from
2323         follow-scroll-up/down.
2324         (follow-scroll-up, follow-scroll-down): Restore the historic functionality.
2326 2016-04-29  Alan Mackenzie  <acm@muc.de>
2328         Revert unneeded change which harms syntactic parsing.  This fixes bug #23308.
2330         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache): User
2331         c-state-old-cpp-end as an argument to c-with-all-but-one-cpps-commented-out
2332         regardless of the value of `here'.
2334 2016-04-29  Alan Mackenzie  <acm@muc.de>
2336         Correct indentation of ids in a C++ enum after a protection keyword.
2338         Also correct the misfontification of the last enum identifier.
2340         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): setq
2341         c-last-identifier-range to nil to ensure that only types recognized by this
2342         macro are set for fontification as types.
2343         (c-backward-typed-enum-colon): Function renamed from
2344         c-backward-colon-prefixed-type.  On finding a colon in the backward search,
2345         check it is preceded by an identifier rather than a keyword.
2347 2016-04-27  Glenn Morris  <rgm@gnu.org>
2349         * lisp/window.el (window--process-window-list): No-op if no processes.
2351         This avoids an issue with save-selected-window (from walk-windows)
2352         failing if frame.el is not loaded, eg if the terminal is resized
2353         during startup of a -nw CANNOT_DUMP build.  (Bug#23369).
2355 2016-04-27  Paul Eggert  <eggert@penguin.cs.ucla.edu>
2357         Port dumping to NetBSD with PaX
2359         Problem reported by Thomas Klausner (Bug#23371).
2360         * configure.ac (PAXCTL_dumped, PAXCTL_notdumped): New vars.
2361         Set them to setfattr and/or paxctl commands appropriate for
2362         GNU/Linux and/or NetBSD; the latter prefers paxctl +a.  Search
2363         for paxctl only if setfattr is not found.
2364         * src/Makefile.in (PAXCTL_dumped, PAXCTL_notdumped):
2365         New vars, replacing PAXCTL_if_present and SETFATTR_if_present.
2366         All uses changed.
2368 2016-04-27  Dmitry Gutov  <dgutov@yandex.ru>
2370         Don't mistake `for' inside a function for a part of array comprehension
2372         * lisp/progmodes/js.el (js--indent-in-array-comp): Also check the
2373         depth in parens between the bracket and `for' (bug#23391).
2375         * test/indent/js.js: Add a corresponding example.
2377 2016-04-27  Anders Lindgren  <andlind@gmail.com>
2379         Fix bug#22891: wrong terminal width when a fringe width is zero.
2381         When either fringe width is zero, Emacs reserved one column for a
2382         continuation glyph. Terminal windows does not take this into
2383         account when the frame is resized.
2385         * lisp/window.el (window-adjust-process-window-size): Use
2386         `window-max-chars-per-line' instead of `window-body-width'.
2387         * lisp/term.el (term-window-width): Remove function. (It does the
2388         same as `window-max-chars-per-line' but without recent bug fixes.)
2389         (term-mode): Use `window-max-chars-per-line' instead of
2390         `term-window-width'.
2392         Backport
2394         (cherry picked from commit 5b5403289888efe8783ae6a405845b925f544ec1)
2396 2016-04-27  Leo Liu  <sdl.web@gmail.com>
2398         Improve last change to vc-git-mode-line-string
2400         * lisp/vc/vc-git.el (vc-git-mode-line-string): Better fix that caches
2401           the result.
2403 2016-04-27  Stephen Berman  <stephen.berman@gmx.net>
2405         Todo mode doc bug fix
2407         * lisp/calendar/todo-mode.el (todo-show): Correct obsolete and no
2408         longer correct information in doc string.
2410 2016-04-27  Leo Liu  <sdl.web@gmail.com>
2412         Fix revision calculation in vc-git-mode-line-string
2414         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use
2415           vc-git-working-revision because vc-working-revision needs to decide
2416           the backend and may return nil.
2418 2016-04-26  Jorgen Schaefer  <contact@jorgenschaefer.de>
2420         Add Python 3.5 keyword "await"
2422         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
2423         keyword.
2425 2016-04-26  Lele Gaifax  <lele@metapensiero.it>
2427         Add new keywords of Python 3.5
2429         Python 3.5, released in mid September 2015, introduced a few new
2430         keywords to better support asynchronous code, "async" and "await"
2431         in particular. See https://www.python.org/dev/peps/pep-0492/ for
2432         details. (Bug#21783)
2433         * lisp/progmodes/python.el (python-rx-constituents): Add async
2434         def/for/with as block-start and async def as defun.
2435         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
2436         def/for/with as keyword.
2437         * test/automated/python-tests.el (python-indent-after-async-block-1,
2438         python-indent-after-async-block-2, python-indent-after-async-block-3,
2439         python-nav-beginning-of-defun-3): New tests to test indentation and
2440         navigation for the async keyword.
2442 2016-04-26  Mark Oteiza  <mvoteiza@udel.edu>
2444         Partially revert previous change.
2446         This commit partially reverts 0f332848cdb2ed6d46771914a911cbca194cd51a.
2447         * lisp/rect.el (rectangle--highlight-for-redisplay): Use region face.
2448         This function is for rectangle-mark-mode, not string-rectangle.
2450 2016-04-25  Paul Eggert  <eggert@penguin.cs.ucla.edu>
2452         Say why text-quoting-style is not a user option
2454         * doc/lispref/help.texi (Keys in Documentation):
2455         * etc/NEWS: Document why text-quoting-style is not a
2456         customizable variable (Bug#23372).
2458 2016-04-25  Glenn Morris  <rgm@gnu.org>
2460         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
2461         Future-proof against non-time-values.
2463 2016-04-25  Eli Zaretskii  <eliz@gnu.org>
2465         Don't mention ~/.emacs.bmk literally in doc strings
2467         * lisp/bookmark.el (bookmark-save-flag, bookmark-load): Don't
2468         mention "~/.emacs.bmk" explicitly as the default bookmark file in
2469         the doc strings.  (Bug#23350)
2471 2016-04-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2473         * etc/NEWS: Explain why multicolor font display is disabled on OS X Cocoa.
2475 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
2477         Port to Ubuntu 16.04 --enable-gcc-warnings
2479         * src/image.c (gif_load) [HAVE_GIF]: Fix pointer signedness problem.
2481 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
2483         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
2485 2016-04-24  Tino Calancha  <f92capac@gmail.com>
2487         Don't kill ~/ if it's the top level directory
2489         * lisp/dired-aux.el (dired-kill-subdir): Don't kill ~/ if it's
2490         the top level directory (bug#23017).
2492 2016-04-23  Tino Calancha  <f92capac@gmail.com>  (tiny change)
2494         describe-char: fix insert char documentation
2496         * lisp/descr-text.el (describe-char):
2497         Only 'ucs-names' entries can be inserted by unicode name (Bug#23325).
2499 2016-04-23  Dmitry Gutov  <dgutov@yandex.ru>
2501         (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
2503         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use `substring'
2504         instead of `replace-regexp-in-string', because REV can be nil
2505         (e.g. when FILE is a directory, bug#23344), and we actually know
2506         we only need the first 4 characters.
2508 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
2510         Bump version to 25.0.93
2512         * README:
2513         * configure.ac:
2514         * msdos/sed2v2.inp: Bump Emacs version to 25.0.93.
2516 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
2518         * etc/AUTHORS: Update the AUTHORS file
2520         * admin/update_autogen: Use #!/usr/bin/env bash
2522         * admin/authors.el (authors-ignored-files): Additions.
2524 2016-04-22  Martin Rudalics  <rudalics@gmx.at>
2526         In x_set_window_size restore do_pending_window_change calls
2528         * src/xterm.c (x_set_window_size):
2529         * src/w32term.c (x_set_window_size): Restore
2530         do_pending_window_change calls after their stupid removal on
2531         2015-08-31.
2533 2016-04-21  Ilya Zakharevich  <ilya@math.berkeley.edu>
2535         Fix Alt-modified keys on some European MS-Windows keyboards
2537         * src/w32fns.c (deliver_wm_chars): If the reported character is
2538         ASCII, AND Meta modifier is a candidate, behave as if Meta is
2539         present, i.e. fall back to the legacy code.  (Bug#23251)
2541 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2543         Document 'help-go-forward'
2545         * doc/emacs/help.texi (Help Mode): Document and index
2546         'help-go-forward'.  (Bug#23323)
2548 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2550         Revert "Allow to customize names of executables used by grep.el"
2552         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
2554 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2556         Revert "Don't use 'find-program'"
2558         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
2560 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2562         Revert "Use 'grep-find-program' in check-declare.el"
2564         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
2566 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2568         Clarify documentation of 'dired-mark-files-containing-regexp'
2570         * doc/emacs/dired.texi (Marks vs Flags): Clarify that for files
2571         visited in buffers, 'dired-mark-files-containing-regexp' searches
2572         the buffer rather than the file on disk.  (Bug#22694)
2574         * lisp/dired.el (dired-mark-files-containing-regexp): Clarify that
2575         for files visited in buffers, 'dired-mark-files-containing-regexp'
2576         searches the buffer rather than the file on disk.  (Bug#22694)
2578 2016-04-19  Eli Zaretskii  <eliz@gnu.org>
2580         Make tmm-menubar work in correct order again
2582         * lisp/tmm.el (tmm-prompt): Don't reverse 'tmm-km-list' right at the
2583         beginning; instead, pass a reversed copy to 'tmm--completion-table'.
2584         (Bug#23309)
2585         (tmm-menubar): Fix an off-by-one error in determining the menu
2586         item when the function is called with a non-nil 'x-position'
2587         argument.
2589 2016-04-18  Dmitry Gutov  <dgutov@yandex.ru>
2591         Remove the Meta-CVS VC backend
2593         * lisp/obsolete/vc-mcvs.el: Remove the file (bug#20475).
2595         * lisp/vc/log-view.el (log-view-extract-comment): Remove the MCVS
2596         reference.
2598         * doc/misc/efaq-w32.texi (Version control): Same.
2600 2016-04-18  Michael Albinus  <michael.albinus@gmx.de>
2602         Fix Bug#23276
2604         * lisp/autorevert.el (auto-revert-handler): Ignore errors
2605         coming from `revert-buffer'.  (Bug#23276)
2607 2016-04-17  Reto Zimmermann  <reto@gnu.org>
2609         Sync with upstream vhdl mode v3.38.1.
2611         * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
2612         (vhdl-mode): No longer set comment-padding.
2613         (vhdl-begin-p): Handle missing space between keyword and parenthesis.
2614         (vhdl-beginning-of-statement-1): Fix indentation for "else generate".
2615         (vhdl-template-else, vhdl-template-elsif): Support generate statement.
2616         (vhdl-re-search-forward, vhdl-re-search-backward): Save match data.
2618 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
2620         Tweak configure.ac syntax in recent module patch
2622         * configure.ac: Use proper Autoconf parenthesization in
2623         recent HAVE_MODULES patch.  Although this doesn’t fix any bugs,
2624         the previous syntax was confusing.
2626 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
2628         Port to GCC 5.3.1 20160406 (Red Hat 5.3.1-6)
2630         * src/indent.c (Fvertical_motion): Pacify --enable-gcc-warnings
2631         when using the April 6 Fedora patch to GCC.
2633 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
2635         Make sh-electric-here-document-mode accessible in sh-mode-hook. (Bug#3226)
2637         * lisp/progmodes/sh-script.el (sh-mode-hook): Add
2638         sh-electric-here-document-mode as an option and the default value.
2639         (sh-mode): Mention sh-mode-hook in docstring.
2640         (sh-mode): Remove sh-electric-here-document-mode invocation.
2642 2016-04-16  Glenn Morris  <rgm@gnu.org>
2644         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
2646 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
2648         Make use of rectangle-preview custom variable.
2650         lisp/rect.el (rectangle--string-preview): Only create a preview if
2651         rectangle-preview is non-nil (Bug#23248).
2653 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
2655         Make use of rectangle-preview face.
2657         * lisp/rect.el (rectangle--string-preview):
2658         (rectangle--highlight-for-redisplay): Replace 'region with
2659         'rectangle-preview (Bug#23248).
2661 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
2663         Use 'grep-find-program' in check-declare.el
2665         * lisp/emacs-lisp/check-declare.el (check-declare-directory): Use
2666         'grep-find-program', not 'find-program'.
2668 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
2670         Improve "C-h S" for cl-lib symbols
2672         * lisp/info-look.el: Add cl.info lookup to emacs-lisp-mode related
2673         manuals.  (Bug#23289)
2675 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
2677         Fix minor issues with removing left or right fringes
2679         * lisp/window.el (window-max-chars-per-line): Account for
2680         'left-fringe-width' and 'right-fringe-width' variables.
2682         * doc/lispref/windows.texi (Window Sizes): Document the effect on
2683         window text width when setting the width of one or both fringes to
2684         zero.
2685         * doc/emacs/display.texi (Fringes): Document the effect on window
2686         text width when setting the width of one or both fringes to zero.
2687         (Bug#22891)
2689 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
2691         Speed up redisplay in ansi-term mode
2693         * lisp/term.el (ansi-term): Force L2R 'bidi-paragraph-direction'.
2694         (Bug#20611)
2696 2016-04-16  Philipp Stephani  <phst@google.com>
2698         Simplify 8-bit character handling by terminal for 'raw-text'
2700         * lisp/international/mule.el (set-keyboard-coding-system): Treat
2701         'raw-text' as another coding type that requires 8-bit characters.
2702         * lisp/xt-mouse.el (xterm-mouse--read-coordinate): Use 'no-conversion'
2703         instead of 'latin-1'.
2705 2016-04-15  Glenn Morris  <rgm@gnu.org>
2707         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
2709 2016-04-15  Eli Zaretskii  <eliz@gnu.org>
2711         Fix w32 memory-management problem when extending buffer text
2713         * src/w32heap.c (mmap_realloc): Only attempt extending a region if
2714         the following region has the same allocation base.  Also, use the
2715         original allocation base and enlarged size to commit reserved
2716         memory, to ensure that the allocation base stays at its original
2717         value.  This fixes several hard-to-debug problems whereby part of
2718         buffer text was overwritten with binary nulls, because
2719         mmap_realloc copied only part of buffer text when extending it.
2720         See
2721         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00325.html
2722         and http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#55 for two
2723         examples of the related problems.
2725 2016-04-14  Michael Albinus  <michael.albinus@gmx.de>
2727         Fix Bug#20637.  Do not merge to master
2729         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
2730         Use `vc-backend' instead of `vc-responsible-backend'.  (Bug#20637)
2732         * test/automated/vc-tests.el (vc-test--state)
2733         (vc-test--working-revision): Deactivate now failing checks.
2735 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
2737         substitute-command-keys keeps quotes’ text props
2739         Problem reported by Clément Pit--Claudel (Bug#23254).
2740         * src/doc.c: Include intervals.h.
2741         (Fsubstitute_command_keys): If the only substitutions are for
2742         quotes, copy the source string’s text properties too, since no
2743         substring lengths have changed.
2745 2016-04-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2747         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
2749 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
2751         Add semantic-symref-filepattern-alist entry for lisp-interaction-mode
2753         * lisp/cedet/semantic/symref/grep.el
2754         (semantic-symref-filepattern-alist):
2755         Add entry for lisp-interaction-mode
2756         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#47)
2758 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
2760         Perform xref searches without visiting unopened files
2762         * lisp/progmodes/xref.el (xref-collect-references): Instead of
2763         calling `semantic-symref-find-references-by-name', use
2764         `semantic-symref-instantiate' and `semantic-symref-perform-search'
2765         directly.  Ask for `line-and-text' results (bug#23223).
2766         (xref-collect-matches): Include the line text in the "hit"
2767         structure.
2768         (xref--convert-hits): New function, split off from
2769         `xref-collect-references' and `xref-collect-matches', to convert
2770         "hits" to xref instance list.  Create a temporary buffer here, to
2771         use it for post-processing all hit lines.
2772         (xref--collect-matches): Use a different approach for non-visited
2773         files.  Insert the line text into the temp buffer, apply the
2774         file's major mode the best we can without reading its whole
2775         contents, syntax-propertize, and search in the result.
2776         (xref--collect-matches-1): Extract, to handle the common logic
2777         between two cases.
2778         (xref--find-buffer-visiting): New function, a wrapper around
2779         `find-buffer-visiting' to amortize its cost.
2781         * lisp/cedet/semantic/symref/idutils.el
2782         (semantic-symref-idutils--line-re): New constant.
2783         (semantic-symref-parse-tool-output-one-line): Support result type
2784         `line-and-text'.
2786         * lisp/cedet/semantic/symref/grep.el
2787         (semantic-symref-grep--line-re)
2788         (semantic-symref-parse-tool-output-one-line): Same.
2790         * lisp/cedet/semantic/symref/cscope.el
2791         (semantic-symref-cscope--line-re)
2792         (semantic-symref-parse-tool-output-one-line): Same.
2794         * lisp/cedet/semantic/symref/global.el
2795         (semantic-symref-global--line-re)
2796         (semantic-symref-parse-tool-output-one-line): Same.
2798 2016-04-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
2800         Revert "Prevent bootstrap autoload backup files"
2802         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
2804 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
2806         Improve time zone documentation
2808         * doc/lispref/os.texi (Time Zone Rules):
2809         New section, mostly with material moved here from other sections.
2810         * doc/emacs/cmdargs.texi (General Variables):
2811         * doc/lispref/os.texi (Time Conversion, Time Parsing):
2812         Xref new section.
2813         * etc/NEWS, etc/PROBLEMS:
2814         * lisp/org/org.el (org-timestamp-format):
2815         * src/editfns.c (Fformat_time_string, Fdecode_time)
2816         (Fencode_time, Fcurrent_time_string, Fcurrent_time_zone)
2817         (Fset_time_zone_rule):
2818         When documenting time zone rule strings, mention the TZ
2819         environment variable in preference to mentioning the
2820         sort-of-internal function set-time-zone-rule.
2822 2016-04-12  Phillip Lord  <phillip.lord@russet.org.uk>
2824         Prevent bootstrap autoload backup files
2826          * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
2827            backups in newly created file.
2829           (autoload-ensure-default-file): Function split into two.
2830           (autoload-ensure-file-writeable): New function from split.
2832           (Bug#23203)
2834 2016-04-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2836         Disable multicolor fonts on OS X since they are not supported on free systems
2838         * src/macfont.m (macfont_list): Don't use color bitmap fonts.
2840 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
2842         Capitalize “Universal Time” in documentation
2844         It’s a proper noun.
2845         * lisp/vc/add-log.el (add-log-time-zone-rule): Also, fix typo by
2846         mentioning ‘format-time-string’ instead of ‘set-time-zone-rule’.
2848 2016-04-11  Eli Zaretskii  <eliz@gnu.org>
2850         Don't use 'find-program'
2852         * lisp/progmodes/project.el (project-file-completion-table): Use
2853         'grep-find-program', rather than the obsolete 'find-program'.
2855 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
2857         Sync with gnulib
2859         This is for picky compilers whose stdint.h fails our C11 tests.
2860         Problem reported for clang by Philipp Stephani (Bug#23261).
2861         This incorporates:
2862         2016-04-11 stdint: port to strict C11 left shift
2863         * doc/misc/texinfo.tex, lib/stdint.in.h: Copy from gnulib.
2865 2016-04-11  Leo Liu  <sdl.web@gmail.com>
2867         Fix last change on 2016-01-02
2869         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Move
2870           `cl-errs-re' before `lisp--el-match-keyword'; don't use `prepend'
2871           which highlights `cl-errs-re' even in comments or strings.
2873 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
2875         Port run-prolog EMACS to SWI-Prolog 7.2.3
2877         * lisp/progmodes/prolog.el (prolog-ensure-process):
2878         Work around incompatibility of SWI-Prolog 7.2.3 and earlier
2879         with the new way of dealing with the EMACS and INSIDE_EMACS
2880         environment variables.
2882 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
2884         Avoid crashes due to unreasonably large or small text scaling
2886         * lisp/face-remap.el (text-scale-min-amount)
2887         (text-scale-max-amount): New functions.
2888         (text-scale-set, text-scale-increase): Use them to limit the text
2889         scaling to a reasonable range of values.  (Bug#23259)
2891 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
2893         Improve documentation of 'with-eval-after-load'
2895         * lisp/subr.el (with-eval-after-load): Doc fix.  (Bug#23258)
2897 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
2899         Improve handling of non-ASCII characters in Git log messages
2901         * lisp/vc/vc-git.el (vc-git-commits-coding-system): Now a defcustom.
2902         (vc-git-log-output-coding-system): New defcustom.
2903         (vc-git-print-log, vc-git-command, vc-git--call): Use
2904         'vc-git-log-output-coding-system' for reading stuff from Git.
2905         Don't override values of 'coding-system-for-read/write' if they
2906         are bound by caller -- this allows the user to force an encoding
2907         via "C-x RET c".
2908         (vc-git-checkin): On MS-Windows, pass the log message via a
2909         temporary file, to work around the limitations on passing
2910         non-ASCII characters via command-line arguments.  Force using the
2911         'locale-coding-system' for Git command-line arguments.  This fixes
2912         problems with non-ASCII commit log messages on MS-Windows.
2913         (Bug#23076)
2915         * etc/NEWS: Mention the new vc-git related defcustoms.
2917 2016-04-09  Philipp Stephani  <phst@google.com>
2919         Remove undefined behavior in OS X dumper.
2921         Found by Address Sanitizer.
2923         * src/unexmacosx.c (unexec_write): Use Mach virtual memory API to
2924         avoid undefined behavior when reading arbitrary memory.
2926 2016-04-09  Joakim Verona  <joakim@verona.se>
2928         Fix clipping of xwidgets
2930         * src/xwidget.c (x_draw_xwidget_glyph_string): Use window_box
2931         instead of calculating the clipping borders manually.  Suggested
2932         by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
2934 2016-04-09  Eli Zaretskii  <eliz@gnu.org>
2936         Improve Lisp-level documentation of tooltips
2938         * doc/lispref/display.texi (Tooltips): New section.  (Bug#23246)
2939         (Display): Update the chapter menu.
2940         * doc/lispref/text.texi (Special Properties): Make the "tooltip"
2941         index entry more concrete.  Change the cross-reference to point to
2942         "Tooltips" in the ELisp manual.
2943         * doc/lispref/elisp.texi (Top): Update the master menu.
2944         * doc/emacs/frames.texi (Tooltips): Include more customization
2945         variables.  Add a cross-reference to the ELisp manual.
2947 2016-04-08  Glenn Morris  <rgm@gnu.org>
2949         Faces names should not end in "-face".
2951         * lisp/rect.el (rectangle-preview): Rename from rectangle-preview-face.
2952         * lisp/vc/vc-hooks.el (vc-state-base): Rename from vc-state-base-face.
2954 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
2956         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
2958 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
2960         Comint and compile no longer set EMACS
2962         This mostly restores the change that I reverted on March 23,
2963         fixing most of Bug#20202.  The only part of the change that is
2964         still reverted is the change to M-x term, where compatibility with
2965         current Bash constrains us from moving too quickly (Bug#20484).
2966         Problem reported by Phillip Lord in: http://bugs.gnu.org/20484#108
2967         * etc/NEWS: Document this.
2968         * lisp/comint.el (comint-exec-1):
2969         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
2970         * lisp/progmodes/compile.el (compilation-start):
2971         Don’t set EMACS=t in the subsidiary process.
2973 2016-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
2975         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
2977 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
2979         Allow to customize names of executables used by grep.el
2981         * lisp/progmodes/grep.el (grep-find-program): Renamed from
2982         'find-program', which was a variable.  All uses changed.
2983         (grep-xargs-program): Renamed from 'xargs-program', which was a
2984         variable.  All uses changed.
2985         (grep-program): Now a defcustom rather than a simple variable.
2986         (Bug#23219)
2988 2016-04-08  Alan Third  <alan@idiocy.org>
2990         Set locale encoding to UTF-8 when run from OS X GUI.
2992         * src/nsterm.m (ns_init_locale): Append .UTF-8 when setting LANG.
2994 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
2996         Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
2998         * lisp/ffap.el (ffap-guess-file-name-at-point): Ignore errors
2999         while 'ffap-guesser' runs.  (Bug#23218)
3001 2016-04-08  Marcin Borkowski  <mbork@mbork.pl>
3003         Avoid infinite loop in 'studlify-word'
3005         * lisp/play/studly.el (studlify-region): Call
3006         'forward-word-strictly' and 'backward-word-strictly' instead of
3007         'forward-word' and 'backward-word'.  (Bug#19940)
3009 2016-04-07  Paul Eggert  <eggert@cs.ucla.edu>
3011         Don’t recommend obsolete EMACS env var
3013         * doc/misc/efaq.texi (Escape sequences in shell output):
3014         Remove long-obsolete (and now-confusing) notes about
3015         the EMACS environment variable in Emacs 21.1 and earlier.
3016         * doc/misc/efaq.texi (^M in the shell buffer):
3017         * etc/PROBLEMS:
3018         Remove obsolescent recommendation to consult the EMACS environment
3019         variable.
3021 2016-04-07  Glenn Morris  <rgm@gnu.org>
3023         * lisp/emacs-lisp/package.el: Change from a few days ago needs seq.
3025         * lisp/emacs-lisp/seq.el: Load cl-lib, not cl-extra.
3027 2016-04-07  Leo Liu  <sdl.web@gmail.com>
3029         Fix "Beginning of buffer" error in forward-page
3031         * lisp/textmodes/page.el (forward-page): Check before move to prevent
3032           "Beginning of buffer" error.
3034 2016-04-06  Dmitry Gutov  <dgutov@yandex.ru>
3036         Add a `transient' project type
3038         * lisp/progmodes/project.el (project-roots): Implement for the
3039         `transient' project type (bug#23224).
3040         (project-current): Instead of signaling an error, return a
3041         transient project instance rooted in the chosen directory.
3043 2016-04-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3045         Revert "Backport HTTPS proxy fix"
3047         This reverts commit 2d1a6054b161bd1055d4feb11c8c5ac95543f5db.
3049         It's too late in the Emacs 25 release cycle to add things like this to
3050         Emacs 25.1.  It's border line new feature.
3052 2016-04-06  Tao Fang  <fangtao0901@gmail.com>
3054         Backport HTTPS proxy fix
3056         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
3058         Backport:
3060 2016-04-06  Paul Eggert  <eggert@cs.ucla.edu>
3062         Fix stability confusion in sort-tests
3064         Problem reported by Philipp Stephani (Bug#23205).
3065         * test/automated/sort-tests.el:
3066         (sort-tests--insert-words-sort-and-compare):
3067         Don’t assume that reversing a sorted list is the same
3068         as sorting with the reverse predicate.  This is not true
3069         for stable sorts when items compare equal.
3071 2016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
3073         Avoid describe-key error with lambdas
3075         Problem reported by Sho Takemori (Bug#22716).
3076         * lisp/cedet/mode-local.el (describe-mode-local-overload)
3077         (xref-mode-local-overload): Use function-overload-p instead
3078         of assuming the argument is a symbol.
3080 2016-04-04  Artur Malabarba  <bruce.connor.am@gmail.com>
3082         * lisp/emacs-lisp/package.el (package-install-selected-packages):
3084         Skip unavailable packages.
3086 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
3088         Sync with gnulib
3090         This incorporates:
3091         2016-04-03 stdint: detect good enough pre-C++11 stdint.h in C++ mode
3092         2016-04-01 stddef: support configuring with g++
3093         * doc/misc/texinfo.tex, lib/stddef.in.h, m4/stdint.m4:
3094         Copy from gnulib.
3096 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
3098         Fix doc for Universal Time
3100         * doc/lispref/os.texi (Time of Day, Time Conversion):
3101         Be more careful about distinguishing UTC (which is not valid for
3102         pre-1961 time stamps) and UT (which is).
3103         (Time Parsing): Remove stray obsolete paragraph about a
3104         UNIVERSAL argument for ‘format-time-string’.
3106 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
3108         Handle Bug#23186
3110         * lisp/net/tramp.el (tramp-encoding-command-switch)
3111         (tramp-encoding-command-interactive):
3112         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
3113         `tramp-encoding-shell' could be nil.  (Bug#23186)
3115 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
3117         More format-time-string change fixups
3119         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
3120         * lisp/org/org.el (org-timestamp-format):
3121         Fix doc to match new format-time-string behavior.
3122         * lisp/org/ox-icalendar.el (org-icalendar-convert-timestamp):
3123         Use (not (not X)) to treat non-nil values of utc arg as UTC.
3125 2016-04-02  Paul Eggert  <eggert@cs.ucla.edu>
3127         make-xwidget unused arg cleanup
3129         * doc/lispref/display.texi (Xwidgets): Remove stray refs.
3130         * src/xwidget.c (syms_of_xwidget): Qwebkit, not Qwebkit_osr.
3132 2016-04-02  Joakim Verona  <joakim@verona.se>
3134         Remove unused arguments from make-xwidget
3136         The arguments BEG and END were unused, and are now removed.
3138         * doc/emacs/display.texi (Xwidgets): Document the change
3139         * lisp/xwidget.el (make-xwidget, xwidget-insert)
3140         (xwidget-webkit-new-session): Reflect changed arguments
3141         * src/xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments
3143 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
3145         Document incompatible changes in 'format-time-string'
3147         * etc/NEWS: Mention the incompatible change in the interpretation
3148         of the 3rd argument to 'format-time-string'.  (Bug#21943)
3150 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
3152         Improve documentation of byte-code objects
3154         * doc/lispref/compile.texi (Byte-Code Objects): Document the
3155         integer format of the argument descriptor.  (Bug#23061)
3157 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
3159         Adapt calls to 'format-time-string' to changes in Emacs 25
3161         * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): Use t as the
3162         last argument to format-time-string.  (Bug#23128)
3163         * lisp/gnus/gmm-utils.el (gmm-format-time-string): Use t as the
3164         last argument to format-time-string, when the TZ argument is not a
3165         number, per the doc string.
3167 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
3169         Improve vc-diff with Git backend
3171         * lisp/vc/vc-git.el (vc-git-command): Don't override
3172         coding-system-for-read/write if they are already bound.
3173         Suggested by joaotavora@gmail.com (João Távora).  (Bug#20892)
3174         (vc-git-print-log): Don't override coding-system-for-read if it's
3175         already bound.
3177 2016-04-01  Dmitry Gutov  <dgutov@yandex.ru>
3179         (js--continued-expression-p): Special-case unary plus and minus
3181         * lisp/progmodes/js.el (js--continued-expression-p): Make an
3182         effort to recognize unary plus and minus, in the contexts where
3183         they make sense (https://github.com/mooz/js2-mode/issues/322).
3185 2016-04-01  Alan Mackenzie  <acm@muc.de>
3187         Prevent C++ Mode wrongly fontifying some identifiers near templates as types
3189         This fixes debbugs #7917.
3191         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): Accept 'maybe
3192         (from c-forward-type) as sufficient to record an id.  Record type id as well
3193         as ref ids.
3194         (c-forward-name): Bind c-last-identifier-range around the call to
3195         c-forward-<>-arglist to prevent it getting corrupted.  Don't automatically
3196         assume an identifier is a type when a template ">" is followed by a "(".
3197         (c-forward-type): Don't automatically assume an identifier is a type when a
3198         template ">" is followed by a "(".
3200         * lisp/progmodes/cc-fonts.el (c-font-lock-<>-arglists): Don't fontify an
3201         identifier as a type when its associated ">" is followed by a "(".
3203 2016-04-01  Eli Zaretskii  <eliz@gnu.org>
3205         Avoid crashes due to insanely large columns in tabulated-list-format
3207         * src/xdisp.c (append_stretch_glyph, produce_xwidget_glyph)
3208         (produce_image_glyph): Limit the pixel width of the produced glyph
3209         to SHRT_MAX.  (Bug#23178)
3210         (append_composite_glyph, append_glyph, append_glyphless_glyph):
3211         Add assertions to verify that the pixel width of the glyph will
3212         never overflow a 'short'.
3213         * src/term.c (append_composite_glyph): Add assertion to verify
3214         that the pixel width of the glyph will never overflow a 'short'.
3216 2016-03-31  Mark Oteiza  <mvoteiza@udel.edu>
3218         Teach M-x disassemble a default argument.
3220         Adopts default argument in the same way as `describe-function'.
3221         * lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
3222         if any.
3224 2016-03-31  Eli Zaretskii  <eliz@gnu.org>
3226         Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
3228         * lisp/vc/vc-annotate.el (vc-annotate): Force DOS EOL decoding on
3229         MS-Windows and MS-DOS, when processing the output of "svn annotate".
3231 2016-03-31  Michael Albinus  <michael.albinus@gmx.de>
3233         Fix OS X specific settings in tramp-tests
3235         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
3237         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
3239         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
3240         (tramp--test-utf8): Improve settings of coding systems.
3241         Do not use `tramp--test-darwin-p' anymore.  (Bug#22145)
3243 2016-03-30  Alan Mackenzie  <acm@muc.de>
3245         Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
3247         * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
3248         superfluous invocations of c-self-bind-state-cache.
3250         * lisp/progmodes/cc-defs.el: (c-self-bind-state-cache): Copy and terminate
3251         markers correctly.
3253         * lisp/progmodes/cc-engine.el (c-record-parse-state-state): Terminate stale
3254         markers.
3256 2016-03-30  Alan Mackenzie  <acm@muc.de>
3258         Merge branch 'emacs-25' of /home/acm/emacs/emacs.git/emacs-25 into emacs-25
3260 2016-03-29  Xue Fuqiao  <xfq.free@gmail.com>
3262         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
3264         The example was removed by Chong Yidong on Mar 5, 2012.
3266 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
3268         * doc/man/emacsclient.1: Document +line:column option.
3270 2016-03-29  Eli Zaretskii  <eliz@gnu.org>
3272         Fix rare problems with echo-area display and multiple frames
3274         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
3275         around the call to x_consider_frame_title, to prevent
3276         resize_mini_window from undoing echo-area display.  (Bug#23124)
3278 2016-03-29  Alan Mackenzie  <acm@muc.de>
3280         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
3282         This would happen when that variable already has a buffer local binding.  Such
3283         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
3285         * lisp/replace.el (query-replace-read-from): Move the binding of
3286         text-property-default-nonsticky to inside of a new with-current-buffer buffer
3287         form with the minibuffer as argument.
3289 2016-03-27  Dmitry Gutov  <dgutov@yandex.ru>
3291         Remove prog-indentation-context
3293         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
3294         (prog-first-column, prog-widen): Remove, as discussed in
3295         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
3297         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
3298         to them.
3300         * etc/NEWS: Ditto.
3302         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
3303         Remove the compatibility aliases and all uses.
3305         Do not merge to master.
3307 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
3309         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
3311 2016-03-27  Eli Zaretskii  <eliz@gnu.org>
3313         Don't start the 'midnight' timer twice
3315         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
3316         timer twice when activating the mode the first time.  (Bug#23123)
3318 2016-03-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3320         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
3322 2016-03-26  Stephen Berman  <stephen.berman@gmx.net>
3324         Fix todo-mode category movement
3326         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
3327         category's existing categories sexp instead of invoking
3328         todo-update-categories-sexp in file moved to, in order to take
3329         archived items into account.  If the moved category has archived
3330         items, handle the source archive buffer properly.  Remove
3331         superfluous code.
3333 2016-03-26  Glenn Morris  <rgm@gnu.org>
3335         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
3337 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
3339         Ignore non-nil. non-cons values of unread-command-events
3341         * src/keyboard.c (requeued_events_pending_p, read_char)
3342         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
3343         unread command events to be processed.  (Bug#22976)
3345 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
3347         Improve documentatuon of 'truncate-partial-width-windows'
3349         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
3350         Clarify in the doc string how the width of partial-width windows
3351         is computed for the purposes of truncation decision.  (Bug#4338)
3353         * doc/emacs/windows.texi (Split Window): Clarify how the width of
3354         windows is calculated for the purposes of truncation decision.
3355         * doc/emacs/display.texi (Line Truncation): Remove a redundant
3356         index entry.
3358 2016-03-25  Paul Eggert  <eggert@cs.ucla.edu>
3360         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
3362 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3364         Fix 'dired-goto-file' in Dired buffers produced by find-dired
3366         * lisp/dired.el (dired-goto-file): Try looking for the file as a
3367         relative name with leading sub-directories, before looking for the
3368         basename alone.  (Bug#23089)
3370 2016-03-25  Nicolas Petton  <nicolas@petton.fr>
3372         Fix map-put and map-delete for alists (Bug#23105)
3374         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
3375         expression to a new symbol.
3376         * test/automated/map-tests.el: Add a regression test.
3378 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3380         Minor copyedits of documentation for temporary displays
3382         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
3383         Minor changes in wording.
3384         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
3385         index entries for 'display-buffer'.
3387         * etc/NEWS: Minor rewording of the entry about temporary displays.
3389 2016-03-25  Philipp Stephani  <phst@google.com>
3391         Add customization option for using UTF-8 coordinates in xt-mouse
3393         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
3394         (xterm-mouse--read-coordinate): New function to replace
3395         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
3396         (xterm-mouse--read-number-from-terminal): Adapt to new name.
3397         (xterm-mouse-tracking-enable-sequence)
3398         (xterm-mouse-tracking-disable-sequence): Replace constants with
3399         functions, mark constants as obsolete.
3400         (xterm-mouse--tracking-sequence): New helper function.
3401         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
3402         enable UTF-8 only if customization option says so; store UTF-8
3403         flag in terminal parameter.  (Bug#23009)
3405         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
3407 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3409         Minor doc string fixes in replace.el
3411         * lisp/replace.el (query-replace, query-replace-regexp)
3412         (query-replace-regexp-eval, map-query-replace-regexp)
3413         (replace-string, replace-regexp): Clarify in doc strings that
3414         these commands operate from point to the end of the buffer's
3415         accessible portion.  (Bug#23067)
3417 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3419         Fix scrolling upwards with 'xwidget-webkit-browse-url'
3421         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
3422         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
3423         (Bug#22918)
3425 2016-03-25  K. Handa  <handa@gnu.org>
3427         Fix display of Indic scripts
3429         * src/ftfont.c (ftfont_shape_by_flt): For combining characters out
3430         of the range U+300...U+36F, use the "combining" FLT only with
3431         non-OTF fonts.
3433 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3435         Fix splash screen display at startup
3437         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
3438         window displayed by "emacs -q" has enough space to show the whole
3439         text even if it includes 2 lines talking about recovering crashes
3440         sessions.  (Bug#23074)
3442         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
3443         error when computing the window-height from frame-height.
3445         * etc/NEWS: Mention the change.
3447 2016-03-25  Martin Rudalics  <rudalics@gmx.at>
3449         Describe temporary displays in Emacs manual
3451         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
3452         * doc/emacs/windows.texi (Window Choice): Minor fixes.
3453         (Temporary Displays): New subsubsection describing display of
3454         temporary buffers and `temp-buffer-resize-mode'.
3456 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
3458         Avoid stray As next to IDLW icons
3460         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
3461         Use "" for empty labels, not "a", as the latter now displays stray
3462         "A"s (Bug#18997).
3464 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
3466         Avoid GTK 3 crash with icons and masks
3468         Problem reported by Mosè Giordano (Bug#18997).
3469         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
3470         (xg_get_pixbuf_from_pix_and_mask): Do not use
3471         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
3472         invoke XGetPixel directly.  This is slow but speed is not
3473         important here.  Also, fail for unusual situations (not TrueColor,
3474         or images that are not 8 bits per sample) instead of displaying
3475         junk or crashing.
3477 2016-03-24  Juri Linkov  <juri@linkov.net>
3479         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
3481         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
3483 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
3485         Define make_save_ptr_ptr unconditionally
3487         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
3488         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
3489         Philipp Stephani <phst@google.com>.  (Bug#23101)
3491 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
3493         Preserve current buffer when popping up TTY menus
3495         * src/term.c (tty_menu_show): Be sure to save and restore the
3496         current buffer around TTY menu pop-ups.  (Bug#23101)
3498 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
3500         Improve font selection by family on MS-Windows
3502         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
3503         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
3504         This avoids rejecting many font families whose members are shown
3505         by 'font-family-list', in particular 'courier' requested by
3506         info.el.  Without this change, many values of ':family' attribute
3507         of a face have no effect on MS-Windows, because they are rejected
3508         due to bogus mismatch of the charset.
3510 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
3512         Comint, term, and compile now set EMACS
3514         This fixes directory tracking in ansi-term, at the expense of
3515         breaking some usages of 'configure'.  Setting EMACS is meant to be
3516         a somewhat temporary measure, until Bash 4.4 comes out and is
3517         common.  (Bug#20484).
3518         * etc/NEWS: Document this.
3519         * lisp/comint.el (comint-exec-1):
3520         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
3521         * lisp/progmodes/compile.el (compilation-start):
3522         * lisp/term.el (term-exec-1):
3523         Go back to setting the EMACS environment variable, for backward
3524         compatibility to Bash 4.3 and earlier.
3526 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
3528         Ignore more merges when generating ChangeLog
3530         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
3531         not merely those from master and emacs-NN.  The ChangeLog entries
3532         they generate are not that useful.
3534 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
3536         Sync with gnulib
3538         This incorporates:
3539         2016-03-22 gitlog-to-changelog: suppress ignored chatter
3540         2016-03-21 sys_select: port to new Cygwin
3541         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
3542         * lib/sys_select.in.h: Copy from gnulib.
3544 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
3546         Resurrect GNUS-NEWS autogeneration
3548         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
3549         GNUS-NEWS section to match current file locations and procedure.
3550         * etc/GNUS-NEWS: Regenerate by using new procedure.
3551         * lisp/Makefile.in (update-gnus-news): New rule, containing a
3552         procedure for building GNUS-NEWS.  The old procedure got lost
3553         somehow when Gnus was merged into Emacs.
3555 2016-03-22  Anders Lindgren  <andlind@gmail.com>
3557         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
3559         * src/nsterm.m (ns_screen_margins): New function.
3560         (ns_screen_margins_ignoring_hidden_dock): New function.
3561         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
3562         ([EmacsWindow zoom:]): Take all screen margins (except those
3563         originating from a hidden dock) into account.
3565 2016-03-22  Eli Zaretskii  <eliz@gnu.org>
3567         Fix bug in displaying header line with a box face
3569         * src/xdisp.c (get_next_display_element): Handle the case when a
3570         display string acquires the box face from an underlying string,
3571         not from the buffer.  (Bug#23091)
3573 2016-03-21  Kaushal Modi  <kaushal.modi@gmail.com>
3575         Fix an Isearch var to be a string (Bug#23038)
3577         * lisp/isearch.el (isearch--describe-regexp-mode): The `description' var
3578           needs to always be a string.  Add the missing default case for the
3579           cond form that ensures that.
3581         Before this bug fix, for the events when `regexp-function' and
3582         `search-default-mode' both were nil, `description' also stayed nil.  So
3583         when `space-before' was non-nil, the "non-string" `description'
3584         (with a value of nil) got passed as an argument to
3585         `replace-regexp-in-string' (where a string was expected).  That caused
3586         the error described in Bug#23038.
3588 2016-03-21  Leo Liu  <sdl.web@gmail.com>
3590         Fix (args-out-of-range 1) error in cursor-sensor--detect
3592         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
3593           hard-code (point-min) as 1 which fails in narrowed buffers.
3595 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3597         Render empty <ul><li><ul> correctly
3599         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
3600         correctly (bug#22964).
3601         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
3603         Backport:
3605 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3607         Ignore invalid base64 encoded embedded images
3609         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
3610         encoded embedded images (bug#22928).
3611         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
3613         Backport:
3615 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3617         Fix <p> and <div> newlines with or without <li> in shr
3619         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
3620         a <li>, if we are, and don't insert newlines there.
3621         (shr-ensure-paragraph): When mixing newlines and paragraph
3622         ensurements, don't insert too many blank lines.
3623         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
3624         new line.
3625         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
3627         Backport:
3629 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
3631         Avoid errors in 'newline'
3633         * lisp/simple.el (newline): Don't barf if invoked with
3634         non-positive argument in the middle of a line.  (Bug#22490)
3636 2016-03-19  Michael Albinus  <michael.albinus@gmx.de>
3638         Fix Bug#23032
3640         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
3641         remote file names.  (Bug#23032)
3643 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
3645         Adjudicate review comments in abbrevs.texi
3647         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
3648         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
3649         default values of variables.  Suggested by Steve Byrne
3650         <sbb@penguinis.org>.  (Bug#23016)
3652         * admin/release-process (Check manuals): Mark files reviewed by
3653         Steve Byrne.
3655 2016-03-18  Dmitry Gutov  <dgutov@yandex.ru>
3657         Fixup the "normal" matcher; highlight global var symbols, too
3659         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
3660         operator name symbols with the "normal" matcher (it actually
3661         needed updating).  Highlight global variable symbols, too.
3663 2016-03-18  Marcin Borkowski  <mbork@mbork.pl>
3665         Honor prefix arg in doc-view-next-line-or-next-page
3667         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
3668         prefix argument into consideration when continuous scrolling is
3669         not in effect (i.e., by default) (bug#19559).
3671 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
3673         Port to strict C99 offsetof
3675         * src/bidi.c (bidi_copy_it):
3676         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
3677         Use only a single identifier as the second argument of offsetof.
3678         Found by using clang -pedantic.
3680 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
3682         Port to GTK with strict C11 compiler
3684         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
3685         Cast from function type to void * where the C standard requires this.
3686         This works around a problem in the prototypes for
3687         g_signal_handler_find and g_signal_handlers_block_by_func, which
3688         use gpointer instead of GCallback.  Found by using gcc -pedantic.
3690 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
3692         Port to GTK with strict C99 compiler
3694         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
3695         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
3696         * src/emacsgtkfixed.c (EmacsFixedPrivate):
3697         * src/emacsgtkfixed.h (EmacsFixedClass):
3698         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
3700 2016-03-17  Anders Lindgren  <andlind@gmail.com>
3702         Avoid screen artifacts with new OS X visible bell after scrolling
3704         * src/nsterm.m (EmacsBell): Save NSView when displaying the
3705         visible bell and set `needsDisplay' when removed.
3706         (hide_bell): Trace.
3707         (ns_copy_bits): Trace.
3709 2016-03-17  Michael Albinus  <michael.albinus@gmx.de>
3711         Suppress some Tramp tests for OSX, do not merge with master
3713         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
3714         (tramp--test-utf8): Use it.  (Bug#22145)
3716 2016-03-17  Glenn Morris  <rgm@gnu.org>
3718         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
3719         Move definitions before use.
3721         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
3723         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
3725 2016-03-17  Glenn Morris  <rgm@gnu.org>
3727         Address compilation warnings due to 2016-01-03 mml refactoring.
3729         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
3730         (message-options-get): Autoload.
3731         (message-options-set): Declare.
3732         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
3733         Simplify default value.
3734         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
3735         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
3736         No longer a need for password-cache.
3738 2016-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
3740         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
3742         (bug#22960).
3744 2016-03-16  Glenn Morris  <rgm@gnu.org>
3746         * lisp/dired-x.el (dired-omit-here-always): Correct error message
3747         for 2016-01-25 change.
3749         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
3750         removed 2016-01-30.
3752         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
3754 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
3756         Avoid segfaults due to frame image cache being absent
3758         * src/image.c (cache_image): If the frame doesn't have an image
3759         cache, create it.  (Bug#23028)
3761 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
3763         Improve documentation of glyphless-character display
3765         * doc/emacs/display.texi (Text Display): Document and index the
3766         'glyphless-char' face.
3768 2016-03-16  Dmitry Gutov  <dgutov@yandex.ru>
3770         Support safe navigation operator in non-SMIE indentation code
3772         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
3773         Support safe navigation operator in non-SMIE indentation code.
3774         Cherry-picked from
3775         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
3777 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3779         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
3781         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
3782         assume xsd:base64Binary values are UTF-8 strings.
3783         (soap-decode-xs-basic-type): Likewise.
3784         (soap-invoke): Document xsd:base64Binary handling.
3786 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
3788         Fix Ruby's operator precedence
3790         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
3791         Rearrange the smie-precs->prec2 form.
3793 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
3795         (ruby-interpolation-inside-another-interpolation): New failing test
3797         * test/automated/ruby-mode-tests.el
3798         (ruby-interpolation-inside-another-interpolation):
3799         New failing test.
3801 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
3803         Port to clang 3.7.0 on x86-64
3805         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
3806         not done conditionally.  This helps clang, which needs
3807         -Wunknown-warning-option later when configured with warnings.
3808         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
3809         smart enough to figure this out on its own if warnings are enabled.
3810         (lisp_time_struct): Redo for clarity, and to pacify clang.
3811         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
3812         uninitialized locals.  This avoids undefined behavior and pacifies
3813         clang.
3815 2016-03-15  Glenn Morris  <rgm@gnu.org>
3817         * test/automated/package-test.el (package-test-signed): Tweak skip
3818         condition, for hydra.
3820 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
3822         Sync with gnulib
3824         This incorporates:
3825         2016-03-15 time_rz: port to clang -Wunused-const-variable
3826         2016-03-15 select: port more to Intel 2016.1.150 compiler
3827         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
3829 2016-03-15  Eli Zaretskii  <eliz@gnu.org>
3831         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
3833         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
3834         nil.
3836         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
3837         loading window.el.  (Bug#22975)
3839 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
3841         Do not tokenize a comment before continuation as ';'
3843         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
3844         Account for a comment right after point.
3846 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
3848         Don't misindent arguments of a method call inside continuation
3850         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
3851         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
3852         Simplify the traversal loop.
3854 2016-03-14  Stefan Monnier  <monnier@iro.umontreal.ca>
3856         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
3858         (read_key_sequence): Test it here, as before.
3859         (bug#22825).
3861 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
3863         ASCII-only etc/NEWS etc.
3865         * etc/NEWS, nextstep/README: Revert the recently-added curved
3866         quotes, and stick to ASCII.  This typically involves replacing
3867         curved with straight quotes.  Since etc/NEWS is viewed so often by
3868         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
3869         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
3871 2016-03-14  Alan Mackenzie  <acm@muc.de>
3873         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
3875         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
3877         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
3878         rather than just using the cache variable c-state-cache.
3879         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
3880         to c-parse-state from other uses of the parse state cache.
3882         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
3883         c-self-bind-state-cache around the processing, replacing flawed bindings of
3884         c-state-cache.
3886 2016-03-14  Alan Mackenzie  <acm@muc.de>
3888         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
3890         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
3892         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
3893         rather than just using the cache variable c-state-cache.
3894         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
3895         to c-parse-state from other uses of the parse state cache.
3897         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
3898         c-self-bind-state-cache around the processing, replacing flawed bindings of
3899         c-state-cache.
3901 2016-03-14  Kaushal Modi  <kaushal.modi@gmail.com>
3903         Fix Isearch prompt when invoked with an argument
3905         * lisp/isearch.el (isearch--describe-regexp-mode): With
3906         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
3907         now displays "Regexp I-search: " again.  But if the user has set
3908         `search-default-mode' to t, and then does C-s, the minibuffer now
3909         displays "I-search: " because the default search mode is now regexp
3910         mode.  Comments have been added to explain the priority of conditions
3911         in the `cond' form.  (Bug#22991)
3913 2016-03-14  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
3915         Fix a typo in the Emacs manual
3917         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
3918         in a command name.
3920 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
3922         Curved quotes in etc/NEWS etc.
3924         * etc/NEWS, nextstep/README: Prefer curved quotes in the
3925         recently-changed text documentation.  See:
3926         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00860.html
3928 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
3930         Fix some single quotes in documentation
3932         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
3933         when documenting quoting styles.
3934         * etc/NEWS, nextstep/README: In these plain text files, quote
3935         'like this' consistently, rather than also (sometimes) ‘like this’
3936         or (more often) `like this'.
3938 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
3940         Make lisp-completion-at-point's argument optional
3942         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
3943         the argument optional, like it was before the rename.
3945 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
3947         Tweak the left precedence of '=>'
3949         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
3950         precedence of '=>', to improve indentation and sexp navigation.
3952 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
3954         Indent '.' relative to the first sibling expression
3956         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
3957         Indent '.' relative to the first sibling expression, instead of the
3958         parent token (bug#17213).
3960 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
3962         Make '.' associative, for easier sexp navigation
3964         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
3965         Make '.' associative, for easier sexp navigation.
3967 2016-03-13  Phillip Lord  <phillip.lord@russet.org.uk>
3969         Revert "Simplify "Visit New File" to "New File""
3971         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
3973 2016-03-12  Phillip Lord  <phillip.lord@russet.org.uk>
3975         Simplify "Visit New File" to "New File"
3977         * doc/emacs/files.texi, lisp/menu-bar.el (menu-bar-file-menu),
3978           lisp/startup.el(normal-mouse-start-screen,
3979           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
3980           File".
3982 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
3984         Update Unicode notes for importing a new Unicode version
3986         * admin/notes/unicode: Mention the need to update otf-script-alist
3987         in fontset.el when importing data files from a new Unicode
3988         version.
3990 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
3992         Import new data files from Unicode 9.0.0beta
3994         * admin/unidata/UnicodeData.txt:
3995         * admin/unidata/Blocks.txt:
3996         * admin/unidata/BidiMirroring.txt:
3997         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
3998         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
3999         'coding-system-for-read' to 'utf-8, as various Unicode data files
4000         now actually use non-ASCII characters.
4001         (unidata-setup-list, unidata-get-name): Support the new Tangut
4002         Ideographs block.
4004         * lisp/international/characters.el (standard-case-table): Add new
4005         characters from Unicode 9.0.0.
4006         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
4007         Cyrillic Extended-C block.
4008         (char-width-table): Update ranges per Unicode 9.0.0.
4009         * lisp/international/fontset.el (script-representative-chars): Add
4010         new scripts defined by Unicode 9.0.0.
4011         (otf-script-alist): Add new OTF script tags.
4012         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
4013         Unicode 9.0.0 additions.
4015 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4017         Avoid errors in forms-mode when default major mode is text
4019         * lisp/forms.el (forms-mode): Bind
4020         change-major-mode-with-file-name to nil when calling
4021         set-visited-file-name.  (Bug#22982)
4023 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4025         Avoid crashes at startup on systems that CANNOT_DUMP
4027         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
4028         boolean variable.
4029         (init_iterator, reseat_to_string)
4030         (Fcurrent_bidi_paragraph_direction)
4031         (Fbidi_find_overridden_directionality): Use
4032         redisplay--inhibit-bidi instead of purify-flag, to determine when
4033         it's safe to reorder bidirectional text.
4035         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
4036         beginning of the file.  Reset to nil when charprop.el is
4037         successfully loaded, or when we are going to dump, whichever
4038         happens last.  (Bug#22975)
4040 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4042         Fix documentation of seq.el functions
4044         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
4045         cross-references.  Fix formatting.  (Bug#22992)
4047 2016-03-11  Dmitry Gutov  <dgutov@yandex.ru>
4049         Support Ruby 2.3.0's safe navigation operator
4051         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
4052         (ruby-smie--backward-token): Tokenize '&.' as '.'.
4053         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
4055         * test/indent/ruby.rb: Add an example using safe navigation
4056         operator.  Fix a syntax error in existing example.
4058 2016-03-11  John Wiegley  <johnw@newartisans.com>
4060         Update Emacs manual section related to character folding
4062         * doc/emacs/search.texi: Character folding is not on by default.
4064 2016-03-11  Eli Zaretskii  <eliz@gnu.org>
4066         Update admin/notes/unicode
4068         * admin/notes/unicode: Update the list of files from the UCD we
4069         are using.  Mention the possible need to change 'ucs-names' when
4070         importing a new version of the Unicode Standard.
4072 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
4074         Add symref-filepattern entries for c?perl-mode
4076         * lisp/cedet/semantic/symref/grep.el
4077         (semantic-symref-filepattern-alist): Add entries for perl-mode and
4078         cperl-mode.
4080 2016-03-10  Ken Raeburn  <raeburn@raeburn.org>
4082         Don't use XRANDR 1.3 extensions if the server doesn't support them.
4084         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
4085         version number.
4086         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
4087         after querying the X server.
4088         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
4089         XRRGetScreenResourcesCurrent if the server doesn't support at least
4090         RANDR version 1.3.  Conditionalize the code blocks on compiling
4091         against library version 1.3 or better, rather than feature tests for
4092         each function.
4093         * configure.ac: Stop testing for those two functions.
4095 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
4097         Sync with gnulib
4099         This incorporates:
4100         2016-03-08 intprops: make .h file license match module
4101         2016-03-08 acl: fix missing return on Cygwin
4102         2016-03-05 extern-inline: port to PGI CC
4103         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
4104         * m4/extern-inline.m4:
4105         Copy from gnulib.
4107 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
4109         Rework C source files to avoid ^(
4111         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
4112         at the start of a line unless it starts a function.  This change
4113         is a short-term hack; in the longer run we plan to fix cc-mode’s
4114         performance for C files that have ‘(’ at the start of a line in a
4115         comment or string.
4117 2016-03-10  Eli Zaretskii  <eliz@gnu.org>
4119         By default, etags produces unqualified Perl tag names
4121         * lib-src/etags.c (Perl_functions): Produce unqualified names,
4122         unless -Q was specified.
4123         (print_help): Update the description of -Q.
4125         * doc/man/etags.1: Update the documentation of -Q.
4127         * test/etags/ETAGS.good_1:
4128         * test/etags/ETAGS.good_2:
4129         * test/etags/ETAGS.good_3:
4130         * test/etags/ETAGS.good_4:
4131         * test/etags/ETAGS.good_5:
4132         * test/etags/CTAGS.good: Adapt the expected test results to the
4133         changed Perl functionality.
4135 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
4137         Indent methods with keyword names correctly
4139         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
4140         Rename to ruby-smie--before-method-name.  Now also check if we're
4141         after a 'def' keyword.  Update both callers.
4143 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
4145         Propertize character literals and special global variables differently
4147         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
4148         character literals and global variables with special names with
4149         prefix and symbol syntax classes, for SMIE to tokenize them
4150         together automatically.
4151         (ruby-font-lock-keywords): Fix an old regression in highlighting
4152         character literals.
4154 2016-03-09  John Wiegley  <johnw@newartisans.com>
4156         Change how /etc/NEWS presents character folding
4158         * NEWS: Note that character folding is no longer the default.
4160 2016-03-09  John Wiegley  <johnw@newartisans.com>
4162         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
4164         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
4166 2016-03-09  Andreas Schwab  <schwab@linux-m68k.org>
4168         Properly handle lambda as read function (bug 22961)
4170         * src/lread.c (readchar): Be more strict about checking for
4171         string in cons for read_vector.
4172         (unreadchar): Likewise.
4174 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
4176         Propertize operator symbol names with symbol syntax class
4178         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
4179         Do it here.
4180         (ruby-font-lock-keywords): Instead of handling them here.  Leave
4181         highlighting them to the "normal" matcher, because now we can.
4182         (ruby-smie--forward-token, ruby-smie--backward-token):
4183         Likewise, don't special-case operator symbols anymore.
4184         (ruby-smie--args-separator-p): Simplify the regexp, match operator
4185         names with \s_.
4186         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
4187         at EOL the same way: check if the character has been assigned the
4188         symbol syntax class by syntax-propertize.
4190 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
4192         Stop recognizing :#{} as symbol in ruby-mode
4194         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
4195         the weird part that recognized colon followed by interpolation
4196         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
4197         syntax error in any modern version of Ruby.  Fix nearby bug reference.
4199 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
4201         Allow using the left shift operator without spaces on both sides
4203         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
4204         ruby-verify-heredoc, reverse the meaning of the return value, and
4205         short-circuit if preceded by a symbol not separated by whitespace.
4207         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
4208         (ruby-no-heredoc-class-self): New tests.
4210 2016-03-08  Andreas Schwab  <schwab@linux-m68k.org>
4212         Properly handle unquoting in wdired (bug 22938)
4214         The recorded old names are not quoted, don't unquote them.
4216         * lisp/wdired.el (wdired-normalize-filename): Add argument
4217         unquotep, only unquote if non-nil.
4218         (wdired-get-filename): Don't unquote the old file name.
4219         (wdired-get-previous-link): Always unquote.
4221 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
4223         Allow splat operator before percent literal
4225         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
4226         Allow splat operator before percent literal.
4228 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
4230         Don't apply the return value of goto-char as syntax class
4232         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
4233         apply the return value of goto-char as syntax class.
4235 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
4237         Guard against nested percent literals
4239         * lisp/progmodes/ruby-mode.el
4240         (ruby-syntax-propertize-percent-literal):
4241         Don't check the syntax status.
4242         (ruby-syntax-propertize): Check it here.  And also guard against
4243         being in a larger percent literal.
4245         * test/automated/ruby-mode-tests.el
4246         (ruby-no-nested-percent-literals): New test.
4248 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
4250         Recognize iuwu-mod after an escaped newline
4252         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
4253         newline is escaped.
4254         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
4255         correctly.
4257 2016-03-06  Andreas Schwab  <schwab@linux-m68k.org>
4259         Fix symbolic mode string conversion for s and t
4261         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
4262         ?t.
4263         (file-modes-symbolic-to-number): Default to a for ts permissions.
4265 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
4267         Update 'ucs-names' database
4269         * lisp/international/mule-cmds.el (ucs-names): Update used and
4270         unused ranges from the latest UnicodeData.txt.
4272 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
4274         Improve doc string of 'shell-command'
4276         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
4277         for.  (Bug#22926)
4279 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
4281         Make the code in movemail_strftime more general
4283         * lib-src/movemail.c (movemail_strftime): Transform the format
4284         string passed by the caller instead of using a separate format
4285         string.
4287 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
4289         Speed up redisplay of binary files with long series of nulls
4291         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
4292         for a character needed for resolving the type of a series of BN
4293         and ET characters, as required by rule W5 of UAX#9, if the results
4294         of the resolution are known in advance, because we are at level
4295         zero, and the previous strong character was L.
4296         (bidi_resolve_neutral): Partially resurrect the optimization for a
4297         long series of control characters in an otherwise strictly L2R
4298         text.
4299         (bidi_level_of_next_char): Don't enter the loop that searches for
4300         a paragraph separator if the current character is already at base
4301         embedding level.  (Bug#22739)
4303 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
4305         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
4307         Remove the highlighting support for quoting 'like this' inside
4308         Lisp docstrings.  This part of
4309         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
4310         unintentional, considering substitute-command-keys gives wrong
4311         output for such usage.
4312         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
4313         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
4314         straight quotes as symbol.
4316 2016-03-05  Paul Eggert  <eggert@cs.ucla.edu>
4318         Restore leading space in movemail pop output
4320         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
4321         (strftime) [WINDOWSNT]: New macro.
4322         (mbx_delimit_begin): Go back to previous version of this code,
4323         now that there’s a special-purpose WINDOWSNT implementation
4324         that should do the right thing.  That way, the output continues
4325         to use leading space rather than leading zero for day of month.
4327 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
4329         Fix bidi-paragraph-direction in Rmail view buffer
4331         * lisp/mail/rmail.el (rmail-show-message-1): Reset
4332         bidi-paragraph-direction to nil before formatting the message for
4333         display.
4335 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
4337         Don't misindent computed property generator methods
4339         * lisp/progmodes/js.el (js--looking-at-operator-p):
4340         Don't misindent computed property generator methods
4341         (https://github.com/mooz/js2-mode/issues/317).
4343 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
4345         Fix mbox files produced by movemail on MS-Windows
4347         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
4348         format specifiers, as at least the MS-Windows version of strftime
4349         doesn't support %e and %T.
4351 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
4353         doc string file descriptor exhaustion fix
4355         * src/doc.c (get_doc_string): Move newly-added check to a better
4356         location (Bug#22814).
4358 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4360         Fix Bug#22814
4362         * src/doc.c (get_doc_string): Raise an error in case too many
4363         files are open.  (Bug#22814)
4365 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4367         Fix insertion of edited servers in the dribble file
4369         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
4370         insert explicit newlines, because they're quoted (bug#22903).
4372         Backport:
4374         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
4376 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
4378         Fix previous fix of enlarge-/shrink-window
4380         * lisp/window.el (enlarge-window, shrink-window): Consistently
4381         signal user-error instead of error.  Resize minibuffer window by
4382         delta lines instead of pixels.  When a window cannot be resized,
4383         signal an error only when this function was invoked by a command
4384         in the enlarge-/shrink-window group (this restores the behavior
4385         before the fix of bug#22723 for the non-interactive case).
4387 2016-03-03  Artur Malabarba  <bruce.connor.am@gmail.com>
4389         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
4391 2016-03-03  Mark Oteiza  <mvoteiza@udel.edu>
4393         Complete temperature units in calc-convert-temperature
4395         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
4396         temperature units in math-standard-units.
4398 2016-03-02  Dmitry Gutov  <dgutov@yandex.ru>
4400         Make sure to use case-sensitive search
4402         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
4403         use case-sensitive search.
4405 2016-03-02  Ulf Jasper  <ulf.jasper@web.de>
4407         Prevent infinite loop on not-well-formed xml. (Bug#16344)
4409         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
4410         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
4411           test cases for Bug#16344.
4413 2016-03-02  Alan Third  <alan@idiocy.org>
4415         Add the missing test case for the previous patch
4417         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
4418         any processing.
4419         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
4420         DABBREV--SUBSTITUTE-EXPANSION.
4421         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
4423 2016-03-02  Alan Third  <alan@idiocy.org>
4425         Use the correct dabbrev expansion
4427         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
4428         any processing.
4429         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
4430         DABBREV--SUBSTITUTE-EXPANSION.
4431         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
4433 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
4435         Bump version to 25.0.92
4437         * README:
4438         * configure.ac:
4439         * msdos/sed2v2.inp: Bump version to 25.0.92.
4441 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
4443         * etc/AUTHORS: Update the AUTHORS file
4445 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
4447         authors.el updates
4449         * admin/authors.el (authors-ignored-files): Addition.
4451 2016-03-02  Michael Albinus  <michael.albinus@gmx.de>
4453         Fix Bug#22859
4455         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
4456         event in case of kqueue and file1 is nil.  (Bug#22859)
4458 2016-03-01  Eli Zaretskii  <eliz@gnu.org>
4460         Fix reordering of bidi text in an isolate inside an override
4462         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
4463         of FSI with either LRI or RLI, as determined by the first strong
4464         directional character in the isolate.  This prevents failure to
4465         isolate when the FSI...PDI text is inside a directional override.
4466         (Bug#22786)
4468 2016-03-01  Alan Mackenzie  <acm@muc.de>
4470         Document c-guess-basic-syntax in the CC Mode manual.
4472         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
4473         pxrefs to Custom Line-Up and Other Indentation.
4474         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
4475         Syntactic Analysis.
4477 2016-03-01  Michael Albinus  <michael.albinus@gmx.de>
4479         Fix targets in test/automated/Makefile.in
4481         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
4482         empty target and target all.
4484 2016-03-01  Leo Liu  <sdl.web@gmail.com>
4486         Comment on last change to define-derived-mode
4488         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
4490 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
4492         Allow binding `url-mime-accept-string'
4494         * lisp/url/url-http.el (url-http): Allow binding
4495         `url-mime-accept-string' (bug#22855).
4497         Backport:
4499         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
4501 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
4503         Also allow setting the paragraph direction to nil
4505         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
4506         setting the paragraph direction to nil ("auto").
4508 2016-02-29  Anders Lindgren  <andlind@gmail.com>
4510         Made the new OS X visible bell more visible.
4512         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
4513           "caution" image five times, as the image in its original size
4514           was hard to see.
4516 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
4518         Use the correct background color when filling nested <divs>
4520         * lisp/net/shr.el (shr-face-background): Return the first
4521         background, because that's the one that's visible (bug#22680).
4523         Backport:
4525         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
4527 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
4529         Make <div> in <li> not insert extra newlines
4531         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
4532         extra newlines (bug#19587).
4534         Backport:
4536         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
4538 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
4540         Uncomment the next-error-function integration in xref
4542         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
4543         Uncomment the next-error-function integration
4544         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
4546 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
4548         Remove the word "valid", to avoid ambiguity
4550         * doc/emacs/maintaining.texi (Identifier Search)
4551         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
4553 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
4555         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
4557 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
4559         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
4561         * etc/NEWS:
4562         * etc/PROBLEMS: Mention this.
4564         * lisp/autorevert.el (global-auto-revert-mode): Set
4565         `auto-revert-use-notify' to nil.  (Bug#22814)
4567 2016-02-28  Paul Eggert  <eggert@cs.ucla.edu>
4569         * etc/TODO: Minor quoting and grammar fixes.
4571 2016-02-28  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
4573         Fix ModelSim error parsing
4575         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
4576         ModelSim error parsing (bug#5768).
4578 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
4580         Make parse-time-string-chars faster
4582         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
4583         up the code (backport:).
4585 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
4587         Add a eww command to toggle paragraph direction
4589         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
4590         command and keystroke.
4592         * doc/misc/eww.texi (Advanced): Mention the `D' command.
4594 2016-02-27  Glenn Morris  <rgm@gnu.org>
4596         * nextstep/WISHLIST: Merge into etc/TODO and remove.
4598         * etc/TODO: Merge in items from nextstep/WISHLIST.
4599         * nextstep/README: Update for this change.
4601 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
4603         Fix char signedness issue in bidi code
4605         * src/dispextern.h (struct bidi_t): Change type of resolved_level
4606         and isolate_level to signed char.  (Bug#22830)
4608 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
4610         * lib-src/pop.c (socket_connection): Fix format string.
4612 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
4614         Avoid inflooping in thing-at-point-looking-at
4616         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
4617         with regular expressions whose matching doesn't move point.
4618         (Bug#22756)
4619         Describe the argument DISTANCE in the doc string.
4621 2016-02-27  Leo Liu  <sdl.web@gmail.com>
4623         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
4625 2016-02-26  Michael Albinus  <michael.albinus@gmx.de>
4627         etc/PROBLEMS: Mention problems with using file descriptors
4629         * etc/PROBLEMS: Mention problems with using file descriptors
4630         of kqueue file notification library.
4632 2016-02-26  Kaushal Modi  <kaushal.modi@gmail.com>
4634         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
4636 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
4638         Remove unneeded workaround in xftfont.c
4640         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
4641         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
4642         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
4644 2016-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
4646         * lisp/saveplace.el (save-place-local-mode): New minor mode
4648         (toggle-save-place): Define as obsolete alias.
4649         (save-place--setup-hooks): New function.
4650         (save-place-mode): Use it.
4652 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
4654         Fix redisplay on a TTY after 'make-frame'
4656         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
4657         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
4659 2016-02-25  Alan Mackenzie  <acm@muc.de>
4661         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
4663         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
4664         `syntax-after' to ensure syntax-table text properties are respected.
4666 2016-02-25  Magnus Henoch  <magnus.henoch@gmail.com>
4668         Input method polish-slash should not use keyboard translation
4670         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
4671         polish-slash should not use keyboard translation (bug#19081).
4673 2016-02-25  Chris Feng  <chris.w.feng@gmail.com>
4675         Fix an assertion
4677         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
4678         implies start == 0) separately.
4680 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
4682         Fix 'toggle-save-place'
4684         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
4685         support save-place in the buffer.  Autoload the command.
4687 2016-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
4689         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
4691         * src/keyboard.c (read_key_sequence): Don't inadvertently set
4692         immediate_echo when we don't want any echo-keystrokes.
4693         (echo_keystrokes_p): Move earlier.
4695 2016-02-24  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
4697         Minor fixes in calculator.el
4699         * lisp/calculator.el (calculator-mode-map): Bind `E' for
4700         `calculator-exp'.
4701         (calculator-last-input): Fix a bug with pressing F1.
4702         (Bug#20764)
4704 2016-02-24  Anders Lindgren  <andlind@gmail.com>
4706         Update HISTORY section in readme for the NextStep interface.
4708         * nextstep/README: Update HISTORY after suggestion
4709         from former maintainer Adrian Robert.
4711 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
4713         Improve documentation of 'save-place-mode'
4715         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
4716         turning on 'save-place-mode' globally.
4718         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
4719         on the mode in all buffers.
4721 2016-02-24  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
4723         Allocate glyph matrices for the initial frame
4725         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
4727         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
4729 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
4731         Fix white space in last checkin
4733 2016-02-24  Dima Kogan  <gnuplot@dima.secretsauce.net>
4735         Make `insert-pair' always leave the cursor where documented
4737         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
4738         insert-pair states that after insertion, the point ends up
4739         after the opening character. This was not true if the pair was
4740         inserted to surround a region (bug#16949).
4742 2016-02-24  Kaushal Modi  <kaushal.modi@gmail.com>
4744         etc/NEWS: Mention the new second parameter to `package-install'
4746         * etc/NEWS: Mention the new second parameter to
4747         `package-install' (bug#22784).
4749 2016-02-24  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
4751         Highlight assignments in Makefiles more correctly
4753         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
4754         Highlight assignments preceded by a TAB character correctly
4755         (bug#20787).
4758         Backport:
4760         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
4762 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
4764         Improve documentation of focus-related hooks
4766         * doc/lispref/commands.texi (Focus Events): Mention focus-related
4767         hooks.  (Bug#21728)
4769 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
4771         Further improve doc string of 'disable-point-adjustment'
4773         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
4774         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
4776 2016-02-23  Michael Albinus  <michael.albinus@gmx.de>
4778         Further adaptions in file-notify-tests.el for w32notify
4780         * test/automated/file-notify-tests.el
4781         (file-notify--test-read-event-timeout, file-notify--test-timeout):
4782         Decrease values.
4783         (file-notify-test03-autorevert)
4784         (file-notify-test04-file-validity)
4785         (file-notify-test05-dir-validity): Run tests also for w32notify.
4786         (file-notify-test08-watched-file-in-watched-dir):
4787         Adapt expected events for w32notify.
4789 2016-02-23  Jan Tatarik  <jan.tatarik@gmail.com>
4791         Don't bug out on localised dates in gnus-icalendar
4793         * lisp/gnus/gnus-icalendar.el
4794         (gnus-icalendar-event:org-timestamp): Don't bug out on
4795         localised dates.
4797 2016-02-23  Drew Adams  <drew.adams@oracle.com>
4799         (ls-lisp-insert-directory): Make -B work
4801         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
4802         (bug#20776).
4804         Backport:
4806         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
4808 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
4810         Make buttons in header lines work
4812         * lisp/help-mode.el (help-button-action): `help-xref-button' in
4813         header line doesn't work (bug#21024).
4815         Backport:
4817         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
4819 2016-02-23  Christopher Wellons  <wellons@nullprogram.com>
4821         Make setf for frame-height/width work again
4823         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
4824         frame-height/width work again (bug#21979).
4826 2016-02-23  Łukasz Stelmach  <stlman@poczta.fm>
4828         Encode header strings before printing
4830         * lisp/ps-print.el (ps-generate-header-line): Encode the
4831         header strings to avoid problems with non-ASCII headers
4832         (bug#22611).
4834         Backport:
4836         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
4838 2016-02-23  Nicolas Richard  <youngfrog@members.fsf.org>
4840         (cl-union): Do not ignore :test argument when lists are equal.
4842         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
4844         * test/automated/cl-seq-tests.el: New file (bug#22729).
4846 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
4848         Add `isearch' to `basic-faces'
4850         * doc/lispref/display.texi (Basic Faces): Mention the isearch
4851         and lazy-highlight faces.
4853         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
4854         group, too (bug#22760).
4856 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
4858         Make $, : and @ "prefix characters" in ruby-mode
4860         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
4861         syntax classes of $, : and @ to "prefix character"
4862         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
4863         (ruby-syntax-propertize): Undo that specifically for colons
4864         followed by an opening paren or bracket.
4865         (ruby-font-lock-keyword-beg-re): Include colon character.
4866         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
4867         not being a symbol constituent anymore.
4869 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
4871         Make find-tag-default-bounds more strict
4873         * lisp/subr.el (find-tag-default-bounds): Delegate to
4874         bounds-of-thing-at-point (bug#22692).
4876 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
4878         Minor fixes in filenotify.el
4880         * lisp/filenotify.el (top): Require 'cl-lib.
4881         (file-notify--rm-descriptor)
4882         (file-notify--event-watched-file): Use cl-caadr.
4883         (file-notify-callback): Handle also `ignore' events from inotify.
4885 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
4887         Additional fixes for file notification
4889         * lisp/filenotify.el (top): Require 'cl when compiling.
4890         (file-notify--event-watched-file): New defun.
4891         (file-notify--rm-descriptor, file-notify-callback):
4892         Handle case of several monitors running in parallel.
4894         * test/automated/file-notify-tests.el
4895         (file-notify--test-event-test): Simplify test.
4896         (file-notify--test-with-events): Get rid of outer definition.
4897         Check also results of tests performed in callbacks.
4898         (file-notify-test02-events): No wrapping when calling
4899         `file-notify-rm-watch'.  No special checking for callback tests.
4900         (file-notify-test07-backup): Adapt expected events for gfilenotify.
4901         (file-notify-test08-watched-file-in-watched-dir): Improve.
4903 2016-02-22  Eli Zaretskii  <eliz@gnu.org>
4905         Fix documentation of 'global-disable-point-adjustment'
4907         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
4908         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
4910 2016-02-22  Daiki Ueno  <ueno@gnu.org>
4912         Set file modes of pinentry socket for extra safety
4914         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
4915         (pinentry-start): Change the file modes of the socket file to 0700.
4916         This is just for extra safety since the parent directory is already
4917         protected with `server-ensure-safe-dir'.
4919 2016-02-22  Daiki Ueno  <ueno@gnu.org>
4921         Clarify GnuPG version compatibility chapter
4923         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
4924         description a bit clearer.
4926 2016-02-22  Daiki Ueno  <ueno@gnu.org>
4928         Revert "Change the default socket location for pinentry"
4930         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
4931         It turned out that the address is fixed in Pinentry itself.
4933 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
4935         Kill off xref--display-history
4937         Now that the core workflow keeps the xref window visible, there's
4938         less value in storing this history.  And it never was
4939         comprehensive enough to undo scrolling changes.
4940         * lisp/progmodes/xref.el (xref--display-history)
4941         (xref--save-to-history, xref-quit): Remove.
4942         (xref--show-pos-in-buf): Update accordingly.
4943         (xref--xref-buffer-mode-map): Remove xref-quit binding.
4945 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
4947         Keep the xref buffer visible until the user quits it explicitly
4949         * lisp/progmodes/xref.el (xref--pop-to-location):
4950         Rename WINDOW argument to ACTION.
4951         (xref--with-dedicated-window): New macro.
4952         (xref--show-pos-in-buf): Rename from `xref--display-position'.
4953         Add and handle new argument, SELECTED.  Use the above macro.
4954         (xref--show-location): Add SELECTED argument.
4955         (xref-show-location-at-point): Make an effort to avoid the
4956         original window when showing the location.
4957         (xref-goto-xref): Don't quit the xref window (bug#20487 and
4958         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
4959         (xref--query-replace-1): Use xref--with-dedicated-window as well.
4960         (xref--next-error-function): Call xref--show-location instead of
4961         xref--pop-to-location.
4962         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
4963         Only pass that value to xref--pop-to-location.  Pass the current
4964         selected window to xref-show-xrefs-function as the `window'
4965         property.
4966         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
4967         to DISPLAY-ACTION as well.
4969 2016-02-21  Daiki Ueno  <ueno@gnu.org>
4971         Change the default socket location for pinentry
4973         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
4974         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
4975         ~/.emacs.d/pinentry.
4976         (pinentry-start): Change the file modes of the socket file to 0700.
4977         This is just for extra safety since the parent directory is already
4978         protected with `server-ensure-safe-dir'.
4980 2016-02-21  Daiki Ueno  <ueno@gnu.org>
4982         Mention how to enable pinentry feature
4984         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
4985         * lisp/net/pinentry.el: Likewise.
4987 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
4989         Sync with gnulib
4991         This incorporates:
4992         2016-02-10 stdalign: port to older HP and IBM cc
4993         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
4995 2016-02-21  David Engster  <deng@randomsample.de>
4997         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
4999         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
5000           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
5001           not an idle hook, so it's not appropriate to call it there. It will
5002           already be called in the `semantic-idle-work-core-handler', which
5003           runs when Emacs is actually idle.
5005 2016-02-21  David Engster  <deng@randomsample.de>
5007         Restore point when writing semantic table to disk
5009         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
5010           `semantic-fetch-tags' in `save-excursion', since it might move point
5011           in current buffer. (Bug #22287)
5013 2016-02-21  Daiki Ueno  <ueno@gnu.org>
5015         Mention pinentry.el in epa manual
5017         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
5018         describing the differences between three GnuPG branches, and how
5019         to enable pinentry.el.
5020         (Caching Passphrases): Add xref to the compatibility chapter.
5022 2016-02-21  Michael Albinus  <michael.albinus@gmx.de>
5024         Fix Bug#22736
5026         * lisp/filenotify.el (file-notify-callback): Use the proper
5027         descriptor when calling the callback.  (Bug#22736)
5029         * test/automated/file-notify-tests.el
5030         (file-notify--test-event-handler): Deactivate trace.
5031         (file-notify-test08-watched-file-in-watched-dir): Bind
5032         `file-notify--test-tmpfile' temporarily in `dir-callback'.
5034 2016-02-21  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
5036         Grammar fix in doc string
5038         * lisp/custom.el (defgroup): Grammar fix in doc string.
5040 2016-02-20  Daiki Ueno  <ueno@gnu.org>
5042         Naming fix for consistency
5044         * lisp/epg-config.el (epg-find-configuration): Rename from
5045         `epg-configuration-find' to be consistent with other epg-* functions.
5046         Change all callers.
5048 2016-02-20  Daiki Ueno  <ueno@gnu.org>
5050         Prefer customized value for GnuPG executable
5052         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
5053         configuration if it is already set with custom.  (Bug#22747)
5055 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
5057         Fix memory reservation on MS-Windows
5059         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
5060         units.  This avoids leaving gaps in reserved memory regions that
5061         no one can use, since memory reservation must produce 64KB-aligned
5062         addresses.  (Bug#22526)
5064 2016-02-20  Anders Lindgren  <andlind@gmail.com>
5066         Update NextStep readme and add wish list.
5068         * nextstep/README: Rewritten from scratch. New sections on
5069         "History", "Overview of Cocoa and Objective-C", "Guidelines",
5070         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
5071         * nextstep/WISHLIST: New file containing list of issues and ideas
5072         associated with the NS port of Emacs.
5074 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
5076         Report also result in `file-notify--test-event-handler'
5078 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
5080         Improve file-notify-test08-watched-file-in-watched-dir
5082         * test/automated/file-notify-tests.el (file-notify--test-desc2):
5083         New variable.
5084         (file-notify--test-cleanup): Use it.
5085         (file-notify--test-event-handler): Enable trace.
5086         (file-notify-test08-watched-file-in-watched-dir): Tag it as
5087         :expensive-test.  Rewrite callbacks to use
5088         `file-notify--test-event-handler'.  Read events in loop.  Check
5089         `file-notify--test-results'.
5090         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
5092 2016-02-20  Stephen Berman  <stephen.berman@gmx.net>
5094         Fix todo-mode item date editing bugs
5096         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
5097         range error by making sure the value of the numerical month date
5098         component cannot be nil.  Prevent wrong type error on trying to edit
5099         day number in February by making sure numerical instead of string
5100         value of the year component is passed to todo-read-date.
5101         (todo-read-date): When using the numerical month date component make
5102         sure to use `*' for an arbitrary month instead of its numerical value.
5104 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
5106         Fix "[:upper:]" for non-ASCII characters
5108         * src/regex.c (re_match_2_internal): Support [:upper:] and
5109         [:lower:] for non-ASCII characters.  (Bug#18150)
5111 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
5113         Allow customising the article mode cursor behavior
5115         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
5117         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
5118         (gnus-article-mode): Use it.
5120 2016-02-20  Ari Roponen  <ari.roponen@gmail.com>
5122         Use pop-to-buffer-same-window in woman.el
5124         * lisp/woman.el (woman-really-find-file): Work around going to
5125         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
5126         (WoMan-find-buffer): Ditto.
5128 2016-02-20  Tassilo Horn  <tsdh@gnu.org>
5130         New filenotify test for bug#22736
5132         * test/automated/file-notify-tests.el
5133         (file-notify-test08-watched-file-in-watched-dir):
5134         (file-notify--test-desc1): New filenotify test for bug#22736
5136 2016-02-20  Marcin Borkowski  <mbork@mbork.pl>
5138         Report critical battery errors
5140         * lisp/battery.el (battery-pmset): Report critical battery
5141         errors (bug#18157).
5143 2016-02-19  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
5145         Make eww message toggling message clearer
5147         * lisp/net/eww.el (eww-toggle-fonts): Make the message
5148         clearer.
5150 2016-02-19  Mark Oteiza  <mvoteiza@udel.edu>
5152         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
5154 2016-02-18  Martin Rudalics  <rudalics@gmx.at>
5156         Fix bugs in window resizing code
5158         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
5159         parenthesis.
5160         (shrink-window, enlarge-window): Fix bug#22723 where windows
5161         with preserved size would not get resized.  Also now signal an
5162         error when the window cannot be shrunk or enlarged as requested.
5164 2016-02-17  Eli Zaretskii  <eliz@gnu.org>
5166         Fix decoding DOS EOL in a unibyte buffer
5168         * src/coding.c (decode_eol): Loop over bytes, not characters.
5169         (Bug#5251)
5171 2016-02-17  Alan Mackenzie  <acm@muc.de>
5173         Correct c-parse-state cache manipulation error.
5175         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
5176         comparison bound.  Amend comments.
5178 2016-02-17  Daiki Ueno  <ueno@gnu.org>
5180         Take advantage of new GnuPG version check function
5182         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
5183         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
5184         is usable.
5186 2016-02-17  Daiki Ueno  <ueno@gnu.org>
5188         Make GnuPG version check robuster
5190         We changed the default gpg program to "gpg2" from "gpg" in the commit
5191         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
5192         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
5193         series.  Check the actual version of "gpg2" at run time, and properly
5194         divert to "gpg" if necessary.
5195         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
5196         (epg-config--program-alist): New variable.
5197         (epg--configurations): New variable.
5198         (epg-configuration-find): New function.
5199         (epg-config--make-gpg-configuration): New function.
5200         (epg-config--make-gpgsm-configuration): New function.
5201         (epg-configuration): Mark as obsolete.
5202         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
5204 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
5206         Fix x-load-color-file pointer signedness
5208         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
5209         For sscanf and int *, use %d, not %u.
5210         Problem found on Ubuntu 15.10 x32, which lacks X support.
5212 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
5214         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
5216 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
5218         Follow convention for greek letter constants.
5220         * lisp/calc/calc-units.el (math-standard-units):
5221         Add "sigma" and alias σ to it.
5223 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
5225         Add Stefan-Boltzmann constant to calc units table.
5227         * lisp/calc/calc-units.el (math-standard-units):
5228         Add Stefan-Boltzmann constant.
5230 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
5232         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
5234 2016-02-16  Glenn Morris  <rgm@gnu.org>
5236         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
5238         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
5239         Prefill with relevant elements for term/xterm.
5241 2016-02-16  Tassilo Horn  <tsdh@gnu.org>
5243         Fix soffice UserInstallation-URL for Windows
5245         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
5246         UserInstallation-URL when calling soffice on Windows.
5248 2016-02-16  Lars Ingebrigtsen  <larsi@gnus.org>
5250         Fix display of <pre> elements
5252         * lisp/net/eww.el (eww-display-html): Remove CRLF before
5253         parsing so that <pre> elements don't render with ^M at the end
5254         of the lines.
5256 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5258         Minor fixes in global-auto-composition-mode
5260         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
5261         Produce prettier names of globalized minor modes.
5262         * lisp/composite.el (global-auto-composition-mode): Make it a
5263         globalized mode.  (Bug#22682)
5265 2016-02-15  Alan Mackenzie  <acm@muc.de>
5267         Allow arithmetic operators inside C++ template constructs.
5269         Fixes debbugs #22486.  This corrects the previous patch with this message
5270         which was empty.
5272         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
5273         variable.
5274         (c-<>-notable-chars-re): New language variable.
5276         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
5277         c-<>-notable-chars-re in place of the former fixed string in searching for
5278         places to stop and examine.
5279         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
5280         multichar operator in place of the former c->-op-without->-cont-regexp.
5281         Add code to skip forwards over a balanced parenthesized expression.
5283 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5285         Avoid crashes in semi-malformed 'condition-case'
5287         * src/eval.c (internal_lisp_condition_case): Treat a handler
5288         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
5290 2016-02-15  Alan Mackenzie  <acm@muc.de>
5292         Allow arithmetic operators inside C++ template constructs.
5294         Fixes debbugs #22486.
5296         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
5297         variable.
5298         (c-<>-notable-chars-re): New language variable.
5300         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
5301         c-<>-notable-chars-re in place of the former fixed string in searching for
5302         places to stop and examine.
5303         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
5304         multichar operator in place of the former c->-op-without->-cont-regexp.
5305         Add code to skip forwards over a balanced parenthesized expression.
5307 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5309         Fix regression with 'recent-keys' and keyboard macros
5311         * src/keyboard.c (record_char): Don't record in 'recent_keys'
5312         events that come from executing keyboard macros.  (Bug#22674)
5314 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5316         Fix wording in a doc-view.el comment
5318         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
5319         "illegal" for something that is not against the law.
5321 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5323         CONTRIBUTE cleanups and updates
5325         * CONTRIBUTE: Mention URLs and info nodes more consistently,
5326         avoiding possibly-confusing punctuation adjacent to a URL, and
5327         giving full shell commands for 'info'.  Start with a brief but
5328         complete how-to, for people who want to get started right away.
5329         Then briefly discuss how to join the development process in the
5330         typical order.  Omit needless words.  Update some of the
5331         now-obsolete file names, info node names, and quoting styles.
5332         Better document emacs-NN branches and how they are merged.
5333         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
5334         and trunk to master.  This file still needs work.
5336 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
5338         Port USE_STACK_LISP_OBJECTS fix to Clang
5340         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
5341         Recent versions of Clang claim to be GCC 4.2.1 but do not have
5342         the GCC bug.
5344 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
5346         Port to x86 GCC 4.3.1 and earlier
5348         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
5349         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
5350         for GCC 4.3.1 and earlier.
5352 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
5354         Fix point movement under 'scroll-conservatively'
5356         * src/xdisp.c (redisplay_window): Correct a typo in computing the
5357         effective number of text lines in a window.  (Bug#22637)
5359 2016-02-14  Thomas Plass  <thomas.plass@arcor.de>
5361         Replace colon in file name (not legal on Windows)
5363         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
5364         name (not legal on Windows). [tiny change]
5366 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
5368         Fix a typo in edt.texi
5370         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
5371         "Herbert J. Skuhra" <herbert@mailbox.org>.
5373 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
5375         Make 'mmap_realloc' on MS-Windows more reliable
5377         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
5378         committing fails, return NULL.  Don't call GetLastError twice for
5379         the same API error.
5380         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
5381         before calling VirtualQuery, to avoid using garbled values if the
5382         call fails.  If committing more pages from the same block fails,
5383         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
5384         if the call to VirtualAlloc to commit more pages fails.
5385         (Bug#22526)
5387 2016-02-14  Oscar Fuentes  <ofv@wanadoo.es>
5389         Grep alias `all' shall not match parent directory
5391         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
5392           directory for `all'. Fixes bug#22577
5394 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
5396         Bump version to 25.0.91
5398         * README:
5399         * configure.ac:
5400         * msdos/sed2v2.inp: Bump version to 25.0.91.
5402 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
5404         * etc/AUTHORS: Update the AUTHORS file
5406 2016-02-13  Glenn Morris  <rgm@gnu.org>
5408         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
5410 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
5412         Index tilde characters in names of backup files
5414         * doc/emacs/files.texi (Backup Names): Improve indexing.
5415         (Bug#22625)
5417 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
5419         Document deprecation of hi-lock-mode's 'C-x w' bindings
5421         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
5422         "C-x w" bindings of hi-lock-mode.
5424         * etc/NEWS: Mark the deprecation entry as documented.
5426 2016-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
5428         Announce that the `C-x w' bindings are deprecated
5430 2016-02-13  Paul Eggert  <eggert@cs.ucla.edu>
5432         Suppress GNUstep hardening
5434         Fedora 23 normally hardens GNUstep applications, which causes
5435         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
5436         Fix this by eliding the hardening options (Bug#22518).
5437         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
5438         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
5439         (GNU_OBJC_CFLAGS): Omit options like
5440         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
5442 2016-02-12  Eli Zaretskii  <eliz@gnu.org>
5444         Fix redisplay after a large insertion
5446         * src/xdisp.c (redisplay_internal): Don't accept the results of
5447         "optimization 3" if the cursor ends up in a partially visible
5448         glyph row.  (Bug22637)
5450 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
5452         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
5454         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
5456                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
5457                 change.  (Bug#22634)
5459 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
5461         * lib-src/make-docfile.c: Include stdarg.h.
5463 2016-02-11  Alan Mackenzie  <acm@muc.de>
5465         Extend gpm-mouse-mode's doc string and doc to point out limitations.
5467         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
5468         inability to transfer text between Emacs and other programs which use GPM.
5470         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
5471         between Emacs and other progrmas which use GPM.
5473 2016-02-11  Eli Zaretskii  <eliz@gnu.org>
5475         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
5477         * lisp/isearch.el: Turn char-folding back oon by default.
5479         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
5481 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5483         Revert "Support integer image rotation and respect EXIF rotations"
5485         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
5487         This change does not work on Fedora.
5489 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5491         Revert "Document EXIF image rotation"
5493         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
5495         This change does not work on Fedora, for instance.
5497 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
5499         Document OS X LANG default
5501         * doc/emacs/cmdargs.texi (General Variables):
5502         Document OS X Language and Region system preference.
5503         Suggested by Alan Third.
5505 2016-02-11  Alan Third  <alan@idiocy.org>
5507         Set locale when run from OS X GUI
5509         * src/emacs.c (main): Call ns_init_locale.
5510         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
5511         * src/nsterm.h: Include ns_init_locale.
5513 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
5515         make-docfile cleanup for I/O, etc.
5517         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
5518         (num_globals_allocated, globals): Now static.
5519         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
5520         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
5521         Use bool for boolean.
5522         (verror): New function.
5523         (fatal, error): Use it.  API is now like printf.  All callers changed.
5524         (main): Remove err_count local that was always 0.
5525         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
5526         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
5527         Return void, not 0.
5528         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
5529         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
5530         (close_emacs_globals): Use ptrdiff_t for index, not int.
5531         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
5532         opened, rather than diagnosing but exiting with status 0.
5533         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
5534         portable now.
5536 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
5538         Memory-management cleanup in make-docfile
5540         I compiled it with -fsanitize=address and fixed the leaks it detected.
5541         Also, I changed it to prefer signed to unsigned integer types,
5542         and to check for integer overflow.
5543         * lib-src/make-docfile.c:
5544         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
5545         (memory_exhausted): New function.
5546         (xmalloc, xrealloc): Use it.
5547         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
5548         (uncompiled, scan_lisp_file):
5549         Prefer signed integer types to unsigned.
5550         (xstrdup): Remove.  All uses removed.
5551         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
5552         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
5553         (add_global): Use const to pacify --enable-gcc-warnings.
5554         Make a copy here, rather than relying on strdup calls later.
5555         (add_global, write_globals, scan_c_stream):
5556         Avoid integer overflow when calculating sizes.
5557         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
5558         (scan_c_stream): Check for add_global failure.
5560 2016-02-10  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
5562         Kevin Gallagher has new email address
5564         * lisp/emulation/edt.el:
5565         * lisp/emulation/edt-lk201.el:
5566         * lisp/emulation/edt-mapper.el:
5567         * lisp/emulation/edt-pc.el:
5568         * lisp/emulation/edt-vt100.el:
5569         * etc/edt-user.el:
5570         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
5572 2016-02-10  Eli Zaretskii  <eliz@gnu.org>
5574         Improve doc strings of 'forward/backward-word-strictly'
5576         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
5577         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
5578         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
5579         Mention 'subword-mode' in the doc strings.
5581         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
5582         in the doc string.  (Bug#22560)
5584 2016-02-10  Michael Albinus  <michael.albinus@gmx.de>
5586         Describe Makefile test targets in test/README
5588         * CONTRIBUTE: Move Makefile test targets to test/README.
5590         * Makefile.in:
5591         * test/README: Describe Makefile test targets.
5593 2016-02-10  Artur Malabarba  <bruce.connor.am@gmail.com>
5595         Backport: * lisp/isearch.el: Turn char-folding off by default
5597         (search-default-mode): Set default value to nil.
5599 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
5601         Document EXIF image rotation
5603         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
5605 2016-02-10  Dima Kogan  <dima@secretsauce.net>
5607         Support integer image rotation and respect EXIF rotations
5609         * src/image.c (imagemagick_load_image): Allow integer rotations in
5610         addition to floating point rotations (bug#22591).
5611         * src/image.c (imagemagick_load_image): Images that have an
5612         orientation given in EXIF and have no explicit :rotation tag are now
5613         pre-rotated.  All information such as width/height is reported for the
5614         rotated image.
5616 2016-02-10  Matthew Carter  <m@ahungry.com>
5618         Quote table names for postgres listings (sql-mode)
5620         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
5621           unquoted table names to the completion list.
5623 2016-02-10  Juri Linkov  <juri@linkov.net>
5625         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
5627         Doc fix.
5628         (replace-search, replace-highlight): Make arg `backward' optional.
5629         (Bug#18388)
5631 2016-02-10  Juri Linkov  <juri@linkov.net>
5633         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
5635         (previous-line-or-history-element): Reset temporary-goal-column.
5636         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
5638 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
5640         Suppress ACL ops if configured with --disable-acl
5642         Without this patch, some ACL operations were suppressed, but not all.
5643         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
5644         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
5646 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
5648         Mention web bugs
5650         * doc/misc/emacs-mime.texi (Display Customization):
5651         Mention web bugs in the mm-html-blocked-images section.
5653 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
5655         Make mm-html-blocked-images default to "" again
5657         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
5658         Default to "" that blocks all external images.
5660         * doc/misc/emacs-mime.texi (Display Customization):
5661         Mention that mm-html-blocked-images defaults to "".
5663 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
5665         Minor alignas cleanup
5667         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
5668         over from the old way of doing things, before Bug#20862 was fixed.
5670 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
5672         Add lmalloc commentary and tweak laligned
5674         * src/alloc.c (laligned): Help compiler in a tiny way by putting
5675         the more-commonly-failing disjunct first.
5677 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
5679         Clarify documentation of key binding conventions
5681         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
5682         "punctuation characters" are reserved after "C-c".  (Bug#22604)
5684 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
5686         * etc/NEWS: mention the `vc-faces' customization group
5688 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
5690         Sync with gnulib
5692         This incorporates:
5693         2016-02-09 stdalign: port to clang 3.7.0
5694         2016-02-06 misc: port better to gcc -fsanitize=address
5695         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
5696         Copy from gnulib.
5698 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
5700         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
5702 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
5704         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
5706         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
5707         (mm-html-blocked-images): Default to nil.
5709         * doc/misc/emacs-mime.texi (Display Customization): Mention that
5710         mm-html-inhibit-images and mm-html-blocked-images default to nil.
5712         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
5713         mm-html-blocked-images.
5715 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
5717         Increase success rate of fallback lmalloc
5719         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
5720         larger and larger sizes, to increase the probability that
5721         the allocator will return a Lisp-aligned pointer.
5723 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
5725         Make backgrounds extend to the end of the lines in shr
5727         * lisp/net/shr.el (shr-face-background): Faces can also be on
5728         the form `(:background "#fff)' (bug#22547).
5730 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
5732         Make the `R' command get the correct relative <img>s
5734         * lisp/net/eww.el (eww-readable): Preserve the base URL so
5735         that image expansions are fetched from the right place (bug#22605).
5737         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
5739         Backport:
5741 2016-02-09  Mike Kupfer  <m.kupfer@acm.org>
5743         Fix typos in emacs-mime.texi and gnus.texi
5745         * doc/misc/emacs-mime.texi (Display Customization):
5746         * doc/misc/gnus.texi (HTML): Fix typo.
5748 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
5750         * doc/misc/emacs-mime.texi (Display Customization):
5751         Doc fix for mm-html-inhibit-images.
5753 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
5755         Fix message-cross-post-followup-to group names
5757         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
5758         insert group names like "nntp+foo:zot", because those aren't valid.
5760 2016-02-09  David Edmondson  <dme@dme.org>
5762         Compare recipient and keys case-insensitively
5764         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
5765         recipient address with that from a key, do so in a case insensitive
5766         manner (bug#22603).
5768 2016-02-08  Glenn Morris  <rgm@gnu.org>
5770         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
5772 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
5774         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
5776         * doc/misc/emacs-mime.texi (Display Customization):
5777         Remove mm-inline-text-html-with-images; add documentations for
5778         mm-html-inhibit-images and mm-html-blocked-images.
5780         * lisp/gnus/gnus-art.el (gnus-article-show-images):
5781         No need to bind mm-inline-text-html-with-images.
5782         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
5783         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
5784         bind mm-html-inhibit-images and mm-html-blocked-images.
5785         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
5786         (gnus-mm-display-part, gnus-mime-display-single)
5787         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
5789         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
5790         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
5791         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
5792         mm-html-inhibit-images and mm-html-blocked-images respectively
5793         instead of gnus-inhibit-images and gnus-blocked-images.
5795         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
5796         instead of mm-inline-text-html-with-images.
5798 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
5800         Port to FreeBSD 11-CURRENT i386
5802         Problem reported by Herbert J. Skuhra in:
5803         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
5804         Instead of trying
5805         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
5806         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
5807         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
5808         (MALLOC_IS_GC_ALIGNED): New macro.
5809         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
5810         No longer needed now that alloc.c uses lmalloc and lrealloc.
5812 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
5814         Some fixes in file-notify-tests.el
5816         * test/automated/file-notify-tests.el
5817         (file-notify--test-with-events-check)
5818         (file-notify--test-with-events-explainer): New defuns.
5819         (file-notify--test-with-events): Use it.
5820         (file-notify-test07-backup): Fix docstring.  Some of the
5821         backends fire two `changed' events.  Backup by rename doesn't
5822         work for kqueue.
5824 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
5826         Fix Bug#22557
5828         * lisp/filenotify.el (file-notify-callback): Do not send a
5829         `stopped' event in case of backup by renaming.  (Bug#22557)
5831         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
5832         all targets but check and check-maybe.
5834         * test/automated/file-notify-tests.el
5835         (file-notify--test-read-event-timeout): New defconst.
5836         (file-notify--deftest-remote, file-notify--wait-for-events)
5837         (file-notify-test02-events)
5838         (file-notify-test04-file-validity)
5839         (file-notify-test06-many-events): Use it.
5840         (file-notify--test-cleanup): Make it more robust.  Delete also
5841         backup file.
5842         (file-notify-test07-backup): New test.
5844 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
5846         Fix test for dladdr
5848         Problem reported by Andreas Schwab in:
5849         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
5850         * configure.ac (dladdr): Link with LIBMODULES when checking for
5851         this function.
5853 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
5855         Fix gnus-group-get-new-news-this-group on group with closed server
5857         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
5858         method and pass to nnimap-open-server.
5860 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5862         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
5864         While tabs in code are mostly fine because the Emacs sources have a
5865         .dir-locals file specifying tab-width, the same is not true of tabs in
5866         code examples inside docstrings.  The docstring is printed on a *Help*
5867         buffer, which can be created on any directory and won't necessarily have
5868         the same tab-width set.
5870 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
5872         Don't inloop gnus-uu-mark-thread on the last thread
5874         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
5875         final thread in the summary buffer (bug#16666).
5877 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
5879         Display non-ASCII group names better in prompts
5881         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
5882         group name, we have to do that before we remove the prefix.
5884 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
5886         Default to gpg2 instead of gpg
5888         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
5889         it exists.  This fixes many problems with using the GPG
5890         authentication agent.
5892 2016-02-06  David Edmondson  <dme@dme.org>
5894         src/process.c Correctly convert AF_INET6 addresses
5896         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
5897         converted to a list of 16 bit quantities by
5898         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
5899         same scheme rather than expecting a (longer) list of 8 bit
5900         quantities.
5902         Backport:
5904         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
5906 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5908         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
5910 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5912         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
5914         (menu-bar-search-options-menu): New variable
5916 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5918         * lisp/isearch.el (search-default-mode)
5920         (isearch-regexp-function): Improve docstrings.
5922 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5924         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
5926         (search-default-mode): New variable.
5927         (isearch-mode, isearch-define-mode-toggle)
5928         (isearch--describe-regexp-mode): Update accordingly.
5929         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
5930         * etc/NEWS: Update accordingly.
5931         * doc/emacs/search.texi: Update accordingly.
5933 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
5935         Use monitor's resolution for positioning tooltips
5937         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
5938           the mouse pointer is to avoid placing the tooltip over the border of
5939           the monitor on multi-head displays. Fixes bug#22549.
5941 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
5943         Fix file-notify-test on MS-Windows
5945         * test/automated/file-notify-tests.el (file-notify--test-timeout):
5946         Reduce w32notify timeout to 10 sec.
5947         (file-notify-test06-many-events): Call read-event after each
5948         rename, to keep the w32notify backend happy in batch mode.
5949         (Bug#22534)
5951 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
5953         Fix issues found by auditing w32notify code
5955         * src/w32inevt.c (handle_file_notifications): Count the number of
5956         events to be returned.
5957         * src/w32notify.c (send_notifications): Don't copy to the file
5958         notification buffer more than it can hold.  (Bug#22534)
5960 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
5962         Extend etags Ruby support for accessors
5964         * lib-src/etags.c (Ruby_functions): Support accessors defined with
5965         parentheses.  (Bug#22563)
5967         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
5968         defined with parentheses.
5969         * test/etags/ETAGS.good_1:
5970         * test/etags/ETAGS.good_2:
5971         * test/etags/ETAGS.good_3:
5972         * test/etags/ETAGS.good_4:
5973         * test/etags/ETAGS.good_5:
5974         * test/etags/ETAGS.good_6:
5975         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
5977 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
5979         Update publicsuffix.txt.
5981         * etc/publicsuffix.txt: Updated from
5982         https://publicsuffix.org/list/public_suffix_list.dat.
5984 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
5986         Ensure that Gnus dribble handling allows removing entries
5988         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
5989         entry is on a single line.
5991 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
5993         Be consistent when using encoded strings in nnimap data
5995         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
5996         (nnimap-request-list): Use it.
5997         (nnimap-request-newgroups): Ditto.
5999 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
6001         Display the decoded Gnus group name
6003         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
6004         decoded group name in the message.
6006 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
6008         Use completion-ignore-case instead of defining command
6010         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
6011         that we get case-insensitive completion.
6012         (erc-completion-at-point): Remove.
6014 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
6016         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
6018 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
6020         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
6022         Reduce the number of iterations to 250 in case of w32notify.
6024 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
6026         Fix problems caused by new implementation of sub-word mode
6028         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
6029         New functions.
6030         (word-move-empty-char-table): New variable.
6032         * etc/NEWS: Mention 'forward-word-strictly' and
6033         'backward-word-strictly'.
6035         * doc/lispref/positions.texi (Word Motion): Document
6036         'find-word-boundary-function-table', 'forward-word-strictly', and
6037         'backward-word-strictly'.  (Bug#22560)
6039         * src/syntax.c (syms_of_syntax)
6040         <find-word-boundary-function-table>: Doc fix.
6042         * lisp/wdired.el (wdired-xcase-word):
6043         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
6044         (texinfo-copy-section-title, texinfo-start-menu-description)
6045         (texinfo-copy-menu-title, texinfo-specific-section-type)
6046         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
6047         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
6048         (texinfo-insert-@end):
6049         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
6050         (texinfo-anchor, texinfo-multitable-widths)
6051         (texinfo-multitable-item):
6052         * lisp/textmodes/tex-mode.el (latex-env-before-change):
6053         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
6054         * lisp/skeleton.el (skeleton-insert):
6055         * lisp/simple.el (count-words):
6056         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
6057         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
6058         (vhdl-update-sensitivity-list, vhdl-template-block)
6059         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
6060         (vhdl-template-default-indent, vhdl-template-for-loop)
6061         (vhdl-template-if-then-use, vhdl-template-bare-loop)
6062         (vhdl-template-nature, vhdl-template-procedural)
6063         (vhdl-template-process, vhdl-template-selected-signal-asst)
6064         (vhdl-template-type, vhdl-template-variable)
6065         (vhdl-template-while-loop, vhdl-beginning-of-block)
6066         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
6067         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
6068         (verilog-forward-sexp, verilog-beg-of-statement)
6069         (verilog-set-auto-endcomments, verilog-backward-token)
6070         (verilog-do-indent):
6071         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
6072         (vera-indent-block-closing):
6073         * lisp/progmodes/simula.el (simula-context)
6074         (simula-backward-up-level, simula-forward-down-level)
6075         (simula-previous-statement, simula-next-statement)
6076         (simula-skip-comment-backward, simula-calculate-indent)
6077         (simula-find-if, simula-electric-keyword):
6078         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
6079         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
6080         (ruby-smie--forward-token, ruby-smie--backward-token)
6081         (ruby-singleton-class-p, ruby-calculate-indent)
6082         (ruby-forward-sexp, ruby-backward-sexp):
6083         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
6084         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
6085         (perl-syntax-propertize-special-constructs)
6086         (perl-backward-to-start-of-continued-exp):
6087         * lisp/progmodes/pascal.el (pascal-indent-declaration):
6088         * lisp/progmodes/octave.el (octave-function-file-p):
6089         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
6090         * lisp/progmodes/js.el (js--forward-function-decl):
6091         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
6092         (idlwave-beginning-of-block, idlwave-end-of-block)
6093         (idlwave-block-jump-out, idlwave-determine-class):
6094         * lisp/progmodes/icon.el (icon-is-continuation-line)
6095         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
6096         * lisp/progmodes/hideif.el (hide-ifdef-define):
6097         * lisp/progmodes/f90.el (f90-change-keywords):
6098         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
6099         (cperl-linefeed, cperl-electric-terminator)
6100         (cperl-find-pods-heres, cperl-fix-line-spacing)
6101         (cperl-invert-if-unless):
6102         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
6103         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
6104         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
6105         (ada-adjust-case-skeleton, ada-create-case-exception)
6106         (ada-create-case-exception-substring)
6107         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
6108         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
6109         (ada-get-indent-if, ada-get-indent-block-start)
6110         (ada-get-indent-loop, ada-get-indent-type)
6111         (ada-search-prev-end-stmt, ada-check-defun-name)
6112         (ada-goto-decl-start, ada-goto-matching-start)
6113         (ada-goto-matching-end, ada-looking-at-semi-or)
6114         (ada-looking-at-semi-private, ada-in-paramlist-p)
6115         (ada-search-ignore-complex-boolean, ada-move-to-start)
6116         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
6117         * lisp/net/quickurl.el (quickurl-grab-url):
6118         * lisp/mail/sendmail.el (mail-do-fcc):
6119         * lisp/mail/rmail.el (rmail-resend):
6120         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
6121         * lisp/mail/mail-extr.el (mail-extract-address-components):
6122         * lisp/json.el (json-read-keyword):
6123         * lisp/files.el (insert-directory):
6124         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
6125         * lisp/completion.el (symbol-under-point, symbol-before-point)
6126         (symbol-before-point-for-complete, next-cdabbrev)
6127         (add-completions-from-c-buffer):
6128         * lisp/cedet/semantic/texi.el (semantic-up-context)
6129         (semantic-beginning-of-context):
6130         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
6131         use 'forward-word-strictly' and 'backward-word-strictly' instead
6132         of 'forward-word' and 'backward-word'.
6134 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
6136         Fix doc string of tls-program
6138         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
6140 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
6142         Restore window conf in nsm
6144         * lisp/net/nsm.el (nsm-query-user): Restore the window configuration.
6146         Backport:
6148 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
6150         * etc/NEWS: Document new mpc.el features
6152 2016-02-04  Leo Liu  <sdl.web@gmail.com>
6154         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
6156 2016-02-04  Alan Mackenzie  <acm@muc.de>
6158         Correctly fontify C++ initializations which "look like" functions.
6160         Fixes bug#7579.
6162         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
6163         parameter to enable handling of "anonymous" declarators in declarations.
6165         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
6166         whether a "(" opens a parameter list of a function, or an initialization of a
6167         variable.
6169 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
6171         Improve newsticker-treeview-selection-face
6173         * lisp/net/newst-treeview.el (newsticker-treeview-selection-face): Improve
6174         readability for dark background.
6176 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
6178         Minor fix in tagging Ruby accessors by etags
6180         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
6181         names are not literal symbols.  (Bug#22241)
6183 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
6185         Spelling fixes
6187 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
6189         Remove 'def X' from the example
6191         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
6192         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
6193         * test/etags/CTAGS.good:
6194         * test/etags/ETAGS.good_1:
6195         * test/etags/ETAGS.good_2:
6196         * test/etags/ETAGS.good_3:
6197         * test/etags/ETAGS.good_4:
6198         * test/etags/ETAGS.good_5:
6199         * test/etags/ETAGS.good_6: Adjust accordingly.
6201 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
6203         Allow sending empty hidden values in eww
6205         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
6206         values (bug#22388).
6208         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
6210         Backport:
6212 2016-02-04  David Edmondson  <dme@dme.org>
6214         Make erc work better when encountering unknown prefix chars
6216         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
6217         instead of erroring out on unknown prefix chars (bug#22380).
6219 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
6221         Make erc completion case-insensitive again
6223         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
6224         case-insensitive again (bug#11360).
6226 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
6228         Make complection in erc use consistent casing
6230         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
6231         case in the complection consistent (bug#18509).
6233 2016-02-04  Francis Litterio  <flitterio@gmail.com>
6235         Make /QUIT in erc more robust
6237         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
6238         issuing /QUIT to disconnected servers (bug#22099).
6240 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
6242         Make tracking faces in Emacs work more reliably
6244         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
6245         faces to avoid later ambiguity (bug#22424).
6247 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
6249         Make shr not bug out on images on non-graphical displays
6251         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
6252         images on non-graphical displays (bug#22327).
6254 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
6256         Fix bookmark display widths
6258         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
6259         preparing it so that the widths are computed correctly (bug#22328).
6261 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
6263         Fix typo in eww-make-unique-file-name
6265         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
6266         actually work.
6268 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
6270         Make it possible to TAB to input fields
6272         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
6273         input fields (bug#22540).
6275 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
6277         Insert complete alt texts when images are disabled
6279         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
6280         the complete alt/title string (bug#22293).
6282 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
6284         Allow eww text fields to grow
6286         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
6287         grow when typing in stuff that's longer than the original width.
6289 2016-02-03  Dima Kogan  <dima@secretsauce.net>
6291         Make erc work when subword-mode is switched on
6293         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
6294         (erc-bounds-of-word-at-point): New functions to do word-based
6295         things when subword-mode is switched on.
6297         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
6298         (bug#17558).
6300 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
6302         Fix IMAP doc example
6304         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
6306 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
6308         Quoting fixes in doc strings and diagnostics
6310         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
6311         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
6312         (mml-smime-get-ldap-cert):
6313         Follow user style preference when quoting diagnostics.
6315 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
6317         Fix warning message in hack-local-variables
6319         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
6320         the original buffer name in the warning message.  (Bug#21681)
6322 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
6324         Etags: yet another improvement in Ruby tags
6326         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
6327         Ruby accessor definitions.  (Bug#22241)
6329         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
6330         accessors and multiline definitions.
6331         * test/etags/ETAGS.good_1:
6332         * test/etags/ETAGS.good_2:
6333         * test/etags/ETAGS.good_3:
6334         * test/etags/ETAGS.good_4:
6335         * test/etags/ETAGS.good_5:
6336         * test/etags/ETAGS.good_6:
6337         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
6339 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
6341         Fix x-popup-menu on TTYs without a mouse
6343         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
6344         for the TTY case without a mouse.  (Bug#22538)
6346 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
6348         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
6350 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
6352         Use pop-to-buffer-same-window in eww
6354         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
6355         switch-to-buffer (bug#22244).
6357 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
6359         * autogen.sh: Revert all recent changes.
6361 2016-02-02  Glenn Morris  <rgm@gnu.org>
6363         * make-dist: Updates related to nt/.
6365         * make-dist: Add modules/.
6367         * make-dist: Update for super-special file that can't live in etc/.
6369 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6371         Fix failure to compile ns-win.el in parallel builds
6373         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
6374         dependency on $(lispsource)/international/charprop.el.
6375         (Bug#22501)
6377 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6379         Fix names of tags generated for Ruby accessors
6381         * lib-src/etags.c (Ruby_functions): Don't include the leading
6382         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
6384         * test/etags/ETAGS.good_1:
6385         * test/etags/ETAGS.good_2:
6386         * test/etags/ETAGS.good_3:
6387         * test/etags/ETAGS.good_4:
6388         * test/etags/ETAGS.good_5:
6389         * test/etags/ETAGS.good_6:
6390         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
6392 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6394         Fix file-name recognition in 'etags'
6396         * lib-src/etags.c (get_language_from_filename): If FILE includes a
6397         leading directory, compare only its basename to the known file
6398         names in lang_names[].
6400         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
6401         renaming.
6402         * test/etags/ETAGS.good_1:
6403         * test/etags/ETAGS.good_2:
6404         * test/etags/ETAGS.good_3:
6405         * test/etags/ETAGS.good_4:
6406         * test/etags/ETAGS.good_5:
6407         * test/etags/ETAGS.good_6:
6408         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
6409         to the results in Makefile due to the above etags.c fix.
6411 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6413         Change Ruby file names and extensions recognized by 'etags'
6415         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
6416         of Ruby files.
6417         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
6418         <lang_names>: Add Ruby_filenames to the Ruby entry.
6419         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
6420         (Bug#22241)
6422 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6424         More improvements for Ruby support in 'etags'
6426         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
6427         alias_method.  Identify constants even if the assignment is not
6428         followed by whitespace.  (Bug#22241)
6430         * test/etags/ruby-src/test1.ru: Add tests for constants,
6431         accessors, and alias_method.
6432         * test/etags/ETAGS.good_1:
6433         * test/etags/ETAGS.good_2:
6434         * test/etags/ETAGS.good_3:
6435         * test/etags/ETAGS.good_4:
6436         * test/etags/ETAGS.good_5:
6437         * test/etags/ETAGS.good_6:
6438         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
6440 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
6442         Add --git-config option to autogen.sh
6444         * autogen.sh: New options --git-config, --help.
6445         (git_config): New shell var.  Alter function to respect this var.
6447 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
6449         Fix editing undo changes in eww fields
6451         * eww.el (eww-tag-form): Don't overwrite initial form data in text
6452         fields.
6453         (eww-process-text-input): Make `M-t' at the end of text fields work
6454         better (bug#19085).
6456 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
6458         Allow the user more control of popping up the eww window
6460         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
6461         Michael Heerdegen) (bug#22244).
6463 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
6465         Make eww-browse-url with new-window parameter work again
6467         * eww.el (eww-browse-url): Stay in the same buffer if we're
6468         already in a eww mode buffer so that eww-browse-url with a
6469         new-window parameter works (bug#22244).
6471 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
6473         Clean up eww code slightly
6475         * eww.el (eww-browse-url): Clean up code slightly.
6477 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
6479         Don't insert nil faces in shr
6481         * shr.el (shr-insert-table): Don't add nil faces, because that
6482         will show up in *Messages* as "Invalid face reference: nil [32
6483         times]".
6485 2016-02-01  Glenn Morris  <rgm@gnu.org>
6487         Improve the custom type of some user options.
6489         * lisp/autoinsert.el (auto-insert-alist):
6490         * lisp/replace.el (query-replace-from-to-separator):
6491         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
6492         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
6493         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
6494         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
6495         (prolog-mode-specificators, prolog-determinism-specificators)
6496         (prolog-directives, prolog-program-name, prolog-program-switches)
6497         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
6498         (prolog-prompt-regexp): Improve custom type.
6500 2016-02-01  Glenn Morris  <rgm@gnu.org>
6502         Mark some risky calendar variables.
6504         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
6505         Remove risky setting for deleted obsolete alias.
6506         (calendar-chinese-standard-time-zone-name)
6507         (calendar-chinese-daylight-saving-start)
6508         (calendar-chinese-daylight-saving-end):
6509         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
6510         (calendar-european-date-display-form)
6511         (calendar-american-date-display-form, calendar-date-display-form):
6512         * lisp/calendar/diary-lib.el (diary-remind-message)
6513         (diary-header-line-format):
6514         * lisp/calendar/solar.el (calendar-time-display-form)
6515         (calendar-location-name): Mark as risky.
6517 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
6519         Highlight two additional SCSS keywords
6521         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
6522         identifiers on the form !foo.
6523         (scss-bang-ids): New defconst holding SCSS identifiers on the form
6524         !foo.
6525         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
6526         `font-lock-builtin-face'.
6528         * test/indent/css-mode.css: Add bang rule test case.
6530         * test/indent/scss-mode.scss: Add test cases for the introduced bang
6531         rules.
6533 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
6535         Recommend enabling integrity-checking in git
6537         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
6539         This is related to the autogen.sh changes made by Paul Eggert in
6540         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
6541         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
6542         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
6543         "Recommend these .gitconfig settings for git integrity." at
6544         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
6546 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
6548         Some corrections in Elisp manual
6550         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
6551         argument POSITION.
6552         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
6553         is an option.
6554         * doc/lispref/display.texi (Refresh Screen): Describe optional
6555         argument FRAME of `redraw-frame'.
6556         (Attribute Functions): Describe optional argument CHARACTER of
6557         `face-font'.
6558         (Defining Images): `image-load-path' is an option.
6559         (Beeping): `ring-bell-function' is an option.
6560         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
6561         argument of `set-frame-size' is optional.
6562         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
6563         is optional.
6564         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
6565         `set-transient-map'.
6566         * doc/lispref/minibuf.texi (Text from Minibuffer):
6567         `read-regexp-defaults-function' is an option.
6568         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
6569         * doc/lispref/modes.texi (Mode Line Variables):
6570         `mode-line-position' and `mode-line-modes' are variables, not
6571         options.
6572         * doc/lispref/strings.texi (Creating Strings): The START argument
6573         of `substring' is optional.
6574         * doc/lispref/text.texi (Buffer Contents): Describe optional
6575         argument NO-PROPERTIES of `thing-at-point'.
6576         (User-Level Deletion): Both arguments of
6577         `delete-trailing-whitespace' are optional.
6578         (Margins): Use @key{RET} instead of @kbd{RET}.
6579         * doc/lispref/windows.texi (Display Action Functions): Write
6580         non-@code{nil} instead of non-nil.
6581         (Choosing Window Options): The WINDOW arg of
6582         `split-window-sensibly' is optional.
6583         (Choosing Window Options): Write non-@code{nil} instead of
6584         non-nil.
6585         (Window Start and End): Both args of `window-group-end' are
6586         optional.
6588         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
6589         to POSITION to keep consisteny with doc-string.
6591 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
6593         Chatter when autogen.sh changes Git configuration
6595         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
6597 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
6599         * lisp/org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
6601 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6603         Omit unnecessary history from Lisp intro
6605         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
6606         (Conclusion): Reword so as not to talk about earlier versions
6607         of Emacs in what should be an intro.
6609 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6611         * etc/HISTORY: Add some more history, plus git tags.
6613 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6615         Improve elisp “Security Considerations” doc
6617         * doc/lispref/os.texi (Security Considerations):
6618         Mention call-process and rename-file as opposed to shell commands.
6619         Add some more cross-references.
6621 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6623         autogen.sh now arranges for git to check hashes
6625         Suggested by Karl Fogel in:
6626         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
6627         * autogen.sh: Do "git config transfer.fsckObjects true".
6629 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6631         Fix (c & 040) typo in emergency escapes
6633         * src/keyboard.c (handle_interrupt): Fix recently-introduced
6634         typo (040 should have been ~040) that silently suppressed
6635         auto-saves after emergency escapes.  Redo comparison to avoid
6636         similar problems.
6638 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
6640         Fix display of overlay strings with 'display' and 'box' property
6642         * src/xdisp.c (get_next_display_element): Take the box face from
6643         display stack level that comes from a buffer, not an overlay
6644         string.  (Bug#22499)
6646 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
6648         Fix imap-starttls-open
6650         * lisp/net/imap.el (imap-starttls-open): Log imap process
6651         output.  Call imap-parse-greeting.  (Bug#22500)
6653 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
6655         Fix return value of imap-starttls-open
6657         * lisp/net/imap.el (imap-starttls-open): Fix return value.
6659 2016-01-31  John Wiegley  <johnw@newartisans.com>
6661         Correct reference to DARWIN_OS preprocessor symbol
6663         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
6664           not be defined.
6666 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
6668         Spelling fix
6670         Spelling fixes
6672 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
6674         Pacify GCC on C library without glibc API
6676         Without this change, with --enable-gcc-warnings GCC would complain
6677         “error: redundant redeclaration of ‘aligned_alloc’”.
6678         * configure.ac: Simplify aligned_alloc testing.
6679         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
6680         since the simplified configure.ac no longer checks for that.
6681         Don’t declare if HAVE_ALIGNED_ALLOC.
6682         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
6684 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
6686         Backport: * lisp/files.el: Remove support for extra .dir-locals file
6688         (dir-locals-file-2, dir-locals--all-files): Remove.
6689         (dir-locals-collect-variables, dir-locals-file, dir-locals-find-file)
6690         (dir-locals-read-from-file, hack-dir-local-variables): Revert changes.
6692         * lisp/files-x.el (modify-dir-local-variable): Revert changes.
6694         * lisp/help-fns.el (describe-variable): Revert changes.
6696         * doc/emacs/custom.texi (Directory Variables): Revert changes.
6698         * etc/NEWS: Revert changes.
6700 2016-01-30  Glenn Morris  <rgm@gnu.org>
6702         * lisp/net/browse-url.el (browse-url-default-browser):
6703         Lower priority of non-free Chrome.
6705 2016-01-30  Glenn Morris  <rgm@gnu.org>
6707         Improve the custom type of some user options.
6709         * lisp/desktop.el (desktop-minor-mode-table):
6710         * lisp/man.el (Man-frame-parameters):
6711         * lisp/midnight.el (midnight-delay):
6712         * lisp/speedbar.el (speedbar-select-frame-method):
6713         * lisp/tooltip.el (tooltip-frame-parameters):
6714         * lisp/tree-widget.el (tree-widget-space-width):
6715         * lisp/type-break.el (type-break-keystroke-threshold):
6716         * lisp/woman.el (woman-imenu-generic-expression):
6717         * lisp/cedet/ede.el (ede-debug-program-function):
6718         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
6719         * lisp/emulation/viper-keym.el (viper-toggle-key):
6720         * lisp/erc/erc-networks.el (erc-server-alist):
6721         * lisp/gnus/message.el (message-deletable-headers, message-signature):
6722         * lisp/mail/mailalias.el (mail-directory-stream):
6723         * lisp/play/tetris.el (tetris-x-colors):
6724         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
6726 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
6728         Highlight CSS variables with variable name face
6730         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
6731         (css--font-lock-keywords): Highlight variables in
6732         `font-lock-variable-name-face'.
6734 2016-01-30  Glenn Morris  <rgm@gnu.org>
6736         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
6738 2016-01-30  Glenn Morris  <rgm@gnu.org>
6740         Mark some user options that can get evalled as risky.
6742         * lisp/allout.el (allout-title):
6743         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
6744         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
6745         * lisp/progmodes/gud.el (gud-tooltip-display):
6746         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
6747         Mark as risky.
6749 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
6751         Disable DebPrint in sys_read on MS-Windows
6753         * src/w32.c (sys_read): Disable a debugging print that is normal
6754         when non-blocking reads are retried.
6756 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
6758         ;Fix ChangeLog entry
6760 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
6762         Fix typos in Introduction to Emacs Lisp manual
6764         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
6765         (kill-new function, Digression into C)
6766         (Complete forward-sentence, Divide and Conquer, Find a File)
6767         (lengths-list-many-files, Columns of a graph, defcustom)
6768         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
6769         <dbastos@toledo.com>.
6771 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6773         Bump version to 25.0.90
6775         * README:
6776         * configure.ac:
6777         * msdos/sed2v2.inp: Bump version to 25.0.90.
6779 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6781         * etc/AUTHORS: Update the AUTHORS file
6783 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6785         Bump version to 25.0.90
6787         * README:
6788         * configure.ac:
6789         * msdos/sed2v2.inp: Bump version to 25.0.90.
6791 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6793         * etc/AUTHORS: Update the AUTHORS file
6795 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6797         authors.el updates
6799         * admin/authors.el (authors-renamed-files-alist): Additions.
6801 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6803         Make it possible to run make change-history on emacs-25
6805         * Makefile.in: Check if the current branch is emacs-25 instead of
6806           master.
6808 2016-01-30  lu4nx  <lx@shellcodes.org>
6810         Support Go language in 'etags'
6812         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
6813         <Go_help>: New help.
6814         <Go_suffixes>: New variable.
6815         (Go_functions): New function.
6816         <lang_names>: Add entry for Go.  (Bug#22370)
6818         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
6819         * doc/man/etags.1: Mention Go support.
6821         * etc/NEWS: Mention Go support.
6823         * test/etags/go-src/test.go:
6824         * test/etags/go-src/test1.go: New test files.
6825         * test/etags/Makefile (GOSRC): New variable.
6826         (SRCS): Add $(GOSRC).
6827         * test/etags/ETAGS.good_1:
6828         * test/etags/ETAGS.good_2:
6829         * test/etags/ETAGS.good_3:
6830         * test/etags/ETAGS.good_4:
6831         * test/etags/ETAGS.good_5:
6832         * test/etags/ETAGS.good_6:
6833         * test/etags/CTAGS.good: Adapt to addition of Go tests.
6835 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
6837         Improve Ruby support in 'etags'
6839         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
6840         singleton classes.  Remove class qualifiers from tags generated
6841         for method and constant names.  (Bug#22241)
6843         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
6844         are tagged by etags in Ruby.
6846         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
6848         * test/etags/ruby-src/test1.ru: Add more tests.
6849         * test/etags/ETAGS.good_1:
6850         * test/etags/ETAGS.good_2:
6851         * test/etags/ETAGS.good_3:
6852         * test/etags/ETAGS.good_4:
6853         * test/etags/ETAGS.good_5:
6854         * test/etags/ETAGS.good_6:
6855         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
6856         tests.
6858 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
6860         Adjust etags test results to changes in copyright years
6862         * test/etags/CTAGS.good:
6863         * test/etags/ETAGS.good_1:
6864         * test/etags/ETAGS.good_2:
6865         * test/etags/ETAGS.good_3:
6866         * test/etags/ETAGS.good_4:
6867         * test/etags/ETAGS.good_5:
6868         * test/etags/ETAGS.good_6: Adjust to shift in characters and
6869         in line numbers.
6871 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
6873         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
6875         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
6877 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6879         Make it possible to run make change-history on emacs-25
6881         * Makefile.in: Check if the current branch is emacs-25 instead of
6882           master.
6884 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
6886         Don't fiddle with DEFAULT
6888         * lisp/progmodes/project.el (project--completing-read-strict):
6889         Don't change DEFAULT, whether is has any matches in
6890         COLLECTION, or not.
6892 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
6894         Document xwidget commands and functions
6896         * doc/lispref/display.texi (Xwidgets): New section, describes some
6897         of the xwidget primitives.
6898         * doc/lispref/display.texi (Display): Update the chapter menu.
6899         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
6900         * doc/emacs/emacs.texi (Top): Update the master menu to include
6901         the xwidget node.
6903 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
6905         Build fix for shr.el
6907         * shr.el (seq): Require.
6909 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
6911         Improve project-find-file yet again!
6913         * lisp/progmodes/project.el (project--completing-read-strict):
6914         New function.
6915         (project-find-file-in): Use it.
6916         (project-file-completion-table): Move the default
6917         implementation inside the cl-defgeneric form.
6918         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
6920 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
6922         Don't pass DIR to 'hg status'
6924         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
6925         Don't pass DIR to 'hg status' (bug#22481).
6927 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
6929         Fix typo in previous commits
6931         * lisp/progmodes/project.el (project-find-file-in):
6932         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
6933         commit.
6935 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
6937         Improve project-find-file
6939         * lisp/progmodes/project.el (project-file-completion-table): New.
6940         (project-find-file, project-or-external-find-file): Default to filename
6941         at point.
6942         (project-file-completion-table): New, split out from
6943         project--find-file-in.
6944         (project-find-file-in): Renamed from project--find-file-in, use
6945         project-file-completion-table.
6947         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
6948         (xref--find-ignores-arguments): Add doc string.
6950 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
6952         Implement vc-mtn-find-ignore-file, fix some doc strings
6954         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
6956         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
6958         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
6960         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
6962 2016-01-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
6964         Correct a whole bunch of bugs coming with renamed cell relocation.
6966         This is the same change as commit on master branch. See
6967         http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=badcd38aa86ed7973f2be2743c405710973a0bdd
6969         * lisp/ses.el (ses-localvars): rename variable
6970         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
6971         and adjust the comment about it.
6972         (ses-plist-delq): new defun.
6973         (ses--ses-buffer-list): new defvar.
6974         (ses--unbind-cell-name): new defun.
6975         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
6976         (ses-relocate-formula): Undo change of
6977         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
6978         preventing relocation for named cell --- now doing this is delegated
6979         to function `ses-relocate-symbol'.
6980         (ses-relocate-range): In docstring, undo change of
6981         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
6982         lower case as it is not a variable.
6983         (ses-relocate-all): Cell name relocation : 1) check that cell is a
6984         renamed cell by testing `ses-cell' property to :ses-named, rather than
6985         comparing name to corresponding standard name. Set rowcol of renamed
6986         cell into the hashmap --- `ses-cell' property must not be used for
6987         that as the same name can be used for different locations in different
6988         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
6989         `local-variable-p' to check if cell name is already in use in this
6990         sheet or needs initialization.
6991         (ses-relocate-all): Cell value relocation : 1) like for name
6992         relocation use the `ses-cell' property rather than comparing actual
6993         name to corresponding standard name. 2) Correct bug introduced in
6994         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
6995         made the other way round than the intention --- ie value relocation
6996         was disabled for standard cell, not for renamed cell as was the
6997         intention.
6998         (ses-relocate-all): Add loop for unbinding deleted renamed cells
6999         names.
7000         (ses-killbuffer-hook): new defun.
7001         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
7002         kill buffer hook, plus pushing current buffer if new in list.
7003         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
7004         into `ses--in-killing-named-cell-list'.
7005         (ses-rename-cell): Remove update of variable
7006         `ses--renamed-cell-symb-list', this variable is renamed to
7007         `ses--in-killing-named-cell-list', and its setting is done in
7008         functions `ses-delete-row' and , `ses-delete-column' now.
7009         (ses-rename-cell): Make cell new name a buffer local variable.
7010         (ses-rename-cell): Change correction of
7011         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
7012         computation of the range over which `cursor-intangible' property was
7013         to be updated. This correction was ok for non spilling cells, but not
7014         for cells spilling over following blank cells. Simply use
7015         `next-single-property-change' rather than computing the end column
7016         from column widths.
7018 2016-01-29  Andreas Schwab  <schwab@linux-m68k.org>
7020         Re-enable checks in member, memql, delete to complain about non-lists
7022         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
7024 2016-01-29  Martin Rudalics  <rudalics@gmx.at>
7026         Minor doc(-string) tweaks
7028         * lisp/window.el (window-in-direction): Fix doc-string typo.
7029         * doc/lispref/frames.texi (Frame Font): Mention canonical
7030         character width/height.
7031         * doc/lispref/windows.texi (Windows and Frames): Clarify
7032         handling of minibuffer window for `window-in-direction'.
7033         (Window Sizes): Minor tweaks in descriptions of
7034         `window-max-chars-per-line', `window-min-width' and
7035         `window-min-size'.
7036         (Deleting Windows): Minor tweak in `delete-window' description.
7037         (Selecting Windows): Clarify window use time description.
7038         (Cyclic Window Ordering): Minor tweak.
7039         (Switching Buffers): Clarify description of
7040         `switch-to-buffer-in-dedicated-window'.
7042 2016-01-29  Eli Zaretskii  <eliz@gnu.org>
7044         Minor improvements to 'pcase' documentation
7046         * doc/lispref/control.texi (Pattern matching case statement):
7047         Improve the documentation of 'pcase' per comments.  See two
7048         discussion threads on emacs-devel@gnu.org for the details:
7049         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01335.html
7050         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01336.html.
7052 2016-01-29  Glenn Morris  <rgm@gnu.org>
7054         Don't use eval to quieten prolog.el compilation.
7056         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
7057         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
7059 2016-01-29  Glenn Morris  <rgm@gnu.org>
7061         Mark some risky prolog variables.
7063         * lisp/progmodes/prolog.el (prolog-system-version)
7064         (prolog-keywords, prolog-types, prolog-mode-specificators)
7065         (prolog-determinism-specificators, prolog-directives)
7066         (prolog-program-name, prolog-program-switches)
7067         (prolog-consult-string, prolog-compile-string)
7068         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
7069         Mark anything processed by prolog-find-value-by-system as risky.
7071 2016-01-28  Glenn Morris  <rgm@gnu.org>
7073         * lisp/custom.el (defcustom): Doc fix.
7075         * doc/lispref/customize.texi (Variable Definitions):
7076         Defcustom should always have a type.
7078 2016-01-28  Glenn Morris  <rgm@gnu.org>
7080         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
7081         Fix :type.
7083         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
7085 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
7087         Fix Bug#22452
7089         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
7090         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
7091         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
7092         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
7093         Mark it as connected.
7095         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
7096         connection property "connected" is set.  (Bug#22452)
7098 2016-01-27  Glenn Morris  <rgm@gnu.org>
7100         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
7102         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
7103         if not compiled with xwidgets.
7105 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
7107         C-u C-x = example doc fix
7109         * doc/emacs/mule.texi (International Chars):
7110         Adjust example to match current behavior of C-u C-x =.
7112 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
7114         malloc.h hygiene
7116         This attempts to future-proof Emacs a bit against possible glibc
7117         changes, by having Emacs use <malloc.h> declarations rather than
7118         coding them up by hand.  Problem noted by Florian Weimer in:
7119         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
7120         Implement this mainly by moving malloc.h-related functions from
7121         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
7122         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
7123         New function.
7124         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
7125         (alloc_unexec_pre, alloc_unexec_post): New functions.
7126         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
7127         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
7128         (__malloc_initialize_hook): Use it.
7129         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
7130         Move here from ...
7131         * src/emacs.c: ... here.
7132         (malloc_get_state, malloc_set_state): Remove extern decls.
7133         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
7134         All uses changed to similarly-named new function.
7135         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
7136         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
7137         New decls.
7139 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
7141         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
7143 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
7145         Remove never-set var handle_user_signal_hook
7147         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
7148         Remove never-set var.  All uses removed.
7150 2016-01-26  K. Handa  <handa@gnu.org>
7152         Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
7154         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
7155         second glyph only when there are enough glyphs.
7157         (cherry picked from commit 9835757013569673854b692ccbb58bfb3c3ed1f7)
7159 2016-01-26  K. Handa  <handa@gnu.org>
7161         support rendering of wider range of combinging characters by ftfont backend
7163         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
7164         supports rendering of combining characters, call
7165         font-shape-gstring.
7167         * src/font.c (Ffont_get): Handle `combining-capability' property.
7168         (syms_of_font): New symbol ":combining-capability'.
7170         * src/font.h (struct font_driver): New member combining_capability.
7172         * src/ftfont.c: Include "category.h".
7173         (ftfont_driver): Initialize combining_capability to
7174         ftfont_combining_capability.
7175         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
7176         FLT in advance.
7177         (ftfont_combining_capability): New function.
7179         (cherry picked from commit 536f48e9a2251b9e654ea974bd90ff2f40218753)
7181 2016-01-26  Anders Lindgren  <andlind@gmail.com>
7183         Fixed NextStep fullscreen issue (bug#22468)
7185         When in fullscreen mode, `[screen visibleFrame]' sometimes
7186         includes, sometimes excludes the menu bar. This could cause
7187         a frame to be placed too low when in fullscreen mode.
7189         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
7190         (constrain_frame_rect): New parameter, isFullscreen, when true don't
7191         query the height of the menu bar.
7192         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
7193         `constrain_frame_rect'.
7194         ([EmacsView initFrameFromEmacs:]): Trace.
7195         ([EmacsView isFullscreen]): Trace.
7196         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
7197         state to `constrain_frame_rect'.
7199 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
7201         * lisp/files.el: Use a fixed file name for the second dir-locals file
7203         (dir-locals-file): Revert to its original fixed value.
7204         (dir-locals-file-2): New const.
7205         (dir-locals--all-files): Don't use `file-name-all-completions'.
7206         Instead, just check for the 2 dir-locals files and return a list
7207         of the ones that exit (if any).
7209         * etc/NEWS: Document the change.
7211         * doc/emacs/custom.texi (Directory Variables): Document the change.
7213         * doc/lispref/variables.texi (Directory Local Variables): Update
7214         accordingly.
7216 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
7218         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
7220         Change a variable name to be more meaningful, and reorder some of
7221         the code with no change in behaviour.
7223 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
7225         * lisp/files.el (dir-locals-find-file): Refactor return values
7227         Returning a cache remains unchanged, but the case of returning a
7228         file (or pattern) is now changed to return the contaning
7229         directory.
7231         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
7232         and make obsolete.
7233         (dir-locals-read-from-dir): Simplify accordingly.
7234         (hack-dir-local-variables): Simplify accordingly and rename a
7235         variable.
7237 2016-01-26  Glenn Morris  <rgm@gnu.org>
7239         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
7240         Declare.
7242         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
7244         * configure.ac (--with-cairo): Say it's experimental.
7246         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
7247         Rename using American spelling.  Update all uses.
7249 2016-01-26  Glenn Morris  <rgm@gnu.org>
7251         Yet more xwidget doc fixes.
7253         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
7254         (xwidget-insert, xwidget-webkit-browse-url)
7255         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
7256         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
7257         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
7258         (xwidget-webkit-show-id-element)
7259         (xwidget-webkit-show-id-or-named-element)
7260         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
7261         (xwidget-webkit-execute-script-rv)
7262         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
7263         (xwidget-put):  Doc fixes.
7264         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
7265         (xwidget-webkit-show-id-element)
7266         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
7268 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
7270         * lisp/gnus/gnus-art.el (gnus-blocked-images):
7271         Add explicit nil choice and tags.
7273 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7275         Spelling fixes
7277 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
7279         (font-lock-ensure-function): Fix bug#22399
7281         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
7282         font-lock-mode is not enabled (bug#22399).
7284 2016-01-25  Alan Mackenzie  <acm@muc.de>
7286         Expunge "allow" + infinitive from source and doc, part 2.
7288         Do the same for "permit", "enable", "prevent", and (where appropriate)
7289         "require".
7291         doc/misc/reftex.texi:
7292         doc/misc/url.texi:
7293         lib/get-permissions.c:
7294         lib/strftime.c:
7295         lisp/org/org-element.el:
7296         lisp/org/org-mobile.el:
7297         lisp/textmodes/reftex-vars.el:
7298         src/bidi.c:
7299         src/emacs.c:
7300         src/xdisp.c:
7301         test/etags/c-src/emacs/src/lisp.h:
7303         Expunge the likes of "This allows to do something" from the above files.
7305 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
7307         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
7309         `special-mode' is already read-only.
7311 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
7313         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
7315 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7317         Port "$@" to OpenIndiana ksh93
7319         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
7320         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
7321         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
7322         bug in long-dead shells, so remove the workaround.
7323         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
7324         Use plain "$@" rather than ${1+"$@"}.
7326 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7328         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
7330 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7332         Improve wording for SMB support
7334         * doc/misc/tramp.texi (External methods): Improve and modernize
7335         wording for discussion of smbclient.  There is no longer any
7336         need to mention the laundry list of old MS Windows implementations
7337         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
7339 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
7341         Merge from gnulib
7343         This incorporates:
7344         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
7345         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
7346         2016-01-15 detect utimes() correctly on OS/2 kLIBC
7347         2016-01-15 openat_proc_name: port to OS/2 kLIBC
7348         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
7349         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
7350         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
7351         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
7352         2016-01-14 sig2str: list all signals on FreeBSD >= 7
7353         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
7354         2016-01-12 mktime: rename macro to avoid glibc clash
7355         2016-01-12 Port "$@" to OpenIndiana ksh93
7356         2016-01-12 Port Universal Time settings to strict POSIX
7357         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
7358         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
7359         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
7360         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
7361         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
7362         * m4/fcntl.m4, m4/utimes.m4:
7363         Copy from gnulib.
7364         * m4/gnulib-comp.m4: Regenerate.
7366 2016-01-24  Alan Mackenzie  <acm@muc.de>
7368         Expunge "allow" + infinitive without direct object from source and doc.
7370         Do the same for "permit", "enable", and "prevent".
7372         * doc/emacs/mule.texi:
7373         * doc/lispref/control.texi:
7374         * doc/lispref/display.texi:
7375         * doc/lispref/frames.texi:
7376         * doc/lispref/functions.texi:
7377         * doc/lispref/nonascii.texi:
7378         * doc/lispref/streams.texi:
7379         * doc/lispref/windows.texi:
7380         * doc/misc/dbus.texi:
7381         * doc/misc/eww.texi:
7382         * doc/misc/flymake.texi:
7383         * doc/misc/octave-mode.texi:
7384         * doc/misc/org.texi:
7385         * doc/misc/reftex.texi:
7386         * doc/misc/tramp.texi:
7387         * doc/misc/wisent.texi:
7388         * etc/NEWS:
7389         * lisp/autorevert.el:
7390         * lisp/cedet/mode-local.el:
7391         * lisp/cedet/semantic/senator.el:
7392         * lisp/cedet/semantic/wisent.el:
7393         * lisp/dos-fns.el:
7394         * lisp/frameset.el:
7395         * lisp/gnus/gnus-agent.el:
7396         * lisp/gnus/mm-util.el:
7397         * lisp/international/characters.el:
7398         * lisp/ldefs-boot.el:
7399         * lisp/mail/mailclient.el:
7400         * lisp/man.el:
7401         * lisp/mh-e/mh-search.el:
7402         * lisp/net/tramp-cmds.el:
7403         * lisp/net/tramp-gvfs.el:
7404         * lisp/org/org-crypt.el:
7405         * lisp/org/org-element.el:
7406         * lisp/org/org-feed.el:
7407         * lisp/org/org.el:
7408         * lisp/org/ox-ascii.el:
7409         * lisp/org/ox-icalendar.el:
7410         * lisp/org/ox-publish.el:
7411         * lisp/org/ox.el:
7412         * lisp/play/gamegrid.el:
7413         * lisp/play/gomoku.el:
7414         * lisp/progmodes/antlr-mode.el:
7415         * lisp/progmodes/python.el:
7416         * lisp/progmodes/vhdl-mode.el:
7417         * lisp/strokes.el:
7418         * lisp/textmodes/ispell.el:
7419         * lisp/tree-widget.el:
7420         * lisp/vc/pcvs.el:
7421         * lisp/window.el:
7422         * src/lisp.h:
7423         * src/w32.c:
7424         * src/w32heap.c:
7425         * src/w32term.c:
7426         * src/window.c:
7427         * src/xfaces.c:
7429         Replace solecisms like "This allow to do something" with a correct
7430         alternative, such as "This allow you to do something", "This allows
7431         something to be done" or "This allows the doing of something".
7433 2016-01-24  l3thal  <kwhite@gnu.org>
7435         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
7437 2016-01-24  Kelvin White  <kwhite@gnu.org>
7439         Add NEWS entry for asynchronous reconnect in ERC
7441 2016-01-24  l3thal  <kwhite@gnu.org>
7443         Add NEWS entry for asynchronous reconnect in ERC
7445 2016-01-24  Kelvin White  <kwhite@gnu.org>
7447         browse-url.el: Add 'google-chrome' to supported browsers.
7449 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
7451         Port Tramp manual to latest Texinfo
7453         Otherwise, 'make pdf' did not work (Bug#22416).
7454         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
7455         (trampfn): Specialize to the case where METHOD is nonempty.
7456         The 2nd argument is now user@host, not 2nd user and 3rd host args.
7457         All uses changed.
7458         (trampf): New macro.
7460 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
7462         * eww.el (eww-render): Protect against empty content-types.
7464 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
7466         authors.el updates
7468         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
7469           Additions.
7471 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
7473         Rename xref-query-replace to xref-query-replace-in-results
7475         * lisp/progmodes/xref.el(xref-query-replace):
7476         Rename to xref-query-replace-in-results.
7477         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
7479         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
7480         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
7481         * doc/emacs/dired.texi (Operating on Files):
7482         * doc/emacs/maintaining.texi (Xref Commands)
7483         (Identifier Search, Identifier Search): Update accordingly.
7485 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
7487         Update cl-defgeneric and cl-defmethod docstrings
7489         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
7490         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
7491         (cl-defmethod): Mention that multiple dispatch arguments are
7492         allowed.  Document supported types.  (Bug#22336)
7494 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
7496         Comment out next-error-function integration in xref
7498         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
7499         Comment out next-error-function integration
7500         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
7502 2016-01-23  John Wiegley  <johnw@newartisans.com>
7504         Correct a use of "which" in intro.texi
7506 2016-01-23  Alan Mackenzie  <acm@muc.de>
7508         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
7510         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
7511         context of case labels (including "default") more rigorously.
7512         (c-guess-basic-syntax CASE 15): Consequential amendment.
7514         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
7516 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
7518         Don't operate on menu bar of nonexistent frame
7520         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
7521         is valid before redisplaying its menu. Fixes bug#22438.
7523 2016-01-23  Anders Lindgren  <andlind@gmail.com>
7525         Unbreak the GNUstep build.
7527         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
7528         predefined "caution" image. Add trace.
7529         (x_set_window_size): Remove unused variables `cols' and `rows'.
7530         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
7531         GNUstep is used.
7532         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
7533         ([EmacsWindow zoom:]): Remove unused variable `f'.
7535 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
7536             John Wiegley  <johnw@gnu.org>
7537             Michael Heerdegen  <michael_heerdegen@web.de>
7539         Improve documentation of 'pcase'
7541         * doc/lispref/control.texi (Pattern matching case statement):
7542         Reorganize, expand, and improve wording.
7544         * etc/NEWS: Mention that 'pcase' changes are documented.
7546 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7548         * etc/NEWS: Say that Cairo is experimental.
7550 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7552         Report error for PNG under Cairo
7554         * src/image.c (lookup_rgb_color): Signal a file error instead
7555         of dumping core when mishandling an image.
7557 2016-01-23  Arash Esbati  <esbati@gmx.de>
7559         Delete a spurious backquote (tiny change)
7561         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
7562         spurious backquote which raises an error with emacs 25.
7564 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7566         Pacify --enable-gcc-warnings --with-cairo
7568         Problem reported by Alexander Kuleshov in:
7569         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
7570         * src/gtkutil.c (xg_get_page_setup):
7571         Use switch rather than if-then-else.
7572         * src/image.c (COLOR_TABLE_SUPPORT):
7573         Define directly rather than via #define and optional later #undef.
7574         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
7575         Crash when the pixel is undefined, as there is a genuine bug
7576         here (Bug#22442).
7577         * src/image.c (tiff_load, gif_load, svg_load_image)
7578         (x_kill_gs_process) [USE_CAIRO]:
7579         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
7580         Omit unused locals, or move them to where they’re needed.
7581         (x_clear_area1): Now ATTRIBUTE_UNUSED.
7583 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
7585         Update documentation for Dired search and replace
7587         * doc/emacs/dired.texi (Operating on Files): Update descriptions
7588         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
7589         'dired-do-find-regexp-and-replace'.
7591         * etc/NEWS: Mention xref-related changes in Dired.
7593 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7595         Port recent xdisp.c fix to picky C compilers
7597         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
7598         putting #if inside the arguments to a standard function, which
7599         the C standard says has undefined behavior.
7601 2016-01-22  Alan Mackenzie  <acm@muc.de>
7603         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
7605         * lisp/progmodes/cc-engine.el (c-forward-declarator): New function.
7606         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
7607         contained in the preceding arg list.
7609         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Use the new function
7610         `c-forward-declarator' in place of inline code.
7612 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
7614         Fix the build with --enable-checking=glyphs
7616         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
7617         build without xwidget support.
7619 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
7621         Document cl-generic.el
7623         * doc/lispref/functions.texi (Generic Functions): New section.
7624         (Bug#22336)
7625         (Functions): Update the chapter menu.
7626         * doc/lispref/elisp.texi: Update the master menu.
7628 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
7630         xwidgets style cleanup
7632         Adjust the newly-added Xwidgets code so that it uses a more-typical
7633         Emacs style.  This should not affect behavior, except that in
7634         a few places it adds runtime checks that Lisp arguments are of
7635         the proper type, and in one place it uses more-precise arithmetic.
7636         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
7637         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
7638         Include xwidget.h unconditionally.
7639         * src/buffer.c (Fkill_buffer):
7640         * src/dispnew.c (update_window):
7641         * src/emacs.c (main):
7642         * src/print.c (print_object):
7643         * src/window.c (Fdelete_window_internal):
7644         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
7645         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
7646         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
7647         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
7648         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
7649         Call xwidget functions and macros without worrying about
7650         HAVE_XWIDGETS when the code is a no-op on non-xwidget
7651         platforms.
7652         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
7653         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
7654         (struct it.xwidget):
7655         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
7656         Always define.
7657         * src/emacsgtkfixed.h: Omit unnecessary comment.
7658         * src/keyboard.c: Fix spacing.
7659         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
7660         Define to be a no-op if not HAVE_XWIDGETS.
7661         * src/xwidget.c: Include xwidget.h first (after config.h)
7662         to make sure that it can stand by itself.
7663         (Fmake_xwidget, Fxwidget_webkit_execute_script):
7664         Fix typo in doc string.
7665         (Fmake_xwidget): Check type of args.
7666         (Fmake_xwidget, offscreen_damage_event)
7667         (webkit_document_load_finished_cb, webkit_download_cb)
7668         (webkit_new_window_policy_decision_requested_cb)
7669         (webkit_navigation_policy_decision_requested_cb)
7670         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
7671         (xwidget_osr_event_set_embedder, xwidget_init_view):
7672         Omit unnecessary casts.
7673         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
7674         (xwidget_show_view, xwidget_hide_view)
7675         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
7676         (xwidget_touched):
7677         * src/xwidget.h (struct xwidget.kill_without_query)
7678         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
7679         Use bool for boolean.
7680         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
7681         Simplify by using list functions.
7682         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
7683         (Fxwidget_resize): Check type of integer args
7684         before doing any work.  Check that they are nonnegative.
7685         (Fxwidget_set_adjustment): Check type of integer arg.
7686         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
7687         Simplify.  Use double, not float.
7688         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
7689         (valid_xwidget_spec_p): Simplify.
7690         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
7691         * src/xwidget.h: Include lisp.h first, so that includers do
7692         not need to worry about doing that before including this file.
7693         Make this .h file safe to include even on non-HAVE_XWIDGETS
7694         configurations, to simplify the includers.
7695         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
7696         (xwidget_end_redisplay, lookup_xwidget)
7697         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
7698         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
7699         (struct glyph_matrix, struct glyph_string, struct xwidget)
7700         (struct xwidget_view, struct window):
7701         New forward or incomplete decls, so that includers need not
7702         assume the corresponding .h files are already included, or that
7703         HAVE_XWIDGETS is defined.
7704         (struct xwidget_type, xwidget_from_id): Remove; unused.
7706 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
7708         Backport kqueue integration from master
7710         * configure.ac (--with-file-notification): Add kqueue.
7711         (top): Remove special test for "${HAVE_NS}" and
7712         ${with_file_notification}, this is handled inside gfilenotify
7713         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
7714         instead of library specific variables.  Add error message for
7715         gfile on Nextstep.
7717         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
7718         Fix some glitches in the example.
7720         * etc/NEWS: Mention kqueue.
7722         * lisp/filenotify.el (file-notify--library)
7723         (file-notify-descriptors, file-notify-callback)
7724         (file-notify-add-watch, file-notify-rm-watch)
7725         (file-notify-valid-p): Add kqueue support.
7726         (file-notify--rm-descriptor): Remove WHAT arg.
7728         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
7730         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
7732         * src/inotify.c (inotifyevent_to_event): Extract file name from
7733         watch_object if the event doesn't provide it.
7734         (Finotify_add_watch): Add file name to watch_object.
7736         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
7738         * src/kqueue.c: New file.
7740         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
7742         * test/automated/file-notify-tests.el
7743         (file-notify--test-expected-events): Remove.
7744         (file-notify--test-cleanup): Do not set that variable.
7745         (file-notify--test-timeout) Use different timeouts for
7746         different libraries.
7747         (file-notify--test-library): New defun.
7748         (file-notify--test-event-test): Make stronger checks.
7749         (file-notify--test-with-events): EVENTS can also be a list of
7750         lists.  Flush outstanding events before running the body.
7751         Make timeout heuristically depend on the number of events.
7752         (file-notify-test01-add-watch, file-notify-test02-events)
7753         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
7754         Rewrite in order to call file monitors but directory monitors.
7755         (file-notify-test02-events, file-notify-test04-file-validity): Do
7756         not skip cygwin tests.  Add additional test for file creation.
7757         Adapt expected result for different backends.
7758         (file-notify-test03-autorevert): Some of the tests don't work for
7759         w32notify.
7760         (file-notify-test06-many-events): New test.
7762 2016-01-22  John Wiegley  <johnw@newartisans.com>
7764         Further corrections to the pcase docstring
7766 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
7768         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
7770 2016-01-22  Stephen Leake  <stephen_leake@stephe-leake.org>
7772         In xref-collect-references, force backends to respect the 'dir' arg
7774         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
7775         to use `default-directory'.
7777 2016-01-22  John Wiegley  <johnw@newartisans.com>
7779         Minor correction to pcase docstring
7781 2016-01-22  John Wiegley  <johnw@newartisans.com>
7783         Write a new docstring for the pcase macro
7785         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
7787 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
7789         Avoid byte-compiler warning in todo-mode (bug#21953)
7791         * lisp/calendar/todo-mode.el (todo-convert-legacy-files): Add limit argument
7792         to looking-back to comply with advertised-calling-convention.
7794 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
7796         Fix desktop support in todo-mode and doc-view (bug#22377)
7798         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
7799         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
7801         * lisp/calendar/todo-mode.el (todo-modes-set-2):
7802         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
7804 2016-01-21  Paul Eggert  <eggert@cs.ucla.edu>
7806         No need to configure gobject-introspection
7808         It wasn’t needed for the recently-installed xwidget_mvp code; see:
7809         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
7810         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
7811         (HAVE_GIR):
7812         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
7813         Remove.  All uses removed.
7814         * configure.ac (emacs_config_features): Don’t worry about GIR.
7816 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
7818         Don’t export C symbols not used elsewhere
7820         These were recently added, mostly as part of xwidget code.
7821         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
7822         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
7823         Now static functions here, not macros in emacsgtkfixed.h.
7824         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
7825         Remove.  All uses replaced by definiens.
7826         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
7827         Remove; these are now static functions in emacsgtkfixed.c.
7828         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
7829         Remove; unused.
7830         (emacs_fixed_get_type): Remove decl; no longer extern.
7831         * src/xwidget.c (offscreen_damage_event)
7832         (webkit_mime_type_policy_typedecision_requested_cb)
7833         (webkit_new_window_policy_decision_requested_cb)
7834         (webkit_navigation_policy_decision_requested_cb)
7835         (xwidget_spec_value, xwidget_view_lookup)
7836         (xwidget_start_redisplay, xwidget_touch):
7837         Now static.
7838         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
7839         Remove decls.
7841 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
7843         Support squiggly heredocs in ruby-mode
7845         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
7846         Support squiggly heredocs added in Ruby 2.3.
7848         * test/indent/ruby.rb: Add squiggly example.
7850 2016-01-20  Glenn Morris  <rgm@gnu.org>
7852         * configure.ac (emacs_config_features): Remove WEBKIT.
7854 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
7856         Port to platforms with gtk3 but not webkitgtk3
7858         I ran into this problem on my Fedora 23 installation;
7859         Emacs configured but did not build when --with-xwidgets was specified.
7860         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
7861         (DOES_XWIDGETS_USE_GIR): New var.
7862         If --with-xwidgets is specified, report an error if not
7863         doable, to be consistent with the other --with options.
7864         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
7865         not work at all without webkitgtk3.  Simplify use of
7866         EMACS_CHECK_MODULES.  Output message about gobject
7867         introspection only if xwidgets are used.
7868         * etc/NEWS: Users need webkitgtk3, not merely webkit.
7869         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
7870         since this file is no longer compiled if webkitgtk3 is not available.
7872 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
7874         Fix doc string of 'isearch-search-fun-function'
7876         * lisp/isearch.el (isearch-search-fun-function)
7877         (isearch-search-string): Doc fixes.  (Bug#22411)
7879 2016-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
7881         * lisp/xwidget.el: Nitpicks
7883         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
7884         Use with-current-buffer rather than save-excursion + set-buffer.
7886 2016-01-20  Glenn Morris  <rgm@gnu.org>
7888         Don't hard-code 1 as point-min.
7890         * lisp/image-mode.el (image-display-size):
7891         * lisp/xwidget.el (xwidget-webkit-last-session)
7892         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
7894 2016-01-20  Glenn Morris  <rgm@gnu.org>
7896         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
7898 2016-01-20  Glenn Morris  <rgm@gnu.org>
7900         Trivial doc copyedits.
7902         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
7903         (Fxwidget_webkit_get_title, Fxwidget_resize)
7904         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
7905         (Fxwidget_info, Fxwidget_view_lookup)
7906         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
7908 2016-01-20  Glenn Morris  <rgm@gnu.org>
7910         Avoid advising image-display-size for xwidgets.
7912         * lisp/xwidget.el (xwidget-image-display-size): Remove.
7913         (image-display-size): Remove advice.
7914         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
7915         (image-display-size): Incorporate xwidget code directly.
7917 2016-01-20  Glenn Morris  <rgm@gnu.org>
7919         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
7921         * lisp/xwidget.el (window-configuration-change-hook)
7922         (kill-buffer-query-functions): Only modify these hooks if
7923         compiled with xwidget support.
7925 2016-01-20  Glenn Morris  <rgm@gnu.org>
7927         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
7929 2016-01-19  Glenn Morris  <rgm@gnu.org>
7931         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
7933         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
7935         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
7937 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
7939         * lisp/gnus/nnir.el (nnir-request-update-mark):
7940         Default to the original mark.
7941         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
7942         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
7944 2016-01-19  Glenn Morris  <rgm@gnu.org>
7946         * lisp/xwidget.el (report-xwidget-bug): Remove.
7948         (top-level): No longer require reporter.
7950 2016-01-19  Joakim Verona  <joakim@verona.se>
7951             Grégoire Jadi  <daimrod@gmail.com>
7953         Support for the new Xwidget feature.
7955         * configure.ac:
7956         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
7957         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
7958         * src/xdisp.c:
7959         (handle_display_spec, handle_single_display_spec, push_it)
7960         (pop_it, set_iterator_to_next, dump_glyph)
7961         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
7962         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
7963         (produce_xwidget_glyph, x_produce_glyphs)
7964         (get_window_cursor_type):
7965         * src/window.c (Fdelete_window_internal):
7966         * src/termhooks.h (e):
7967         * src/print.c (print_object):
7968         * src/lisp.h (ptrdiff_t):
7969         * src/keyboard.c (kbd_buffer_get_event, make_lispy_event)
7970         (syms_of_keyboard):
7971         * src/emacs.c (main):
7972         * src/dispnew.c (update_window, scrolling_window):
7973         * src/dispextern.h (g, i):
7974         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
7975         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
7976         * src/keyboard.c (kbd_buffer_get_event):
7977         * src/emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
7978         (emacs_fixed_class_init): Add case for an xwidget view.
7980         * src/xwidget.c, src/xwidget.h, lisp/xwidget.el: New files for xwidgets
7983         Various improvements to the Xwidget feature.
7984         * src/xwidget.c:
7985         * src/emacsgtkfixed.c:
7986         * lisp/xwidget.el:
7988 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
7990         Improve documentation of 'alist-get'
7992         * doc/lispref/variables.texi (Setting Generalized Variables): Add
7993         'alist-get' to the list of functions that can appear in PLACE
7994         argument of 'setf'.
7996 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
7998         Minor copyedits of doc/emacs/maintaining.texi
8000         * doc/emacs/maintaining.texi (List Identifiers): More accurate
8001         description of "C-M-i" wrt tags tables.
8002         (Tags Tables): Move the definition of "tag" to a footnote.
8004 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
8006         Unbreak the Cygwin-w32 build
8008         * src/w32fns.c (globals_of_w32fns): Move the initialization of
8009         resetstkoflw into a part that isn't compiled on Cygwin.
8010         (Bug#22403)
8012 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8014         * shr.el (shr-table-body): Allow tables to have text children.
8016 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
8018         Cope with multiple overlapping faces.
8020         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
8021           left.
8022           (hfy-face-resolve-face): Handle font specification as well as font
8023           name. Documentation update. (Bug#21990)
8025 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
8027         Fix spurious escapes in describe-input-method
8029         Problem reported by Vincent Belaïche (Bug#22309).
8030         * lisp/international/mule-cmds.el (describe-language-environment):
8031         * lisp/international/quail.el (quail-help):
8032         Apply substitute-command-keys to doc strings before displaying them.
8034 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
8036         Minor improvements to (random t) documentation
8038         * doc/lispref/numbers.texi (Random Numbers):
8039         * src/fns.c (Frandom):
8040         Omit unnecessary details about randomness fallback.
8041         Say that it is a fallback.
8043 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
8045         Rename methods in Ruby etags example file
8047         * test/etags/ruby-src/test.rb: Rename the example methods to
8048         correspond to the common terminology used in Ruby.
8049         * test/etags/CTAGS.good:
8050         * test/etags/ETAGS.good_1:
8051         * test/etags/ETAGS.good_2:
8052         * test/etags/ETAGS.good_3:
8053         * test/etags/ETAGS.good_4:
8054         * test/etags/ETAGS.good_5:
8055         * test/etags/ETAGS.good_6: Adjust accordingly.
8057 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
8059         Propertize backtick in 'def `(abc)' as symbol constituent
8061         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
8062         Propertize backtick in 'def `(abc)' as symbol constituent.
8063         (ruby-syntax-propertize-function):
8064         Rename to ruby-syntax-propertize.
8066 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
8068         Fix scrolling under scroll-preserve-screen-position on TTY
8070         * src/window.c (window_scroll_line_based): When setting point to
8071         preserve screen coordinates, don't let cursor enter either of the
8072         two scroll margins.  (Bug#22395)
8074 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8076         Fix shr table rendering of nested tables
8078         * shr.el (shr-table-body): Don't include all tbodies in nested
8079         tables in the levels above.
8081 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
8083         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
8085 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
8087         Add xref-based replacements for Dired search commands
8089         * lisp/dired-aux.el (dired-do-find-regexp)
8090         (dired-do-find-regexp-and-replace): New commands.
8091         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
8093         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
8094         `Q' to the new commands.
8096         * lisp/progmodes/xref.el (xref-query-replace)
8097         (xref-collect-matches): Add progress reporters.
8098         (xref--find-ignores-arguments): Return nil for zero ignores.
8099         (xref--show-xrefs): Add an optional argument.
8100         (xref-collect-matches): Drop the assert.  'find' accepts a
8101         regular file in place of directory argument, too.
8103 2016-01-18  Alan Mackenzie  <acm@muc.de>
8105         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
8107 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
8109         Improve user documentation of Xref
8111         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
8112         (Looking Up Identifiers, Identifier Search, List Identifiers):
8113         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
8114         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
8115         for the details.
8117 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
8119         Fix scrolling under scroll-preserve-screen-position and margins
8121         * src/window.c (window_scroll_pixel_based): When setting point to
8122         preserve screen coordinates, don't let cursor enter either of the
8123         two scroll margins.  Fix incorrect usage of
8124         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
8125         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
8127 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
8129         Unbreak the MS-Windows build
8131         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
8132         WINDOWSNT, to avoid link failure.  (Bug#22202)
8134 2016-01-18  Alan Mackenzie  <acm@muc.de>
8136         Desktop: protect users against inadvertant upgrading of desktop file.
8138         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
8140         * etc/NEWS: Add an entry about upgrading a desktop file.
8142         * lisp/desktop.el (desktop-file-version): Amend doc string.
8143         (desktop-native-file-version, desktop-io-file-version): new variables.
8144         (desktop-clear): Set desktop-io-file-version to nil.
8145         (desktop-buffer-info): make the presence of the last item on the list
8146         conditional on (>= desktop-io-file-version 208).
8147         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
8148         Amend the doc string.  Add code to determine the output file version.
8149         (desktop-create-buffer): Set desktop-io-file-version to the input file's
8150         version.
8152 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
8154         Initialize GnuTLS before calling gnutls_rnd
8156         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
8157         Don’t set gnutls_global_initialized if gnutls_global_init fails.
8158         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
8159         if 2.12 or later, which has gnutls_rnd.
8160         (emacs_gnutls_global_init, gnutls_rnd): New fallback
8161         placeholder macros if before 2.12.
8162         (init_random): Initialize gnutls globals before trying to
8163         use gnutls_rnd.
8165 2016-01-18  Andreas Schwab  <schwab@linux-m68k.org>
8167         Don't use GnuTLS before it is initialized
8169                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
8171 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
8173         Port cleanup attribute to OpenBSD
8175         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
8176         sprintf, and this messes up 'configure' when it tests for the cleanup
8177         attribute.  Work around the problem by using __has_attribute directly.
8178         Problem reported by Joakim Jalap (Bug#22385).
8179         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
8180         * m4/ax_gcc_var_attribute.m4: Remove.
8181         * src/conf_post.h (__has_attribute): Provide a substitute, for
8182         non-GCC or older GCC compilers.  All uses changed to assume
8183         the substitute.  Check for the cleanup attribute.
8184         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
8186 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
8188         Prefer GnuTLS when acquiring random seed
8190         This attempts to improve on the fix for Bug#22202.
8191         * configure.ac (HAVE_DEV_URANDOM): Remove.
8192         Check /dev/urandom existence at run time, not at build time,
8193         since the device could exist in the former but not the latter.
8194         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
8195         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
8196         (random_seed): New typedef.
8197         (set_random_seed): New static function.
8198         (seed_random): Use them.
8199         (init_random): Use random_seed instead of uintmax_t, so as to
8200         not consume more entropy than needed.  Prefer gnutls_rnd if it
8201         works; this avoids a redundant open of /dev/urandom on
8202         GNU/Linux with modern GnuTLS.
8204 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8206         Improve documentation of dynamic modules
8208         * doc/lispref/loading.texi (How Programs Do Loading): Update the
8209         description of searching for files in 'load' when Emacs was built
8210         with support for dynamic modules.
8212 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8214         * INSTALL: Document --with-modules.
8216 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8218         Document 'function-put'
8220         * doc/lispref/symbols.texi (Symbol Plists): Document
8221         'function-put'.  Update documentation of 'function-get'.
8223 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8225         Document 'funcall-interactively'
8227         * doc/lispref/commands.texi (Interactive Call): Document
8228         'funcall-interactively'.
8229         * doc/lispref/functions.texi (Calling Functions): Mention
8230         'funcall-interactively' and provide a cross-reference.
8232 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8234         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
8236         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
8238 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8240         Document renaming of selection-related functions
8242         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
8243         functions into the corresponding "gui-*" functions.  Make the
8244         description slightly less X-centric.
8246 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8248         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
8250 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8252         Document 'define-inline'
8254         * doc/lispref/functions.texi (Defining Functions): Document
8255         'define-inline' and related macros.
8257         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
8259 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
8261         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
8263         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
8265 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
8267         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
8269         instead of manually writing a dir-locals file.
8271 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
8273         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
8275         (dir-locals-file)
8276         * lisp/files-x.el (modify-dir-local-variable)
8277         * lisp/dos-fns.el (dosified-file-name)
8278         * lisp/help-fns.el (describe-variable): Change accordingly.
8280 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
8282         Fix incompatbilities with MS-Windows 2000 and older
8284         * src/w32.c <multiByteToWideCharFlags>: New global variable.
8285         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
8286         Use it instead of the literal MB_ERR_INVALID_CHARS.
8287         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
8288         appropriate for the underlying OS version.  For details, see
8289         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
8290         * src/w32.h: Declare multiByteToWideCharFlags.
8291         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
8292         (add_tray_notification): Use multiByteToWideCharFlags instead of
8293         the literal MB_ERR_INVALID_CHARS.
8294         (_resetstkoflw_proc): New typedef.
8295         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
8296         pointer, as this function is absent in msvcrt.dll shipped with W2K
8297         and older systems.
8299 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8301         Mention in PROBLEMS an issue with MS-Windows NT4
8303         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
8304         on Windows NT4.  For the details, see
8305         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
8307 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
8309         Ensure 8-byte aligned memory allocation on MS-Windows 9X
8311         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
8312         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
8313         (malloc_after_dump_9x, realloc_after_dump_9x)
8314         (free_after_dump_9x): New functions.  (Bug#22379)  See also
8315         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
8316         for more details about the original problem.
8318         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
8319         (free_after_dump_9x): Add prototypes.
8321 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8323         Fix tests for active region in hideif.el
8325         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
8326         'use-region-p' to test whether to operate on region, instead of
8327         testing 'mark-active'.
8329 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8331         Fix interactive specs in some hideif.el commands
8333         * lisp/progmodes/hideif.el (hif-evaluate-macro)
8334         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
8335         in commands that should only act on the region if it's active.
8337 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
8339         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
8341 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
8343         Enable test selector from command line
8345         * test/automated/Makefile.in: Change variable manipulation to avoid
8346           over-writing selector.
8348 2016-01-15  Alan Mackenzie  <acm@muc.de>
8350         Don't confuse "::" with ":" when trying to parse member initializers.
8352         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
8353         more robustly for ":" token when searching backwards for it.
8355         * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New language
8356         variable.
8358 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
8360         Ensure positive number of glyphs for margins of positive width
8362         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
8363         positive value when a non-zero width of the marginal area was
8364         requested.  (Bug#22356)
8366 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
8368         Fix crashes when mini-window has non-zero margins
8370         * src/window.c (resize_frame_windows): Use 'new_size' to set
8371         minibuffer window's 'total_cols' value, as 'size' might be in
8372         pixels.  (Bug#22356)
8374 2016-01-15  Alan Mackenzie  <acm@muc.de>
8376         In comment-dwim with style `extra-line', respect indent-tabs-mode.
8378         This fixes bug #22369.
8380         * lisp/newcomment.el (comment-make-bol-ws): New function.
8381         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
8383 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
8385         Make 'random' seeds cryptographically secure if possible
8387         * configure.ac: Check for "/dev/urandom".
8389         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
8390         for the seed from "/dev/urandom".
8391         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
8392         * src/fns.c (Frandom): Update the doc string to indicate that
8393         system entropy is used when available.
8394         * src/w32.c: Include wincrypt.h.
8395         (w32_init_crypt_random, w32_init_random): New functions, use the
8396         CryptGenRandom API.
8397         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
8398         * src/w32.h (w32_init_random): Add prototype.
8400         * doc/lispref/numbers.texi (Random Numbers): Document more details
8401         about 't' as the argument to 'random'.
8403         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
8404         strong seed if possible.
8406         (Bug#22202)
8408 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
8410         Unhide the --no-line-directive option to 'etags'
8412         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
8413         option.  (Bug#22306)
8415         * doc/man/etags.1: Document the --no-line-directive option.
8417 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
8419         Fix picture-mode wrt double-width characters
8421         * lisp/textmodes/picture.el (picture-insert): Check the width of
8422         the character being replaced, not just that of the replacement.
8423         (Bug#1808)
8425 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
8427         Honor docstring of gnus-group-get-new-news
8429         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
8430         but non-numeric, unconditionally consider all groups to need updating.
8432 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
8434         Disallow parenthesis in non-pseudo CSS selectors
8436         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
8437         parenthesis in selectors except for in the function notation that
8438         might appear right after a pseudo-class.
8439         * test/indent/scss-mode.scss: Add a test for it.
8441 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
8443         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
8445 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
8447         check-maybe shall run only default tests
8449         * test/automated/Makefile.in (check, check-expensive): Depend on
8450         mostlyclean.
8451         (check-maybe): Re-run only default tests.
8452         (check-doit): Use code of check-maybe.
8453         (mostlyclean): Move *.log files away.
8455 2016-01-14  Mark Oteiza  <mvoteiza@udel.edu>
8457         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
8459 2016-01-14  Dmitry Gutov  <dgutov@yandex.ru>
8461         Un-obsolete tags-loop-continue
8463         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
8464         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
8466 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8468         Document obsoletion of 'intangible' and 'point-entered/left'
8470         * doc/lispref/text.texi (Special Properties): Document the new
8471         properties 'cursor-intangible' and 'cursor-sensor-functions'.
8472         Document the obsolete status of 'intangible', 'pointer-left',
8473         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
8474         * doc/lispref/display.texi (Overlay Properties): Document that
8475         'intangible' overlay property is obsolete.
8477         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
8479 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8481         Updater documentation of 'looking-back'
8483         * doc/lispref/searching.texi (Regexp Search): Update documentation
8484         of 'looking-back'.  Fix markup.
8486 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8488         Document 'pre-redisplay-functions'
8490         * doc/lispref/hooks.texi (Standard Hooks):
8491         * doc/lispref/display.texi (Forcing Redisplay): Document
8492         'pre-redisplay-functions'.
8494 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8496         Document the new deafault value of 'load-read-function'
8498         * doc/lispref/loading.texi (How Programs Do Loading): Document the
8499         change in the default value of 'load-read-function'.
8501 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8503         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
8505         * doc/lispref/nonascii.texi (Text Representations): Document
8506         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
8508 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8510         Document the new prefix-command hooks
8512         * doc/lispref/hooks.texi (Standard Hooks): Document
8513         `prefix-command-echo-keystrokes-functions' and
8514         `prefix-command-preserve-state-hook'.
8516 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
8518         Fix one more misuse of time-stamp-time-zone
8520         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
8521         than the unportable "GMT" for time zone.
8523 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
8525         Fix NNTP NEWGROUPS off-by-a-few-hours bug
8527         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
8528         in Universal Time, since we’re telling the server “GMT”.
8530 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
8532         Update publicsuffix.txt from upstream
8534         * etc/publicsuffix.txt: Update from
8535         https://publicsuffix.org/list/effective_tld_names.dat
8536         dated 2016-01-12 11:52:01 UTC.
8538 2016-01-13  Glenn Morris  <rgm@gnu.org>
8540         Fix some declarations.
8542         * lisp/descr-text.el (internal-char-font):
8543         * lisp/cedet/mode-local.el (xref-item-location):
8544         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
8545         (epg-sub-key-capability, epg-sub-key-validity):
8546         * lisp/international/mule-util.el (internal-char-font):
8547         Fix declarations.
8549 2016-01-13  Glenn Morris  <rgm@gnu.org>
8551         Fix some custom types.
8553         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
8554         * lisp/gnus/gnus.el (gnus-valid-select-methods):
8555         * lisp/mail/rmail.el (rmail-get-coding-function):
8556         * lisp/net/newst-treeview.el (newsticker-groups-filename):
8557         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
8558         * lisp/textmodes/tildify.el (tildify-space-predicates):
8559         * lisp/url/url-tramp.el (url-tramp-protocols):
8560         Fix custom types.
8562 2016-01-13  Glenn Morris  <rgm@gnu.org>
8564         Add some missing version tags.
8566         * lisp/electric.el (electric-quote-comment)
8567         (electric-quote-string, electric-quote-paragraph):
8568         * lisp/epg-config.el (epg-gpgconf-program):
8569         * lisp/rect.el (rectangle-preview):
8570         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
8571         * lisp/emacs-lisp/package.el (package-selected-packages)
8572         (package-hidden-regexps):
8573         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
8574         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
8575         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
8576         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
8577         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
8578         (mml-smime-sign-with-sender, mml2015-always-trust)
8579         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
8580         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
8581         (browse-url-conkeror-arguments):
8582         * lisp/net/newst-reader.el (newsticker-download-logos):
8583         * lisp/progmodes/gud.el (gud-guiler-command-name):
8584         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
8585         * lisp/progmodes/project.el (project-vc):
8586         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
8587         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
8588         (python-shell-completion-native-disabled-interpreters)
8589         (python-shell-completion-native-enable)
8590         (python-shell-completion-native-output-timeout)
8591         (python-shell-completion-native-try-output-timeout):
8592         * lisp/progmodes/xref.el (xref):
8593         * lisp/term/screen.el (xterm-screen-extra-capabilities):
8594         * lisp/term/xterm.el (xterm-max-cut-length):
8595         Add missing version tags.
8597 2016-01-13  Glenn Morris  <rgm@gnu.org>
8599         * test/automated/core-elisp-tests.el
8600         (core-elisp-tests-1-defvar-in-let): Add a custom type.
8602 2016-01-13  Glenn Morris  <rgm@gnu.org>
8604         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
8606         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
8608 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
8610         Merge from gnulib
8612         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
8613         It also updates to the latest version of texinfo.tex.
8614         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
8615         * build-aux/update-copyright, doc/misc/texinfo.tex:
8616         Update from gnulib.
8618 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8620         Update documentation of 'process-running-child-p'
8622         * doc/lispref/processes.texi (Input to Processes): Document the
8623         changes in return value of 'process-running-child-p'.
8625 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8627         Update documentation of 'deactivate-mark'.
8629         * doc/lispref/markers.texi (The Mark): Document that
8630         'deactivate-mark' is now buffer-local when set.
8632 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8634         Update documentation of 'completion-table-dynamic'
8636         * doc/lispref/minibuf.texi (Programmed Completion): Document the
8637         new optional argument to 'completion-table-dynamic'.
8639 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8641         Document changes in 'read-buffer' and 'read-buffer-function'
8643         * doc/lispref/minibuf.texi (High-Level Completion): Document the
8644         4th argument to 'read-buffer' and 'read-buffer-function'.
8646 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
8648         Fix time-stamp-time-zone bugs introduced in July
8650         This fixes a bug introduced when the July changes to
8651         format-time-string installed, as the changes were not
8652         correctly handled in this module (Bug#22302).
8653         Also, document time stamp time zones.
8654         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
8655         (time-stamp--format): New private function.
8656         (time-stamp-string, time-stamp-string-preprocess)
8657         (time-stamp-do-number): Use it.
8658         * doc/emacs/files.texi (Time Stamps): Mention time zones.
8659         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
8661 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8663         Make piping to subprocesses more robust on MS-Windows
8665         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
8666         buffer can hold.  Don't return -1 if something has been written to
8667         the pipe.  Zero out 'errno' before calling '_write', to avoid
8668         returning a stale value.  (Bug#22344)
8669         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
8670         * src/w32.c (pipe2): Use it to request a user-defined size for the
8671         pipe being created.
8673         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
8675         * doc/emacs/msdos.texi (Windows Processes): Document
8676         'w32-pipe-buffer-size'.
8678 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
8680         test/automated/vc-hg.el: Support out-of-tree build
8682         * test/automated/vc-hg.el
8683         (vc-hg-annotate-extract-revision-at-line-with-filename)
8684         (vc-hg-annotate-extract-revision-at-line-with-both):
8685         Don't refer to source-directory.
8686         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
8688 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
8690         Minor change in tramp-tests.el
8692         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
8693         Use `dired-uncache' instead of a Tramp internal function.
8695 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
8697         * etc/HELLO: Add Armenian and Mongolian greetings.
8699         (Bug#22346)
8701 2016-01-11  Alan Mackenzie  <acm@muc.de>
8703         Java Mode: Fontify identifiers in the presence of annotations.
8705         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
8706         Don't move point when the defun fails.
8707         (c-forward-decl-or-cast-1): Correct a usage of match data.
8709         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
8710         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
8711         removed variable.
8713         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
8715 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
8717         Avoid an infloop when we run out of memory
8719         * src/alloc.c (garbage_collect_1): Don't bother saving and
8720         restoring the echo-area message if we are GC'ing after running out
8721         of memory.  This avoids an infloop due to repeated attempts to
8722         allocate memory for the cons cell needed to save the message,
8723         which signals the memory-full error, which attempts to save the
8724         echo-area message, which signals memory-full again, etc.
8726 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
8728         Avoid unnecessary failures of auto-saving after fatal error
8730         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
8731         the benefit of FAT volumes if we are called as part of shutting
8732         down due to a fatal error, which probably means we are trying to
8733         auto-save the session.
8734         * src/lread.c (check_obarray): Don't bother making the obarray
8735         valid if we are shutting down due to a fatal error.  This avoids
8736         interfering with auto-saving the crashed session.
8738 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
8740         Simplify HAVE_MODULES use in mark_maybe_pointer
8742         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
8743         so that later code can use 'if' rather than '#ifdef'.
8744         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
8745         always working.
8747 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
8749         Revert attempt to use 'noexcept' in typedef
8751         This use of 'noexcept' runs afoul of the C++11 standard.
8752         Problem reported by Philipp Stephani in:
8753         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
8754         * src/emacs-module.c (emacs_finalizer_function):
8755         Move this typedef here ...
8756         * src/emacs-module.h: ... from here, and use only the C
8757         version of the typedef.  The typedef is now private since it
8758         is never used in the .h file now and anyway it seemed to be
8759         causing more confusion than it cured.
8760         (make_user_ptr, get_user_finalizer, set_user_finalizer):
8761         Open-code the type instead.
8763 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
8765         Update documentation of 'indirect-function'
8767         * doc/lispref/eval.texi (Function Indirection): Update the
8768         documentation of 'indirect-function'.
8770 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
8772         Update documentation for obsoleting 'syntax-begin-function'
8774         * doc/lispref/syntax.texi (Position Parse): Undocument
8775         'syntax-begin-function' that is now obsolete.
8777 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
8779         Document new features if Eshell
8781         * doc/misc/eshell.texi (Input/Output): Document the new
8782         '#<bufname>' syntax.
8783         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
8784         Disable "Key Index" generation, as there are no @kindex entries in
8785         this manual.
8787 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
8789         Handle too long commands in Tramp
8791         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
8792         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
8793         order to not exceed shell command line limit.
8795         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
8796         (tramp--test-utf8): Include Arabic file name, again.
8798 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
8800         * .gitattributes: *.cur and *.pif are binary files too.
8802 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
8804         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
8806 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
8808         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
8810         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
8811         within $(...).
8812         * test/indent/shell.sh: Add corresponding test.
8814 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
8816         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
8818         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
8819         cast to Lisp_Object.
8821 2016-01-10  Dmitry Gutov  <dgutov@yandex.ru>
8823         Use short date for 'hg annotate', and output the author
8825         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
8826         Change '-d' to '-dq'.  (Bug#21805)
8827         (vc-hg-annotate-switches): Default to "-u" "--follow".
8828         (vc-hg-annotate-re): Update to recognize the short date format
8829         and the optional username.
8830         (vc-hg-annotate-time)
8831         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
8833         * test/automated/vc-hg.el: New file.
8835 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
8837         Spelling fix
8839 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
8841         Document user-level functions in project.el
8843         * lisp/progmodes/project.el (project-find-file)
8844         (project-or-external-find-file): Add doc strings.
8846 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
8848         Document the user-level features of the Xref package
8850         * doc/emacs/maintaining.texi (Maintaining): Add a list of
8851         described features.
8852         (Xref): New section, made out of thoroughly rewritten "Tags"
8853         section.
8854         (Find Identifiers, Looking Up Identifiers, Xref Commands)
8855         (Identifier Search, List Identifiers): New subsections,
8856         incorporating the old tags commands and the new xref commands.
8857         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
8858         Section and subsections demoted to a lower level.
8859         * doc/emacs/search.texi (Search):
8860         * doc/emacs/windows.texi (Pop Up Window):
8861         * doc/emacs/frames.texi (Creating Frames):
8862         * doc/emacs/programs.texi (Imenu, Symbol Completion):
8863         * doc/emacs/building.texi (Grep Searching):
8864         * doc/emacs/dired.texi (Operating on Files):
8865         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
8867 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
8869         * doc/lispref/loading.texi: Add `define-type' entry for load-history
8871         * doc/lispref/loading.texi (Where Defined): Remove incorrect
8872         cl-defmethod description, and add missing define-type entry.
8874 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
8876         Improve doc strings and prompts in xref.el
8878         * lisp/progmodes/xref.el (xref-backend-functions)
8879         (xref-find-definitions): Doc fixes.
8880         (xref-query-replace): Doc fix.  Improve prompts for arguments.
8882 2016-01-09  Alan Mackenzie  <acm@muc.de>
8884         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
8886         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
8887         `font-lock-extend-regions-wholelines' from
8888         `font-lock-extend-region-functions' rather than setting the latter to
8889         nil.
8891 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
8893         Fix coding system for Tramp on OS X.
8895         * lisp/net/tramp-compat.el: Require ucs-normalize.
8897         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
8898         Set coding system to `utf-8-hfs' for Mac OS X.
8900         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
8901         Flush directory properties when needed.
8902         (tramp--test-utf8): Include Chinese file name, again.
8904 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
8906         Update 'load-history' docs
8908         * doc/lispref/loading.texi (Where Defined): Update the list of
8909         forms in 'load-history' by adding the forms created for the
8910         'cl-generic' generics.  (Bug#21422)
8912 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
8914         Fix (error ...) error
8916         Problem reported by Glenn Morris in:
8917         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
8918         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
8919         introduced in my Aug 28 change, where I got confused by the
8920         two meanings of (error ...).
8922 2016-01-08  Alan Mackenzie  <acm@muc.de>
8924         Correctly analyze brace arguments in templated C++ function declarations.
8926         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
8927         POS and LIMIT parameters, like the other c-go-list-* functions have.
8929         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
8930         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
8931         followed by template specifiers.
8933 2016-01-08  Glenn Morris  <rgm@gnu.org>
8935         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
8937         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
8939 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
8941         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
8943 2016-01-08  Alan Mackenzie  <acm@muc.de>
8945         Respect fontification region calculated by major mode.  Fixes bug #22316.
8947         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
8948         fontification region has been calculated by a function on
8949         font-lock-extend-after-change-region-function use this region rather than
8950         changing the end position to somewhere else.
8952 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
8954         Improve documentation of Delete Selection mode
8956         * lisp/delsel.el (delete-selection-mode)
8957         (delete-selection-helper): Update and expand the doc strings.
8958         (Bug#22296)
8960         * doc/emacs/mark.texi (Using Region): Document the behavior of
8961         delete commands in Delete Selection mode.  (Bug#22296)
8963         * doc/lispref/markers.texi (The Mark): Document how to add the
8964         support for Delete Selection mode to Lisp programs. (Bug#22296)
8966 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
8968         Fix two project-find-file issues
8970         * lisp/progmodes/project.el (project--value-in-dir):
8971         Temporarily set enable-local-variables to :all.
8972         (project-find-file, project-or-external-find-file):
8973         All autoloads.
8974         (project--find-file-in): Require xref.
8976 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
8978         Clarify doc string of 'dired-current-directory'
8980         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
8981         the return value might not end in a slash when called with the
8982         optional argument non-nil.  (Bug#6273)
8984 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
8986         Use the face of preceding text for displaying the ellipsis
8988         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
8989         text in it->saved_face_id for displaying the ellipsis, and ignore
8990         the face, if any, of the invisible text.  (Bug#22320)
8992 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
8994         Suppress Chinese file name test for OSX in tramp-tests.el
8996         * test/automated/tramp-tests.el (tramp--test-utf8):
8997         Remove instrumentation.  Suppress Chinese file name test for OSX.
8999 2016-01-08  Glenn Morris  <rgm@gnu.org>
9001         * admin/admin.el (set-version): Also handle the NEWS file.
9003 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
9005         apropos-library: Skip obvious duplicates; don't error on generics
9007         * lisp/apropos.el (apropos-library): Skip "was an autoload"
9008         entries, to avoid obvious duplicates.  For each cl-defmethod
9009         entry, take just its function symbol (bug#21422).
9011 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
9013         Add project-find-file and project-or-external-find-file
9015         * lisp/minibuffer.el (completion-category-defaults):
9016         Add `project-file' category.
9018         * lisp/progmodes/project.el (project-find-file)
9019         (project-or-external-find-file): New commands.
9020         (project--find-file-in): New private function.
9022         * lisp/progmodes/xref.el (xref-collect-matches): Use
9023         `expand-file-name' on DIR, to expand the tildes.
9024         (xref--find-ignores-arguments): Extract from
9025         `xref--rgrep-command'.
9027 2016-01-07  Leo Liu  <sdl.web@gmail.com>
9029         Add defvar-local to lisp-imenu-generic-expression
9031         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
9032           defvar-local.
9034 2016-01-07  Leo Liu  <sdl.web@gmail.com>
9036         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
9038         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
9039           Don't declare (indent 1).
9041 2016-01-07  Glenn Morris  <rgm@gnu.org>
9043         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
9045 2016-01-07  Glenn Morris  <rgm@gnu.org>
9047         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
9049         Avoid specifying the length of a time object (it has not been "2"
9050         for some time).
9052 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
9054         Properly encode/decode base64Binary data in SOAP
9056                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
9057                 base64Binary value as utf-8.
9058                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
9060 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
9062         Obey coding-system-for-write when writing stdout/stderr in batch
9064         * src/print.c (printchar_to_stream):
9065         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
9066         a non-nil value, use it to encode output in preference to
9067         locale-coding-system.  See the discussions in
9068         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
9069         for the details.
9071         * doc/lispref/os.texi (Terminal Output): Document how to send
9072         non-ASCII text via 'send-string-to-terminal'.
9073         (Batch Mode): Document how text written to standard streams is
9074         encoded.  Fix inaccuracy regarding which output streams are used
9075         by output functions in batch mode.
9077 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
9079         * doc/misc/efaq.texi (Packages that do not come with Emacs):
9080         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
9081         <chenggao@royau.me> in
9082         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
9084 2016-01-06  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
9086         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
9088         Fix backslash.  (Bug#22224)
9090 2016-01-06  Federico Beffa  <beffa@ieee.org>  (tiny change)
9092         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
9094         Make it actually work.  (Bug#22265)
9096 2016-01-05  Alan Mackenzie  <acm@muc.de>
9098         Remove function wrongly on AWK Mode value of context fontification hook.
9100         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
9101         swap order of entries so that awk's entry isn't superseded by the default.
9103         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
9104         to handle nil value of c-before-context-fontification-functions.
9106 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
9108         * src/buffer.c: Stick with ASCII in doc string.
9110 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
9112         Reword transient-mark-mode doc string
9114         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
9115         The value 'lambda (literally) can be interpreted as (quote lambda),
9116         which is not intended here; we want just the lambda symbol.
9118 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
9120         Update doc string of 'selective-display'
9122         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
9123         using it with the value of 't' is obsolete.  (Bug#1092)
9125 2016-01-05  Alan Mackenzie  <acm@muc.de>
9127         Make C++ buffers writeable when writing their initial text properties.
9129         This is a correction to yesterday's CC Mode patch.
9131         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
9132         c-save-buffer-state around the function rather than a mere `let'.
9134 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
9136         Additional changes for "make check-expensive"
9138         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
9139         Explain make target `check-expensive'.
9141         * etc/NEWS: Mention new make target `check-expensive'.
9143         * test/automated/Makefile.in (check-doit): New target.
9144         (check, check-expensive): Use it.
9146 2016-01-04  Alan Mackenzie  <acm@muc.de>
9148         Apply text properties for <, > in new after-change function (C++ Java Modes).
9150         These are category/syntax-table properties to give < and > paren syntax.
9151         Also apply certain `c-type' text properties to the insides of <..> constructs
9152         to ensure that identifiers contained by them get fontified.  This patch fixes
9153         bug #681.
9155         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
9156         after-change action.
9158         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
9159         change region to include <s and >s which might not be already marked as
9160         parens, rather than just when paren text properties are removed.
9161         (c-restore-<>-properties): New after-change function, which applies text
9162         properties marking < and > with paren syntax.
9164         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
9165         properties are applied to the interiors of <...> constructs, to ensure
9166         fontification of identifiers there.
9168         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
9169         c-restore-<>-properties to this list for C++ and Java.
9171         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
9172         c-before-font-lock-functions, exclude c-restore-<>-properties from the
9173         functions invoked.
9174         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
9175         to allow modification by before-change functions.
9176         (c-after-change): Amend c-new-END here, rather than initializing it and
9177         c-new-BEG.
9179 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
9181         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
9183 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
9185         Introduce check-expensive tests.
9187         * Makefile.in (check-expensive):
9188         * test/automated/Makefile.in (check-expensive): New target.
9190         * test/automated/auto-revert-tests.el
9191         (auto-revert-test01-auto-revert-several-files):
9192         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
9193         * test/automated/tramp-tests.el (tramp-test26-process-file)
9194         (tramp-test27-start-file-process, tramp-test28-shell-command)
9195         (tramp-test29-vc-registered)
9196         (tramp-test31-special-characters-with-stat)
9197         (tramp-test31-special-characters-with-perl)
9198         (tramp-test31-special-characters-with-ls)
9199         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
9200         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
9201         (tramp-test35-unload): Tag the tests as :expensive-test.
9203 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9205         shr-tag-video bug fix
9207         * shr.el (shr-tag-video): Protect against the `poster' being
9208         empty.
9210 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
9212         Minor fixes in tramp-tests.el
9214         * test/automated/tramp-tests.el (tramp-test26-process-file):
9215         Move point properly.
9216         (tramp-test29-vc-registered): Work with relative file names.
9218 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
9220         Ensure redisplay when 'truncate-lines' is set
9222         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
9223         (Bug#22303)
9225 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
9227         Fix a doc string of 'transient-mark-mode'
9229         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
9230         "lambda" in doc string from becoming a link to lambda expressions.
9232 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
9234         MS-Windows followup to latest gnulib update
9236         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
9238 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
9240         Spelling fix
9242 2016-01-04  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
9244         Do secure signed Bcc handling
9246         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
9247         (bug#18718).
9249 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
9251         Avoid stdio in SIGINT handler
9253         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
9254         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
9255         * lib/ignore-value.h: New file, from gnulib.
9256         * src/keyboard.c: Include it.
9257         (write_stdout, read_stdin): New functions.
9258         (handle_interrupt): Use them instead of printf and getchar,
9259         and avoid fflush when handling signals.
9261 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
9263         * doc/misc/texinfo.tex: Revert unwanted copyright change.
9265 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
9267         * lisp/align.el (align): Simplify a lambda
9269         * lisp/align.el (align): Fix arg order in call to `align-region'
9271 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
9273         Fix compilation next-error in buffers with selective-display
9275         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
9276         function.
9277         (compilation-internal-error-properties)
9278         (compilation-next-error-function, compilation-set-window): Use
9279         it.  (Bug#1092)
9281 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9283         * lisp/net/nsm.el (nsm-check-protocol): Fix typo in the message.
9285 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9287         Add SHA1 warnings for high network security settings
9289         * lisp/net/nsm.el (nsm-check-protocol): When using high security, warn
9290         about SHA1 certificates, which are now believed to be open to
9291         spoofing.
9293 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
9295         Refactor mml-smime.el, mml1991.el, mml2015.el
9297         (Maybe this is the last merge from Gnus git to Emacs git)
9299         Cf. discussion on ding mailing list, messages in
9300         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
9301         Common code from the three files mml-smime.el, mml1991.el, and
9302         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
9303         to gnus-util.el.
9305         The code is supported by test cases with necessary test keys.
9307         Documentation in message.texi is updated.
9309         * doc/misc/message.texi (Security, Using S/MIME):
9310         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
9311         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
9312         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
9314         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
9315         New functions.
9317         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
9318         (epa--select-keys): Autoload.
9319         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
9320         (mml-secure-openpgp-signers): New user option;
9321         make mml1991-signers and mml2015-signers obsolete aliases to it.
9322         (mml-secure-smime-signers): New user option;
9323         make mml-smime-signers an obsolete alias to it.
9324         (mml-secure-openpgp-encrypt-to-self): New user option;
9325         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
9326         aliases to it.
9327         (mml-secure-smime-encrypt-to-self): New user option;
9328         make mml-smime-encrypt-to-self an obsolete alias to it.
9329         (mml-secure-openpgp-sign-with-sender): New user option;
9330         make mml2015-sign-with-sender an obsolete alias to it.
9331         (mml-secure-smime-sign-with-sender): New user option;
9332         make mml-smime-sign-with-sender an obsolete alias to it.
9333         (mml-secure-openpgp-always-trust): New user option;
9334         make mml2015-always-trust an obsolete alias to it.
9335         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
9336         New user options.
9337         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
9338         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
9339         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
9340         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
9341         (mml-secure-passphrase-callback, mml-secure-check-user-id)
9342         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
9343         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
9344         (mml-secure-fingerprint, mml-secure-filter-keys)
9345         (mml-secure-normalize-cust-name, mml-secure-select-keys)
9346         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
9347         (mml-secure-self-recipients, mml-secure-recipients)
9348         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
9350         * lisp/gnus/mml-smime.el: Require epg;
9351         refactor declaration and autoloading of epg functions.
9352         (mml-smime-use): Doc fix.
9353         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
9354         Obsolete.
9355         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
9356         Use format instead of gnus-format-message.
9357         (mml-smime-epg-secret-key-id-list): Remove variable.
9358         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
9359         (mml-smime-epg-find-usable-secret-key): Remove functions.
9360         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
9362         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
9363         (mml1991-passphrase-cache-expiry): Obsolete.
9364         (mml1991-epg-secret-key-id-list): Remove variable.
9365         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
9366         (mml1991-epg-find-usable-secret-key): Remove functions.
9367         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
9369         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
9370         (mml2015-passphrase-cache-expiry): Obsolete.
9371         (mml2015-epg-secret-key-id-list): Remove variable.
9372         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
9373         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
9374         (mml2015-epg-find-usable-secret-key): Remove functions.
9375         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
9376         (mml2015-epg-encrypt): Refactor.
9378 2016-01-02  Glenn Morris  <rgm@gnu.org>
9380         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
9382         Explicitly ignore case.  (Bug#22262)
9384 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
9386         (semantic-symref-derive-find-filepatterns): Return a list
9388         * lisp/cedet/semantic/symref/grep.el
9389         (semantic-symref-derive-find-filepatterns): Return a list.
9390         (semantic-symref-perform-search): Quote the result here once and for all.
9392 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
9394         Fix xref-find-references on MS-Windows
9396         * lisp/cedet/semantic/symref/grep.el
9397         (semantic-symref-derive-find-filepatterns): Use
9398         'shell-quote-argument' instead of manually quoting in a way that
9399         only works with Posix shells.  (Bug#22289)
9401 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
9403         Document new features of tildify-mode
9405         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
9406         (tildify-mode): Spelling fixes in doc strings.
9408         * etc/NEWS: Reformat the tildify-mode entry.
9410 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
9412         Document new features of Whitespace mode
9414         * doc/emacs/display.texi (Useless Whitespace): Document
9415         'whitespace-toggle-options' and the new 'big-indent' style.
9416         Document 'whitespace-big-indent-regexp'.  Document the Global
9417         Whitespace mode.
9419 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
9421         Improve documentation of new Hide-IfDef features
9423         * etc/NEWS: Expand and reword Hide-IfDef section.
9425 2016-01-02  Leo Liu  <sdl.web@gmail.com>
9427         Fix regression in font-locking cl-assert and cl-check-type
9429         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
9430           el-errs-re.
9432 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
9434         Spelling and grammar fixes
9436 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
9438         Fix copyright years by hand
9440         These are dates that admin/update-copyright did not update, or
9441         updated incorrectly.
9443 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
9445         Update copyright year to 2016
9447         Run admin/update-copyright.
9449 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
9451         Merge from gnulib
9453         This mostly just updates copyright dates of gnulib files.
9454         It also updates to the latest version of texinfo.tex.
9456 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
9458         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
9460 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
9462         Port chart.el methods to cl-generic.
9464         cl-call-next-method cannot be used inside EIEIO's defmethod.
9465         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
9466         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
9467         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
9468         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
9469         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
9470         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
9472 2015-12-31  Brian Burns  <bburns.km@gmail.com>
9474         Add nt/INSTALL.W64 build instructions
9476         * nt/INSTALL.W64: New file.
9477         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
9479 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
9481         Add new input method 'programmer-dvorak'
9483         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
9484         input method.
9486         * etc/NEWS: Mention it.
9488 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
9490         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
9492         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
9493         original M-TAB binding in a buffer-local variable.
9494         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
9495         if that is recorded, when point is in a place where flyspell
9496         should not be active (e.g., because the user turned on
9497         'flyspell-prog-mode').  (Bug#18533)
9499 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
9501         Fix EWW rendering of long RTL lines
9503         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
9504         of the selected window before filling its lines.  (Bug#22250)
9506 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
9508         fix  bug#21054
9510         * lisp/ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
9512 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9514         Clean up cairo printing code
9516         * src/gtkutil.c (xg_get_page_setup): Use listn.
9517         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
9518         decode_window_system_frame and FRAME_VISIBLE_P.
9519         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
9520         of Fdisplay.
9521         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
9522         instead of Fdisplay.  Temporarily unblock_input around QUIT.
9524 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9526         Move variables to inner loop, preparing for Mac port merge
9528         * src/keyboard.c (command_loop_1): Move variables `cmd',
9529         `keybuf', and `i' to inner loop.
9531 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9533         Add handle_user_signal_hook
9535         * src/keyboard.h (handle_user_signal_hook): New declaration.
9536         * src/keyboard.c (handle_user_signal_hook): New variable.
9537         (handle_user_signal): Call it.
9539 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9541         Avoid writing to purespace
9543         * src/alloc.c (Fmake_string): Don't write to empty string contents.
9544         (allocate_vector): Don't write to empty vector size.
9545         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
9546         Don't call unnecessary XSETCAR or XSETCDR.
9547         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
9548         write to empty string size_byte.
9550 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9552         Remove unused variable
9554         * lisp/international/mule-cmds.el: Remove unused variable
9555         `mac-system-coding-system'.
9557 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9559         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
9561 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9563         Use posix_openpt instead of openpty on Darwin
9565         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
9566         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
9567         Darwin-specific definitions.  Use posix_openpt instead.
9569 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
9571         Document support for ':documentation' in Lisp mode
9573         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
9574         (lisp-string-after-doc-keyword-p)
9575         (lisp-font-lock-syntactic-face-function): Add doc strings.
9577 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
9579         Document new features of TeX mode
9581         * doc/emacs/text.texi (TeX Print): Document
9582         'tex-print-file-extension'.
9583         * doc/emacs/programs.texi (Misc for Programs): Document support
9584         for Prettify Symbols mode in TeX mode.
9586 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
9588         Clarify docs of hscroll in RTL text
9590         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
9591         meaning of a window's horizontal scroll amount for RTL paragraphs.
9593 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
9595         Fix rendering of HTML pages that use character composition
9597         * src/indent.c (Fvertical_motion): Fix the case when point starts
9598         in the middle of a composition, as in shr-vertical-motion.
9599         (Bug#22250)
9601 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
9603         Avoid some compiler warnings in w32.c
9605         * src/w32.c (codepage_for_filenames, crlf_to_lf)
9606         (ansi_encode_filename, socket_to_fd, sys_write)
9607         (check_windows_init_file): Avoid compiler warnings about
9608         differences in pointer signedness.
9610 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
9612         Undo ill-advised change
9614         * lisp/progmodes/xref.el (xref-collect-matches): Undo
9615         ill-advised change.  The hits come in the order that `find'
9616         produces them in, which isn't alphabetical.
9618 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
9620         Unbreak completion in python-mode buffers
9622         * lisp/progmodes/python.el (python-shell-completion-at-point):
9623         Unbreak in python-mode buffers.
9625 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
9627         Fix typos in CC Mode manual
9629         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
9630         typos.  (Bug#22267)
9632 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
9634         Avoid assertion violations in compact_font_cache_entry
9636         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
9637         avoid assertion violation in ASIZE.  (Bug#22263)
9639 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
9641         Fix filling text with bidirectional characters in shr.el
9643         * lisp/net/shr.el (shr-insert-document): Bind
9644         bidi-display-reordering to nil while filling lines.  This is
9645         required for when a line includes characters whose bidi
9646         directionality is opposite to the base paragraph direction,
9647         because columns are counted in the logical order.  (Bug#22250)
9649 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
9651         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
9653 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
9655         Sync with Tramp 2.2.13
9657         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
9659         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
9660         Use `tramp-compat-funcall'.
9662         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
9663         Make `split-string' call compatible with older Emacsen.
9665         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
9667 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
9669         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
9671 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
9673         Mention that tls.el is secure by default, and will fail
9675 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
9677         Make tls.el use trustfiles by default
9679         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
9680         (open-tls-stream): Insert the trustfile by looking at
9681         `gnutls-trustfiles'.
9683 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
9685         Refactor out gnutls-trustfiles
9687         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
9689 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
9691         Remove --insecure from gnutls-cli invocation
9693         * tls.el (tls-program): Default to using secure TLS
9694         connections (bug#19284).
9696 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
9698         Spelling fix
9700 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
9702         Port report-emacs-bug to deterministic builds
9704         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
9705         recent "built on" change to deterministic builds where
9706         emacs-build-system will be nil.  See:
9707         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
9709 2015-12-29  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
9711         Fix URL auth error message
9713         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
9714         message more correct (bug#20069).
9716 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
9718         shr link traversal fixup
9720         * shr.el (shr-next-link): Don't bug out on adjacent links.
9722         Backport:
9724         (cherry picked from commit 1efc5f8b09273c359683ce13be95fb5df7a84311)
9726 2015-12-28  Tom Tromey  <tom@tromey.com>
9728         set :safe on css-indent-offset
9730         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
9732 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
9734         * eww.el (eww-mode): Remove superfluous bidi reset.
9736 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
9738         Make chunked encoding trailer detection more compliant
9740         * lisp/url/url-http.el
9741         (url-http-chunked-encoding-after-change-function): Make
9742         trailer detection more compliant (bug#16345).
9744 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
9746         Fix Bug#10873 in `report-emacs-bug'
9748         * lisp/mail/emacsbug.el (report-emacs-bug): If
9749         `report-emacs-bug-no-explanations' is nil, make sure we can show
9750         mail and warnings buffer on this frame (Bug#10873).
9752 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
9754         Always reset the bidi direction
9756         * eww.el (eww-display-html): Always reset the bidi direction
9757         to `left-to-right' (bug#22257).
9759 2015-12-28  Alan Mackenzie  <acm@muc.de>
9761         Allow line comments ending with escaped NL to be continued to the next line.
9763         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
9765         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
9766         (forw-comment, back-comment): On encountering an end of comment character,
9767         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
9769         * doc/lispref/syntax.texi (Control Parsing): Describe
9770         `comment-end-can-be-escaped'.
9772         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
9774         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
9776 2015-12-28  Dmitry Gutov  <dgutov@yandex.ru>
9778         Rename project-library-roots to project-external-roots
9780         * lisp/progmodes/project.el (project-library-roots): Rename to
9781         project-external-roots.
9782         (project-library-roots-function): Rename to
9783         project-vc-external-roots-function.  Only use it in the VC
9784         backend, for now.  Update project-external-roots accordingly.
9785         (project-vc-library-roots): Remove.
9786         (project-or-libraries-find-regexp):
9787         Rename to project-or-external-find-regexp.
9789         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
9790         Rename to elisp-load-path-roots.
9792         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
9793         an anonymous function for the default value of
9794         project-vc-external-roots-function.
9796 2015-12-27  Deniz Dogan  <deniz@dogan.se>
9798         Clear erc user list upon disconnection
9800         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
9801         lists upon disconnection.  This prevents invalid channel
9802         user lists when reconnecting (bug#10947).
9804 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
9806         Don't bug out in erc after waking from sleep
9808         * lisp/erc/erc-backend.el (erc-server-send-ping): If the server has
9809         closed connection, this may already have been detected and
9810         `erc-server-last-received-time' has been set to nil (bug#13608).
9812 2015-12-27  David Edmondson  <dme@dme.org>
9814         Proxy error in erc with multiple clients
9816         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
9817         generated when multiple IRC clients talk to a single IRC proxy
9818         (bug#19034).
9820         Backport:
9822         (cherry picked from commit 507e98a54d1aa37823c64993d6b59257a82fe8f4)
9824 2015-12-27  Dima Kogan  <dima@secretsauce.net>
9826         Ensure that we don't have several timers in erc
9828         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
9829         for existing timers in the alist before adding new ones.  If a
9830         timer already exists, it is cancelled and
9831         overwritten. (bug#19292).
9833 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
9835         Fix mml-sec build warnings
9837         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
9838         (bug#18718).
9840         Backport:
9842         (cherry picked from commit 3603097f62f5f4aa5451716e9ac380161f6829e2)
9844 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
9846         Don't insert erc logs at the end
9848         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
9849         at the start of the buffer, not at the end (bug#20496).
9851 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
9853         (eww-setup-buffer): Restore left-to-right defaults
9855         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
9857         Backport:
9859         (cherry picked from commit 96c874b96b617c124d500a94de761a61f2a08685)
9861 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
9863         Don't join erc channels doubly
9865         * lisp/erc/erc-join.el (erc-autojoin-channels): Don't join channels
9866         more than once (if you have several nicks) (bug#20695).
9868 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
9870         Avoid leaving "ghost" of mouse pointer on MS-Windows
9872         * src/w32term.c (frame_set_mouse_pixel_position):
9873         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
9874         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
9875         * src/w32term.c (frame_set_mouse_pixel_position): Include
9876         w32common.h.
9878 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
9880         Fix auth source lookups from erc with port numbers
9882         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
9883         numbers (bug#20541).
9885 2015-12-27  Fran Litterio  <flitterio@gmail.com>
9887         Run erc-kill-channel-hook always on exit
9889         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
9890         when erc-kill-queries-on-quit is set (bug#21187).
9892 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
9894         Spelling fix
9896         * test/automated/url-parse-tests.el:
9897         (url-generic-parse-url/same-document-reference):
9898         Rename from url-generic-parse-url/same-decument-reference.
9900 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
9902         Reword initial *scratch* for brevity, appearance
9904         * lisp/startup.el (initial-scratch-message):
9905         Reword to avoid apostrophes, and to make it shorter.
9906         See the thread starting in:
9907         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
9909 2015-12-26  Leo Liu  <sdl.web@gmail.com>
9911         Add ert-deftest to lisp-mode.el
9913         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression,
9914           lisp-el-font-lock-keywords-1): Add ert-deftest.
9916 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
9918         Mark imap changes as not needing doc changes
9920         * lisp/net/imap.el (imap-ssl-open): Remove
9922 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
9924         Use built-in encryption in imap.el
9926         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
9927         (imap-starttls-open): Use open-network-stream instead of starttls.el.
9928         (imap-tls-open): Use open-network-stream instead of tls.el.
9930 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9932         Don't try using /bin/sh in artist.el on MS-Windows
9934         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
9935         New function.
9936         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
9937         (Bug#20167)
9939 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
9941         Always define gmalloc etc. in src/gmalloc.c
9943         This is a work-around to prevent the compiler from using semantic
9944         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
9945         with -O2 replaces most of calloc's definition by a call to calloc;
9946         see Bug#22085.
9947         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
9948         (aligned_alloc, free): Do not undef.  Instead, define these as
9949         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
9951 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9953         Fix documentation of browse-url browser-related functions
9955         * lisp/net/browse-url.el (browse-url)
9956         (browse-url-default-browser, browse-url-default-windows-browser)
9957         (browse-url-default-macosx-browser, browse-url-chromium)
9958         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
9959         and NEW-WINDOW arguments in these functions.  (Bug#19421)
9961 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
9963         Propagate Bug#14412 fix to backtrace_eval_unrewind
9965         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
9966         becomes accurate again. This shouldn’t affect behavior.
9967         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
9969 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9971         Don't produce non-ASCII characters in *scratch*
9973         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
9974         avoid producing non-ASCII characters in the *scratch* buffer's
9975         commentary.
9977 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9979         Document changes in 'compare-windows'
9981         * lisp/vc/compare-w.el (compare-windows-removed)
9982         (compare-windows-added): Doc fix.
9984         * doc/emacs/files.texi (Comparing Files): Document the changes in
9985         window selection by 'compare-windows'.
9987 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9989         Document 'vc-annotate-background-mode'
9991         * doc/emacs/maintaining.texi (Old Revisions): Document
9992         'vc-annotate-background-mode'.
9994 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9996         Document 'vc-region-history'
9998         * doc/emacs/maintaining.texi (VC Change Log): Document
9999         'vc-region-history'.
10001 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10003         Improve documentation of 'vc-push'
10005         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
10006         improve the documentation of 'vc-push'.
10008         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
10010 2015-12-26  Alain Schneble  <a.s@realize.ch>
10012         Include the tests for the URL parsing fixes
10014 2015-12-26  Alain Schneble  <a.s@realize.ch>
10016         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
10018         * test/automated/url-parse-tests.el: Add tests covering url-generic-parse-url.
10019         * test/automated/url-expand-tests.el: Add tests covering url-expand-file-name.
10020         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
10021         information in URL-struct.
10022         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
10023         path and query into nil path and query, respectively.
10024         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
10025         empty path into an absolute ("/") path.
10026         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
10027         fragment-only URIs. Do not just return them unchanged.
10028         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
10029         reference URI should not drop the last segment.
10031         Backport:
10033         (cherry picked from commit b792ecea1715e080ad8e232d3d154b8a25d2edfb)
10035 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10037         Document 'url-user-agent'.
10039         * lisp/url/url-http.el (url-user-agent): Move from here...
10040         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
10041         keep all the URL defcustoms in one place, and also have it defined
10042         whenever the URL library is loaded.
10044         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
10046 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10048         Document protocols supported by URL library via Tramp
10050         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
10051         supported via Tramp.
10052         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
10053         Tramp.
10055 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10057         Document changes in Shell-script mode
10059         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
10060         the 'sh-shell' file-local variable.
10061         (top level): Add an auto-load form to avoid byte-compiler warning
10062         about 'comint-send-string'.
10064 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10066         Fix documentation of 'ses-define-local-printer'
10068         * doc/misc/ses.texi (Printer functions): Fix whitespace between
10069         sentences and punctuation.  Add an index entry for
10070         'ses-define-local-printer'.
10072 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
10074         Document 'ert-summarize-tests-batch-and-exit'
10076         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
10077         'ert-summarize-tests-batch-and-exit'.
10079 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10081         Avoid assertion violation in unbind_to
10083         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
10084         if we get here with an object that is not a symbol.  (Bug#14412)
10086 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
10088         Don't treat /foo/bar:mumble as ange-ftp address
10090                 * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
10091                 only in the first component.  (bug#5362)
10093 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10095         Follow <meta> redirects in eww
10097         Merge conflict, but I think I resolved it.
10099             Follow meta refresh tags in eww
10101             * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
10103         Backport:
10105 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10107         Allow http://user:pass@foo/ URLs again
10109         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
10110         user/passwords in URLs (bug#19046).
10112         Backport:
10114         (cherry picked from commit b563715a2db265517d5a77f165a42afa1e233fdd)
10116 2015-12-25  Samer Masterson  <samer@samertm.com>
10118         Autoload url-insert-buffer-contents
10120         * lisp/url/url-handlers.el: Add autoload cookie so that
10121         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
10123         Backport:
10125         (cherry picked from commit 7a7b5b492ff9929eecd90c4564db6fbf3b192323)
10127 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
10129         Make sure *scratch* etc. use forward slashes in its default-directory
10131         * lisp/startup.el (normal-top-level): On MS-Windows, convert
10132         backslashes to forward slashes while decoding default-directory
10133         of the initially-created buffers.
10135 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10137         More eww file name coding fixes
10139         * eww.el (eww-decode-url-file-name): Use the base coding
10140         system to check for encodability.
10142         Backport:
10144         (cherry picked from commit a8627008abe4ab339df19b417776da28b3ce0fc7)
10146 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10148         Always save eww history
10150         * eww.el (eww-setup-buffer): Always save history, even when
10151         called from outside the eww buffer (bug#19638).
10153         Backport:
10155         (cherry picked from commit 2a0f18d9b6ce0ccce3d9c4a4a3b5743bae71b41e)
10157 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10159         Default web pages to right-to-left
10161         * eww.el (eww-mode): Most web pages are left-to-right, so make
10162         that the default (bug#19801).
10164         * shr.el (shr-tag-html): Respect "dir" attributes
10165         (left-to-right, right-to-left).
10167         Backport:
10169         (cherry picked from commit 9e089ec8a380ec3758fcf1564c5f86dc92c68c2a)
10171 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10173         Make toggling checkboxes work again
10175         * eww.el (eww-update-field): Make toggling checkboxes work
10176         again (bug#21881).
10178         Backport:
10180         (cherry picked from commit 5e56f606952e5e81b4d3a93ea70e791b74b33041)
10182 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10184         Don't store cookies with empty names
10186         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
10187         cookies with empty names (bug#21936).
10189         Backport:
10191         (cherry picked from commit 9f0fd7cb1aec3eb9e2e0f7b8854c30870286d96c)
10193 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10195         Stop rendering HTML before specdlr exhaustion
10197         Fixes: 22117
10199         * shr.el (shr-descend): Stop rendering before we run out of
10200         specpdl room (bug#22117).
10202         Backport:
10204         (cherry picked from commit 248da292fe46224b0b5a79b632c89cf4de2c2081)
10206 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10208         Use cl-reduce, not reduce.
10210         Backport:
10212         (cherry picked from commit fe4606f93b91ff3d046aee0cf21ecc277af7a786)
10214 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10216         Allow several <tbody> tags in shr
10218         * shr.el (shr-table-body): New function to find the real body
10219         of a table.
10220         (shr-tag-table): Use it to render several <tbody> tags in a
10221         table (bug#22170).
10223         Backport:
10225         (cherry picked from commit cdaf33029d6620073833876d76056045ecfbc7c4)
10227 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10229         Make prettier unique file names in eww
10231         (eww-make-unique-file-name): Make unique file names by making
10232         files like foo(2).jpg instead of foo(1)(2).jpg.
10234         Backport:
10236         (cherry picked from commit edfdd0a6cbdfa9e5e4bd0553e2b489401ca39266)
10238 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10240         Decode hex-encoded URLs before using them as file names
10242         * eww.el (eww-decode-url-file-name): New function.
10243         (eww-download-callback): Use it to decode file names before
10244         saving them.
10246         Backport:
10248         (cherry picked from commit af22a010d87516c2a646572fb27512c03057784f)
10250 2015-12-25  Ashish SHUKLA  <ashish.is@lostca.se>
10252         Add FreeBSD cert bundle
10254         * doc/misc/emacs-gnutls.texi (Help For Users): Document
10255         FreeBSD bundle.
10257         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
10259         Backport:
10261         (cherry picked from commit 60c0f1a18ad88d6dc1a8f4ee5d9d18940eaeb6f7)
10263 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10265         Ignore invalid SVG images
10267         * shr.el (shr-tag-svg): Ignore SVG images that have no width
10268         or height, because these can't be displayed by ImageMagick,
10269         anyway.
10271         Backport:
10273         (cherry picked from commit 821107d53c2e390240d25c036b99ebbf9b4a93b6)
10275 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10277         shr table rendering fix
10279         * shr.el (shr-tag-table): Allow rendering body-less tables
10280         that have headers.
10282         Backport:
10284         (cherry picked from commit b05471e42c17e02c56c87d7599ada0c124a5fe09)
10286 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
10288         Restore info about the build host in bug reports
10290         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
10291         which Emacs was built.  This is important information for
10292         investigating bug reports reported by users who don't build their
10293         Emacs.
10295 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
10297         Fix bootstrap broken by changes related to OS X file-name encoding
10299         * lisp/international/ucs-normalize.el (eval-when-compile): Make
10300         sure char-code-property-alist includes elements that allow access
10301         to 'decomposition' and 'canonical-combining-class' Unicode
10302         properties, as compiling ucs-normalize.el requires that.
10303         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
10304         only of charprop.el was already loaded.
10306         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
10307         New order-only dependency.
10309 2015-12-25  Leo Liu  <sdl.web@gmail.com>
10311         * lisp/ido.el (ido-add-virtual-buffers-to-list): Use bookmark-get-filename.
10313 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
10315         Make tramp-test29-vc-registered more robust
10317         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
10318         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
10319         Remove instrumentation.
10321 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10323         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
10325 2015-12-24  Katsumi Yamaoka  <yamaoka@jpl.org>
10327         Fix `gnus-union' so as to behave like `cl-union'
10329         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
10330         Make gnus-union use `equal' to compare items in lists.
10332         * lisp/gnus/gnus-util.el (gnus-union):
10333         Make it behave like cl-union partially.
10335 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
10337         Fix dired.c typo with ptrdiff_t vs Lisp_Object
10339         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
10340         an integer type, fixing a problem introduced in the recent fix for
10341         Bug#22169.
10343 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
10345         Document default process sentinel more prominently
10347         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
10348         defaults for process filter and sentinel.  Provide cross-references.
10349         (Process Information): Provide cross-references to where filters
10350         and sentinels are described.
10351         (Filter Functions): Add an index entry for "default filter".
10352         (Sentinels): Add a few status messages not documented previously.
10353         Resolve the "killed" confusion.  Document and describe the default
10354         sentinel.  (Bug#22220)
10356 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
10358         Fix file-name completion on OS X
10360         * src/dired.c (file_name_completion): Reject false matches due to
10361         file-name-coding-systems that decompose characters when encoding
10362         file names, by comparing decoded file names as well.  (Bug#22169)
10363         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
10365         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
10366         non-nil 'decomposed-characters' property.
10368 2015-12-23  Anders Lindgren  <andlind@gmail.com>
10370         File-name completion of non-ASCII characters on OS X (bug#22169)
10372         The coding system `utf-8-nfd', locally defined in ns-win.el,
10373         didn't provide a :pre-write-conversion method, causing file name
10374         completion of non-ASCII characters to fail.  Solved by using the
10375         `utf-8-hfs' coding system provided by `ucs-normalize'.
10377         * lisp/loadup.el: Load international/ucs-normalize (when building
10378         for ns).
10380         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
10381         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
10382         as the file name coding system.
10384         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
10386 2015-12-23  Tom Tromey  <tom@tromey.com>
10388         Fix bug #18588 by making bug-reference-bug-regexp more lenient
10390         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
10391         "bug NNNN".  (Bug #18588)
10393 2015-12-23  Tom Tromey  <tom@tromey.com>
10395         add some cl-* aliases to lisp-mode imenu
10397         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
10398         cl-defgeneric, and cl-defmethod.
10400 2015-12-22  Tom Tromey  <tom@tromey.com>
10402         Make a variable buffer-local
10404         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
10405         font-lock-syntax-table buffer-local.  (Bug #21627)
10407 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
10409         Fix decoding of text in URLs retrieved by EWW
10411         * lisp/net/eww.el (eww-render): Pass 'charset' to
10412         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
10413         non-nil, to set 'buffer-file-coding-system' of the buffer where we
10414         show the URL.
10415         (eww-display-html, eww-display-raw): Decode the text correctly,
10416         using the charset found in the headers, and defaulting to UTF-8.
10417         If the user told us to use a specific encoding, override the
10418         charset from the headers.  (Bug#22222)
10420 2015-12-22  Alan Mackenzie  <acm@muc.de>
10422         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
10424         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
10425         variable `tmp'.
10426         After a failed search for a matching ">", restore point before continuing.
10428 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
10430         Instrument Tramp tests
10432         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
10433         (tramp--test-utf8): Instrument tests.
10435 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
10437         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
10439         * lisp/simple.el (display-message-or-buffer): Call
10440         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
10441         (Bug#22221).
10443 2015-12-22  Juri Linkov  <juri@linkov.net>
10445         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
10447         (save-places-to-alist, save-place-dired-hook):
10448         Check for dired-subdir-alist.  (Bug#19851)
10450 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10452         Add FIXME comment re stack overflow and modules
10454 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10456         Revert some recent emacs-module commentary
10458         Most of the recently-added commentary was incorrect, due to the
10459         possibility of stack overflow.
10461 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10463         Spelling fix: prefer "cooperate" to "co-operate"
10465 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10467         Port undo fixes to -fno-common
10469         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
10470         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
10471         (buffer_before_last_command_or_undo):
10472         Declare in keyboard.h, and define in keyboard.c,
10473         instead of assuming the traditional Unix relaxed ref-def linkage.
10475 2015-12-20  Philipp Stephani  <phst@google.com>
10477         Improve commentary for emacs-module.c
10479         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
10480         * src/emacs-module.c (module_non_local_exit_get): Document that we
10481         cannot use the current implementation.
10482         (module_is_not_nil, module_eq): Document assumptions about EQ and
10483         NILP.
10485 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
10487         Suppress test on Mac OS X
10489         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
10490         (tramp--test-utf8): Use it.
10492 2015-12-20  Alan Mackenzie  <acm@muc.de>
10494         Merge branch 'scratch/follow' into emacs-25
10496         This allows Isearch, etc., to work well when Follow Mode is active.
10498 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
10500         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option): Improve check.
10502 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10504         Fix last commit
10506         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
10507         with numeric argument.
10509 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10511         Document new features of Rmail
10513         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
10514         Document new behavior of 'd' and 'C-d' with numeric argument.
10515         (Rmail Display): Document the rendering of HTML MIME parts.
10517 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10519         Improve documentation of new cl-lib functions
10521         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
10522         Fix wording.
10524 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10526         Document the new feature of 'minibuffer-with-setup-hook'
10528         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
10529         added to `minibuffer-setup-hook'.
10531 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10533         Document new features of Font Lock
10535         * doc/lispref/modes.texi (Other Font Lock Variables): Document
10536         'font-lock-flush-function' and 'font-lock-ensure-function'.
10537         (Font Lock Basics): Document the basic fontification functions
10538         referenced in "Other Font Lock Variables".
10540         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
10542 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10544         Document new features of Rectangle mode
10546         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
10547         rectangle-mark-mode.
10549 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10551         Manual followup to last change
10553         * doc/lispref/display.texi (Displaying Messages): Sync with the
10554         doc string.  (Bug#22210)
10556 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10558         Clarify doc string of 'display-message-or-buffer'
10560         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
10561         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
10563 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10565         * doc/emacs/emacs.texi (Top): Update top-level menus.
10567         * doc/lispref/elisp.texi (Top): Update top-level menus.
10569 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10571         Document how to avoid file-local variables that aren't
10573         * doc/emacs/custom.texi (Specifying File Variables): Describe how
10574         to prevent Emacs from interpreting unrelated text as file-local
10575         variables.  (Bug#22166)
10577 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
10579         Fix a typo in eterm-color's termcap entry
10581         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
10582         entry.  (Bug#22184)
10584 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10586         Allow 'browse-url-emacs' visit non-existent URLs
10588         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
10589         signal an error if VISIT is non-nil, to more faithfully emulate
10590         the behavior of 'insert-file-contents'.  (Bug#22160)
10592 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
10594         Remove SunOS 4.x cruft
10596         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
10597         * lib-src/pop.c [sun]: Remove no-longer-needed include.
10598         * lwlib/xlwmenu.c (SUNSO41): Remove.
10600 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
10602         Merge from gnulib
10604         This mostly commentary fixes.
10605         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
10606         * lib/gnulib.mk: Regenerate with new gnulib-tool.
10608 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
10610         Minor fixes in Tramp
10612         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
10613         Reorder ls arguments.
10615         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
10617 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
10619         Make tramp a built-in package
10621         * lisp/finder.el (finder-compile-keywords): Update
10622         `package--builtins' also when Version: keyword is available.
10624         * lisp/net/trampver.el: Add Version: keyword.
10625         (tramp-version): Change it to "2.2.13.25.1", in order to be
10626         compatible with `version-to-list'.
10628 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
10630         * etc/tutorials/TUTORIAL.it: Update and fix typos.
10632 2015-12-18  Alan Mackenzie  <acm@muc.de>
10634         Rename `recenter-group' to `recenter-window-group'
10636         * doc/lispref/windows.texi (Textual Scrolling)
10637         * lisp/window.el (top level, recenter-group)
10638         * lisp/follow.el (follow-mode)
10639         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
10640         `recenter-window-group' and `recenter-group-function' to
10641         `recenter-window-group-function'.
10643 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
10645         Fix vertical-motion in tabulated-list mode
10647         * src/indent.c (Fvertical_motion): When moving from line beginning
10648         to point under line truncation, assume overshoot by one line only
10649         if point actually lies beyond the window's right margin.
10650         (Bug#22194)
10652 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
10654         Don't have help functions call x-display-pixel-width/-height on ttys
10656         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
10657         Don't call x-display-pixel-width/-height on ttys.
10659 2015-12-18  Dmitry Gutov  <dgutov@yandex.ru>
10661         Use 'hg id' in vc-hg-previous-revision
10663         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
10664         Use 'hg id' to retrieve it (bug#22032).
10666 2015-12-17  Alan Mackenzie  <acm@muc.de>
10668         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
10670 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
10672         Fix a typo in the Emacs manual
10674         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
10675         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
10677 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
10679         Fix parsing netrc entries with ports
10681         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
10682         make a list out of 't'.  (Bug#22188)
10684         * test/automated/auth-source-tests.el
10685         (auth-source-test-netrc-parse-entry): New test.
10687 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
10689         Fix typo in Doug Lea malloc configure log
10691         * configure.ac (emacs_cv_var_doug_lea_malloc):
10692         Fix typo that confused the log output of 'configure'.
10694 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
10696         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
10698 2015-12-16  Alan Mackenzie  <acm@muc.de>
10700         * etc/NEWS: Move entry on pcase to correct section
10702         (Accidentally omitted from previous commit)
10704 2015-12-16  Alan Mackenzie  <acm@muc.de>
10706         Add documentation for changes to Show Paren mode.
10708         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
10710         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
10711         options, including the new show-paren-when-point-inside-paren and
10712         show-paren-when-point-in-periphery.
10714         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
10715         Move an entry on pcase to the Lisp Changes section.
10717 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
10719         Document Eldoc changes
10721         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
10723 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
10725         Fix invocation of Python and Guile interpreters from gdb-mi
10727         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
10728         commands for interactive Python and Guile interpreters.
10729         (gdb-send): Recognize various ways of exiting from Python and
10730         Guile interpreters and returning to GDB.  For details, see
10731         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
10732         and http://stackoverflow.com/questions/31514741.
10734 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
10736         Remove attempt to use C11 threads
10738         C11 threads are not needed for Emacs now, and their use is causing
10739         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
10740         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
10741         * configure.ac: Do not check for C11 threads. Remove unnecessary
10742         fiddling with CPPFLAGS when configuring pthreads.
10743         * src/emacs-module.c (main_thread, check_main_thread)
10744         (module_init): Do not worry about C11 threads.
10746 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
10748         Set utf8 encoding with stty in Tramp
10750         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
10751         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
10752         encoding with stty.
10754 2015-12-15  Alan Mackenzie  <acm@muc.de>
10756         Tidy up documentation associated with window groups.
10758         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
10759         Groups".  Correct example function to `window-group-start'.
10760         (Window Start and End, Textual scrolling): Point to the new anchor.  State
10761         that (most of) the args in window group functions have the same meaning as for
10762         the corresponding window primitives.
10764         * doc/lispref/positions.texi (Screen Lines).  Same as above.
10766 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
10768         Complete last commit
10770         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
10771         Move uname check up.  Handle Mac OS X eol encoding.
10773 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
10775         Handle Mac OS X eol encoding in Tramp
10777         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
10778         Handle Mac OS X eol encoding.
10780 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10782         Fix variable name typo in compute_tip_xy
10784         * src/w32fns.c (compute_tip_xy):
10785         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
10786         when `right' is integer.
10788 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>
10790         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
10792 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
10794         Revert "Fix rx matcher overflow without limiting"
10796         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
10798 2015-12-14  Alan Mackenzie  <acm@muc.de>
10800         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
10802         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
10803         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
10805 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
10807         Fix rx matcher overflow without limiting
10809         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
10810         change to the regexp without imposing a limit on the length of the
10811         options.
10813 2015-12-14  Alan Mackenzie  <acm@muc.de>
10815         Enhance ispell-skip-region-alist by generating part of it at runtime.
10817         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
10818         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
10819         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
10820         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
10821         Include the result of ispell--make-filename-or-URL-re in regexps.
10823 2015-12-14  Glenn Morris  <rgm@gnu.org>
10825         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
10827 2015-12-14  Alan Mackenzie  <acm@muc.de>
10829         Replace GROUP argument in six window primitives by new functions.
10831         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
10832         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
10833         from description of six window functions.  Add in description of new functions
10834         window-group-start, window-group-end, set-window-group-start,
10835         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
10836         together with the six variables indirecting to the pertinent group
10837         functions.
10839         * src/window.c
10840         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
10841         applies to these two files, which added the GROUP argument to six window
10842         primitives.
10844         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
10845         functions.
10847         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
10848         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
10849         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
10850         to window primitives (e.g. window-start) with a GROUP argument by calls to
10851         new functions (e.g. window-group-start).
10853         * lisp/ispell.el (ispell-command-loop): Replace call to
10854         pos-visible-in-window-p with pos-visible-in-window-group-p.
10856         * lisp/window.el (window-group-start, window-group-end)
10857         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
10858         (selected-window-group, move-to-window-group-line): New functions.
10859         (window-group-start-function, window-group-end-function)
10860         (set-window-group-start-function, recenter-group-function)
10861         (pos-visible-in-window-group-p-function, selected-window-group-function)
10862         (move-to-window-group-line-function): New variables.
10864 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
10866         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
10868 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
10870         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
10872 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
10874         Improve regex to not trigger stack overflow
10876         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
10877         order not to trigger a stack overflow in regex matcher with unbalanced
10878         brackets (bug#22146).
10880 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
10882         Fix visiting files with raw-text
10884         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
10885         when some stuff was actually read.  (Bug#22162)
10887 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
10889         Fix regex matching keyval labels
10891         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
10892         matching keyval labels.
10894 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
10896         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
10898         ... in case of Tramp.  (Bug#20821)
10900 2015-12-13  Paul Eggert  <eggert@cs.ucla.edu>
10902         Fix performance regression with gcc -O0
10904         This fixes the smaller performance hit that I noted in:
10905         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
10906         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
10907         * src/puresize.h (puresize_h_PURE_P)
10908         (puresize_h_CHECK_IMPURE):
10909         New macros, with the old contents of the functions.
10910         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
10911         * src/puresize.h (PURE_P, CHECK_IMPURE):
10912         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
10913         * src/conf_post.h (ATTRIBUTE_UNUSED):
10914         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
10916 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
10918         * lisp/emacs-lisp/package.el (package-unpack): Security check
10920         Check that we received the package we were offered.
10922 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
10924         * lisp/emacs-lisp/package.el (package--compile): Don't activate
10926         `package-unpack' takes care of all activations now (other than
10927         `package-initialize).  `package--compile' now only compiles.
10929 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10931         Document the new bindings of <UP> and <DOWN> in the minibuffer
10933         * doc/emacs/mini.texi (Minibuffer History): Describe the new
10934         bindings of <UP> and <DOWN> in the minibuffer.
10936 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10938         Document new features of Ido
10940         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
10942 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
10944         Fix frame height calculations with added menu bar on Windows (Bug#22105)
10946         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
10947         when simultaneously specifying multiple parameters for
10948         `modify-frame-parameters' that all may change the frame's size.
10949         * src/w32fns.c (x_set_menu_bar_lines): Don't set
10950         windows_or_buffers_changed here.
10951         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
10952         with third argument false.
10953         * src/w32menu.c (set_frame_menubar): Set
10954         windows_or_buffers_changed here.
10955         * src/w32term.c (x_set_window_size): Determine third argument of
10956         AdjustWindowRect from whether the frame has a menu bar and not
10957         from whether it wants one.
10959 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10961         Document the change in interactive shell mode
10963         * doc/emacs/misc.texi (Interactive Shell): Document that the
10964         '*shell*' buffer by default displays in a new window.
10966 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10968         Document new features of package.el
10970         * doc/emacs/package.texi (Package Menu): Document the 'external'
10971         status and the new menu commands.
10972         (Package Installation): Document archive priorities.
10974         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
10975         (package-menu-hide-low-priority): Doc fix.
10977 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10979         Update and document new features of xterm support
10981         * doc/emacs/frames.texi (Text-Only Mouse): Document that
10982         track-mouse is supported by newer xterm versions.
10984 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10986         Document new features of Prettify Mode
10988         * doc/emacs/programs.texi (Misc for Programs): Document
10989         'prettify-symbols-compose-predicate' and
10990         'prettify-symbols-unprettify-at-point'.
10992         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
10993         (prettify-symbols-default-compose-p)
10994         (prettify-symbols-compose-predicate)
10995         (prettify-symbols--compose-symbol): Doc fixes.
10997 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10999         Document multi-mode indentation facilities
11001         * doc/lispref/text.texi (Mode-Specific Indent): Document
11002         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
11004         * lisp/progmodes/prog-mode.el (prog-indentation-context)
11005         (prog-widen): Doc fixes.
11007 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11009         Document 'vc-refresh-state'
11011         * doc/emacs/maintaining.texi (Version Control): Document
11012         'vc-refresh-state'.
11014         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
11016 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11018         Fix echo for "C-u"
11020         * src/keyboard.c (command_loop_1): Undo last change.  It caused
11021         duplicate echo of C-u.  (Bug#22107)
11023 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11025         Avoid errors when creating files under SVN in new directory
11027         * lisp/vc/vc-svn.el (vc-svn-registered): Use
11028         file-accessible-directory-p, to avoid cd'ing to a non-existing
11029         directory, which signals an error on some systems.  (Bug#21984)
11030         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
11031         Use declare-function to avoid byte-compiler warnings.
11033 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11035         Improve Lua support in etags
11037         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
11038         "function".
11040         * etc/NEWS: Mention improved Lua support by 'etags'.
11042         * test/etags/lua-src/test.lua (test): Add tests for indented
11043         function definitions.
11044         * test/etags/ETAGS.good_1:
11045         * test/etags/ETAGS.good_2:
11046         * test/etags/ETAGS.good_3:
11047         * test/etags/ETAGS.good_4:
11048         * test/etags/ETAGS.good_5:
11049         * test/etags/ETAGS.good_6:
11050         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
11052 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11054         Fix 'this-command-keys' wrt prefix argument
11056         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
11057         was part of this-command-keys, but not of this-single-command-keys.
11058         (Bug#22107)
11060         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
11061         commentary about the function's return value.
11063 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11065         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
11067 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11069         Improve and document Ruby support in 'etags'
11071         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
11072         (Ruby_functions): Support "module" and overloaded operators.
11073         (Ruby_help): Mention "module".
11075         * test/etags/ruby-src/test.rb:
11076         * test/etags/ruby-src/test1.ru: New files.
11077         * test/etags/Makefile (RBSRC): New tests.
11078         (SRCS): Add ${RBSRC}.
11079         * test/etags/ETAGS.good_1:
11080         * test/etags/ETAGS.good_2:
11081         * test/etags/ETAGS.good_3:
11082         * test/etags/ETAGS.good_4:
11083         * test/etags/ETAGS.good_5:
11084         * test/etags/ETAGS.good_6:
11085         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
11087         * doc/man/etags.1: Mention Ruby support.
11088         * etc/NEWS: Mention Ruby support.
11090 2015-12-11  Xi Lu  <lx@shellcodes.org>
11092         Initial support for Ruby in 'etags'
11094         * lib-src/etags.c <Ruby_suffixes>: New variable.
11095         (lang_names): Add an entry for Ruby.
11096         (Ruby_functions): New function.  (Bug#22116)
11098 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11100         Clarify documentation of 'modify-frame-parameters'
11102         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
11103         PARMs" mean for 'modify-frame-parameters'.
11105         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
11106         PARMs" mean for this function.  (Bug#22104)
11108 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11110         Fix setting buffer unibyte when reading from a device
11112         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
11113         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
11115 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11117         Clarify documentation of 'values'
11119         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
11120         updated by any evaluation commands in 'lisp-interaction-mode'.
11121         (Bug#22056)
11123 2015-12-11  Anders Lindgren  <andlind@gmail.com>
11125         Fixed subversion vc error when opening file in new directory (bug#21984).
11127         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
11129 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
11131         Yet another fix for when point ends up in invisible text
11133         * src/xdisp.c (redisplay_window): When someone forced
11134         window-start, and honoring that failed to show the cursor, try
11135         moving out of invisible text, before falling back to the middle of
11136         the window.  (Bug#22098)
11138 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
11140         Fix error in Tramp perl script for cygwin
11142         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
11143         error if file doesn't exist.
11145 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11147         Remove font workaround for limited outdated versions
11149         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
11150         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
11152 2015-12-09  Anders Lindgren  <andlind@gmail.com>
11154         Don't add "." to load path (bug#21104)
11156         When configured with --enable-locallisppath=no, which is the
11157         default for OS X, the load-path incorrectly was populated with ".".
11159         * src/lread.c (init_lread): Don't call `decode_env_path' when
11160         PATH_SITELOADSEARCH is empty.
11162 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
11164         * lisp/emacs-lisp/package.el (package--with-response-buffer):
11166         Search for the blank-line in the right buffer.
11168 2015-12-08  Glenn Morris  <rgm@gnu.org>
11170         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
11171         for recent change.
11173 2015-12-08  Glenn Morris  <rgm@gnu.org>
11175         Fix some display-warning usage.
11177         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
11178         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
11179         * lisp/calendar/holidays.el (calendar-holiday-list):
11180         * lisp/mail/rmailout.el (rmail-output-read-file-name):
11181         Fix display-warning usage.
11183 2015-12-08  Glenn Morris  <rgm@gnu.org>
11185         * lisp/calendar/cal-html.el: Require diary-lib.
11187         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
11189 2015-12-08  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11191         Add Obsolete-since header to eudcb-ph.el
11193         * lisp/obsolete/eudcb-ph.el: Add Obsolete-since header.
11195 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
11197         Spelling fixes
11199         * doc/misc/calc.texi (Predefined Units): Use the bland modern
11200         scientific style for spelling the units “ampere” and
11201         “angstrom” rather than the older style “Ampere” and
11202         “Ångstrom”.  The latter spelling was wrong anyway (it should
11203         have been “Ångström”).
11204         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
11205         Fix misspelling of ‘atom’ in code.
11207 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
11209         Improve documentation of kill commands
11211         * lisp/simple.el (region-extract-function, delete-backward-char)
11212         (delete-forward-char, kill-region, copy-region-as-kill)
11213         (kill-ring-save): Better document the optional argument REGION in
11214         the doc strings.  Mention in the doc strings that text put in the
11215         kill-ring can be filtered by 'filter-buffer-substring'.
11217         * doc/lispref/text.texi (Kill Functions): Mention that functions
11218         described in this subsection can filter text they put in the
11219         kill-ring.  Add a cross-reference to "Buffer Contents" and an
11220         index entry.  Document the optional argument 'region' and its
11221         effect.
11222         (Bug#21315)
11224 2015-12-07  Alan Mackenzie  <acm@muc.de>
11226         Further progress making Isearch, Ispell, Replace work with Follow Mode.
11228         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
11229         no longer exists.  Add follow-post-command-hook to  three special purpose
11230         hooks at setup, and remove them at tear down.
11232         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
11233         isearch-lazy-highlight-new-loop.
11234         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
11235         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
11236         it.
11237         (isearch-lazy-highlight-maybe-new-loop): function removed.
11239         * lisp/replace.el: (replace-update-post-hook): New hook variable.
11240         (perform-replace): Add second (nil) argument to looking-back.  Invoke
11241         replace-update-post-hook before calling replace-highlight.
11243         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
11244         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
11245         call of pos-visible-in-window-p.
11246         (ispell-display-buffer): Place *Choices* window at the top of the last window
11247         in a window group.
11249 2015-12-07  Alan Mackenzie  <acm@muc.de>
11251         Amend doc of `mapconcat': it can take sequences, not merely strings.
11253         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
11254         to say that SEPARATOR and the results from FUNCTION may be any character
11255         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
11257 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
11259         Fix an utf8 problem for Tramp on BSD
11261         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11262         Make lax check for utf8.
11263         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
11265 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11267         Make eudcb-ph.el obsolete
11269         * doc/misc/eudc.texi: Bump version to 1.40.0.
11270         Remove PH/QI sections and mentions.
11271         * lisp/obsolete/eudcb-ph.el: Make obsolete.
11272         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
11273         (eudc-ph-bbdb-conversion-alist): Make obsolete.
11274         * etc/NEWS: Mention this.  (Bug#21191)
11276 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
11278         Remove overenthusiastic eassert
11280         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
11281         previous change.  It breaks on MS-Windows --with-wide-int.
11282         Problem reported by Eli Zaretskii in:
11283         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
11285 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11287         Pacify gcc -Wparentheses
11289         * src/xdisp.c (row_containing_pos): Reparenthesize.
11291 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11293         Port mod-test to 32-bit Emacs --without-wide-int
11295         * modules/mod-test/test.el (mod-test-sum-test):
11296         Bring back the 2**29 tests, but port them to 32-bit Emacs
11297         --without-wide-int.
11299 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
11301         Fix minor Tramp problems found on BSD
11303         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
11304         trailing slash.  Quote apostrophes.
11305         (tramp-sh-handle-file-truename): Do not append trailing slash in
11306         the "ls" case.
11307         (tramp-get-ls-command-with-w-option): New defun.
11308         (tramp-do-file-attributes-with-ls)
11309         (tramp-do-directory-files-and-attributes-with-stat): Use it.
11311         * test/automated/tramp-tests.el
11312         (tramp-test31-special-characters-with-perl)
11313         (tramp-test31-special-characters-with-ls)
11314         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
11315         Suppress also readlink.
11317 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
11319         Fix cursor display when invisible text is at line beginning
11321         * src/xdisp.c (redisplay_window): When scrolling fails to show
11322         point, prefer using the desired matrix if possible for finding the
11323         fallback glyph row for displaying the cursor.  (Bug#22098)
11324         (row_containing_pos): Exit the loop as soon as we hit the first
11325         disabled glyph row.  Otherwise we risk accessing garbled data and
11326         departing to the no-no land.
11328 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11330         Improve module interface when WIDE_EMACS_INT
11332         * src/emacs-module.c (plain_values): New constant.
11333         (module_nil): Now a constant.
11334         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
11335         (syms_of_module): Use if, not #ifdef, so that both sides are
11336         checked at compile-time, and so that GCC doesn’t complain
11337         about an unused var in the typical case.  Also, depend on
11338         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
11339         that WIDE_EMACS_INT implies !USE_LSB_TAG.
11340         (value_to_lisp_bits, lisp_to_value_bits): New functions.
11341         Sign-extend integers rather than zero-extending them, as small
11342         negative integers are more likely.
11343         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
11344         functions.
11345         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
11346         (mark_modules): Remove.  All uses removed.
11347         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
11348         to GCALIGNMENT.
11349         (syms_of_module): Check that module_nil converts to Qnil.
11350         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
11351         we prefer signed to unsigned when either will do.
11352         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
11353         a bit better for emacs-module.c.
11355 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11357         Port mod-test to x86-64 GNU/Linux running 32-bit
11359         * modules/mod-test/test.el (mod-test-sum-test):
11360         Don’t attempt to match descriptions to operating systems.
11361         It didn’t work on Fedora x86-64 running a 32-bit executable,
11362         and it’s not worth the trouble anyway.
11363         Port to 32-bit platforms by removing an assumption about
11364         fixnum widths.
11366 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
11368         Fix auto-revert-tests.el when filenotify isn't used
11370         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
11371         Make it working also when filenotify isn't used.
11373 2015-12-06  Juri Linkov  <juri@linkov.net>
11375         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
11377         Let-bind isearch-regexp-function to nil.  (Bug#22097)
11379 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
11381         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
11383         (package--with-response-buffer): NOERROR and ERROR-FORM only
11384         handle connection errors.
11385         (bad-signature): New error type.
11386         (package--check-signature-content): Use it.
11387         (package--check-signature): Properly distinguish connection errors
11388         from bad-signature errors.  Do the check for
11389         `package-check-signature' `allow-unsigned' here instead of forcing
11390         the callbacks to do it.  Add a new argument, UNWIND.
11391         (package--download-one-archive, package-install-from-archive):
11392         Update usage of `package--check-signature'.
11394 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
11396         Fix Bug#22092.
11398         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
11399           Clean up inconsistent line endings. (Bug#22092)
11400           (icalendar--clean-up-line-endings): New.
11401         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
11402           for Bug#22092.
11404 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11406         Document 'bookmark-set-no-overwrite'
11408         * doc/emacs/regs.texi (Bookmarks): Document the new command
11409         'bookmark-set-no-overwrite' and its keybinding.
11411 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11413         Document new binding of 'mouse-buffer-menu'
11415         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
11416         now also on C-F10.
11418 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11420         Initial documentation of dynamic modules
11422         * doc/lispref/loading.texi (Dynamic Modules): New section with
11423         initial documentation for dynamic modules.
11424         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
11425         detailed menu
11427         * etc/NEWS: Fix typos in dynamic modules' entry.
11429 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
11431         Remove copyright statements from trivial test files
11433 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11435         Add "Preliminaries" section to etc/DEBUG
11437         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
11438         Most of the content was suggested by Phillip Lord
11439         <phillip.lord@russet.org.uk>.  Remove the section about debugging
11440         with the Visual Studio, as building Emacs with the Microsoft
11441         compilers is no longer supported.  Minor fixes in some other
11442         sections.
11444 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
11446         Improve parsing of version strings
11448         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
11449         (version-to-list): More helpful error messages.
11450         (version-to-list): ".5" is valid (update docstring).  Make
11451         "22.8X3" invalid, as the doc string says.
11453         * test/automated/subr-tests.el (ert-test-version-parsing): New
11454         tests for version string processing.
11456 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11458         Fix documentation of 'undo' changes
11460         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
11461         English conventions for spelling and whitespace between sentences.
11463         * etc/NEWS: Fix wording and spelling of undo-related entries.
11464         Mark them as documented.
11466 2015-12-05  Glenn Morris  <rgm@gnu.org>
11468         * lisp/net/net-utils.el: Small improvements.
11470         (net-utils--executable-find-sbin): New function.
11471         (ifconfig-program): Check sbin directories.
11472         Fallback to "ip".  (Bug#22091)
11473         (ifconfig-program-options): Check the actual program in use.
11474         (arp-program): Check sbin directories.
11476 2015-12-04  (tiny change) Arash Esbati  <esbati@gmx.de>  (tiny change)
11478         Fix wrong-type-argument integer-or-marker-p nil error
11480         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
11481         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
11483 2015-12-04  Alan Mackenzie  <acm@muc.de>
11485         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
11487         Merge necessitated by a rebase operation.
11489 2015-12-04  Alan Mackenzie  <acm@muc.de>
11491         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
11493 2015-12-04  Alan Mackenzie  <acm@muc.de>
11495         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
11497         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
11498         Windows" and new @defun selected-window-group.
11499         (Window Start and End): Describe new &optional parameter GROUP and
11500         ...-group-function for window-start, window-end, set-window-start, and
11501         pos-visible-in-window-p.
11502         (Textual Scrolling) Describe the same for recenter.
11503         doc/lispref/positions.texi (Screen Lines): Describe the same for
11504         move-to-window-line.
11506         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
11507         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
11508         new optional parameter "group".  At the beginning of each, check whether the
11509         corresponding ...-group-function is set to a function, and if so execute this
11510         function in place of the normal processing.
11511         (syms_of_window): Define symbols for the six new variables below.
11512         (window-start-group-function, window-end-group-function)
11513         (set-window-start-group-function, recenter-group-function)
11514         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
11515         New permanent local buffer local variables.
11516         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
11517         Fpos_visible_in_window_p.
11519         lisp/window.el (selected-window-group-function): New permanent local buffer
11520         local variable.
11521         (selected-window-group): New function.
11523         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
11524         enable, kill them at mode disable.  Add/remove follow-after-change to/from
11525         after-change-functions.
11526         (follow-start-end-invalid): New variable.
11527         (follow-redisplay): Manipulate follow-start-end-invalid.
11528         (follow-after-change, follow-window-start, follow-window-end)
11529         (follow-set-window-start, follow-pos-visible-in-window-p)
11530         (follow-move-to-window-line, follow-sit-for): New functions.
11532         lisp/isearch.el (isearch-call-message): New macro.
11533         (isearch-update, with-isearch-suspended, isearch-del-char)
11534         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
11535         (with-isearch-suspended): Rearrange code such that isearch-call-message is
11536         invoked before point is moved.
11537         (isearch-message): Add comment about where point must be at function call.
11538         (isearch-search): Remove call to isearch-message.
11539         (isearch-lazy-highlight-window-group): New variable.
11540         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
11541         the battery of tests to ...
11542         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
11543         Note: (sit-for 0) is still called.
11544         (isearch-lazy-highlight-update): Check membership of
11545         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
11546         property.
11547         (isearch-update, isearch-done, isearch-string-out-of-window)
11548         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
11549         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
11550         (isearch-lazy-highlight-update): Call the six amended primitives (see
11551         src/window.c above) with the new `group' argument set to t, to cooperate
11552         with Follow Mode.
11554 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
11556         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
11558         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
11559         (ert--explain-format-atom, ert--explain-equal-rec)
11560         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
11561         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
11563 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
11565         * lisp/character-fold.el: Remove special case-folding support
11567         (character-fold-to-regexp): Remove special code for
11568         case-folding.  Char-fold search still respects the
11569         `case-fold-search' variable (i.e., f matches F).  This only
11570         removes the code that was added to ensure that f also matched
11571         all chars that F matched.  For instance, after this commit, f
11572         no longer matches 𝔽.
11574         This was necessary because the logic created a regexp with
11575         2^(length of the string) redundant paths.  So, when a very
11576         long string "almost" matched, Emacs took a very long time to
11577         figure out that it didn't.  This became particularly relevant
11578         because isearch's lazy-highlight does a search bounded by (1-
11579         match-end) (which, in most circumstances, is a search that
11580         almost matches).  A recipe for this can be found in bug#22090.
11582 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
11584         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
11586         Fixes (bug#21701)
11588 2015-12-04  Daiki Ueno  <ueno@gnu.org>
11590         lisp/gnus/qp.el: Don't replace "from " at bol
11592         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
11593         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
11595 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
11597         Externalize some symbols in undo-auto
11599          * doc/lispref/text.texi: Update symbols.
11600          * lisp/simple.el (undo-auto--amalgamate,
11601            undo-auto--current-boundary-timer): Make symbols public.
11602          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
11603            updated symbol.
11605 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
11607         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
11609 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
11611         Some error message improvements in tramp-sh.el
11613         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11614         Suppress error messages for "mesg" and "biff" calls.
11615         (tramp-get-remote-path): Ignore errors when expanding
11616         `tramp-own-remote-path'.  Raise a warning instead.
11618 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11620         Document 'nacl' value for 'system-type'
11622         * doc/lispref/os.texi (System Environment): Document the 'nacl'
11623         value of 'system-type'.
11625 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11627         Document 'window-max-chars-per-line'
11629         * doc/lispref/windows.texi (Window Sizes): Document
11630         'window-max-chars-per-line'.
11632 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11634         Fix some file headers for the purpose of `package--builtins'
11636         * lisp/emacs-lisp/cl-preloaded.el
11637         * lisp/emacs-lisp/eieio-compat.el
11638         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
11640         * lisp/ielm.el: Fix summary line.
11642 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11644         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
11646         Reload any previously loaded package files before compiling
11647         the package (also reload the same files after compiling).
11648         This ensures that we have the most recent definitions during
11649         compilation, and avoids generating bad elc files when a macro
11650         changes and it is used in a different file from the one it's
11651         defined in.
11653 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11655         * lisp/emacs-lisp/package.el: Refactor package activation code
11657         (package-activate): Move code that activates dependencies into
11658         package-activate-1.
11659         (package--load-files-for-activation): New function.
11660         (package-activate-1): Add code for (optionally) activating
11661         dependencies, and move file-loading code into
11662         `package--load-files-for-activation'.
11664 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11666         Document new font-related functionality
11668         * doc/lispref/display.texi (Low-Level Font): Document
11669         'default-font-width', 'default-font-height', 'window-font-width',
11670         and 'window-font-height'.
11672         * etc/NEWS: Move entries for 'default-font-width',
11673         'default-font-height', 'window-font-width', and 'window-font-height'
11674         to their place and mark them documented.
11676 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11678         Fix documentation and implementation of 'directory-name-p'
11680         * lisp/files.el (directory-name-p): Modify to recognize
11681         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
11682         accordingly.  Use '=', not char-equal, for comparison, as
11683         letter-case cannot possibly be an issue here.
11685         * doc/lispref/files.texi (Directory Names): Move the documentation
11686         of directory-name-p here from "Relative File Names".  Update the
11687         description per the changes in implementation.
11689         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
11690         place and mark it documented.
11692 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
11694         Minor copyedit in Emacs manual
11696         * doc/emacs/search.texi (Lax Search): Make wording about character
11697         folding by default less definitive.  (Bug#22043)
11699 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
11701         More emacs-module.c fixes for wide ints
11703         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
11704         unsigned data types to manipulate pointers, to avoid sign
11705         extension coming after us with a vengeance.
11707         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
11708         Emacs with wide ints that verify integer values near the critical
11709         value that requires us to switch to a cons cell.
11711 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
11713         Fix bug#22069 in cl-generic.el
11715         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
11716         not run thru `format'.
11718 2015-12-02  Dmitry Gutov  <dgutov@yandex.ru>
11720         APPEND etags--xref-backend to xref-backend-functions
11722         * lisp/progmodes/xref.el (xref-backend-functions):
11723         Use APPEND when adding the default element
11724         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
11726 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
11728         More accurate documentation of lax whitespace matching
11730         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
11731         (word-search-backward, word-search-forward)
11732         (word-search-backward-lax, word-search-forward-lax): Mention in
11733         doc strings that toggling lax whitespace matching has no effect on
11734         these commands.
11736         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
11737         lax whitespace matching has no effect on these commands.
11739 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
11741         Fix emacs-module.c for wide ints
11743         * src/emacs-module.c (lisp_to_value): Compare the produced value
11744         with the original Lisp object, not with the one potentially
11745         converted into a Lisp_Cons.  Fixes assertion violations when
11746         working with integers larger than fit into a 32-bit value.
11748         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
11749         large integers, to test --with-wide-int.
11751 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
11753         Document 'directory-files-recursively'
11755         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
11756         the argument MATCH to REGEXP, to be more explicit about its form.
11758         * doc/lispref/files.texi (Contents of Directories): Improve the
11759         documentation of 'directory-files-recursively'.  Add
11760         cross-references.
11762         * etc/NEWS: Move the entry for 'directory-files-recursively' to
11763         its place and mark it documented.
11765 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
11767         Document 'inhibit-read-only' property
11769         * doc/lispref/text.texi (Special Properties): Describe the new
11770         'inhibit-read-only' text property.  Add cross-reference to where
11771         read-only buffers are described.
11772         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
11773         'inhibit-read-only' property exempts text from being read-only.
11774         Add cross-reference to "Special Properties".
11776         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
11777         its place and mark it documented.
11779 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
11781         * lisp/emacs-lisp/package.el: Update header comments
11783 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
11785         * lisp/character-fold.el: Add back multi-char matching
11787         (character-fold-to-regexp): Uncomment recently commented code
11788         and make the algorithm "dummer" by not checking every possible
11789         combination.  This will miss some possible matches, but it
11790         greatly reduces regexp size.
11792         * test/automated/character-fold-tests.el
11793         (character-fold--test-fold-to-regexp): Comment out test of
11794         functionality no longer supported.
11796 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
11798         * doc/emacs/ack.texi (Acknowledgments): Update.
11800 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
11802         Check `file-remote-p' over absolute files names in files.el
11804         * lisp/files.el (directory-files-recursively)
11805         (get-free-disk-space): Check `file-remote-p' over absolute files names.
11807 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
11809                 * src/lread.c (syms_of_lread): Doc fix.
11811 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
11813         Don't mistake certain JS method calls for keywords
11815         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
11816         Braceless keyword can't come after a period (bug#22063).
11818 2015-12-01  David Reitter  <david.reitter@gmail.com>
11820         Read frame_title_format from buffer-local variable for NS port
11822         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
11823         icon-title-format variables from buffer in appropriate window.
11824         (Bug#22048)
11826 2015-12-01  Juri Linkov  <juri@linkov.net>
11828         * lisp/replace.el (occur-engine): Count matches in empty lines.
11830         (Bug#22062)
11832 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
11834         * src/emacs-module.h: Fix finalizer typedef for C++11
11836         C++11 standard doesn't allow exception-specification in typedef.
11837         The workaround is to declare a dummy function prototype and use
11838         decltype on it.
11840 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
11842         Fix last change
11844         * src/emacs-module.c (lisp_to_value, value_to_lisp)
11845         [WIDE_EMACS_INT]: Avoid compiler warnings.
11847 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
11849         Rely on conservative stack scanning to find "emacs_value"s
11851         * src/emacs-module.c (struct emacs_value_tag)
11852         (struct emacs_value_frame, struct emacs_value_storage): Remove.
11853         (value_frame_size): Remove constant.
11854         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
11855         (lisp_to_value): Remove first arg.
11856         (module_nil): New constant.
11857         Use it instead of NULL when returning an emacs_value.
11858         (module_make_function): Adjust to new calling convention of
11859         Qinternal_module_call.
11860         (DEFUN): Receive args in an array rather than a list.
11861         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
11862         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
11863         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
11864         Adjust to new type of non_local_exit info.
11865         (ltv_mark) [WIDE_EMACS_INT]: New constant.
11866         (value_to_lisp, lisp_to_value): Rewrite.
11867         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
11868         (allocate_emacs_value): Remove function.
11869         (mark_modules): Gut it.
11870         (initialize_environment): Don't initialize storage any more.
11871         Keep the actual env object on Vmodule_environments.
11872         (finalize_environment): Don't finalize storage any more.
11873         (syms_of_module): Initialize ltv_mark and module_nil.
11875         * src/emacs-module.h (emacs_value): Make it more clear that this type
11876         is really opaque, including the fact that NULL may not be valid.
11878         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
11879         Don't assume that NULL is a valid emacs_value.
11881 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
11883         Yet another doc improvement for search commands
11885         * doc/emacs/search.texi (Word Search, Symbol Search)
11886         (Regexp Search): Document commands that don't support lax
11887         whitespace matching or character folding.
11888         (Nonincremental Search): Mention the search commands that can be
11889         invoked from the menu bar.
11891         * lisp/isearch.el (isearch-define-mode-toggle-word)
11892         (isearch-define-mode-toggle-symbol)
11893         (isearch-define-mode-toggle-character-fold): Note in the doc
11894         string that turning these on exits the regexp mode.
11895         (isearch-forward-regexp, isearch-forward-word)
11896         (isearch-forward-symbol, isearch-backward-regexp)
11897         (word-search-backward, word-search-forward)
11898         (word-search-backward-lax, word-search-forward-lax): State in the
11899         doc string which commands don't support character folding and/or
11900         lax-whitespace matching.
11902 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
11904         Run `window-size-change-functions' also when reading from minibuffer
11906         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
11907         also when reading from minibuffer.
11909 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
11911         Fix scrambling of html-rendered item buffers
11913         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
11914           scrambling of contents by wrapping call to html-renderer in
11915           save-selected-window.
11917 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
11919         Fix font typo in previous doc fix.
11921 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
11923         A bit more security doc, esp. file local vars
11925         * doc/emacs/emacs.texi (Top):
11926         * doc/emacs/misc.texi (Miscellaneous Commands):
11927         Refer to new Host Security section.
11928         (Host Security): New section.
11929         * doc/lispref/os.texi (Security Considerations):
11930         Mention file local variables.
11932 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11934         * lisp/character-fold.el: Comment out branching code
11936         (character-fold-to-regexp): Comment out code that uses multi-char
11937         table.  The branching caused by this induces absurdly long regexps,
11938         up to 10k chars for as little as 25 input characters.
11940 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
11942         Spelling and grammar fixes
11944 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
11946         Make lisp-completion-at-point a wrapper instead of an alias
11948         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
11949         Turn into an obsolete wrapper around elisp-completion-at-point
11950         (bug#20455).
11952 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11954         * lisp/isearch.el (isearch-search-fun-default): Nicer error
11956         message when the search fails.
11958 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
11960         Update menu-bar-goto-uses-etags-p for the current xref API
11962         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
11963         xref-backend-functions, instead of now-nonexistent
11964         xref-find-function.
11966 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11968         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
11970 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11972         * lisp/menu-bar.el: Use folding in searches
11974         (nonincremental-search-forward): Use `isearch-search-fun-default'
11975         to determine the search function.
11976         (nonincremental-search-backward)
11977         (nonincremental-repeat-search-forward)
11978         (nonincremental-repeat-search-backward): Use it.
11980 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11982         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
11984 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11986         * lisp/character-fold.el (character-fold-to-regexp): Be careful
11988         not to return huge regexps.
11990 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
11992         Improve documentation of string-collate-* functions
11994         * doc/lispref/strings.texi (Text Comparison): Improve wording and
11995         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
11997         * etc/NEWS: Move the entry of 'string-collate-equalp' and
11998         'string-collate-lessp' to "Lisp Changes" section and mark it as
11999         documented.
12001 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
12003         Document truncate-string-ellipsis
12005         * doc/lispref/display.texi (Size of Displayed Text): Document
12006         'truncate-string-ellipsis'.
12008         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
12009         (truncate-string-to-width): Mention in the doc string that the
12010         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
12012         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
12013         Changes" section.
12015 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
12017         Fix confusion wrt character folding in the Emacs manual
12019         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
12020         Document that invoking search-forward/backward and
12021         re-search-forward/backward supports only case folding, but not the
12022         rest of the lax-search features.  Reported by Mike Kupfer
12023         <m.kupfer@acm.org>.
12025 2015-11-29  Ken Brown  <kbrown@cornell.edu>
12027         Update mod-test-sum-test
12029         * modules/mod-test/test.el (mod-test-sum-test): Update to
12030         accommodate the lack of dladdr on Cygwin.
12032 2015-11-29  Alan Mackenzie  <acm@muc.de>
12034         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
12036         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
12037         to `funcall', (i) Output an error message; (ii) Generate code to signal a
12038         `wrong-number-of-arguments' error.
12040 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
12042         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
12044 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12046         * lisp/character-fold.el (character-fold-to-regexp)
12048         Warn about using long strings.
12050         * test/automated/character-fold-tests.el
12051         (character-fold--test-lax-whitespace)
12052         (character-fold--test-consistency): Reduce string size for tests.
12054 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12056         Document renaming of x-select-enable-* variables
12058         * doc/emacs/killing.texi (Clipboard): Rename
12059         x-select-enable-clipboard to select-enable-clipboard and
12060         x-select-enable-primary to select-enable-primary.  Update index
12061         entries.
12063         * etc/NEWS: Mark entry as documented.
12065 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12067         Document the shorthand hints displayed by M-x
12069         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
12070         suggest-key-bindings.  Document the shorthand hints for commands
12071         that have no key bindings.  Document that M-x completion ignores
12072         obsolete commands.
12074         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
12075         documented.
12077 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12079         Update docs of character folding
12081         * doc/emacs/search.texi (Lax Search): Update the description of
12082         character folding for the latest changes.
12084 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12086         * lisp/character-fold.el: Also play nice with case-folding
12088         (character-fold-to-regexp): Take `case-fold-search' into account.
12090 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12092         * lisp/character-fold.el: Add support for multi-char matches
12094         (character-fold-table): Now has an extra-slot. This is a second
12095         char-table that holds multi-character matches.  See docstring for
12096         details.
12097         (character-fold-to-regexp): Can build branching regexps when a
12098         character's entry the extra slot of `character-fold-table' matches the
12099         characters that succeed it.
12101 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12103         * lisp/character-fold.el: Code simplifications
12105         (character-fold-table): Reduce the scope of a variable.
12106         (character-fold-to-regexp): Change logic to work directly on the
12107         input string.  It's a little easier to understand, probably
12108         faster, and sets us up for implementing multi-char matches.
12110         * test/automated/character-fold-tests.el
12111         (character-fold--test-fold-to-regexp): New test.
12113 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12115         Document changes in "C-h l"
12117         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
12119         * etc/NEWS: mark "C-h l" changes as documented.
12121 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12123         Finalize documentation of 'custom-prompt-customize-unsaved-options'
12125         * doc/emacs/custom.texi (Saving Customizations): Index the new
12126         function 'custom-prompt-customize-unsaved-options'.
12128         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
12129         is useful.
12131 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12133         Document 'comment-line'
12135         * doc/emacs/programs.texi (Comment Commands): Document
12136         'comment-line'.
12138         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
12140 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12142         Document new checkdoc features
12144         * doc/lispref/tips.texi (Tips, Library Headers): Document the
12145         keyword-checking features of checkdoc and the commands
12146         'checkdoc-file' and 'checkdoc-current-buffer'.
12148         * etc/NEWS: Move the checkdoc-related entries to their own
12149         section.
12151 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
12153         Simplify the prologue of emacs-module.c functions
12155         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
12156         (module_make_global_ref)
12157         (module_free_global_ref, module_make_function, module_funcall)
12158         (module_intern, module_type_of, module_extract_integer)
12159         (module_make_integer, module_extract_float, module_make_float)
12160         (module_copy_string_contents, module_make_string)
12161         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
12162         (module_get_user_finalizer, module_set_user_finalizer)
12163         (module_vec_set, module_vec_get, module_vec_size): Use new helper
12164         macro MODULE_FUNCTION_BEGIN.
12166 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12168         Don't reject module calls with no arguments
12170         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
12172 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
12174         Make module-call be visible from Lisp
12176         * src/emacs-module.c (module_make_function): Use internal--module-call.
12177         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
12178         checks.
12179         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
12180         defsubr internal--module-call.
12182 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12184         Add etags tests for the recent Lua-related bugfix
12186         * test/etags/lua-src/test.lua: New file, tests the issues raised
12187         by bug#21934.
12188         * test/etags/Makefile (LUASRC): Add test.lua.
12189         * test/etags/ETAGS.good_1:
12190         * test/etags/ETAGS.good_2:
12191         * test/etags/ETAGS.good_3:
12192         * test/etags/ETAGS.good_4:
12193         * test/etags/ETAGS.good_5:
12194         * test/etags/ETAGS.good_6:
12195         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
12196         regression fix, resolved around 25 May 2015, required changes to
12197         the "good" ETAGS files.
12199 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12201         Fix Lua tags when a function name includes '.' or ':'
12203         * lib-src/etags.c (Lua_functions): Add a tag for the last element
12204         of a function name after a dot or a colon.  (Bug#21934)
12206 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12208         Improve documentation of search and replace commands
12210         * doc/emacs/search.texi (Replacement and Lax Matches): Document
12211         which commands are affected by 'replace-character-fold'.
12212         (Lax Search): Add a cross reference to "Replacement and Lax
12213         Matches".  Improve wording.  Fix lost extra whitespace.
12214         (Search Customizations): Improve wording.  (Bug#22036)
12215         See also comments in
12216         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
12218         * lisp/replace.el (query-replace, query-replace-regexp)
12219         (query-replace-regexp-eval, replace-string, replace-regexp):
12220         Mention 'replace-character-fold' in the doc strings.
12222 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
12224         Fix minor problems found by static checking
12226         * src/undo.c (prepare_record): Add proper prototype for C.
12228 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12230         * src/emacs-module.c (struct env_storage): Delete
12232         (struct emacs_runtime_private): Keep an emacs_env instead.
12233         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
12234         (initialize_environment): Split the arg in two.  Adjust all callers.
12235         Only store the private part in Vmodule_environments.
12236         (finalize_environment): Change the arg to only be the private env.
12237         Adjust all callers.
12239 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12241         Improve documentation of 'replace-character-fold'
12243         * lisp/replace.el (replace-character-fold): Clarify which commands
12244         are affected by this variable.
12246 2015-11-27  Mark Oteiza  <mvoteiza@udel.edu>
12248         Backport: Add interactive seek command.
12250         * lisp/mpc.el (mpc-cmd-seekcur): New function.
12251         (mpc-seek-current): New command.
12252         (mpc-mode-menu): Add entry for mpc-seek-current
12253         (mpc-mode-map): Bind mpc-seek-current to "g"
12255 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
12257         Autoload etags when using its xref backend
12259         * lisp/progmodes/xref.el (xref--etags-backend):
12260         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
12261         (Bug#22026)
12263 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
12265         * lisp/character-fold.el: Allow complex chars to match their decomposition
12267         (character-fold-table): When a character's decomposition does not
12268         involve a formatting tag (i.e., if it has an "exact" description via
12269         other characters), then this character is allowed to match the
12270         decomposition.
12272 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
12274         * lisp/character-fold.el: More descriptive variable names
12276         (character-fold-table): Rename a lot of the lexical variables to
12277         make the code easier to read.
12279 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
12281         * lisp/isearch.el: Ensure we still support `isearch-new-word'
12283         (isearch-new-regexp-function): Define variable.
12284         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
12286 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12288         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
12290 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
12292         * test/automated/abbrev-tests.el: Define more tests
12294         (abbrev-table-name-test, kill-all-abbrevs-test)
12295         (clear-abbrev-table-test): New tests.
12297 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12299         Add module tests for wrong-type-argument
12301         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
12302         wrong-type-argument.
12304 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12306         Improve handling of signals and 'throw' in modules
12308         * src/emacs-module.c: Add commentary explaining how to write
12309         functions in this file.
12310         (module_make_global_ref, module_free_global_ref)
12311         (module_non_local_exit_signal, module_non_local_exit_throw)
12312         (module_make_function, module_funcall, module_intern)
12313         (module_type_of, module_is_not_nil, module_eq)
12314         (module_extract_integer, module_make_integer)
12315         (module_extract_float, module_make_float)
12316         (module_copy_string_contents, module_make_string)
12317         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
12318         (module_get_user_finalizer, module_set_user_finalizer)
12319         (module_vec_set, module_vec_get, module_vec_size)
12320         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
12321         Do nothing and return with failure indication immediately, if some
12322         previous module call signaled an error or wants to throw.  See
12323         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
12324         for the relevant discussions.
12326 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12328         Add ':version' tag to 'checkdoc-package-keywords-flag'
12330         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
12331         Add a ':version' tag.
12333 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12335         Improve documentation of 'eval-buffer' and 'eval-region'
12337         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
12339         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
12340         "accessible portion of buffer".
12342 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12344         Unbreak the Cygwin w32 build
12346         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
12347         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
12349 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12351         Improve commentary in character-fold.el
12353         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
12354         description from commit log message to comments.  (Bug#22019)
12356 2015-11-26  Alan Mackenzie  <acm@muc.de>
12358         Byte Compiler: generate code to adjust stack count after call to `signal'.
12360         Corrects change from earlier today.
12362         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
12363         `byte-compile--for-effect' as argument to `byte-compile-form'.
12365 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
12367         Improve commentary of prepare_to_modify_buffer_1
12369         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
12370         that this function runs Lisp.  Suggested by Richard Stallman
12371         <rms@gnu.org>.
12373 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
12375         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
12377 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
12379         Fix regression after merge.
12381          * src/undo.c (prepare_record): Remove call to run_undoable_change.
12383 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
12385         After delete, record point location in undo.
12387         Addresses Bug #21968.
12389                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
12390                 better support intercalating calls.
12391                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
12392                 point and current buffer before each command.
12393                 * src/undo.c (record_point): Now only record the point.
12394                 * src/undo.c (prepare_record): Functionality removed form
12395                 record_point.
12396                 * src/undo.c (record_delete): Check if point needs recording.
12397                 * src/undo.c (undo-boundary): Record value of point before each
12398                 boundary.
12399                 * test/automated/simple-test.el: New tests.
12401         Conflicts:
12402                 src/undo.c
12404 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
12406         Fix compiler warnings in w32.c
12408         * src/w32.c (sys_socket): In case of error, use -1 as return
12409         value, not INVALID_SOCKET, which causes compiler warnings.
12410         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
12411         to the appropriate function signature, to avoid compiler errors.
12412         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
12414 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
12416         Check if the file exists on disk before producing the revert diff
12418         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
12419         exists on disk (bug#20558).
12421 2015-11-26  Alan Mackenzie  <acm@muc.de>
12423         Byte compiler: on setq with an odd number of arguments, generate a `signal'
12425         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
12426         it has an odd number of arguments, to allow bytecomp to handle the error.
12428         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
12429         odd number of arguments, generate a `signal' instead of the normal code.
12431 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
12433         Use find-tag-default for xref-backend-identifier-at-point
12435         * lisp/progmodes/etags.el (find-tag-tag)
12436         (tags-completion-at-point-function): Extract common code as
12437         find-tag--default.
12438         (xref-backend-identifier-at-point): Define in terms of the new
12439         function.
12441 2015-11-26  Paul Eggert  <eggert@cs.ucla.edu>
12443         * src/undo.c (record_property_change): Remove now-unused local.
12445 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
12447         run_undoable_changes now called from insdel.
12449         The original calls from inside undo.c are not always at a safe position
12450         to call lisp, as they originate in varied positions within insdel.c.
12451         Calling them directly from prepare_to_modify_buffer_1 ensures that they
12452         are always run at the same point.
12454          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
12455          and symbol used.
12456          * src/insdel.c (run_undoable_changes): Add function and symbol.
12458 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
12460         Improve and update documentation of search commands
12462         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
12463         all references changed.  Move the description of lax-whitespace
12464         here.  Add description of the new character folding features and
12465         additional customizable options.
12466         (Isearch Yank): Move before "Error in Search".
12467         (Basic Isearch): Improve wording.  Add index entries.  Add short
12468         description of how to abandon search, making this subsection a
12469         complete introduction to search basics.
12470         (Repeat Isearch): Add index entries.  Describe additional
12471         customizable options.  Describe mouse clicks.
12472         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
12473         area.  Describe more customizable options.
12474         (Error in Isearch): Add index entries.
12475         (Special Isearch): Move actual description of some isearch
12476         commands to other sections, leaving here just the summary of the
12477         commands.  Add command that toggles character folding.  Describe
12478         commands, like "C-h C-h", that were previously omitted for some
12479         reason.
12480         (Not Exiting Isearch): Describe search-exit-option.  Add index
12481         entries.
12482         (Word Search): Describe eww-search-word and eww-search-prefix.
12483         (Symbol Search): Add index entries.
12484         (Regexp Search): Describe regexp-search-ring-max.
12485         (Replacement and Lax Matches): Renamed from "Replacement and
12486         Case"; all references changed.  Describe lax-whitespace matching
12487         in replace commands and related options.  Describe character
12488         folding in replace commands and related options.
12489         (Query Replace): Describe query-replace-from-to-separator and the
12490         new history features.  Add index entries for highlighted text.
12491         Describe query-replace-skip-read-only.  Describe more keys
12492         accepted by query-replace.
12493         (Other Repeating Search): More index entries for Occur.  Describe
12494         list-matching-lines-default-context-lines.
12495         (Search Customizations): New section, documents customizable
12496         options that were not documented until now.
12497         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
12498         "Character Folding".
12500         * etc/NEWS: Move search- and replace-related entries to a single
12501         parent section.
12503         * lisp/replace.el (query-replace-show-replacement): Doc fix.
12504         * lisp/isearch.el (search-nonincremental-instead)
12505         (isearch-hide-immediately): Doc fixes.
12507 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
12509         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
12511         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
12512         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
12513         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
12515 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
12517         Fix module_format_fun_env when dynlib_addr fails
12519         * src/emacs-module.c (module_format_fun_env):
12520         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
12521         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
12523 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
12525         Disambiguate variable help a bit better
12527         * lisp/help-fns.el (describe-variable): Quote the
12528         variable’s value if it is a symbol other than t or nil.
12529         See: T.V Raman in:
12530         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
12532 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
12534         Pass SVN commit message through log-edit-extract-headers
12536         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
12537         log-edit-extract-headers (bug#18954).
12539 2015-11-24  Alan Mackenzie  <acm@muc.de>
12541         CC Mode: Eliminate compiler warning messages.
12543         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
12544         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
12545         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
12546         (c-awk-set-syntax-table-properties): Clarify comments about
12547         `font-lock-syntactic-keywords'.
12549         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
12550         of this before the real (interpreted) one, to satisfy the byte compiler.
12552 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
12554         Extend the test suite for json.el
12556         * lisp/json.el (json-plist-p): Clarify docstring.
12558         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
12559         macro.
12560         (test-json-join, test-json-alist-p)
12561         (test-json-plist-p, test-json-advance, test-json-peek)
12562         (test-json-pop, test-json-skip-whitespace)
12563         (test-json-read-keyword, test-json-encode-keyword)
12564         (test-json-read-number, test-json-encode-number)
12565         (test-json-read-escaped-char, test-json-read-string)
12566         (test-json-encode-string, test-json-encode-key)
12567         (test-json-new-object, test-json-add-to-object)
12568         (test-json-read-object, test-json-encode-list)
12569         (test-json-read-array, test-json-encode-array)
12570         (test-json-read, test-json-read-from-string)
12571         (test-json-encode): New tests.
12572         (json-read-simple-alist): Merged into `test-json-read-object'.
12573         (json-encode-string-with-special-chars): Merged into
12574         `test-json-encode-string'.
12575         (json-read-string-with-special-chars): Split into
12576         `test-json-encode-string' and `test-json-read-from-string'.
12578 2015-11-24  Anders Lindgren  <andlind@gmail.com>
12580         Fixed bug#18283: Enable applescript in NextStep.
12582         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
12584 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12586         Allow completion on dynamic module files in load-library
12588         * lisp/files.el (load-library): Bind completion-ignored-extensions
12589         to nil, to allow completion on dynamic modules typed as file
12590         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
12592 2015-11-24  Alan Mackenzie  <acm@muc.de>
12594         CC Mode: eliminate almost all byte compilation warnings
12596         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
12597         (cc-require): Remove the crude hack that saved and restored
12598         byte-compile-noruntime-functions.
12599         (cc-conditional-require, cc-conditional-require-after-load): New macros.
12601         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
12602         cc-fix.el using the new macros in cc-bytecomp.el.
12604         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
12605         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
12606         forms to remove the superflous quotes.
12608 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12610         Add one more mod-test test
12612         * modules/mod-test/test.el (mod-test-sum-test): Test the error
12613         signaled when the function is invoked with a wrong number of
12614         arguments.
12616 2015-11-24  Philipp Stephani  <phst@google.com>
12618         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
12620 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12622         Implement dynlib_addr for MS-Windows
12624         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
12625         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
12626         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
12627         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
12628         if undefined.
12629         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
12630         zero.
12631         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
12632         the full file name of the module for a given address.
12634 2015-11-24  Alan Mackenzie  <acm@muc.de>
12636         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
12638 2015-11-24  Alan Mackenzie  <acm@muc.de>
12640         Squashed commit of the following:
12642         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
12643         Author: Alan Mackenzie <acm@muc.de>
12644         Date:   Tue Nov 24 16:50:09 2015 +0000
12646             Byte compile: minor amendments.
12648             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
12649             add a comment to explain the binding of variables around a subsidiary
12650             compilation.
12651             (byte-compile-new-defuns): Amend the doc string.
12653         commit c537bfed1dda1593d218956ff00c6105a3ff0316
12654         Author: Alan Mackenzie <acm@muc.de>
12655         Date:   Sat Nov 21 18:43:57 2015 +0000
12657             Byte compiler: fix spurious warnings "might not be defined at runtime".
12659             Also initialize byte-compile-noruntime-functions between runs.
12661             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
12662             (byte-compile-initial-macro-environment): For eval-when-compile: bind
12663             byte-compile-unresolved-functions and byte-compile-new-defuns around
12664             byte-compile-top-level, to prevent spurious entries being made.
12665             (byte-compile-warn-about-unresolved-functions): Check whether function is
12666             in byte-compile-new-defuns before emitting a warning about it.
12667             (byte-compile-from-buffer): Initialize new variable and
12668             byte-compile-noruntime-functions to nil.
12669             (byte-compile-file-form-require): record all new functions defined by a
12670             `require' in byte-compile-new-defuns.
12671             (byte-compile-file-form-defmumble): record the new alias in
12672             byte-compile-new-defuns.
12674 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12676         Fix crash at startup related to GC of font entities
12678         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
12679         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
12680         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
12681         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
12682         Don't ifdef away font cache compaction on NT_GUI, as the problems
12683         which led to that seem to have been solved.
12684         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
12685         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
12686         cousins.  (Bug#21999)
12688 2015-11-24  Alan Mackenzie  <acm@muc.de>
12690         Byte compile: Output an error, not a warning, for odd number of args to setq
12692         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
12694 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
12696         Fix kbd_buffer iteration loop in readable_events
12698         * src/keyboard.c (readable_events): Wrap the event pointer back to the
12699         start of the kbd_buffer array inside the top of the loop instead of
12700         right before checking the loop condition, since kbd_fetch_ptr and
12701         kbd_store_ptr point past the end of the array to mean that element 0
12702         is next. (bug#21935)
12704 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12706         Improve text-quoting-style doc again
12708         * doc/lispref/help.texi (Keys in Documentation):
12709         Omit overkill discussion of ‘setq’.  Mention Emacs versions
12710         where ‘grave’ style was standard.
12712 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12714         Improve text-quoting-style doc
12716 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12718         Simplify module_make_function
12720         * src/emacs-module.c (module_make_function):
12721         Simplify by calling build_unibyte_string.
12723 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12725         Port better to FreeBSD’s dlfunc vs dlsym
12727         This avoids warnings when converting between void * and
12728         function pointers, which strict C11 does not allow.
12729         * configure.ac (dlfunc): Check for existence.
12730         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
12731         (dynlib_func): New function.
12732         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
12733         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
12734         dynlib_sym, for function pointers.
12736 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12738         Simplify use of emacs_finalizer_function type
12740         * src/emacs-module.h (emacs_finalizer_function):
12741         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
12742         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
12744 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12746         module_format_fun_env fixes
12748         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
12749         * src/emacs-module.c (module_format_fun_env):
12750         Convert path and sym to UTF-8.
12751         Don’t use VLAs, as the C11 standard says they’re optional,
12752         and anyway they can cause core dumps with large allocations.
12753         Use exprintf rather than snprintf, as exprintf handles arbitrarily
12754         long strings.  Simplify the code a bit.
12756 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
12758         Don't use package-user-dir in elisp-library-roots if it's not bound
12760         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
12761         use package-user-dir if it's not bound (bug#19759).
12763 2015-11-23  Anders Lindgren  <andlind@gmail.com>
12765         New visible-bell for NextStep (OS X El Capitan compatible).
12767         Instead of inverting a rectangle in the middle of the frame, use
12768         the standard NextStep image "caution", represented using an
12769         warning sign with an exclamation mark.  (Bug#21662)
12771         Implemented based on a suggestion drafted by Mustafa Kocaturk.
12773         * src/nsterm.m (EmacsBell): New class for managing the caution
12774         image.  Support multiple active bells, the image is removed once
12775         all bells have timed out.
12776         (ns_timeout): Removed, no longer used.
12777         (ns_ring_bell): Reimplemented to use EmacsBell.
12779 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
12781         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
12783         (remove-function): Ditto. (Bug#20376)
12785 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
12787         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
12789 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
12791         Improve how non-ASCII strings are accepted from modules
12793         * src/emacs-module.c (module_make_function, module_make_string):
12794         Build a unibyte Lisp string and then decode it by UTF-8, instead
12795         of building a multibyte string without decoding.  This is more
12796         tolerant to deviations from UTF-8.
12798 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
12800         Port recent module changes to pickier compilers
12802         * src/emacs-module.c (module_make_function)
12803         (module_make_string): Add casts to fix pointer signedness issues.
12805 2015-11-23  Philipp Stephani  <phst@google.com>
12807         Fix how strings are accepted from modules
12809         * src/emacs-module.c (module_make_function, module_make_string): Use
12810         make_multibyte_string.
12811         (module_copy_string_contents): Encode before reading the byte
12812         size.  Return false if and only if an error occurred.
12814 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
12816         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
12818 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
12820         Add the tamil-dvorak input method
12822         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
12824         * etc/NEWS: Mention the new input method.
12826 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
12828         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
12830         * src/frame.c (adjust_frame_size): Don't set
12831         FRAME_WINDOW_SIZES_CHANGED here ...
12832         * src/window.c (resize_frame_windows): ... but here, as suggested
12833         by Stefan Monnier.  Also remove some dead code along the way.
12835 2015-11-23  Alan Mackenzie  <acm@muc.de>
12837         * etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
12839 2015-11-23  Alan Mackenzie  <acm@muc.de>
12841         Signal an error when `setf' gets an odd number of arguments.
12843         * lisp/emacs-lisp/gv.el (setf): Amend.
12845 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
12847         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
12849 2015-11-23  Alan Mackenzie  <acm@muc.de>
12851         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
12853 2015-11-23  Alan Mackenzie  <acm@muc.de>
12855         Expunge occurrences of `setq' with an odd number of arguments.
12857         * lisp/apropos.el (apropos-documentation):
12858         * lisp/obsolete/complete.el (PC-include-file-all-completions):
12859         * lisp/progmodes/compile.el (compilation-goto-locus):
12860         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
12861         Insert missing nil at end of `setq' forms.
12863         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
12864         erroneous trailing variable name from a setq, thus allowing a compilation
12865         properly to track functions not defined at runtime.
12867 2015-11-23  John Wiegley  <johnw@newartisans.com>
12869         Add a note about a questionable use of bool in xdisp.c
12871 2015-11-23  Alan Mackenzie  <acm@muc.de>
12873         Issue a warning from the byte compiler on a malformed `setq' form.
12875         Partly fixes bug#20241.
12876         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
12877         `setq' form with an odd number of arguments is compiled.
12879 2015-11-23  Alan Mackenzie  <acm@muc.de>
12881         Don't let cconv_convert insert a nil argument into a `setq' form.
12883         Fixes bug#21983.
12884         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
12885         argument into a `setq' when there're an odd number of args.  This enables the
12886         byte compiler to issue a message in this case.
12888 2015-11-23  Alan Mackenzie  <acm@muc.de>
12890         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
12892         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
12893         (syms_of_eval): Add a DEFSYM for Qsetq.
12895 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
12897         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
12899         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
12901 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
12903         Add EUDC BBDB 3 entry in NEWS
12905         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
12907 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
12909         Improve EUDC to BBDB 3 export
12911         * lisp/net/eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
12912         entry to single item.  Add company conversion.
12913         * lisp/net/eudc-export.el (eudc-bbdbify-company): New function.
12914         (bbdb-parse-phone): Declare function.
12915         (eudc-bbdbify-phone): Add BBDB 3 support.
12916         (Bug#21971)
12918 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
12920         Add BBDB 3 support for EUDC export
12922         * lisp/net/eudc.el: Add bbdb-version defvar.
12923         (eudc--using-bbdb-3-or-newer-p): New function.
12924         * lisp/net/eudc-export.el (eudc-create-bbdb-record): Add support for
12925         bbdb-create-internal argument list changes introduced in BBDB 3.
12926         * lisp/net/eudcb-bbdb.el: Remove bbdb-version defvar.
12927         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
12928         (Bug#21971)
12930 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
12932         Allow loading modules by 'load-file'
12934         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
12935         2nd arg, to avoid the "binding stack not balanced" error.
12936         (syms_of_lread) <module-file-suffix>: New Lisp variable.
12938         * lisp/files.el (module-file-suffix): Declare.
12939         (load-file): Remove 'module-file-suffix' from
12940         'completion-ignored-extensions', to allow completion on modules.
12942         * etc/NEWS: Mention 'module-file-suffix'.
12944 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
12946         Fix unoptimized builds
12948         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
12949         builds.
12951 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
12953         Work around the asynchronous-empty-diff problem
12955         * lisp/vc/vc-rcs.el (vc-rcs-diff):
12956         * lisp/vc/vc-mtn.el (vc-mtn-diff):
12957         * lisp/vc/vc-hg.el (vc-hg-diff):
12958         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
12959         do a synchronous process call (bug#21969).
12961 2015-11-22  Karl Fogel  <kfogel@red-bean.com>
12963         Finish excising electric indent from `open-line'
12965         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
12967         * test/automated/simple-test.el (open-line-indent, open-line-hook):
12968           Adjust accordingly.
12970         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
12971         (git commit c59353896) started.  It turns out that having INTERACTIVE
12972         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
12973         still had the electric indent behavior, as `post-self-insert-hook'
12974         normally contains `electric-indent-post-self-insert-function' ever
12975         since `electric-indent-mode' has been on by default.  Tracing the code
12976         change in `open-line' is mildly twisty, because Artur Malabarba's
12977         earliest two commits of 24 Oct 2015 first removed the `interactive'
12978         form entirely (git commit 6939896e2) and then restored it with the new
12979         extra "p" already added (git commit bd4f04f86), such that there is no
12980         single-commit diff in which one sees the second "p" appear.  Thus this
12981         change is effectively a reversion of parts of each of those commits.
12983         This could close bug#21884, at least until further discussion.
12985 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
12987         Adhere closer to the "implicit tag name" definition
12989         * lisp/progmodes/etags.el (etags-tags-completion-table):
12990         Adhere closer to the "implicit tag name" definition.  Simplify
12991         the regexp.  Search for the explicit tag name first, and when
12992         not found, search locally for the implicit one.  (Bug#21934)
12994 2015-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
12996         Unrevert most of regexp reentrancy abort patch
12998         The problem was in:
12999           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
13000         which is hence not unreverted.
13001         The rest is:
13002         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
13003         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
13004         All callers in regex.c changed back to the _FAST versions.
13006         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
13007         propertization in backward-sexp.
13009 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
13011         Revert regexp reentrancy abort patch
13013         Although the patch does fix Bug#21688 and prevents a core dump,
13014         it also makes the message-mode-propertize test fail; see:
13015         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
13016         Perhaps someone else can come up with a better fix some day.
13017         * src/syntax.c (update_syntax_table_forward):
13018         Propertize even when truncated.
13019         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
13020         (UPDATE_SYNTAX_TABLE_FAST): Remove.
13021         All callers changed back to the non-_FAST versions.
13023 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
13025         Add a few safety checks when ENABLE_CHECKING
13027         This was motivated by the recent addition of module code,
13028         which added some ENABLE_CHECKING-enabled checks that are
13029         useful elsewhere too.
13030         * src/alloc.c (compact_font_cache_entry):
13031         * src/fns.c (sweep_weak_table):
13032         * src/lread.c (oblookup):
13033         Use gc_asize rather than doing it by hand.
13034         * src/emacs-module.c (module_make_global_ref)
13035         (module_free_global_ref, module_vec_size):
13036         Omit assertions that lisp.h now checks.
13037         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
13038         check that the result is nonnegative.  Use eassume, as this
13039         info can help a bit when optimizing production code.
13040         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
13041         to be consistent with the USE_LSB_TAG case.
13042         (gc_asize): New function, when ASIZE is needed in the gc.
13043         (gc_aset): Use it.
13044         (HASH_TABLE_P): Move definition up, so that it can be used ...
13045         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
13047 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
13049         Simplify recording of main thread's ID on MS-Windows
13051         * src/w32term.c (w32_initialize):
13052         * src/w32console.c (initialize_w32_display):
13053         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
13054         ID independently for each type of session (GUI, TTY, batch).
13055         * src/w32term.c (w32_init_main_thread): New function, records the
13056         main thread's thread ID.
13057         * src/w32term.h: Add prototype for w32_init_main_thread.
13058         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
13060         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
13061         main_thread, for consistency with other threading libraries.  All
13062         users changed.  Include w32term.h.
13063         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
13064         make sure the main thread is alive, as we hold a handle on it
13065         opened by w32_init_main_thread.
13066         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
13067         w32_init_main_thread, instead of calling the requisite APIs once
13068         more.
13070 2015-11-21  Mark Oteiza  <mvoteiza@udel.edu>
13072         Backport: Fix issue where a new tempfile was created every refresh
13074         * lisp/mpc.el (mpc-format): Leave dir as relative path
13076 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
13078         Call 'window-size-change-functions' for mini-windows
13080         * src/window.c (grow_mini_window, shrink_mini_window): Set the
13081         frame's 'window_sizes_changed' flag.
13082         * src/xdisp.c (redisplay_internal): Call the hooks on
13083         'window-size-change-functions' if the call to 'echo_area_display'
13084         sets the frame's 'window_sizes_changed' flag.
13085         (syms_of_xdisp) <window-size-change-functions>:
13086         Update doc string to indicate the mini-window resizes trigger a
13087         call to the hooks, and don't promise that will happen "before
13088         redisplay".  (Bug#19576, Bug#21333)
13090         * doc/lispref/windows.texi (Window Hooks): Update the description
13091         of 'window-size-change-functions'.
13093 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
13095         Improve documentation of dynamic modules
13097         * src/fns.c (Frequire): Doc fix to include the dynamic module
13098         support.
13099         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
13100         dynamic module support.
13101         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
13102         wrt the MUST-SUFFIX argument.
13104         * etc/NEWS: Expand documentation of dynamically loaded modules.
13106 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
13108         Initial documentation for dynamic modules
13110         * etc/NEWS: Mention the new support for dynamically loaded modules.
13112 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
13114         Add xref--etags-backend to xref-backing-functions using add-hook
13116         * lisp/progmodes/xref.el (xref-backend-functions): Move the
13117         default value into a separate `add-hook' call (bug#21964).
13119         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
13120         Don't declare the xref-backend-functions variable.
13121         It doesn't make any difference.
13123 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13125         Fix double-decrement bug when freeing global refs
13127         * src/emacs-module.c (module_free_global_ref): Add a FIXME
13128         comment about error reporting.  Fix a recently-introduced typo
13129         that double-decremented the refcount.
13131 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13133         Declare emacs_module_init in the module API
13135         * src/emacs-module.h (emacs_module_init): New decl.
13136         Without it, GCC might complain about a module that defines
13137         emacs_module_init without using it.  This also checks the
13138         API better.
13140 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13142         Fix module test to use ptrdiff_t nargs too
13144         * modules/mod-test/mod-test.c (Fmod_test_return_t)
13145         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
13146         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
13147         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
13148         (Fmod_test_userptr_get, Fmod_test_vector_fill)
13149         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
13150         (finalizer): Remove; no longer used.
13152 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13154         Fix reindent-introduced typo in module code
13156         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
13157         introduced while reindenting the code earlier, and add a
13158         comment explaining the unusual use of do-while here.
13160 2015-11-20  Anders Lindgren  <andlind@gmail.com>
13162         Fixed bug#19576: `write-file' saves wrong buffer.
13164         If a function on the hook `window-size-change-functions' doesn't
13165         restore the current buffer, functions that save and restore the
13166         current window configuration (like `y-or-no-p') could silently
13167         change the current buffer.  When `write-file' asked the user
13168         confirmation to overwrite a file, `y-or-no-p' changed the current
13169         buffer, and the wrong buffer was saved to the file.
13171         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
13172         using the `norecord' parameter.
13173         (follow-window-size-change): Restore current buffer. Call
13174         `select-frame' using the `norecord' parameter. Cleanup.
13176 2015-11-20  John Wiegley  <johnw@newartisans.com>
13178         Correct a documentation error in frames.texi
13180 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
13182         * lisp/cedet/mode-local.el: Delete obsolete comment
13184 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13186         Module function arg counts are ptrdiff_t, not int
13188         * src/emacs-module.c (struct module_fun_env)
13189         (module_make_function, module_funcall, Fmodule_call):
13190         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
13191         Use ptrdiff_t, not int, for arg counts.
13192         * src/emacs-module.c (module_make_function): Don’t bother
13193         checking arity against MOST_POSITIVE_FIXNUM, as that’s
13194         unnecessary here.  Make the checking clearer by negating it.
13195         (module_make_function, Fmodule_call): No need to use xzalloc
13196         since the storage doesn’t need to be cleared.
13197         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
13198         for it, and many implementations are buggy with large VLAs anyway.
13199         Use SAFE_ALLOCA_LISP instead.
13200         (module_vec_set): Don’t crash if i < 0.
13201         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
13202         (module_vec_set, module_vec_get): Do fixnum checks only when
13203         i is out of array bounds, for efficiency in the usual case.
13204         (Fmodule_load): Simplify fixnum range check.
13205         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
13206         integer overflow in array allocation size.
13208 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
13210         Minor improvements in module test
13212         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
13213         about missing prototype of malloc.
13214         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
13215         compiler warnings.
13217 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
13219         Improve MS-Windows implementation in dynlib.c
13221         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
13222         No need to include windows.h, as w32.h already does that.
13223         <dynlib_last_err>: New static variable.
13224         (dynlib_reset_last_error): New function.
13225         (dynlib_open): Convert forward slashes to backslashes.  Convert
13226         file names from UTF-8 to either UTF-16 or the current ANSI
13227         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
13228         argument is NULL, return a handle to the main module, like
13229         'dlopen' does.  Record the error, if any, for use by dynlib_error.
13230         (dynlib_sym): Check the handle for validity. Record the error, if
13231         any, for use by dynlib_error.
13232         (dynlib_error): Call w32_strerror to produce the error string, and
13233         zero out the last error code, like dlerror does.
13234         (dynlib_close): Check the handle for validity.  Record the error,
13235         if any, for use by dynlib_error.  Don't call FreeLibrary with a
13236         handle for the main module.
13237         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
13239 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13241         Include-file tweaks for modules
13243         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
13244         * src/dynlib.h: Do not include config.h.
13245         It’s every .c file’s responsibility to include config.h first.
13246         * src/emacs-module.c: Include emacs-module.h immediately after
13247         config.h, to test that emacs-module.h doesn’t depend on
13248         include files other than config.h.
13250 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13252         Simplify push_handler and profile its malloc
13254         * src/lisp.h (PUSH_HANDLER): Remove.
13255         All callers changed to use push_handler directly.
13256         * src/eval.c (internal_condition_case)
13257         (internal_condition_case_1, internal_condition_case_2)
13258         (internal_condition_case_n):
13259         Use same pattern as for other invokers of push_handler.
13260         (push_handler, push_handler_nosignal): Use call-by-value
13261         instead of call-by-reference.  All uses changed.
13262         (push_handler): Simplify by rewriting in terms of
13263         push_handler_nosignal.
13264         (push_handler_nosignal): Profile any newly allocated memory.
13266 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13268         * src/emacs-module.h: Include stddef.h, not stdlib.h.
13270 2015-11-20  Juanma Barranquero  <lekktu@gmail.com>
13272         Discover repository version in linked worktrees (bug#21930)
13274         * lisp/version.el (emacs-repository--version-git-1): Do not assume
13275         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
13276         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
13277         is nil too.
13279 2015-11-20  Juri Linkov  <juri@linkov.net>
13281         * lisp/replace.el (occur-regexp-descr): New function.
13282         (occur-1, occur-engine): Use it.
13284         * lisp/isearch.el (isearch-occur): Propertize regexp with
13285         isearch-string and isearch-regexp-function-descr for
13286         occur-regexp-descr to display the correct description
13287         message in the header (bug#21176, bug#21180).
13289 2015-11-20  Karl Fogel  <kfogel@red-bean.com>
13291         Revert `open-line' electric-indent sensitivity
13293         * lisp/simple.el (open-line): Remove electric indent code.
13294           (electric-indent-just-newline): Don't declare.
13296         * test/automated/simple-test.el (open-line-indent): Adjust test.
13298         This partly reverts Artur Malabarba's change that added electric
13299         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
13300         commit bd4f04f86), and adjusts a new test he added right afterwards
13301         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
13302         However, the new INTERACTIVE argument to `open-line', which he also
13303         added in the first commit, is not reverted here.
13305         See the thread "Questioning the new behavior of `open-line'." on the
13306         Emacs Devel mailing list, and in particular this message:
13308           From: Artur Malabarba
13309           Subject: Re: Questioning the new behavior of `open-line'.
13310           To: Karl Fogel
13311           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
13312           Date: Wed, 18 Nov 2015 21:03:58 +0000
13313           Message-ID: \
13314             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
13316           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
13318 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13320         Omit unnecessary clear in Fmodule_load
13322         * src/emacs-module.c (Fmodule_load):
13323         Simplify and avoid unnecessary initialization of priv member to 0.
13325         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
13327 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13329         Prefer signed integer types in module code
13331         Generally speaking, at the C level the Emacs source code prefers
13332         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
13333         partly to avoid the usual signedness confusion when comparing values.
13334         Change the module API to follow this convention.
13335         Use ‘int’ for small values that can’t exceed INT_MAX.
13336         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
13337         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
13338         (Fmod_test_vector_eq):
13339         * src/emacs-module.c (struct emacs_value_frame)
13340         (module_make_global_ref, module_free_global_ref)
13341         (module_copy_string_contents, module_make_string)
13342         (module_vec_set, module_vec_get, module_vec_size):
13343         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
13344         * src/lread.c (suffix_p):
13345         Prefer signed to unsigned integer types.
13347 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13349         Omit ‘const’ on locals
13351         Remove ‘const’ qualifier from locals that were newly added.
13352         We don’t normally bother declaring locals with ‘const’ even
13353         though they are not modified, for the same reason we don’t
13354         bother declaring them with ‘register’ even though their
13355         addresses are not taken; the advantage in compile-time
13356         checking isn’t worth the loss of readability.
13357         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
13358         (Fmod_test_vector_fill, Fmod_test_vector_eq):
13359         * src/emacs-module.c (MODULE_SETJMP_1)
13360         (module_make_global_ref, module_free_global_ref)
13361         (module_non_local_exit_get, module_make_function)
13362         (module_extract_integer, module_extract_float)
13363         (module_get_user_ptr, module_set_user_ptr)
13364         (module_get_user_finalizer, module_set_user_finalizer)
13365         (module_vec_get, Fmodule_call)
13366         (module_non_local_exit_signal_1)
13367         (module_non_local_exit_throw_1, lisp_to_value)
13368         (finalize_storage, allocate_emacs_value, mark_modules)
13369         (module_handle_signal, module_handle_throw)
13370         (module_format_fun_env):
13371         * src/eval.c (push_handler, push_handler_nosignal)
13372         (init_handler):
13373         * src/lread.c (suffix_p):
13374         Omit unnecessary ‘const’.
13376 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13378         Prefer intmax_t to int64_t in module code
13380         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
13381         * src/emacs-module.c (module_extract_integer)
13382         (module_make_integer):
13383         * src/emacs-module.h (struct emacs_env_25):
13384         Prefer intmax_t to int64_t.  This doesn’t change the generated
13385         code on any of the machines Emacs currently ports to, but it’s
13386         at least in theory more future-proof as C99 doesn’t guarantee
13387         that int64_t exists.
13389 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13391         Rename module.c to emacs-module.c, etc.
13393         * src/emacs-module.c: Rename from src/module.c.
13394         * src/emacs-module.h: Rename from src/module.h.
13395         All uses changed.
13397 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13399         Fix minor module problems found by static checking
13401         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
13402         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
13403         * src/emacs-module.c (Fmodule_load): Fix pointer signedness bug.
13404         (Fmodule_call): Tell GCC that the default case is unreachable.
13406 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13408         Style fixes for indenting etc. in module code
13410         This is mostly indenting and spacing changes.  Also, remove
13411         some unnecessary static decls instead of bothering to reindent them.
13412         * src/emacs-module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
13413         as most other Emacs files do for this sort of thing.
13415 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
13417         Minor improvements in modules testing Makefile
13419         * modules/mod-test/Makefile (EMACS, SO): New variables.
13420         (CFLAGS): When SO = dll, don't use -fPIC.
13421         (check): New target, runs the test.
13423 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
13425         * .gitignore: Add "*.dll".
13427 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13429         Migrate modules/.gitignore into .gitignore
13431         * .gitignore: Add former contents of modules/.gitignore.
13432         * modules/.gitignore: Remove.
13434 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13436         Add copyright notices to module code
13438         Put them in the usual format for GNU Emacs copyright notices.
13440 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13442         Rename emacs_module.h to module.h
13444         * src/module.h: Rename from src/emacs_module.h.
13445         All uses changed.
13447 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
13449         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
13451         * src/lread.c (Fload): Remove unused variable `size'
13453 2015-11-19  Alan Mackenzie  <acm@muc.de>
13455         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
13457 2015-11-19  Dmitry Gutov  <dgutov@yandex.ru>
13459         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
13461         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
13462         vc-parent-buffer over log-view-mode fallback (bug#21955).
13464 2015-11-18  Alan Mackenzie  <acm@muc.de>
13466         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
13468 2015-11-18  Ken Brown  <kbrown@cornell.edu>
13470         * configure.ac (LIBMODULES): Don’t define on Cygwin
13472 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
13474         Fix MS-Windows build --with-modules
13476         * src/module.c: Reformat copyright commentary.
13477         (module_vec_get): Use explicit cast to size_t to avoid compiler
13478         warning in 32-bit builds.
13479         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
13480         Compare thread IDs directly, as GetThreadId is not available
13481         before Windows Vista.
13482         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
13483         without using APIs and constants not available on XP and older
13484         systems.  Obtain and store the thread ID as well.
13486 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13487             Philipp Stephani  <phst@google.com>
13489         Add dynamic module test and helper script
13491         Add 'modhelp.py' script (python2) to automate module testing and
13492         module generation.
13494         To build and test all modules in the modules/ dir
13495           $ ./modhelp.py test
13497         To generate a module from template code (good starting point)
13498           $ ./modhelp init mynewtestmodule
13500         See the script -h option for more documentation.
13502         * modules/modhelp.py: New module helper script.
13503         * modules/mod-test/Makefile: New file. Makefile for the test module.
13504         * modules/mod-test/mod-test.c: New file. Test module source file.
13505         * modules/mod-test/test.el: New file. ert test suite for the test module.
13506         * modules/.gitignore: New file. Local .gitignore file.
13508 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13510         Make 'Fload' look for modules
13512         'Fload' can now load dynamic modules. This also makes 'require' work.
13514         * src/lread.c:
13515           (suffix_p): New function.
13516           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
13517           with a module suffix.
13518           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
13520 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13521             Philipp Stephani  <phst@google.com>
13523         Add dynamic module module support
13525         * configure.ac: Add '--with-modules' option.  Conditionally add
13526           dynlib.o and module.o to the list of objects.  Add any system
13527           specific flags to the linker flags to support dynamic libraries.
13528         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
13529           attributes.
13530         * src/Makefile.in: Conditionally add module objects and linker flags.
13531         * src/alloc.c (garbage_collect_1): protect module local values from
13532           GC.
13533         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
13534         * src/emacs-module.h: New header file included by modules.  Public
13535           module API.
13536         * src/emacs-module.c: New module implementation file.
13538 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13540         Add new User Pointer (User_Ptr) type
13542         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
13543         (XUSER_PTR): New User_Ptr accessor.
13544         * src/alloc.c (make_user_ptr): New function.
13545         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
13546         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
13547         (Fuser-ptrp): New user pointer type predicate function.
13548         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
13549         subr.
13550         * src/print.c (print_object): Add printer for User_Ptr type.
13552 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13553             Philipp Stephani  <phst@google.com>
13555         Add portable layer for dynamic loading
13557         * src/dynlib.h: New file.
13558         * src/dynlib.c: New file.
13560 2015-11-18  Philipp Stephani  <phst@google.com>
13562         Add catch-all & no-signal version of PUSH_HANDLER
13564         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
13565         a new "catch-all" handler type.
13567         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
13568           functions.
13569         * src/fns.c (hash_remove_from_table): Expose function public.
13570         * src/lisp.h: New handler type, define macro to push_handler call.
13572 2015-11-18  Ken Brown  <kbrown@cornell.edu>
13574         Silence byte-compiler warning
13576         * lisp/server.el (server-process-filter): Silence byte-compiler
13577         warning.
13579 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
13581         Quote symbols in docstrings using `'
13583         Be more systematic about quoting symbols `like-this' rather than
13584         `like-this or 'like-this' in docstrings.  This follows up Artur
13585         Malabarba's email in:
13586         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
13588 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
13590         Fix savegames in dunnet
13592         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
13593           of separate implementation.
13595 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
13597         * lisp/emacs-lisp/package.el (package--with-response-buffer):
13599         Ensure we're at the start of the buffer before searching for
13600         the end of headers.
13602 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13604         * admin/release-process: Improve wording.
13606 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13608         Backport: * CONTRIBUTE: Remove information about feature freeze.
13610         (cherry picked from commit ae0653b5ab9ee223751ec389b87011963e1cbbef)
13612 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13614         Backport: Document the release process
13616         * admin/notes/versioning: Add information about RC releases.
13617         * admin/release-process: Document the release process.
13618         * admin/authors.el (authors-ignored-files):
13619         * admin/README: Change FOR-RELEASE to release-process.
13620         * CONTRIBUTE:
13621         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
13623         (cherry picked from commit 9a4aa0f5945a03611ae29c516025dbd353bd26ab)
13625 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13627         Backport: * admin/release-process: Rename from admin/FOR-RELEASE.
13629         (cherry picked from commit f8cc14b59700e51a4e31139c0a65c8154995e055)
13631 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13633         Backport: Mention CONTRIBUTE in README
13635         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
13636         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
13637         * README: Mention CONTRIBUTE.
13639         (cherry picked from commit ed2e7e20ae0945288c98091f308f5460c3453873)
13641 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
13643         Fix docstring quoting problems with ‘ '’
13645         Problem reported by Artur Malabarba in:
13646         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
13647         Most of these fixes are to documentation; many involve fixing
13648         longstanding quoting glitches that are independent of the
13649         recent substitute-command-keys changes.  The changes to code are:
13650         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
13651         (describe-mode-local-overload):
13652         Substitute docstrings before displaying them.
13653         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
13654         Quote the generated docstring for later substitution.
13656 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
13658         Improve configure --help text for wide ints
13660         * configure.ac (wide-int): Clarify user-level advantages and
13661         disadvantages.
13663 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
13665         Improve doc string
13667         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
13669 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
13671         eval_sub followed dangling pointer when debugging
13673         Problem reported by Pip Cet (Bug#21245).
13674         This bug could occur in eval_sub if the C compiler reused
13675         storage associated with the ‘argvals’ local after ‘argvals’
13676         went out of scope, and if the Elisp debugger stopped on Elisp
13677         function exit and accessed ‘argvals’.  It could also occur if
13678         a variadic function was called with so many arguments (over
13679         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
13680         SAFE_FREE freed the arguments, then the memory manager used
13681         the storage for other purposes, then the debugger accessed the
13682         arguments.
13683         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
13684         function body.  Simplify local decls.
13685         When allocating args via SAFE_ALLOCA, call
13686         debugger before invoking SAFE_FREE, as the debugger needs
13687         access to the args.
13688         (eval_sub, apply_lambda): Rework to avoid need for
13689         set_backtrace_debug_on_exit hack.  This is cleaner,
13690         and should work better with buggy custom debuggers.
13692 2015-11-17  Daiki Ueno  <ueno@gnu.org>
13694         * lisp/image-mode.el: Support encrypted file
13696         (image-toggle-display-image): Read content from the buffer instead
13697         of the file, if the buffer holds a decrypted data.  (Bug#21870)
13699 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
13701         ELF unexec: align section header
13703         This ports the recent unexelf.c changes to Fedora x86-64
13704         when configured with GCC’s -fsanitize=undefined option.
13705         * src/unexelf.c (unexec): Align new_data2_size to a multiple
13706         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
13707         pointer aligned appropriately for its type.
13709 2015-11-17  Andreas Schwab  <schwab@linux-m68k.org>
13711         Do more checks on bytecode objects (Bug#21929)
13713         * src/eval.c (funcall_lambda): Check size of compiled function
13714         object.
13715         (Ffetch_bytecode): Likewise.
13717 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
13719         pcase.el: Fix edebugging of backquoted cons patterns
13721         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
13722         cons patterns. (Bug#21920)
13724 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
13726         Improve fix for regex reentrancy abort
13728         Suggested by Stefan Monnier (Bug#21688).
13729         * src/syntax.c (update_syntax_table_forward):
13730         Remove recently-added PROPERTIZE arg, and assume it is true.
13731         All callers changed.
13732         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
13733         Invoke update_syntax_table directly.
13735 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
13737         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
13739         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
13741         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
13743 2015-11-16  Vasily Korytov  <vasily.korytov@yahoo.com>
13745         Recognize .rbw and .pyw files (bug#18753)
13747         * lisp/progmodes/python.el (auto-mode-alist):
13748         Recognize .pyw files.
13750         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
13751         Recognize .rbw files.
13753 2015-11-16  Dmitry Gutov  <dgutov@yandex.ru>
13755         Fix ruby-mode auto-mode-alist entry
13757         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
13758         around the extensions (bug#21257).
13760 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
13762         Fix etags completion near eob
13764         * lisp/progmodes/etags.el (tags-completion-at-point-function):
13765         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
13767 2015-11-15  Alan Mackenzie  <acm@muc.de>
13769         De-pessimize detection of C++ member initialization lists.
13771         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
13772         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
13773         is only called when a construct "looks right" rather than continually.
13774         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
13776 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
13778         Backport: * lisp/emacs-lisp/package.el: Fix a decoding issue.
13780         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
13781         `url-insert-buffer-contents'.
13782         (url-insert-buffer-contents): New function
13784         (package--with-response-buffer): Use `url-insert-buffer-contents'.
13785         The previous code had some issues with decoding. Refactoring that
13786         function allows us to use the decoding from url-handlers while still
13787         treating both sync and async requests the same.
13789 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
13791         Improve a few doc strings, comments
13793         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
13794         * lisp/cedet/ede/locate.el (ede-locate-base):
13795         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
13796         * src/fns.c (Fdelq): Improve doc string.
13798         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
13800 2015-11-15  Anders Lindgren  <andlind@gmail.com>
13802         Enhance NSTRACE (trace output for NextStep).
13804         Trace can be disabled for groups of functions. By default, event
13805         functions and functions that generate lots of output are disabled.
13807         Trace output of Objective-C functions now use the "[ClassName
13808         parameter:]" form.
13810         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
13811         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
13812         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
13813         controlling in which function groups trace should be active.
13814         (NSTRACE_WHEN): Support for silencing a function, this also
13815         silencing all called functions.
13816         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
13817         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
13818         print the full screen state in NSTRACE functions.
13820         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
13821         can be accessed from multiple threads.
13822         (nstrace_enabled_global): New variable, when FALSE, trace is
13823         silenced.
13824         (nstrace_restore_global_trace_state): New function, used to
13825         restore `nstrace_enabled_global' at end of block.
13826         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
13827         ([EmacsWindow setFrame:display:animation:])
13828         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
13829         and call corresponding super function.
13830         (Many functions): Add or enhance trace output.
13832         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
13834         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
13836         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
13837         and call corresponding super function.
13839 2015-11-15  Anders Lindgren  <andlind@gmail.com>
13841         Fixed a toolbar related issue on OS X.
13843         Earlier, when toggling the tool-bar in a maximized frame, the
13844         frame size didn't match the number of text lines, leaving an
13845         unused area at the bottom of the frame.
13847         * src/nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
13848         fullscreen modes when tool bar is disabled.
13850 2015-11-15  Anders Lindgren  <andlind@gmail.com>
13852         Fixed OS X 10.6.8 build issue (bug#21862).
13854         * src/nsterm.h (EmacsView): Add missing declarations.
13855         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
13856         the standard method but without the notification parameter.
13857         Intended to be used for direct calls.
13858         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
13859         version of `windowDidBecomeKey'. Made the notification method call
13860         the non-notification method instead of the vice versa.
13861         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
13862         needed.
13864 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
13866         * lisp/faces.el (faces--attribute-at-point): Fix an issue
13868         Previous code would signal an error when the face at point was
13869         a manually built list of attributes such as '(:foregroud "white").
13871         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
13873 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
13875         Fix regex abort when it tries to reenter itself
13877         Problem reported by Ken Raeburn.
13878         Solution suggested by Stefan Monnier (Bug#21688).
13879         * src/regex.c (re_match_2_internal):
13880         Use new _FAST functions to avoid regex code reentering itself.
13881         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
13882         All callers changed.
13883         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
13884         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
13886 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
13888         Improve Ruby 1.9-style keyword keys highlighting
13890         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
13891         Handle required keyword arguments (bug#21367).
13892         And highlight the colon together with the name.
13894 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
13896         Unify the absolutely equal xref-backend-references implementations
13898         * lisp/progmodes/elisp-mode.el (xref-backend-references):
13899         Remove.
13901         * lisp/progmodes/etags.el (xref-backend-references):
13902         Remove.
13904         * lisp/progmodes/xref.el (xref-backend-references):
13905         Define the default implementation.
13907 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
13909         Update project-find-regexp for the new xref API
13911         * lisp/progmodes/project.el (project--read-regexp):
13912         Update to use the new xref API methods.
13914         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
13916 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
13918         Fix replacing a match with a shorter string
13920         In effect, partially reverting fe973fc.
13922         * lisp/progmodes/xref.el (xref-query-replace): Store the end
13923         of each match as a marker again, instead of length.
13924         (xref--query-replace-1): Update accordingly.
13926 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
13928         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
13930         Signal user-errors instead.
13932 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
13934         Document 'describe-symbol'
13936         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
13937         (Name Help): Document "C-h o" and describe-symbol.
13939         * lisp/help-fns.el (describe-symbol): Doc fix.
13941 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
13943         Change test name to avoid spellcheck issue.
13945 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
13947         Avoid signaling an error in 'describe-symbol'
13949         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
13950         exists as a function/variable/face/etc., but is undocumented.
13952         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
13953         test.
13955 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
13957         * INSTALL (--with-cairo): Document this new configure option.
13959 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
13961         Document that GNU Make >= 3.81 is required to build Emacs
13963         * doc/lispref/internals.texi (Building Emacs): Document that GNU
13964         Make 3.81 or later is now required.
13966 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
13968         Backport: * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async.
13970         (package--with-work-buffer-async): Reimplement as
13971         `package--with-response-buffer'.
13972         (package--with-work-buffer): Mark obsolete.
13973         (package--with-response-buffer): New macro. This is a more self
13974         contained and less contrived version of
13975         `package--with-work-buffer-async'.  It uses keyword arguments,
13976         doesn't have async on the name, doesn't fallback on
13977         `package--with-work-buffer', and has _much_ simpler error
13978         handling.  On master, this macro will soon be part of another
13979         library (either standalone or inside url.el), which is why this
13980         commit is not to be merged back.
13982         (package--check-signature, package--download-one-archive)
13983         (package-install-from-archive, describe-package-1): Use it.
13985         (package--download-and-read-archives): Let
13986         `package--download-one-archive' take care of calling
13987         `package--update-downloads-in-progress'.
13989 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
13991         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
13993 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
13995         Merge branch 'master' into emacs-25
13997 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
13999         Use generic dispatch for xref backends
14001         * lisp/progmodes/xref.el (xref-backend-functions):
14002         New variable.
14003         (xref-find-function): Remove.
14004         (xref-find-backend)
14005         (xref--etags-backend): New functions.
14006         (xref-identifier-at-point-function)
14007         (xref-identifier-completion-table-function): Remove.
14008         (xref-backend-definitions, xref-backend-references)
14009         (xref-backend-apropos, xref-backend-identifier-at-point)
14010         (xref-backend-identifier-completion-table):
14011         New generic functions.
14013         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
14014         Add `elisp--xref-backend' to the beginning of
14015         `xref-backend-functions', locally.  Delete references to
14016         removed functions and vars.
14017         (elisp-xref-find): Remove.
14018         (elisp--xref-backend): New function.
14019         (elisp--xref-find-references, elisp--xref-find-apropos)
14020         (elisp--xref-identifier-completion-table):
14021         Turn into appropriately named generic methods.
14023         * lisp/progmodes/etags.el (etags-xref-find): Remove.
14024         (xref-backend-identifier-completion-table)
14025         (xref-backend-references, xref-backend-definitions)
14026         (xref-backend-apropos): New generic methods.
14028 2015-11-14  Juri Linkov  <juri@linkov.net>
14030         Support rectangular regions for more commands
14032         * lisp/simple.el (region-extract-function): Handle the arg
14033         value ‘bounds’.
14034         (region-insert-function): New function.
14035         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
14036         If non-nil, operate on multiple chunks.
14037         (region-noncontiguous-p): New function.
14039         * lisp/rect.el: Add function rectangle--insert-region
14040         around region-insert-function.
14041         (extract-rectangle-bounds): New function.
14042         (rectangle--extract-region): Handle the arg value ‘bounds’.
14043         (rectangle--insert-region): New function.
14045         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
14046         around region-insert-function.
14047         (cua--extract-rectangle-bounds): New function.
14048         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
14050         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
14051         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
14052         (query-replace-regexp-eval, map-query-replace-regexp)
14053         (replace-string, replace-regexp): Use ‘use-region-p’.
14054         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
14055         (perform-replace): Add arg ‘region-noncontiguous-p’.
14056         If non-nil, operate on multiple chunks.
14058         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
14059         If non-nil, operate on multiple chunks.  (Bug#19829)
14061 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
14063         Handle multiple matches on the same line; add highlighting
14065         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
14066         column value in characters.
14067         (xref--collect-matches): Rename from `xref--collect-match'.
14068         Search for all matches in the hit line.  Add `highlight' face to
14069         the matched region in the summary.  Update both callers.
14071 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
14073         Replace xref-match-bounds with xref-match-length
14075         Relying on xref-location-marker to point to the beginning of the match
14077         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
14078         (xref-match-length): Add.
14079         (xref-make-match): Change the arguments.
14080         (xref--match-buffer-bounds): Remove.
14081         (xref-match-item): Store length, instead of end-column.
14082         (xref-pulse-momentarily)
14083         (xref--collect-match)
14084         (xref--query-replace-1): Update accordingly.
14085         (xref-query-replace): Ditto.  And check that the search results
14086         are up-to-date.
14088 2015-11-13  John Wiegley  <johnw@newartisans.com>
14090         Merge remote-tracking branch 'origin/master' into emacs-25
14092 2015-11-13  l3thal  <kwhite@gnu.org>
14094         Merge branch 'erc-async-reconnect' into emacs-25
14096         Reconnect asynchronously.
14098 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14100         Merge from gnulib
14102         This incorporates:
14103         2015-11-13 xalloc-oversized: improve performance with GCC 5
14104         * lib/xalloc-oversized.h: Copy from gnulib.
14106 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14108         Spruce up ftfont.c memory allocation
14110         * src/ftfont.c (setup_otf_gstring):
14111         Avoid O(N**2) behavior when reallocating.
14112         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
14113         reallocating buffers; this simplifies the code.  Do not trust
14114         mflt_run to leave the output areas unchanged on failure, as
14115         this isn’t part of its interface spec.
14117 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14119         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
14121 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14123         Port recent XCB changes to 64-bit ‘long int’
14125         For historical reasons, libX11 represents 32-bit values like Atoms as
14126         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
14127         do that, so adapt the recent XCB code to behave properly on 64-bit
14128         platforms.  Also, fix what appears to be a bug in the interpretation
14129         of xcb_get_property_value_length, at least on my Fedora platform
14130         which is running libxcb-1.11-5.fc21.
14131         * src/xfns.c (x_real_pos_and_offsets):
14132         * src/xterm.c (get_current_wm_state):
14133         xcb_get_property_value_length returns a byte count, not a word count.
14134         For 32-bit quantities, xcb_get_property_value returns a vector
14135         of 32-bit words, not of (possibly 64-bit) long int.
14137         Backport.
14139 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14141         * src/undo.c (run_undoable_change): Now static.
14143         Backport.
14145 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14147         Remove support for ':timeout' from w32 tray notifications
14149         * src/w32fns.c (Fw32_notification_notify): Delete the code that
14150         supports ':timeout'.
14151         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
14152         with dbusbind.c when D-Bus is compiled in.
14154         * doc/lispref/os.texi (Desktop Notifications): Don't mention
14155         ':timeout'.
14157         Backport.
14159 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14161         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
14163         (simple-test--transpositions): New macro.
14164         (simple-transpose-subr): New test.
14166         Backport.
14168 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14170         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
14172         Backport.
14174 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14176         * src/undo.c: Small fixes for previous change
14178         (run_undoable_change): Mark void argument list.
14179         (record_property_change): Remove unused variable `boundary'.
14181         Backport.
14183 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14185         Add a few more variables to redisplay--variables
14187         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
14188         and bidi-display-reordering to the list.
14190         Backport.
14192 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14194         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
14196         Backport.
14198 2015-11-13  Eli Barzilay  <eli@barzilay.org>
14200         Fix point positioning after transposing with negative arg
14202         * lisp/simple.el (transpose-subr): When invoked with a negative
14203         argument, move point to after the transposed text, like we do
14204         when invoked with a positive argument.  (Bug#21885)
14206         Backport.
14208 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14210         Fix last change in shr.el
14212         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
14213         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
14215         Backport.
14217 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14219         Fix last change
14221         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
14222         Don't DEFSYM tray notification symbols if D-Bus is being used.
14224         Backport.
14226 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14228         Another fix for MinGW64 and Cygwin builds due to notifications
14230         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
14231         being compiled into Emacs.
14232         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
14233         Sw32_notification_notify and Sw32_notification_close if the code
14234         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14236         Backport.
14238 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14240         Remove intern calls and XXX comments from Fx_export_frames
14242         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
14243         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
14244         for consistency with image types.  Remove XXX comments.
14245         (syms_of_xfns) <Qpdf>: DEFSYM it.
14247         Backport.
14249 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14251         Port recent XCB changes to 64-bit ‘long int’
14253         For historical reasons, libX11 represents 32-bit values like Atoms as
14254         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
14255         do that, so adapt the recent XCB code to behave properly on 64-bit
14256         platforms.  Also, fix what appears to be a bug in the interpretation
14257         of xcb_get_property_value_length, at least on my Fedora platform
14258         which is running libxcb-1.11-5.fc21.
14259         * src/xfns.c (x_real_pos_and_offsets):
14260         * src/xterm.c (get_current_wm_state):
14261         xcb_get_property_value_length returns a byte count, not a word count.
14262         For 32-bit quantities, xcb_get_property_value returns a vector
14263         of 32-bit words, not of (possibly 64-bit) long int.
14265 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14267         * src/undo.c (run_undoable_change): Now static.
14269 2015-11-13  Michael Albinus  <michael.albinus@gmx.de>
14271         Adapt Tramp version, do not merge with master
14273         * doc/misc/trampver.texi (trampver):
14274         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
14276 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14278         Remove support for ':timeout' from w32 tray notifications
14280         * src/w32fns.c (Fw32_notification_notify): Delete the code that
14281         supports ':timeout'.
14282         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
14283         with dbusbind.c when D-Bus is compiled in.
14285         * doc/lispref/os.texi (Desktop Notifications): Don't mention
14286         ':timeout'.
14288 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14290         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
14291         (simple-test--transpositions): New macro.
14292         (simple-transpose-subr): New test.
14294 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14296         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
14298 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14300         * src/undo.c: Small fixes for previous change
14301         (run_undoable_change): Mark void argument list.
14302         (record_property_change): Remove unused variable `boundary'.
14304 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14306         Add a few more variables to redisplay--variables
14308         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
14309         and bidi-display-reordering to the list.
14311 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14313         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
14315 2015-11-13  Eli Barzilay  <eli@barzilay.org>
14317         Fix point positioning after transposing with negative arg
14319         * lisp/simple.el (transpose-subr): When invoked with a negative
14320         argument, move point to after the transposed text, like we do
14321         when invoked with a positive argument.  (Bug#21885)
14323 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14325         Fix last change in shr.el
14327         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
14328         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
14330 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14332         Fix last change
14334         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
14335         Don't DEFSYM tray notification symbols if D-Bus is being used.
14337 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14339         Another fix for MinGW64 and Cygwin builds due to notifications
14341         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
14342         being compiled into Emacs.
14343         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
14344         Sw32_notification_notify and Sw32_notification_close if the code
14345         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14347 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14349         Remove intern calls and XXX comments from Fx_export_frames
14351         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
14352         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
14353         for consistency with image types.  Remove XXX comments.
14354         (syms_of_xfns) <Qpdf>: DEFSYM it.
14356 2015-11-13  Eric Hanchrow  <eric.hanchrow@gmail.com>
14358         shr: don't invoke unbound function (Bug#21895)
14360         * lisp/net/shr.el (have-fringes-p): New function.
14361         (shr-insert-document, shr-fill-text): Use it.
14363 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
14365         * test/automated/keymap-tests.el: Fix test to make it repeatable
14367         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
14368         entry to its initial value to make the test repeatable in interactive
14369         sessions (assuming it doesn't fail and crashes Emacs, of course).
14371 2015-11-13  Artur Malabarba  <bruce.connor.am@gmail.com>
14373         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
14375 2015-11-12  Phillip Lord  <phillip.lord@russet.org.uk>
14377         : Tests for undo-auto functionality.
14379 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
14381         The heuristic that Emacs uses to add an `undo-boundary' has been
14382         reworked, as it interacts poorly with functions on `post-command-hook'
14383         or `after-change-functions'.
14385         * lisp/simple.el: New section added.
14386         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
14387         (self_insert_command): Calls simple.el to amalgamate.
14388         (delete_char): Calls simple.el to amalgamate.
14389         * src/keyboard.c (last_undo_boundary): Removed.
14390         * src/undo.c (run_undoable_change): New function.
14392 2015-11-12  Juri Linkov  <juri@linkov.net>
14394         Bind [?\S-\ ] to previous line command in Dired-like modes.
14396         * lisp/arc-mode.el (archive-mode-map):
14397         * lisp/dired.el (dired-mode-map):
14398         * lisp/proced.el (proced-mode-map):
14399         * lisp/vc/vc-dir.el (vc-dir-mode-map):
14400         Bind [?\S-\ ] to previous line command.
14401         (Bug#20790)
14403 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
14405         Fix the MinGW64 and Cygwin-w32 builds
14407         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
14408         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
14409         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
14410         which cause trouble with MinGW42 headers.  Ifdef away tray
14411         notifications code for Cygwin.  Reported by Andy Moreton
14412         <andrewjmoreton@gmail.com>.
14414 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
14416         Enable sorting of JSON object keys when encoding
14418         * lisp/json.el (json-encoding-object-sort-predicate): New variable
14419         for specifying a sorting predicate for JSON objects during encoding.
14420         (json--plist-to-alist): New utility function.
14421         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
14422         are to be sorted.
14423         (json-encode-alist): Sort output by
14424         `json-encoding-object-sort-predicate, when set.
14425         (json-encode-plist): Re-use `json-encode-alist' when object keys are
14426         to be sorted.
14427         (json-pretty-print-buffer-ordered): New command to pretty print the
14428         buffer with object keys sorted alphabetically.
14429         (json-pretty-print-ordered): New command to pretty print the region
14430         with object keys sorted alphabetically.
14432         * test/automated/json-tests.el (test-json-plist-to-alist)
14433         (test-json-encode-plist, test-json-encode-hash-table)
14434         (test-json-encode-alist-with-sort-predicate)
14435         (test-json-encode-plist-with-sort-predicate): New tests.
14437         * etc/NEWS: Add an entry for the new commands.
14439 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
14441         * test/automated/keymap-tests.el: New test file.
14443 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14445         Speed up x_real_pos_and_offsets using XCB
14447         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
14448         all X calls, and pipeline requests when possible, collecting results
14449         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
14451 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14453         Enable use of XCB for checking window manager state
14455         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
14456         of XGetWindowProperty plus error-catching, since we can explicitly
14457         check for errors in the XCB version.  This eliminates 3 XSync calls on
14458         top of the round-trip actually fetching the information.
14460 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14462         Detect XCB and save a connection handle
14464         * configure.ac: If using X11, check for XCB libraries and header.
14465         * src/Makefile.in (XCB_LIBS): Define.
14466         (LIBX_EXTRA): Include it.
14468         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
14469         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
14470         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
14472 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14474         Reduce some data dependencies between X calls
14476         Gains nothing in the traditional-Xlib code, but more closely aligns
14477         with how the XCB version will work.
14479         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
14480         send coordinates (0,0) to the X server and add in the real coordinates
14481         after getting the response.  Move XGetGeometry for outer window inside
14482         error-trapping block.  Use DPY variable more, since it's available.
14484 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14486         Use color cache for creating bitmap
14488         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
14489         Set attributes to use the caching color allocator.  Initialize and
14490         free the cache.
14492 2015-11-12  Eli Barzilay  <eli@barzilay.org>
14494         Add "^" to the interactive specs of `dired-next/previous-line'
14496         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
14497         to bind these commands to the arrow keys, and that means that they work
14498         better with a "^" in the `interactive' declaration so selection works
14499         as expected.
14501 2015-11-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14503         Sync with soap-client repository, version 3.0.2
14505         * lisp/net/soap-client.el: Bump version to 3.0.2.
14507         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
14509         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
14510         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
14512         * lisp/net/soap-client.el: Support Emacs versions that do not have
14513         define-error.
14515         * lisp/net/soap-inspect.el: Remove version header.
14517         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
14518         format.
14520 2015-11-11  Alan Mackenzie  <acm@muc.de>
14522         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
14524         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
14525         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
14526         (c-guess-basic-syntax):
14527         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
14528         (c-get-fallback-scan-pos): "New" function (existed several years ago).
14529         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
14530         c-get-fallback-scan-pos.
14531         (c-parse-state-1): Handle 'BOD strategy.
14533         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
14534         (c-font-lock-fontify-region): Remove bindings of
14535         open-paren-in-column-0-is-defun-start to nil.
14537         * doc/misc/cc-mode.texi (Performance Issues)
14538         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
14540 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
14542         * lisp/obarray.el: Fix shadowed variables.
14543         (obarray-map, obarray-remove, obarray-put, obarray-get):
14544         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
14546 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
14548         Avoid error in submitting a form with EWW
14550         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
14551         CHUNK to be nil.  (Bug#21881)
14553 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
14555         Rename seq-p and map-p to seqp and mapp
14557         * lisp/emacs-lisp/seq.el (seqp): New name.
14558         * lisp/emacs-lisp/map.el (mapp): New name.
14559         * doc/lispref/sequences.texi: Update the documentation for seqp.
14560         * test/automated/map-tests.el: Update the tests for mapp.
14562 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
14564         Rename obarray-p to obarrayp
14566         * lisp/obarray.el (obarrayp): New name.
14567         * test/automated/obarray-tests.el: Update the tests.
14569 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
14571         Rename obarray-foreach to obarray-map
14573         * lisp/obarray.el (obarray-map): New name.
14574         * test/automated/obarray-tests.el: Update the corresponding tests.
14576 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
14578         New file with obarray functions.
14580         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
14581         * test/automated/obarray-tests.el: New file.
14583 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
14585         Implement tray notifications for MS-Windows
14587         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
14588         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
14589         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
14590         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
14591         (EMACS_NOTIFICATION_MSG): New macros.
14592         (NI_Severity): New enumeration.
14593         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
14594         (delete_tray_notification, Fw32_notification_notify)
14595         (Fw32_notification_close): New functions.
14596         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
14597         keywords used by w32-notification-notify.
14599         * doc/lispref/os.texi (Desktop Notifications): Describe the native
14600         w32 tray notifications.
14602 2015-11-11  Alan Mackenzie  <acm@muc.de>
14604         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
14606         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
14607         Windows" and new @defun selected-window-group.
14608         (Window Start and End): Describe new &optional parameter GROUP and
14609         ...-group-function for window-start, window-end, set-window-start, and
14610         pos-visible-in-window-p.
14611         (Textual Scrolling) Describe the same for recenter.
14612         doc/lispref/positions.texi (Screen Lines): Describe the same for
14613         move-to-window-line.
14615         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
14616         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
14617         new optional parameter "group".  At the beginning of each, check whether the
14618         corresponding ...-group-function is set to a function, and if so execute this
14619         function in place of the normal processing.
14620         (syms_of_window): Define symbols for the six new variables below.
14621         (window-start-group-function, window-end-group-function)
14622         (set-window-start-group-function, recenter-group-function)
14623         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
14624         New permanent local buffer local variables.
14625         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
14626         Fpos_visible_in_window_p.
14628         lisp/window.el (selected-window-group-function): New permanent local buffer
14629         local variable.
14630         (selected-window-group): New function.
14632         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
14633         enable, kill them at mode disable.  Add/remove follow-after-change to/from
14634         after-change-functions.
14635         (follow-start-end-invalid): New variable.
14636         (follow-redisplay): Manipulate follow-start-end-invalid.
14637         (follow-after-change, follow-window-start, follow-window-end)
14638         (follow-set-window-start, follow-pos-visible-in-window-p)
14639         (follow-move-to-window-line, follow-sit-for): New functions.
14641         lisp/isearch.el (isearch-call-message): New macro.
14642         (isearch-update, with-isearch-suspended, isearch-del-char)
14643         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
14644         (with-isearch-suspended): Rearrange code such that isearch-call-message is
14645         invoked before point is moved.
14646         (isearch-message): Add comment about where point must be at function call.
14647         (isearch-search): Remove call to isearch-message.
14648         (isearch-lazy-highlight-window-group): New variable.
14649         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
14650         the battery of tests to ...
14651         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
14652         Note: (sit-for 0) is still called.
14653         (isearch-lazy-highlight-update): Check membership of
14654         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
14655         property.
14656         (isearch-update, isearch-done, isearch-string-out-of-window)
14657         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
14658         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
14659         (isearch-lazy-highlight-update): Call the six amended primitives (see
14660         src/window.c above) with the new `group' argument set to t, to cooperate
14661         with Follow Mode.
14663 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
14665         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
14667         * lisp/net/tramp.el (tramp-handle-file-equal-p)
14668         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
14669         Harvey Chapman <hchapman@3gfp.com>.
14671         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
14672         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
14673         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
14674         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
14676 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
14678         * CONTRIBUTE: Encourage adding tests.
14680         Based on this post from John Wiegley:
14682           From: "John Wiegley" <johnw@newartisans.com>
14683           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
14684           To: Juanma Barranquero <lekktu@gmail.com>
14685           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
14686               emacs-devel <emacs-devel@gnu.org>
14687           Date: Wed, 28 Oct 2015 18:45:29 -0700
14688           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
14690           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
14692 2015-11-10  David Reitter  <david.reitter@gmail.com>
14694         Avoid creating notification objects when possible
14696         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
14697         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
14698         functions that do not require a notification object.  When needed,
14699         define NSWindowDidEnterFullScreenNotification to allow for compilation
14700         on OS X 10.6.8.
14702 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
14704         Move INTEGER_TO_CONS body out of .h file
14706         * src/data.c (INTBIG_TO_LISP): New macro, with most
14707         of the contents of the old INTEGER_TO_CONS.
14708         (intbig_to_lisp, uintbig_to_lisp): New functions.
14709         * src/lisp.h (INTEGER_TO_CONS):
14710         Simplify by using EXPR_SIGNED and the new functions.
14711         This shrinks code size a bit, and makes it easier to
14712         put a breakpoint on handling of large integers.
14714 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
14716         Merge from gnulib
14718         This incorporates:
14719         2015-11-10 intprops: new public macro EXPR_SIGNED
14720         2015-11-10 intprops: fix typo in clang port
14721         * lib/intprops.h: Copy from gnulib.
14723 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
14725         Spelling fixes
14727         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
14728         Fix misspelling in output.
14730 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14732         * doc/lispref/variables.texi (Directory Local Variables):
14733         Document dir-locals wildcards.
14735         * lisp/files.el (dir-locals-file): Point to Info node.
14737         * doc/emacs/custom.texi (Directory Variables):
14738         Document dir-locals wildcards.
14740         * etc/NEWS: Document new functionality.
14742 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14744         * lisp/files.el: Don't allow customization of dir-locals sorting.
14745         In retrospect, this is not a good idea for the same reason that
14746         `dir-locals-file' is a defconst, because it is important that this
14747         behaviour be "uniform across different environments and users".
14748         Sure, the user can still change the sorting with a hack, but we
14749         shouldn't encourage them to change it.
14750         (dir-locals--all-files): Return list in the order returned by
14751         `file-expand-wildcards'.
14752         (file-expand-wildcards): Document the sorting predicate used.
14753         (dir-locals-sort-predicate): Delete variable.
14755 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14757         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
14759         * lisp/isearch.el (search-default-regexp-mode): Change default value.
14761 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14763         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
14764         `locate-dominating-file' will now keep looking if the files it finds in
14765         a given directory are unreadable (or not files).
14767 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14769         * lisp/files.el (dir-locals-file): Allow wildcards.
14770         (dir-locals-find-file, dir-locals-collect-variables)
14771         (dir-locals-read-from-file): Update accordingly.
14772         (hack-dir-local-variables): Rename a local variable.
14774         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
14776         * lisp/help-fns.el (describe-variable): Update accordingly.
14778         * .gitignore: Add .dir-locals?.el.
14780 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14782         * lisp/emacs-lisp/map.el (map-merge-with): New function.
14784         * test/automated/map-tests.el (test-map-merge-with): New test.
14786 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
14788         Fix some recently-perturbed bookmark autoloads
14790         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
14791         (bookmark-set): Restore autoload.
14792         (bookmark-set-no-overwrite): Add autoload.
14794         Thanks to Juanma Barranquero for noticing the autoload problems
14795         introduced by my recent commit adding/changing the above functions
14796         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
14798 2015-11-09  Noah Friedman  <friedman@splode.com>
14800         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
14801         the start of buffer.  I don't recall if older versions of gdb were
14802         less strict but you cannot dump a 0-length range in gdb 7.9.1.
14804 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
14806         * lisp/progmodes/project.el: Update Commentary.
14808         Merge branch 'project-next'
14810 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
14812         Fold `project-ask-user' into `project-current'
14814         * lisp/progmodes/project.el (project-find-functions): Remove
14815         `project-ask-user'.
14816         (project-ask-user): Remove function and the corresponding
14817         `project-roots' implementation.
14818         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
14819         user in case there's no project in the current directory.  Update
14820         all callers.
14822 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
14824         When VC detects a conflict, specify which file
14826         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
14827         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
14828         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
14829         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
14830         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
14831           to display a standard message that specifies the conflicted file.
14833         Before this change, the message VC used for indicating a conflicted
14834         file was just "There are unresolved conflicts in this file" without
14835         naming the file (and this language was duplicated in several places).
14836         After this change, it's "There are unresolved conflicts in file FOO"
14837         (and this language is now centralized in one function in vc.el).
14839         Justification: It's important for the message to name the conflicted
14840         file because the moment when VC realizes a file is conflicted does not
14841         always come interactively.  For example, some people automatically
14842         find a set of Org Mode files on startup, and may keep those .org files
14843         under version control.  If any of the files are conflicted, the user
14844         just sees some messages fly by, and might later check the "*Messages*"
14845         buffer to find out what files were conflicted.  I'm not saying this
14846         happened to me or anything; it's a purely hypothetical example.
14848 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
14850         Fix assertion violation in define-key
14852         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
14853         objects.  Reported by Drew Adams <drew.adams@oracle.com>
14854         and Juanma Barranquero <lekktu@gmail.com>.
14856 2015-11-09  Dima Kogan  <dima@secretsauce.net>
14858         Fix a memory leak in GC of font cache
14860         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
14861         entities if some of the fonts it references are marked.  This
14862         plugs a memory leak.  (Bug#21556)
14864 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
14866         Use INT_ADD_WRAPV etc. to check integer overflow
14868         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
14869         * src/buffer.c (record_overlay_string, overlay_strings):
14870         * src/casefiddle.c (casify_object):
14871         * src/ccl.c (Fccl_execute_on_string):
14872         * src/character.c (char_width, c_string_width, lisp_string_width)
14873         (count_size_as_multibyte, string_escape_byte8):
14874         * src/coding.c (coding_alloc_by_realloc, produce_chars):
14875         * src/data.c (arith_driver):
14876         * src/dispnew.c (realloc_glyph_pool, init_display):
14877         * src/editfns.c (styled_format):
14878         * src/fns.c (Ffillarray):
14879         * src/ftfont.c (ftfont_shape_by_flt):
14880         * src/gnutls.c (gnutls_hex_string):
14881         * src/gtkutil.c (get_utf8_string):
14882         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
14883         * src/keymap.c (Fkey_description):
14884         * src/lisp.h (SAFE_ALLOCA_LISP):
14885         * src/term.c (encode_terminal_code):
14886         * src/tparam.c (tparam1):
14887         * src/xselect.c (x_property_data_to_lisp):
14888         * src/xsmfns.c (smc_save_yourself_CB):
14889         * src/xterm.c (x_term_init):
14890         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
14891         more-complicated code involving division and/or
14892         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
14893         subtraction and/or INT_ADD_OVERFLOW.
14894         * src/casefiddle.c (casify_object): Simplify multibyte size check.
14895         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
14896         * src/data.c (arith_driver): Also check for division overflow,
14897         as that’s now possible given that the accumulator can now contain
14898         any Emacs integer.
14899         * src/lisp.h (lisp_word_count): Remove; no longer used.
14901 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
14903         Make sure that the ignore file exists
14905         * lisp/vc/vc.el (vc-default-ignore-completion-table):
14906         Make sure that the ignore file exists.
14908 2015-11-09  Michael Sperber  <mike@xemacs.org>
14910         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
14911         `gnus-summary-delete-article` in a way that also works on XEmacs.
14913 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
14915         Add support for retrieving paths to JSON elements
14917         Add support for retrieving the path to a JSON element. This can for
14918         instance be useful to retrieve paths in deeply nested JSON
14919         structures.
14921         * lisp/json.el (json-pre-element-read-function)
14922         (json-post-element-read-function): New variables to hold pre- and post
14923         read callback functions for `json-read-array' and `json-read-object'.
14924         (json--path): New variable used internally by `json-path-to-position'.
14925         (json--record-path, json--check-position): New functions used
14926         internally by `json-path-to-position'.
14927         (json-path-to-position): New function for retrieving the path to a
14928         JSON element at a given position.
14929         (json-read-object, json-read-array): Call
14930         `json-pre-element-read-function' and `json-post-element-read-function'
14931         when set.
14933         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
14934         (test-json-path-to-position-with-arrays)
14935         (test-json-path-to-position-no-match): New tests for
14936         `json-path-to-position'.
14938 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
14940         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
14942         This really should been part of my previous commit
14943         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
14945 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
14947         Offer non-overwrite bookmark setter (Bug#15746)
14949         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
14950         what `bookmark-set' used to do, but with more choices for overwrite
14951         vs push, and with minor changes to the interactive prompt format.
14952         (bookmark-set): Rewrite as wrapper around above.
14953         If overwriting, inform the user of that in the prompt.
14954         (bookmark-set-no-overwrite): New function, also done as wrapper.
14955         Bind to "M" in `ctl-x-r-map' autoloads.
14956         (bookmark-map): Similarly bind "M" here.
14958 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
14960         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
14962 2015-11-08  Alan Modra  <amodra@gmail.com>
14964         ELF unexec: Don't insert a new section
14966         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
14967         don't need to mess with symbol st_shndx, or section sh_link and
14968         sh_info.
14970         This does lead to eu-elflint complaints about symbols defined in .bss
14971         with a needed version, because normally it is undefined symbols that
14972         have needed versions;  Defined symbols have version definitions.
14973         The exception is symbols defined by the linker in .dynbss for
14974         variables copied from a shared library in order to avoid text
14975         relocations, with copy relocs to copy their initial values from the
14976         shared library.  These symbols are both defined and have needed
14977         versions, and eu-elflink only expects to see them in SHT_NOBITS
14978         sections.  Of course there is no real problem with having such symbols
14979         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
14981         * src/unexelf.c: Delete outdated comments.
14982         (PATCH_INDEX): Delete.
14983         (find_section): Delete.
14984         (unexec): Don't add a new section.  Instead reuse the last bss
14985         section, extending it to cover dumped data.  Make bss sections
14986         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
14987         st_shndx.  Rename bss sections.
14989 2015-11-08  Alan Modra  <amodra@gmail.com>
14991         ELF unexec: Drive from PT_LOAD header rather than sections
14993         This rewrites bss handling in the ELF unexec code.  Finding bss
14994         sections by name results in complicated code that
14995         - does not account for all names of possible bss sections,
14996         - assumes specific ordering of bss sections,
14997         - can wrongly choose a SHT_NOBITS section not in the bss segment,
14998         - incorrectly calculates bss size (no accounting for alignment gaps),
14999         - assumes .data and .bss are in the same segment.
15001         All of these problems and more are solved by finding the bss segment
15002         in PT_LOAD headers, ie. the address range included in p_memsz but not
15003         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
15004         in that address range.
15006         * src/unexelf.c: Delete old ppc comment.
15007         (OLD_PROGRAM_H): Define.
15008         (round_up): Delete.
15009         (unexec): Don't search for bss style sections by name.  Instead,
15010         use the last PT_LOAD header address range covered by p_memsz
15011         but not p_filesz and match any SHT_NOBITS section in that
15012         address range.  Simplify initialization of section header vars.
15013         Don't assume that section headers are above bss segment.  Move
15014         copying of bss area out of section loop.  Align .data2 section
15015         to 1, since it now covers the entire bss area.  For SHT_NOBITS
15016         sections in the bss segment, leave sh_addr and sh_addralign
15017         unchanged, but correct sh_offset.  Clear memory corresponding
15018         to SHT_NOBITS .plt section.  Delete comment and hacks for
15019         sections partly overlapping bss range now that the full range
15020         is properly calculated.  Delete now dead .sbss code.
15021         (Bug#20614)
15023 2015-11-08  Alan Modra  <amodra@gmail.com>
15025         ELF unexec: R_*_NONE relocs
15027         These should be ignored on all targets.
15029         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
15030         not just Alpha.  Comment on reloc size assumption.
15032 2015-11-08  Alan Modra  <amodra@gmail.com>
15034         ELF unexec: _OBJC_ symbols in bss sections
15036         This code assumed that there was only one bss section.  Rather than
15037         checking for a particular index, check the section type.  Also, handle
15038         the possibility that the section was SHT_NOBITS originally and is
15039         unchanged, in which case no clearing is needed (and sh_offset isn't
15040         necessarily valid, which can lead to a wild memset).
15042         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
15043         bss sections.
15045 2015-11-08  Alan Modra  <amodra@gmail.com>
15047         ELF unexec: Symbol table patching
15049         No st_shndx value larger than SHN_LORESERVE should be changed.
15050         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
15051         SHN_LORESERVE.  Error on SHN_XINDEX.
15053 2015-11-08  Alan Modra  <amodra@gmail.com>
15055         ELF unexec: Merge Alpha and MIPS COFF debug handling
15057         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
15058         Don't find .mdebug section index, find the section in the loop.
15059         Allow for unlikely possibility that .mdebug is located at sh_offset
15060         before bss segment, by calculating move from difference in
15061         sh_offset rather than just assuming new_data2_size.  Simplify
15062         cbLineOffset handling.
15064 2015-11-08  Alan Modra  <amodra@gmail.com>
15066         ELF unexec: Tidy code
15068         Separate out some of the more mechanical changes so following patches
15069         are smaller.
15071         * src/unexelf.c (unexec): Rearrange initialization of program
15072         header vars.  Use pointer vars in loops rather than indexing
15073         section header array via macros.  Simplify _OBJC_ sym code
15074         and reloc handling code.
15076 2015-11-08  Alan Modra  <amodra@gmail.com>
15078         ELF unexec: Correct section header index
15080         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
15081         it should have been using "NEW_SECTION_H (nn)" to find the name of the
15082         section currently being processed.  Of course, before the bss
15083         sections, n and nn have the same value, so this doesn't matter except
15084         in the case of .sbss.  For .sbss this probably meant .bss (most likely
15085         the next section) was copied from memory.  A later patch removes the
15086         bogus .sbss handling anyway.
15088         * src/unexelf.c (unexec): Use correct index to look up names.
15090 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
15092         Fix Bug#21841
15094         * lisp/filenotify.el (file-notify--rm-descriptor):
15095         Use `descriptor' instead of computing its value.
15096         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
15097         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
15098         (Bug#21841)
15100 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
15102         Remove dirs in vc project roots from the the vc project library roots
15104         * lisp/progmodes/project.el (project-library-roots):
15105         Remove directories inside the project roots from the result.
15106         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
15108 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
15110         Move and rename xref-find-regexp to the project package
15112         * lisp/progmodes/project.el (project-find-regexp)
15113         (project--read-regexp)
15114         (project--find-regexp-in): New functions.
15116         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
15117         xref--show-xrefs.  Use in existing callers in place of that
15118         function.
15119         (xref--show-xrefs): Only do the "show" part.
15120         (xref-find-regexp): Rename, more or less, to
15121         project-or-libraries-find-regexp.
15123 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
15125         Abolish temporary buffer management for xref
15127         * lisp/progmodes/xref.el (xref--temporary-buffers)
15128         (xref--current)
15129         (xref--inhibit-mark-current)
15130         (xref--mark-selected): Remove.  Remove all references.
15131         (xref--show-xrefs): Do not construct the
15132         list of the temporary buffers, nor pass it along.
15134 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
15136         Rename "search path" to "library roots"
15138         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
15139         of the elements from CL-LIST1.
15141         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
15142         Update WRT to the above change.
15144         * lisp/progmodes/project.el (project-search-path-function): Rename
15145         to project-library-roots-function, update the documentation and
15146         references.
15147         (project-search-path): Likewise, to project-library-roots.
15148         (project-roots): Clarify documentation.
15149         (project-vc-search-path): Likewise, to project-vc-library-roots.
15150         (project-library-roots): In addition to the renames, thread the
15151         results through file-name-as-directory.
15152         (project-prune-directories): Accept a variable number of
15153         arguments.  Rename to project-combine-directories.
15154         (project-subtract-directories): New function.
15156         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
15157         Append project-roots and project-library-roots together.
15159         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
15161 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
15163         Prefer xpalloc to doubling buffers by hand
15165         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
15166         (read1): Use it for simplicity.
15167         * src/macros.c (store_kbd_macro_char):
15168         * src/minibuf.c (read_minibuf_noninteractive):
15169         * src/term.c (encode_terminal_code):
15170         * src/xrdb.c (magic_db):
15171         Prefer xpalloc to growing buffers by hand.
15172         This doesn’t fix any bugs, but simplifies the code a bit.
15174 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
15176         Merge from gnulib
15178         This incorporates:
15179         2015-11-05 timespec-sub: fix overflow bug; add tests
15180         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
15181         2015-11-03 intprops: add parentheses
15182         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
15183         Copy from gnulib.
15185 2015-11-07  David Reitter  <david.reitter@gmail.com>
15187         Provide NS notification objects where required to eliminate warnings
15189         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
15190         Call notification functions with notification objects
15191         as per delegate APIs.
15193 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
15195         Add test for bug #21824
15197         * test/automated/buffer-tests.el: New file.
15198         (overlay-modification-hooks-message-other-buf): New test.
15200 2015-11-07  Kelvin White  <kwhite@gnu.org>
15202         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
15204 2015-11-07  David Reitter  <david.reitter@gmail.com>
15206         Ignore fullscreen exit notifications on NS when frame is dead
15208         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
15209         (windowDidExitFullScreen:): Return if frame is dead.
15210         These functions may be called when a fullscreen frame
15211         is closed; they are called before, not after.
15213         May address Bug#21428.
15215 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
15217         Speed up lookup in redisplay--variables
15219         * lisp/frame.el (redisplay--variables): Make it a hash-table.
15221         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
15222         as a hash-table.  This speeds up this function by an order of
15223         magnitude: where previously a setq was slowed down by 100% by
15224         introducing the maybe_set_redisplay test, it is now only 5%
15225         slower.
15226         (syms_of_xdisp) <redisplay--variables>: Doc fix.
15228 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15230         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
15232         The defsubst was being created as:
15233             (cl-defsubst name (args) ("DOC") ...)
15235         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
15236         Add test.
15238 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
15240         Update doc string of hexl-mode
15242         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
15244 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
15246         Fix error in copy-abbrev-table
15248         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
15249         property of the abbrev-table.  (Bug#21828)
15251         * test/automated/abbrev-tests.el: New file.
15253 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
15255         Add test to auto-revert-tests.el for Bug#21841
15257         * test/automated/auto-revert-tests.el
15258         (auto-revert-test01-auto-revert-several-files): New test.
15259         (auto-revert-test02-auto-revert-tail-mode)
15260         (auto-revert-test03-auto-revert-mode-dired): Rename them.
15262 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
15264         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
15266 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
15268         In x_consider_frame_title don't set title of tooltip frames
15270         * src/xdisp.c (x_consider_frame_title): Return immediately for
15271         tooltip frames to avoid displaying empty tooltips.
15273 2015-11-06  Anders Lindgren  <andlind@gmail.com>
15275         Fixed NextStep fullscreen problem (bug#21770).
15277         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
15278         fullscreen frames.
15280 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
15282         Ensure redisplay after evaluation
15284         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
15285         Revert last change.
15286         * lisp/frame.el (redisplay--variables): Populate the
15287         redisplay--variables list.
15288         * src/xdisp.c (maybe_set_redisplay): New function.
15289         (syms_of_xdisp) <redisplay--variables>: New variable.
15290         * src/window.h (maybe_set_redisplay): Declare prototype.
15291         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
15293 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
15295         * test/automated/subr-tests.el (subr-test-when): Fix again.
15297 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
15299         Don't invoke overlay modification hooks in wrong buffer
15301         * src/buffer.c (report_overlay_modification): When called with
15302         AFTER non-zero, don't invoke overlay modification hooks if the
15303         buffer recorded in last_overlay_modification_hooks is different
15304         from the current buffer.  (Bug#21824)
15306 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
15308         * admin/notes/repo: Fix a few obsolete references to Bazaar.
15310 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
15312         * test/automated/subr-tests.el (subr-test-when): Fix test.
15314 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
15316         Avoid division by zero crash observed by Yuan MEI
15318         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
15320         * src/dispnew.c (required_matrix_height, required_matrix_width):
15321         Avoid division by zero.
15322         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
15323         dpyinfo->smallest_char_width to 1.
15325 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
15327         Ensure redisplay after "C-x C-e"
15329         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
15330         redisplay happens to account for any side effects of the evaluated
15331         sexp.  (Bug#21835)
15333 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
15335         Skip some file notification tests for cygwin
15337         * test/automated/file-notify-tests.el (file-notify--test-with-events):
15338         Remove argument TIMEOUT.  Adapt all callees.
15339         (file-notify-test02-events, file-notify-test04-file-validity):
15340         Skip for cygwin.  (Bug#21804)
15342 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
15344         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
15346 2015-11-05  Daiki Ueno  <ueno@gnu.org>
15348         Suppress redundant Pinentry startup messages
15350         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
15351         * lisp/epg.el: Declare `pinentry-start'.
15352         (epg--start): Call `pinentry-start' with QUIET argument set.
15354 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
15356         * doc/emacs/ack.texi (Acknowledgments): Updates.
15358 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
15360         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
15361         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
15363 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
15365         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
15366         Add prettification support for \times.
15368 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
15370         * test/automated/process-tests.el: Skip tests when bash is unavailable.
15371         (process-test-sentinel-accept-process-output)
15372         (process-test-sentinel-sit-for): skip-unless bash executable found.
15374 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
15376         Add test for bug #21831
15378         * test/automated/process-tests.el
15379         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
15380         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
15382 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
15384         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
15386         (eieio--generic-static-object-generalizer): Fix typo.
15387         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
15388         like the underlying cause of bug#17852 was fixed in the mean time.
15390 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15392         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
15394         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
15395         It breaks bootstrapping (duh).
15397 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15399         * lisp/files.el (report-errors): Obsolete.
15401         (normal-mode, hack-local-variables, dir-locals-find-file):
15402         Use `with-demoted-errors' instead.
15404 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15406         * lisp/subr.el (when): Use `macroexp-progn'.
15408         * test/automated/subr-tests.el (subr-test-when): New test.
15410 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
15412         * lisp/progmodes/xref.el: Doc fixes.
15413         (xref-make-file-location, xref-make-buffer-location, xref-make)
15414         (xref-make-bogus-location, xref-make-match): Add cross-references.
15415         (xref--insert-xrefs): Fix typo in docstring.
15417 2015-11-04  Anders Lindgren  <andlind@gmail.com>
15419         Render fringe bitmaps correctly on NextStep (bug#21301)
15421         The fringe bitmaps were inverted, the background was not transparent,
15422         the image data was horizontally mirrored, and periodic fringe bitmaps
15423         were not supported.
15425         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
15426         When both background and foreground colors are 0, set the background
15427         alpha channel to 0 (making the background transparent).  When
15428         copying the image data, do this from the most significant bit
15429         (leftmost) to the least (rightmost), to avoid mirroring.
15430         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
15431         Add support for periodic images (e.g. the empty line indicator).
15433 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
15435         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
15437 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
15439         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
15441         * admin/MAINTAINERS: Add thunk.el.
15443 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
15445         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
15447 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
15449         Fix a stupid error in gfilenotify.c
15451         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
15452         if we've got a `deleted' signal AND the file name is the watched one.
15454 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
15456         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
15458         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
15459         Use case-insensitive string compare for file names.
15460         (emacs-test-dir): Add 'downcase' to cause case differences (at
15461         least on my system).
15463 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
15465         flymake-tests.el (warning-predicate-rx-gcc): Fix check
15467         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
15468         Also check that "make" is available, not just "gcc".
15470 2015-11-02  Ken Brown  <kbrown@cornell.edu>
15472         Document behavior of collation on Cygwin
15474         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
15475         expected failure on Cygwin.
15476         * doc/lispref/strings.texi (Text Comparison): Document that
15477         punctuation and whitespace are not ignored for sorting on Cygwin.
15479 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
15481         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
15483 2015-11-01  Glenn Morris  <rgm@gnu.org>
15485         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
15486         (Bug#21794)
15487         * test/automated/f90.el (f90-test-bug21794): New test.
15489 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
15491         Fix incompatibility with TCC in test for bug#18745
15493         * test/automated/process-tests.el (process-test-quoted-batfile):
15494         Remove spaces unrelated to the bug being tested.
15496 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
15498         Improve completion in tramp-gvfs.el
15500         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
15501         Rename from `tramp-zeroconf-parse-service-device-names'.
15502         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
15503         with `tramp-zeroconf-parse-device-names'.
15504         (tramp-gvfs-parse-device-names): New defun.
15505         (top): Use it when `tramp-zeroconf-parse-device-names' is not
15506         applicable.
15508         * lisp/net/tramp.el (tramp-set-completion-function): The argument
15509         could also be a zeroconf service type.
15511 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15513         * lisp/net/ntlm.el: Change version to 2.0.0.
15515 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
15517         Fix bug#21762
15518         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
15519         `eql' instead of `=' to accommodate the case that (syntax-after (point))
15520         returns nil.
15521         * test/automated/python-tests.el (python-indent-inside-paren-7):
15522         New test.
15524 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
15526         * test/automated/python-tests.el: Avoid warnings.
15527         (python-tests-with-temp-buffer, python-tests-with-temp-file):
15528         Bind `python-indent-guess-indent-offset' to nil.
15530 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
15532         * src/alloc.c: Silence compiler warnings.
15533         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
15535 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
15537         * etc/NEWS: Fix js-jsx-mode entry punctuation.
15539 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
15541         Add JSX indentation via js-jsx-mode  (Bug#21799)
15543         * lisp/progmodes/js.el: Add JSX indentation support.
15544         (js--jsx-end-tag-re)
15545         (js--jsx-after-tag-re): New variables.
15546         (js--jsx-find-before-tag)
15547         (js--jsx-indented-element-p)
15548         (js--as-sgml)
15549         (js--expression-in-sgml-indent-line)
15550         (js-jsx-indent-line)
15551         (js-jsx-mode): New functions.
15552         * test/indent/js-jsx.js: New file.
15553         * etc/NEWS: Add information about js-jsx-mode.
15555 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
15557         Minor fix in filenotify.el
15559         * lisp/filenotify.el (file-notify--event-file-name)
15560         (file-notify--event-file1-name): Normalize result with
15561         `directory-file-name'.
15563 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
15565         Avoid errors in redisplay--pre-redisplay-functions
15567         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
15568         use 'bobp', instead compare window-point with 1.  (Bug#21730)
15570 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
15572         Merge from gnulib
15574         This incorporates:
15575         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
15576         2015-10-25 stdalign: port to Sun C 5.9
15577         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
15578         Copy from gnulib.
15580 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
15582         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
15583         (w32_compare_strings): Adjust for the correction.
15585 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
15587         * test/automated/vc-tests.el (vc-test--state)
15588         (vc-test--working-revision, vc-test--checkout-model):
15589         Add result messages.
15591 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15593         * test/automated/faces-tests.el: Add another test
15595 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15597         * lisp/faces.el (faces--attribute-at-point): Fix bug
15598         introduced by previous commit.
15600 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15602         * test/automated/faces-tests.el: New file.
15604 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15606         * lisp/faces.el: Refactor common code and fix a bug.
15607         (faces--attribute-at-point): New function.  Fix a bug when the
15608         face at point is a list of faces and the desired attribute is not
15609         on the first one.
15610         (foreground-color-at-point, background-color-at-point): Use it.
15612 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
15614         * etc/tutorials/TUTORIAL.translators: Fix PL names.
15616 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
15618         * lisp/character-fold.el: Provide `character-fold'.
15620 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
15622         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
15623         for Gnus and ivy.
15625 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
15627         Some minor fixes for tramp-gvfs.el
15629         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
15630         An attribute returned by gvfs-info might be empty.  In case of
15631         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
15632         (tramp-zeroconf-parse-service-device-names): New defun.
15633         Derived from `tramp-zeroconf-parse-workstation-device-names'.
15634         (top): Add completion functions for "afp" and "smb" methods.
15636 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15638         * test/automated/character-fold-tests.el: New file
15640 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15642         * test/automated/sort-tests.el: New file.
15643         Tests in this file are randomly generated and then tested with
15644         regular, reverse, and case-fold sorting.
15646 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
15648         Describe known problems with pinning Emacs to taskbar
15650         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
15651         on Windows 10.  For the details, see the discussion starting at
15652         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
15654 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15656         * lisp/isearch.el: Avoid an error that blocks isearch.
15657         (isearch-update): Don't error if `isearch--current-buffer' has
15658         been killed.
15660         * test/automated/isearch-tests.el (isearch--test-update):
15661         New file.
15663 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
15665         Fix documentation of 'beginning/end-of-buffer'
15667         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
15668         conditions under which the mark will be pushed at the previous
15669         position.  (Bug#21748)
15671 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
15673         Add RefTeX feature idea: editing RefTeX TOC buffers
15675         More face defs for ivy, swiper, ace-window, eshell
15677 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15679         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
15680         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
15681         just VAR.
15682         (auth-source-backend-parse): Use make-instance.
15683         (auth-source-search): Remove unused key args.
15684         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
15685         (auth-source-search-backends): Use slot names rather than their initarg.
15686         (auth-source-netrc-create):
15687         (auth-source-delete):
15688         (auth-source-secrets-create, auth-source-plstore-search)
15689         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
15690         (auth-source-plstore-create, auth-source-netrc-search)
15691         (auth-source-netrc-parse): Remove unused key args.
15692         (auth-source-forget+): Simplify the arglist.
15693         (auth-source-macos-keychain-search-items)
15694         (auth-source-token-passphrase-callback-function): Mark unused args.
15695         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
15696         (pp-escape-newlines): Declare.
15697         (auto-source--symbol-keyword): New function.
15698         (auth-source-plstore-create, auth-source-netrc-create)
15699         (auth-source-netrc-normalize): Use it.
15700         (auth-source-netrc-search): Don't pass :delete to
15701         auth-source-netrc-parse since it doesn't use it.
15702         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
15703         symbol-value to index in keyword args.
15704         (auth-source-macos-keychain-result-append): Avoid setq.
15705         (auth-source-netrc-create): Remove unused vars `file' and `add'.
15706         (auth-source-user-or-password): Remove unused var `cname'.
15708 2015-10-29  Juri Linkov  <juri@linkov.net>
15710         * lisp/dired.el (dired-unmark-all-files-query): Declare.
15711         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
15712         (Bug#21746)
15714 2015-10-29  Juri Linkov  <juri@linkov.net>
15716         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
15717         to go to the beginning of text line instead of command line.
15718         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
15720 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
15722         Fix encoding of saving *Help* buffers
15724         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
15725         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
15727 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15729         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
15730         (cl--generic-derived-specializers): New function.
15731         (cl--generic-derived-generalizer): New generalizer.
15732         (cl-generic-generalizers): New specializer (derived-mode MODE).
15733         (cl--generic-split-args): Apply the rewriter, if any.
15734         (cl-generic-define-context-rewriter): New macro.
15735         (major-mode): Use it to define a new context-rewriter, so we can write
15736         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
15738         * lisp/frame.el (window-system): New context-rewriter so we can write
15739         `(window-system VAL)' instead of (window-system (eql VAL)).
15740         (cl--generic-split-args): Apply the rewriter, if any.
15741         (frame-creation-function): Use the new syntax.
15743         * lisp/term/x-win.el (window-system-initialization)
15744         (handle-args-function, frame-creation-function)
15745         (gui-backend-set-selection, gui-backend-selection-owner-p)
15746         (gui-backend-selection-exists-p, gui-backend-get-selection):
15747         * lisp/term/w32-win.el (window-system-initialization)
15748         (handle-args-function, frame-creation-function)
15749         (gui-backend-set-selection, gui-backend-get-selection)
15750         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
15751         * lisp/term/pc-win.el (gui-backend-get-selection)
15752         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
15753         (gui-backend-set-selection, window-system-initialization)
15754         (frame-creation-function, handle-args-function):
15755         * lisp/term/ns-win.el (window-system-initialization)
15756         (handle-args-function, frame-creation-function)
15757         (gui-backend-set-selection, gui-backend-selection-exists-p)
15758         (gui-backend-get-selection):
15759         * lisp/startup.el (handle-args-function):
15760         * lisp/term/xterm.el (gui-backend-get-selection)
15761         (gui-backend-set-selection): Use the new syntax.
15763 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15765         * test/indent/css-mode.css: Add tests for url(...) syntax.
15767 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15769         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
15770         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
15771         (smie-prec2->grammar): Use `declare'.
15773 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15775         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
15776         (cl--generic-generalizer): Add `name' field.
15777         (cl-generic-make-generalizer): Add corresponding `name' argument.
15778         (cl-generic-define-generalizer): New macro.
15779         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
15780         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
15781         (cl--generic-t-generalizer): Use it.
15782         (cl-generic-ensure-function): Add `noerror' argument.
15783         (cl-generic-define): Use it so we don't follow aliases.
15784         (cl-generic-define-method): Preserve pre-existing ordering of methods.
15785         (cl--generic-arg-specializer): New function.
15786         (cl--generic-cache-miss): Use it.
15787         (cl-generic-generalizers): Only fset a temporary definition
15788         during bootstrap.
15789         (cl--generic-struct-tag, cl--generic-struct-specializers):
15790         Allow extra arguments.
15792         * lisp/emacs-lisp/eieio-compat.el
15793         (eieio--generic-static-symbol-generalizer)
15794         (eieio--generic-static-object-generalizer):
15795         Use cl-generic-define-generalizer.
15796         (eieio--generic-static-symbol-specializers): Allow extra arguments.
15798         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
15799         (eieio--generic-subclass-generalizer):
15800         Use cl-generic-define-generalizer.
15801         (eieio--generic-subclass-specializers): Allow extra arguments.
15803 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15805         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
15807 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
15809         Add "afp" method to Tramp
15811         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
15813         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
15814         (tramp-gvfs-handle-expand-file-name)
15815         (tramp-gvfs-handler-mounted-unmounted)
15816         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
15817         (tramp-gvfs-maybe-open-connection): Support also "afp".
15818         (tramp-gvfs-handle-file-attributes): Handle the case of empty
15819         "owner::user" and "owner::group" entries.
15821 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
15823         Handle negative coordinates in ‘x_calc_absolute_position’
15825         * src/w32term.c (x_calc_absolute_position): Find display origin to
15826         allow for negative coordinates.
15828 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
15830         (internal--syntax-propertize): Save match-data here (bug#21766)
15832         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
15833         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
15835 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
15837         Don't require default-directory to end with a slash
15839         * doc/lispref/files.texi (Magic File Names): Document the change
15840         in unhandled-file-name-directory.
15842         * lisp/url/url-handlers.el
15843         (url-handler-unhandled-file-name-directory): Update accordingly.
15845         * src/buffer.c (default-directory): Update the docsting.
15847         * src/fileio.c (unhandled-file-name-directory): Default to calling
15848         `file-name-as-directory'
15849         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
15851 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15853         * lisp/isearch.el: Delete some outdated comments.
15855 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
15857         Fix eshell/clear not working if the output has a small line count
15859         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
15860         number of newlines to be inserted. This fixes the issue where
15861         eshell/clear wouldn't work if the prompt was not at the bottom of the
15862         window, and the output wasn't too long.
15864 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
15866         * lisp/files.el (write-file): Use vc-refresh-state.
15868         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
15870         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
15872 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
15874         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
15875         (macroexp-unprogn): Make sure we never return an empty list.
15876         (macroexp-if): Remove unused (and unsafe) optimization.
15877         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
15878         occur occasionally.
15880 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
15882         Fix bug#21766 and add test
15883         * lisp/simple.el (delete-trailing-whitespace): Save match data when
15884         calling `skip-syntax-backward'.
15885         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
15886         New test.
15888 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15890         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
15892 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
15894         * src/dispnew.c (init_display): Simplify overflow checking.
15896 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15898         * lisp/character-fold.el (character-fold-to-regexp): Fix case
15899         where string ends in space
15901 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15903         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
15905         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
15907 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15909         * lisp/character-fold.el: Make compatible with lax-whitespace.
15910         (character-fold-to-regexp): Rework internals to play nice with
15911         lax-whitespacing.
15913         When the user types a space, we want to match the table entry for
15914         ?\s, which is generally a regexp like "[ ...]".  However, the
15915         `search-spaces-regexp' variable doesn't "see" spaces inside these
15916         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
15917         manually expose a space).
15919         Furthermore, the lax search engine acts on a bunch of spaces, not
15920         on individual spaces, so if the string contains sequential spaces
15921         like "  ", we need to keep them grouped together like this:
15922         "\\(  \\|[ ...][ ...]\\)".
15924 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15926         * lisp/isearch.el: Refactor momentary messages.
15927         (isearch--momentary-message): New function.
15928         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
15929         (isearch-toggle-invisible): Use it.
15931 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15933         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
15934         (isearch-define-mode-toggle): New macro.
15935         (isearch-toggle-invisible): Rename to
15936         `isearch-define-mode-toggle'.
15937         (isearch-toggle-case-fold, isearch-toggle-invisible)
15938         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
15939         with `isearch-define-mode-toggle'.
15941 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
15943         Avoid using `add-to-list' on a let-local var in tramp-smb.el
15945         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
15946         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
15948 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
15950         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
15951         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
15952         does not exist in XEmacs 21.4.
15954 2015-10-28  Anders Lindgren  <andlind@gmail.com>
15956         Fixed OS X startup crash
15958         Input events started to arrive before ns_term_init() was finished.
15959         Solved by blocking input.  This also seems to correct the "You
15960         can't open the application "Emacs" because it may be damaged or
15961         incomplete" error issued when double-clicking on the Emacs
15962         application.
15964         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
15965         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
15967 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15969         * src/process.c (Fget_buffer_process): Improve docstring.
15970         Document the fact that it doesn't return dead processes.
15972 2015-10-28  Anders Lindgren  <andlind@gmail.com>
15974         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
15976         * src/nsterm.h (struct ns_output): New flag, in_animation.
15977         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
15978         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
15979         in_animation flag around call to "setVisible". Set new tool bar
15980         height before call to setVisible.
15981         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
15982         andColumns:] as this fools the subsequent call to updateFrameSize
15983         from performing the real resize.
15984         (windowDidResize): Don't update anything when in_animation is
15985         non-zero.
15987         Trace output.
15989         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
15990         (EmacsToolbar):
15991         * src/nsterm.m (x_set_window_size, updateFrameSize)
15992         ([EmacsView setRows: andColumns:])
15994 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
15996         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
15998 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
16000         Prettify TeX macros not ending in a word char
16002         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
16003         Prettify macros which don't end in a word character.
16005 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
16007         Pipe Hg commit descriptions through 'tabindent'
16009         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
16010         through 'tabindent'.
16011         (vc-hg-log-view-mode): Set tab-width to 2 locally.
16012         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
16014 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16016         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
16017         (tramp-smb-handle-directory-files): Use `delete-dups'.
16019         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
16021 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16023         * lisp/international/ccl.el: Use lexical-binding.
16024         (ccl-compile-if): Remove unused var `false-ic'.
16025         (ccl-compile-write-repeat): Remove unused var `i'.
16026         (ccl-compile-map-single): Remove unused var `id'.
16027         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
16028         dynamic var `ccl-code'.
16030 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16032         * lisp/json.el (json-new-object): Optimize trivial `list' call.
16034 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16036         * lisp/help.el: Fix bug with incorrect arglist string.
16037         (help-add-fundoc-usage): Don't mistake a mis-formatted string
16038         for a list.
16040 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16042         * lisp/gnus/gnus-topic.el: Silence some warnings.
16043         (gnus-topic-prepare-topic): Remove unused var `topic'.
16044         (gnus-topic-remove-topic): Mark unused arg `hide'.
16045         (gnus-tmp-header): Declare.
16046         (gnus-topic-goto-missing-group): Remove unused var `entry'.
16047         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
16048         (gnus-topic-copy-matching): Mark unused arg `copyp'.
16049         Move initialization of `topic' into its declaration.
16051 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
16053         Minor CEDET fixes
16055         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
16056         Handle warnings from gtags about invalid options.
16057         (cedet-gnu-global-create/update-database): Do incremental update
16058         properly.
16060         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
16061         Get monotone root right.
16063 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
16065         Fall back to polling in autorevert when needed
16067         * lisp/autorevert.el (auto-revert-notify-handler): When a
16068         `stopped' event arrives from file notification, fall back to polling.
16070         * test/automated/file-notify-tests.el
16071         (file-notify-test03-autorevert): Extend test for polling when file
16072         notification ceases to work.
16074 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
16076         Show full commit messages in 'hg log' when appropriate
16078         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
16079         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
16080         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
16082 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
16084         Use a plain SVG file for the icon
16086         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
16087           format instead of the Inkscape SVG format.
16089 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
16091         Fix subtle bug in auto-revert-tests.el
16093         * test/automated/auto-revert-tests.el
16094         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
16095         buffer where it belongs to.  (Bug#21668)
16097 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
16099         * lisp/emacs-lisp/map.el: Better docstrings.
16101         * lisp/emacs-lisp/seq.el: Better docstrings.
16103         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
16105 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
16107         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
16109 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
16111         Clarify that load-path contents should be directory file names
16113         * doc/lispref/files.texi (Directory Names): Define and use "directory
16114         file name".  Recommend `expand-file-name'.
16116         * src/lread.c (load-path): Fix doc string; elements are directory file
16117         names.
16119 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
16121         Fix simple-test.el test
16123         * test/automated/simple-test.el (simple-test--dummy-buffer):
16124         Make sure indentation doesn't use TABs, otherwise the 6th test
16125         might fail.
16127 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
16129         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
16130         `substring' does not account for full width characters.
16132 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
16134         Further work on `stopped' events in filenotify.el
16136         * doc/lispref/os.texi (File Notifications): Rework examples.
16138         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
16139         (file-notify--rm-descriptor, file-notify-callback): Improve check
16140         for sending `stopped' event.
16141         (file-notify-add-watch): Check for more events for `inotify'.
16143         * test/automated/file-notify-tests.el
16144         (file-notify--test-expected-events): New defvar.
16145         (file-notify--test-with-events): Use it.
16146         (file-notify--test-cleanup): Make it more robust when deleting
16147         directories.
16148         (file-notify--test-event-test): Check also for watched directories.
16149         (file-notify--test-event-handler): Suppress temporary .#files.
16150         (file-notify-test02-events, file-notify-test04-file-validity):
16151         Rework `stopped' events.
16152         (file-notify-test05-dir-validity): Wait for events when appropriate.
16154 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
16156         * src/keyboard.c (post-command-hook): Shorten docstring.
16158 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
16160         Fix infinite loop in sh-script's SMIE code
16162         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
16163         loop (bug#21747).
16165 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16167         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
16168         Character-fold search _still_ doesn't play well with
16169         lax-whitespace.  So disable it by default (again) for now.
16171 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16173         * lisp/isearch.el: No visual feedback for default search mode.
16174         During an isearch where character-folding is the default, we don't
16175         want to take up minibuffer space just to tell the user that
16176         "Char-fold " is on.  The same goes for other modes, if the user
16177         changes the default.  In contrast, if the user toggles OFF the
16178         default mode, they should see "Literal", to distinguish it from
16179         the default mode.
16180         (isearch--describe-regexp-mode): Return "" if describing the
16181         default mode, and return "literal " if describing a plain search
16182         and it is not default.
16184 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16186         * test/automated/simple-test.el: New file.
16187         Define tests for `newline' and `open-line'.
16189 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16191         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
16192         Also run `post-self-insert-hook' when called interactively.
16194 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16196         * lisp/simple.el (open-line): Fix docstring.
16197         Also explain apparently redundant line.
16199 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16200             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
16202         Sync with soap-client repository, version 3.0.1
16204         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
16205         Bump version to 3.0.1.
16207         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
16209 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
16211         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
16213 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16215         * src/keyboard.c (post-command-hook): Extend the docstring.
16216         Mainly, explain how to use it without hanging Emacs, or giving the
16217         impression that it is hanging.  Also mention `pre-command-hook'.
16218         (pre-command-hook): Mention `post-command-hook'.
16220 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16222         * lisp/custom.el (custom-declare-variable): Shorten code again.
16223         Without using pcase this time.  We can't use pcase because it is
16224         loaded after custom in loadup.el.  Also add a comment explaining
16225         this to future dummies like me.
16227 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
16229         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
16231 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
16233         Introduce `stopped' event in file notification
16235         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
16236         (file-notify-rm-watch): Use it.
16237         (file-notify-callback): Implement `stopped' event.
16238         (file-notify-add-watch): Mention `stopped' in the docstring.
16239         Check, that upper directory exists.
16241         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
16242         Add two test cases.
16243         (file-notify-test02-events): Handle also `stopped' event.
16244         (file-notify-test04-file-validity): Add another test case.
16246 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
16248         Revert commit that broke 'make bootstrap'
16250         * lisp/custom.el (custom-declare-variable): Revert commit
16251         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
16252         even when pcase has not been defined yet, when doing bootstrapping.
16254 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
16256         Port recent inline functions fix to Standard C
16258         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
16259         All uses rewritten to define the function directly rather than to
16260         use a macro to define the function.  This conforms to Standard C,
16261         which does not allow stray semicolons at the top level.  I hope it
16262         also avoids the problems with TAGS.  Those macros, though clever,
16263         were pretty confusing anyway, and it wasn’t clear they were worth
16264         the aggravation even without the TAGS problem.
16266 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16268         * lisp/isearch.el: Make character-fold search the default again.
16270 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16272         * lisp/character-fold.el: Many improvements.
16273         (character-fold-search-forward, character-fold-search-backward):
16274         New command.
16275         (character-fold-to-regexp): Remove lax-whitespace hack.
16276         (character-fold-search): Remove variable.  Only isearch and
16277         query-replace use char-folding, and they both have their own
16278         variables to configure that.
16280 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16282         * lisp/isearch.el: Generalize definition of regexp-function toggles.
16283         (isearch-specify-regexp-function): New macro for specifying
16284         possible values of `isearch-regexp-function'.
16285         (isearch-toggle-character-fold, isearch-toggle-symbol)
16286         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
16288 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16290         * lisp/isearch.el (search-default-regexp-mode): New variable.
16291         (isearch-mode): Use it.
16293 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16295         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
16296         (search-slow-speed, search-upper-case)
16297         (search-nonincremental-instead, search-whitespace-regexp)
16298         (search-invisible, isearch-hide-immediately)
16299         (isearch-resume-in-command-history, search-ring-max)
16300         (regexp-search-ring-max, search-ring-update, search-highlight)
16301         (isearch-fail): Delete :group entries.
16303 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16305         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
16307 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16309         addpm.c: Silence some warnings.
16311         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
16312         to LPBYTE.
16313         (add_registry): Pass NULL to optional lpClass argument of
16314         RegCreateKeyEx, not an empty string.
16316 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16318         addpm.c: Do not add obsolete GTK libraries to the path.
16320         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
16321         (add_registry): Remove variables `size' and `gtk_key'.
16322         Do not add the GTK DLL directory to the library search path; it is
16323         confusing behavior (in particular, the same Emacs version with and
16324         without invoking addpm will use a different path), and the GTK image
16325         libraries are obsolete anyway.
16327 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16329         addpm.c: Replace existing registry entries, but do not create new ones
16331         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
16332         existing values from previous versions, but do not add new ones; the
16333         key could exist for other reasons unrelated to old Emacsen, like X-style
16334         resources, or to set some environment variables like HOME or LANG, and
16335         in that case we don't want to populate it with obsolete values.
16337 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16339         * nt/addpm.c (add_registry): Do not compute unused return value.
16341 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16343         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
16345         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
16346         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
16347         current behavior because REG_OPTION_NON_VOLATILE is defined to
16348         be 0L anyway, but that option is actually documented only for
16349         RegCreateKeyEx.
16351 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16353         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
16355 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16357         Update frame title when redisplay scrolls selected window
16359         * src/xdisp.c (redisplay_window): Reconsider the frame's title
16360         when the mode-line of the frame's selected window needs to be
16361         updated.
16363 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16365         Update frame title when scrolling the selected window
16367         * src/window.c (wset_update_mode_line): New function, sets either
16368         the window's update_mode_line flag or the global update_mode_lines
16369         variable.
16370         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
16371         (window_scroll_line_based): Call it instead of only setting the
16372         window's update_mode_line flag.
16374 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16376         An even better fix for bug#21739
16378         * src/window.c (set_window_buffer): If the window is the frame's
16379         selected window, set update_mode_lines, not the window's
16380         update_mode_line flag.
16381         * src/buffer.c (Fkill_buffer): Undo last change.
16382         (set_update_modelines_for_buf): Function deleted.
16384 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16385             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
16387         Sync with soap-client repository, version 3.0.0
16389         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
16390         Bump version to 3.0.0.
16392         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
16394         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
16396         * lisp/net/soap-inspect.el: Shorten first line description.
16398         * lisp/net/soap-client.el: Make a small whitespace fix.
16400         * lisp/net/soap-inspect.el: Update copyright years.
16402         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
16403         first use in soap-encode-xs-element.
16405         * lisp/net/soap-client.el (soap-type-is-array?): new defun
16406         (soap-encode-xs-element): handle array elements in this function
16407         (soap-encode-xs-complex-type): flag error if asked to encode an
16408         array type, this is handled in `soap-encode-xs-element'
16410         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
16411         Do not print type for attribute group.
16413         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
16414         New function.
16415         (soap-inspect-xs-attribute-group): Likewise.
16417         * lisp/net/soap-inspect.el
16418         (soap-resolve-references-for-xs-attribute-group): Resolve
16419         references of attributes in an attribute group.
16421         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
16422         type directly, not through soap-wsdl-get.
16424         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
16425         nil if reference attribute is nil.
16427         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
16428         Convert XML schema attributes to xsd:string.
16430         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
16431         New function.
16432         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
16433         (soap-sample-value-for-xs-complex-type): Likewise.
16434         (soap-inspect-xs-attribute): New function.
16435         (soap-inspect-xs-simple-type): Print attributes.
16436         (soap-inspect-xs-complex-type): Likewise.
16438         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
16439         Resolve references for attributes.
16440         (soap-resolve-references-for-xs-complex-type): Likewise.
16442         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
16443         Rename from soap-xml-node-first-child.
16444         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
16445         (soap-xs-parse-simple-type): Likewise.
16447         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
16449         * lisp/net/soap-client.el (soap-invoke-internal): New function.
16450         (soap-invoke-async): Call soap-invoke-internal.
16451         (soap-invoke): Likewise.
16453         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
16454         url-retrieve callback is killed.
16456         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
16457         Rename function.
16458         (soap-parse-wsdl-phase-fetch-imports): Likewise.
16459         (soap-parse-wsdl-phase-parse-schema): Likewise.
16460         (soap-parse-wsdl-phase-fetch-schema): Likewise.
16461         (soap-parse-wsdl-phase-finish-parsing): Likewise.
16462         (soap-parse-wsdl): Update calls.
16464         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
16466         * lisp/net/soap-client.el (soap-invoke-async): New function.
16467         (soap-invoke): Reimplement using soap-invoke-async.
16469         * lisp/net/soap-client.el (soap-parse-server-response):
16470         Improve docstring.
16471         (soap-invoke): Inline call to soap-parse-server-response.
16473         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16474         Prevent incorrect warning.
16476         * lisp/net/soap-client.el (soap-parse-server-response):
16477         Rename soap-process-url-response.  Destroy the mime part.
16478         (soap-invoke): Call soap-parse-server-response.
16480         * lisp/net/soap-client.el: Update copyright date.
16482         * lisp/net/soap-client.el: Fix checkdoc issues.
16484         * lisp/net/soap-client.el: Fix indentation and long lines.
16486         * lisp/net/soap-client.el (soap-time-format): Remove variable.
16487         (soap-encode-xs-basic-type): Simplify date-time format detection.
16488         (soap-decode-xs-basic-type): Remove soap-time-format support.
16490         * lisp/net/soap-client.el (soap-process-url-response): New function.
16491         (soap-fetch-xml-from-url): Call soap-process-url-response.
16492         (soap-parse-wsdl-phase-1): New function.
16493         (soap-parse-wsdl-phase-2): Likewise.
16494         (soap-parse-wsdl-phase-3): Likewise.
16495         (soap-parse-wsdl-phase-4): Likewise.
16496         (soap-parse-wsdl-phase-5): Likewise.
16497         (soap-parse-wsdl): Call phase functions.
16499         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
16500         Remove one-argument and call.
16502         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
16504         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
16505         (soap-parse-schema): Add wsdl argument.  Look up XML schema
16506         imports from wsdl.
16507         (soap-load-wsdl): Do not set soap-xmlschema-imports.
16508         (soap-parse-wsdl): Get XML schema imports from wsdl.
16510         * lisp/net/soap-client.el (soap-current-file): Remove variable.
16511         (soap-wsdl): Add current-file slot.
16512         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
16513         file from wsdl.
16514         (soap-fetch-xml-from-file): Likewise.
16515         (soap-fetch-xml): Likewise.
16516         (soap-load-wsdl): Always create wsdl object first.
16517         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
16519         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
16520         (soap-xs-parse-element): Set is-group slot.
16521         (soap-resolve-references-for-xs-element): Skip is-group elements.
16522         (soap-xs-complex-type): Add is-group slot.
16523         (soap-xs-parse-complex-type): Set is-group slot.
16524         (soap-xs-parse-sequence): Parse xsd:group elements.
16525         (soap-resolve-references-for-xs-complex-type): Inline elements
16526         from referenced xsd:group nodes.
16527         (soap-parse-schema): Parse xsd:group nodes.
16529         * lisp/net/soap-client.el (soap-invoke):
16530         Don't set url-http-version to 1.0.
16532         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16533         Allow choice nodes to accept multiple values.
16535         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
16536         for extra header values.
16538         * lisp/net/soap-client.el (soap-well-known-xmlns):
16539         Add wsa and wsaw tags.
16540         (soap-operation): Add input-action and output-action slots.
16541         (soap-parse-operation): Parse wsaw:Action nodes.
16542         (soap-encode-body): Encode service-url for WS-Addressing.
16543         (soap-create-envelope): Likewise.
16544         (soap-invoke): Update soap-create-envelope call to provide
16545         service-url argument.
16547         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16548         Support xsi:type override attribute.
16549         (soap-decode-array): Likewise.
16551         * lisp/net/soap-client.el (soap-parse-schema):
16552         Handle location attribute.
16554         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
16555         matched validation regexp.
16557         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
16558         Encode xsd:list nodes.
16559         (soap-decode-xs-simple-type): Decode xsd:list nodes.
16561         * lisp/net/soap-client.el (soap-get-candidate-elements):
16562         Fix reference handling.
16564         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
16565         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
16566         (soap-xs-add-list): New function.
16568         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
16569         expected, interpret nil as "false".
16571         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
16572         gYear, gMonthDay, gDay and gMonth.
16574         * lisp/net/soap-client.el (soap-time-format): New variable.
16575         (soap-encode-xs-basic-type): Handle dateTime, time, date,
16576         gYearMonth, gYear, gMonthDay, gDay and gMonth.
16577         (soap-decode-date-time): New function.
16578         (soap-decode-xs-basic-type): Use soap-decode-date-time.
16580         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
16581         after encoding.
16582         (soap-decode-xs-basic-type): Validate value before decoding.
16584         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
16585         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
16587         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
16588         instead of overwriting it.
16589         (soap-validate-xs-simple-type): Add union support.
16591         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
16592         to Emacs regexp using xsdre-translate.
16593         (soap-validate-xs-simple-type): Validate value against pattern.
16595         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
16596         inline simpleType nodes.
16597         (soap-decode-type): Handle union types.
16599         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
16600         attributes.
16602         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
16603         from soap-xs-attribute-group-consolidate, all callers updated
16604         (soap-get-xs-attributes): Rename from
16605         soap-xs-attributes-consolidate, all callers updated
16607         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
16608         (soap-xs-attribute-group): New type.
16609         (soap-xs-parse-attribute-group): New function.
16610         (soap-resolve-references-for-xs-attribute-group): Likewise.
16611         (soap-xs-add-extension): Handle attribute groups.
16612         (soap-resolve-references-for-xs-simple-type): Likewise.
16613         (soap-xs-parse-complex-type): Likewise.
16614         (soap-xs-parse-extension-or-restriction): Likewise.
16615         (soap-resolve-references-for-xs-complex-type): Likewise.
16616         (soap-xs-attribute-group-consolidate): New function.
16617         (soap-xs-attributes-consolidate): Handle attribute groups.
16618         (soap-parse-schema): Likewise.
16620         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
16621         Fix boolean encoding.
16623         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
16624         element names in warnings.
16626         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
16628         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16629         Eliminate invalid warnings for choice types.
16631         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
16632         Also encode base type attributes.
16634         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
16635         warning.  Print e-name in warnings, or element if e-name is nil.
16637         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
16638         (soap-xs-parse-element): Set substitution-group.
16639         (soap-resolve-references-for-xs-element): Populate alternatives slot.
16640         (soap-get-candidate-elements): New function.
16641         (soap-encode-xs-complex-type): Iterate through all candidate elements.
16642         Handle types with nil type indicator.  Fix warning logic.
16644         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
16645         earlier in the file to prevent compiler warning.
16647         * lisp/net/soap-client.el (soap-node-optional): New function.
16648         (soap-node-multiple): Likewise.
16649         (soap-xs-parse-element): Call soap-node-optional and
16650         soap-node-multiple.
16651         (soap-xs-complex-type): Add optional? and multiple? slots.
16652         (soap-xml-get-children-fq): New function.
16653         (soap-xs-element-get-fq-name): Likewise.
16654         (soap-xs-complex-type-optional-p): Likewise.
16655         (soap-xs-complex-type-multiple-p): Likewise.
16656         (soap-xs-attributes-consolidate): Likewise.
16657         (soap-decode-xs-attributes): Likewise.
16658         (soap-decode-xs-complex-type): Decode types with nil type indicator.
16659         Support children that use local namespaces.  Decode attributes.
16660         Add type considerations to optional? and multiple? warnings.
16662         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
16663         Store parsed attributes.
16664         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
16666         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
16667         Don't add the xsi:type attribute (Exchange refuses requests which have
16668         this attribute).
16670         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
16671         correct compiler warnings about unused function arguments and
16672         local variables.
16674         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
16675         type indicator.
16676         (soap-parse-envelope): Handle response headers.
16677         (soap-parse-response): Likewise.  Only return non-nil decoded values.
16679         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
16680         Return validated value.
16682         * lisp/net/soap-client.el (soap-xs-parse-element)
16683         (soap-xs-parse-simple-type)
16684         (soap-xs-parse-complex-type)
16685         (soap-parse-message)
16686         (soap-parse-operation): Add the current namespace to the element
16687         being created.
16688         (soap-resolve-references-for-xs-element)
16689         (soap-resolve-references-for-xs-simple-type)
16690         (soap-resolve-references-for-xs-complex-type)
16691         (soap-resolve-references-for-operation): Resolve the namespace to
16692         the namespace tag.
16693         (soap-make-wsdl): specify a namespace tag when creating the xsd
16694         and soapenc namespaces
16695         (soap-wsdl-resolve-references): don't update namespace tags in
16696         elements here
16697         (soap-parse-port-type): bind the urn: to soap-target-xmlns
16698         (soap-encode-body): don't add nil namespace tags to
16699         soap-encoded-namespaces
16701         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
16702         for registering the soap-inspect method.  Make debbugs tests pass.
16703         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
16704         type name, also skip string only nodes when decoding a structure.
16705         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
16706         types too.
16707         (soap-encode-body): Grab the header value from the param table.
16709         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
16710         New function.
16711         (soap-encode-xs-element): Don't encode nil value unless needed.
16713         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
16714         (soap-parse-binding): Parse the message parts required in the body.
16715         (soap-encode-body): Encode only the parts that are declared to be
16716         part of the body.
16718         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
16719         when writing out the tag.
16720         (soap-encode-body): Remove hack that inserts the xmlns in the
16721         element attributes list.
16723         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
16724         (soap-xs-parse-attribute): Default slot is set from the XML
16725         "fixed" attribute.
16726         (soap-encode-xs-complex-type-attributes): Encode any attributes
16727         that have a default value.  Also, don't put the xsi:nil attribute
16728         when the complex type has no content anyway.
16730         * lisp/net/soap-client.el (soap-well-known-xmlns):
16731         Add the xml namespace.
16732         (soap-local-xmlns): Start with the xml namespace.
16733         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
16734         (soap-make-xs-basic-types): More xsd types added.
16735         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
16736         Handle "language", "time", "date", "nonNegativeInteger".
16737         (soap-resolve-references-for-xs-element): Don't signal an error if
16738         the element does not have a type.
16739         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
16740         added stum for xsd:list.
16741         (soap-xs-add-union): Call soap-l2fq on all union members.
16742         (soap-xs-add-extension): Call soap-l2fq on the base member.
16743         (soap-resolve-references-for-xs-simple-type): Don't signal an
16744         error if the simple type has no base.
16745         (soap-resolve-references-for-xs-simple-type): Bugfix, call
16746         soap-wsdl-get on each type of the base.
16748         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
16749         Referenced type can be eiher a simple type or a basic type.
16750         (soap-xs-add-restriction)
16751         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
16752         (soap-make-xs-basic-types)
16753         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
16754         Add support for more XMLSchema basic types.
16755         (soap-current-file, soap-xmlschema-imports): New defvars.
16756         (soap-parse-schema): Add locations from xsd:import tags to
16757         `soap-xmlschema-imports'.
16758         (soap-wsdl): Make destructor private.
16759         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
16760         (soap-wsdl-add-alias): Check if we try to replace aliases.
16761         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
16762         (soap-fetch-xml): New defuns.
16763         (soap-load-wsdl): Update to load the WSDL from either a file or
16764         an url.
16765         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
16766         (soap-parse-wsdl): Process wsdl:import tags and imports from
16767         `soap-xmlschema-imports'.
16768         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
16769         symbol-name.
16770         (soap-l2fq): Make the name part always a string.
16771         (soap-name-p): New defun, used for name tests.
16773         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
16774         Supply sample values for choice types with a special tag.
16775         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
16776         Handle anonymous elements correctly.
16777         (soap-encode-value): Accept nodes that have no namespace tag.
16779         * lisp/net/soap-client.el (soap-invoke): Encode the string for
16780         `url-request-data' as UTF-8.  Fixes issue 16.
16782 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
16784         Update the new icon
16786         Move the E slightly to the right in the circle.
16788         * etc/images/icons/hicolor/128x128/apps/emacs.png:
16789         * etc/images/icons/hicolor/16x16/apps/emacs.png:
16790         * etc/images/icons/hicolor/24x24/apps/emacs.png:
16791         * etc/images/icons/hicolor/32x32/apps/emacs.png:
16792         * etc/images/icons/hicolor/48x48/apps/emacs.png:
16793         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
16794         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
16795         * nt/icons/emacs.ico: New icom update.
16797 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16799         Avoid missing inline functions from lisp.h in TAGS
16801         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
16802         need to end each invocation with a semi-colon.
16803         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
16804         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
16805         inline functions defined immediately after each invocation, and
16806         also avoid tagging every invocation of these macros.
16808 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16810         A better fix for bug#21739
16812         * src/buffer.c (set_update_modelines_for_buf): New function.
16813         (Fkill_buffer): Use it to set the global variable
16814         update_mode_lines if the killed buffer was displayed in some
16815         window.  Don't set windows_or_buffers_changed.  This is a better
16816         fix for bug#21739 than the previous fix, since it will cause only
16817         redisplay of mode lines, not of entire windows, but will still
16818         catch attention of x_consider_frame_title in xdisp.c, which
16819         redraws the frame title.
16821 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
16823         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
16824         tar.bz2 and tar.xz archives.
16826 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
16828         Fix infloop in redisplay introduced by a recent change
16830         * src/xdisp.c (redisplay_internal): Avoid inflooping when
16831         redisplaying the selected window sets the selected frame's
16832         redisplay flag.  (Bug#21745)
16834 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
16836         * lisp/emacs-lisp/thunk.el: Better documentation.
16838 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
16840         Replace the old icon for Windows and Mac OSX
16842         * nt/icons/emacs.ico:
16843         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
16844         Use the new icons.
16846 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
16848         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
16849         `load-path' should contain only directory names.
16851 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
16853         New library thunk.el
16855         thunk.el is extracted from stream.el in ELPA, with additional tests.
16857         * lisp/emacs-lisp/thunk.el: New file.
16858         * test/automated/thunk-tests.el: New file.
16859         * etc/NEWS: Add information about thunk.el
16861 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
16863         Fix bug#21669
16865         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
16866         calling low-level functions.
16868         * test/automated/file-notify-tests.el (file-notify--test-timeout):
16869         Decrase to 6 seconds for remote directories.
16870         (file-notify-test02-events): Expect different number of
16871         `attribute-changed' events for the local and remote cases.  Apply
16872         short delays between the operations, in order to receive all
16873         events in the remote case.  Combine `attribute-change' tests.
16874         (Bug#21669)
16876 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
16878         Decode the HTML source when displaying it in EWW
16880         * lisp/net/eww.el (eww-view-source): Decode the HTML source
16881         according to its headers.
16883 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
16885         New default icon
16887         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
16888         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
16889         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
16890         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
16891         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
16892         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
16893         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
16894         Move the old logo files to emacs23.*.
16895         * etc/images/icons/hicolor/128x128/apps/emacs.png:
16896         * etc/images/icons/hicolor/16x16/apps/emacs.png:
16897         * etc/images/icons/hicolor/24x24/apps/emacs.png:
16898         * etc/images/icons/hicolor/32x32/apps/emacs.png:
16899         * etc/images/icons/hicolor/48x48/apps/emacs.png:
16900         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
16901         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
16902         New files.
16903         * etc/images/icons/README: Update the copyright information.
16905 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
16907         Fix redisplay of frame title when current buffer is killed
16909         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
16910         non-zero value, to redisplay more than just the affected windows.
16911         (Bug#21739)
16913 2015-10-23  Anders Lindgren  <andlind@gmail.com>
16915         NextStep maximization and NSTRACE rewrite
16917         Full-height, full-width, and maximized windows now cover the
16918         entire screen (except the menu bar), including the part where the
16919         system dock is placed.  The system zoom animation is no longer
16920         used.
16922         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
16923         original size.
16925         * src/nsterm.m (ns_menu_bar_height): New function, return height of
16926         the menu bar, or 0 when it's hidden.
16927         (constrain_frame_rect): New function for constraining a frame.
16928         (ns_constrain_all_frames): Set frame size explicitly rather than
16929         relying on the system doing it for us by writing back the current
16930         frame size.
16931         (windowWillUseStandardFrame): Register non-maximized width or
16932         height as new user size.  When entering full width or height,
16933         the other size component is taken from the user size.
16934         (fullscreenState): New method for accessing the fullscreen state.
16935         (constrainFrameRect): Restrict frame to be placed under the menu bar,
16936         if present.  The old version, sometimes, restricted the height of a
16937         frame to the screen, this version never does this.
16938         (zoom): Perform zoom by setting the frame to the full size of the
16939         screen (minus the menu bar).  The default system function, with the
16940         zoom animation, is no longer used, as the final frame size doesn't
16941         cover the entire screen.
16943         Rework how to constrain resizing to the character grid.  The old
16944         system used "resizeIncrements" in NSWindows.  However, once a frame
16945         was resized so that it was not aligned to the text grid, it
16946         remained unaligned even after a resize.  In addition, it conflicted
16947         when resizing a fullheight window.
16949         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
16950         unless when pixelwise frame resizing is enabled.
16951         (updateFrameSize, initFrameFromEmacs)
16952         (toggleFullScreen, handleFS): Don't set resizeIncrements.
16954         Redesign the NS trace system.  The call structure is represented
16955         using indentations and vertical lines.  The NSTRACE macro accepts
16956         printf-style arguments.  New macros for printing various
16957         information.
16959         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
16960         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
16961         block (typically a function), accept printf-style arguments.
16962         (NSTRACE_MSG): Macro for extra information, accepts
16963         printf-style arguments.
16964         (NSTRACE_what): Macros for printing various types.
16965         (NSTRACE_FMT_what): Macro with printf format string snippets.
16966         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
16967         corresponds to NSTRACE_FMT_what.
16968         (NSTRACE_RETURN): Macro to print return value, accept
16969         printf-style arguments.
16970         (NSTRACE_RETURN_what): Macros to print return value for
16971         various types.
16973         * src/nsterm.m: Remove old NSTRACE macro
16974         * src/nsterm.m (nstrace_num): Trace counter.
16975         (nstrace_depth): Current call depth.
16976         (nstrace_leave): NSTRACE support function, called when the
16977         local variable "nstrace_enabled" goes out of scope using the
16978         "cleanup" extension.
16979         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
16980         (constrain_frame_rect, ns_constrain_all_frames)
16981         (ns_update_auto_hide_menu_bar, ns_update_begin)
16982         (ns_update_window_begin, update_window_end, ns_update_end)
16983         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
16984         (ns_frame_rehighlight, x_make_frame_visible)
16985         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
16986         (x_destroy_window, x_set_offset, x_set_window_size)
16987         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
16988         (ns_defined_color, frame_set_mouse_pixel_position)
16989         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
16990         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
16991         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
16992         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
16993         (dumpcursor, ns_draw_vertical_window_border)
16994         (ns_draw_window_divider, ns_draw_relief)
16995         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
16996         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
16997         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
16998         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
16999         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
17000         (ns_create_terminal, ns_term_init, sendEvent)
17001         (applicationDidFinishLaunching, applicationDidBecomeActive)
17002         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
17003         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
17004         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
17005         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
17006         (mouse_autoselect_window, in_window, mouseDragged)
17007         (rightMouseDragged, otherMouseDragged, windowShouldClose)
17008         (updateFrameSize, windowWillResize, windowDidResize)
17009         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
17010         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
17011         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
17012         (windowDidEnterFullScreen, windowWillExitFullScreen)
17013         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
17014         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
17015         (draggingEntered, performDragOperation, validRequestorForSendType)
17016         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
17017         (EmacsScroller_initFrame, EmacsScroller_setFrame)
17018         (EmacsScroller_dealloc, condemn, reprieve, judge)
17019         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
17020         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
17022         * src/nsfns.m: Remove old NSTRACE macro
17023         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
17024         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
17025         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
17027         * src/nsimage.m: Remove old NSTRACE macro
17028         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
17029         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
17031         * src/nsmenu.m: Remove old NSTRACE macro
17032         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
17033         Use new trace system.
17035 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
17037         No need to use eval-and-compile
17039         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
17040         autoload epg functions.
17042 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
17044         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
17046         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
17047         epg-context-set-passphrase-callback, epg-decrypt-string, and
17048         epg-encrypt-string; require epg when compiling for the setf-method
17049         for epg-context-armor. (bug#21724)
17051 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
17053         Include file cleanup for w32 files in src directory
17055         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
17056         fontset.h, blockinput.h.
17057         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
17058         charset.h, fontset.h.
17059         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
17060         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
17061         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
17062         in an ifdef-ed away block.
17063         Include fcntl.h for CYGWIN.
17064         (set_frame_param): Remove unused function.
17065         * src/w32select.c: Don't include charset.h and composite.h.
17066         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
17067         due to pointer signedness mismatches.
17068         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
17069         due to pointer signedness mismatches.
17070         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
17071         process.h, dispextern.h.
17072         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
17073         (Fw32_application_type): Avoid compiler warnings due to pointer
17074         signedness mismatches.
17075         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
17076         character.h, charset.h, dispextern.h.
17077         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
17078         to pointer signedness mismatches.
17079         * src/w32inevt.c: Don't include dispextern.h, window.h,
17080         termhooks.h, w32heap.h.
17081         * src/w32font.c: Don't include dispextern.h, character.h,
17082         charset.h, fontset.h, font.h.
17083         (intern_font_name, add_font_entity_to_list)
17084         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
17085         (list_all_matching_fonts): Avoid compiler warnings due to pointer
17086         signedness mismatches.
17087         * src/w32fns.c: Don't include character.h, intervals.h,
17088         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
17089         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
17090         (w32_color_map_lookup, add_system_logical_colors_to_map)
17091         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
17092         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
17093         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
17094         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
17095         compiler warnings, mainly due to pointer signedness mismatches.
17096         (unwind_create_frame_1): Remove unused function.
17097         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
17098         window.h, termhooks.h, dispextern.h.
17099         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
17100         signedness mismatch.
17101         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
17102         w32heap.h.
17104 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
17106         Improve doc-view wrt. auto-revert-mode
17108         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
17109         is corrupted (bug#21729).
17110         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
17112 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
17114         Describe dired-do-compress-to in the manual
17116         * etc/NEWS: Update.
17118         * lisp/dired-aux.el: Fix typo.
17120         * doc/emacs/dired.texi: Add entry.
17122 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
17124         Further fix for proper locale handling in tramp-gvfs.el
17126         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17127         Just suppress LC_MESSAGES locale category settings.
17129 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
17131         New lispref section “Security Considerations”
17133         This attempts to document some of the issues recently discussed
17134         on emacs-devel, and to indicate other such issues.  The section
17135         could be a lot longer.
17136         * doc/lispref/os.texi (Security Considerations):
17137         New node.
17138         * doc/lispref/elisp.texi (Top):
17139         * doc/lispref/processes.texi (Shell Arguments):
17140         * lisp/subr.el (shell-quote-argument):
17141         * src/callproc.c (syms_of_callproc):
17142         Reference it.
17144 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
17146         Merge from gnulib
17148         This incorporates:
17149         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
17150         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
17151         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
17152         Copy from gnulib.
17154 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
17156         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
17157         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
17159 2015-10-21  Ken Brown  <kbrown@cornell.edu>
17161         Further include-file cleanup
17163         * src/sheap.c: Include stdlib.h.
17164         * src/unexcw.c: Include string.h.
17166 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
17168         Fix logic in 'server-kill-emacs-query-function'
17170         * lisp/server.el (server-kill-emacs-query-function): Correct the
17171         logic that controls whether the user is asked for confirmation.
17172         (Bug#21723)
17174 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
17176         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
17177         (isearch--lax-regexp-function-p): New function.
17179 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
17181         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
17182         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
17183         around `isearch-regexp-function'.
17185 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
17187         * lisp/isearch.el: Rename word search to regexp-function search.
17188         `isearch-word' went well beyond its original purpose, and the name
17189         no longer makes sense.  It is now called
17190         `isearch-regexp-function', and its value should always be a function
17191         that converts a string to a regexp (though setting it to t is still
17192         supported for now).
17193         (isearch-word): Make obsolete.
17194         (isearch-regexp-function): New variable.
17195         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
17196         (with-isearch-suspended, isearch-toggle-regexp)
17197         (isearch-toggle-word, isearch-toggle-symbol)
17198         (isearch-toggle-character-fold, isearch-query-replace)
17199         (isearch-occur, isearch-highlight-regexp)
17200         (isearch-search-and-update, isearch-message-prefix)
17201         (isearch-search-fun-default, isearch-search)
17202         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
17203         Use it.
17204         (isearch-lazy-highlight-regexp-function): New var.
17205         (isearch-lazy-highlight-word): Make obsolete.
17206         (isearch--describe-regexp-mode): New function.
17207         (isearch--describe-word-mode): Make obsolete.
17209         * lisp/info.el (Info-isearch-search):
17210         * lisp/replace.el (replace-search, replace-highlight):
17211         * lisp/obsolete/longlines.el (longlines-search-function):
17212         * lisp/hexl.el (hexl-isearch-search-function):
17213         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
17214         Use the new var.
17216 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
17218         Add dired-do-compress-to command bound to "c"
17220         * lisp/dired-aux.el (dired-shell-command): Use the caller's
17221           `default-directory', return the result of `process-file'.
17222         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
17223         used by default.
17224         (dired-compress-files-alist): New defvar.
17225         (dired-do-compress-to): New command.
17227         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
17228         (dired-do-compress-to): Add an autoload entry.
17230         * etc/NEWS: Add two entries.
17232 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
17234         Make RefTeX work with LaTeX subfiles package
17236         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
17237         document class argument as master file for referencing purposes.
17239 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
17241         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
17243 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
17245         Include-file cleanup for src directory
17247         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
17248         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
17249         but does not include it directly.  As a general rule, a source
17250         file should include foo.h if it needs the interfaces that foo.h
17251         defines.
17252         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
17253         systime.h.
17254         * src/atimer.c: Don’t include blockinput.h.
17255         * src/buffer.c: Include coding.h, systime.h.  Don’t include
17256         keyboard.h, coding.h.
17257         * src/callint.c: Don’t include commands.h, keymap.h.
17258         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
17259         systty.h, termhooks.h.
17260         * src/casetab.c: Don’t include character.h.
17261         * src/category.c: Don’t include charset.h, keymap.h.
17262         * src/ccl.h: Don’t include character.h.
17263         * src/character.c: Don’t include charset.h.
17264         * src/charset.c: Don’t include disptab.h.
17265         * src/chartab.c: Don’t include ccl.h.
17266         * src/cm.c: Don’t include frame.h, termhooks.h.
17267         * src/cmds.c: Don’t include window.h, dispextern.h.
17268         * src/coding.c: Don’t include window.h, frame.h.
17269         * src/composite.c: Include composite.h.  Don’t include window.h,
17270         font.h.
17271         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
17272         * src/dbusbind.c: Don’t include frame.h.
17273         * src/decompress.c: Don’t include character.h.
17274         * src/dired.c: Don’t include character.h, commands.h, charset.h.
17275         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
17276         process.h, timespec.h.  Include systime.h.
17277         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
17278         * src/editfns.c: Include composite.h.  Don’t include frame.h.
17279         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
17280         commands.h, systty.h..
17281         * src/fileio.c: Don’t include intervals.h, dispextern.h.
17282         Include composite.h.
17283         * src/filelock.c: Don’t include character.h, systime.h.
17284         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
17285         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
17286         * src/font.c: Include termhooks.h.
17287         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
17288         struct composition_it, struct face, struct glyph_string.
17289         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
17290         intervals.h, window.h, termhooks.h.
17291         * src/frame.c: Don’t include character.h, commands.h, font.h.
17292         * src/frame.h: Don’t include dispextern.h.
17293         * src/fringe.c: Don’t include character.h.
17294         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
17295         character.h, charset.h, fontset.h.
17296         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
17297         fontset.h.
17298         * src/ftxfont.c: Don’t include dispextern.h, character.h,
17299         charset.h, fontset.h.
17300         * src/gfilenotify.c: Don’t include frame.h, process.h.
17301         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
17302         Don’t include syssignal.h, buffer.h, charset.h, font.h.
17303         * src/gtkutil.h: Don’t include frame.h.
17304         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
17305         Don’t include character.h.
17306         * src/indent.c: Don’t include keyboard.h, termchar.h.
17307         * src/inotify.c: Don’t include character.h, frame.h.
17308         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
17309         * src/intervals.c: Don’t include character.h, keyboard.h.
17310         * src/intervals.h: Don’t include dispextern.h, composite.h.
17311         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
17312         Include coding.h.
17313         * src/keyboard.h: Don’t incldue systime.h.
17314         * src/keymap.c: Don’t include charset.h, frame.h.
17315         * src/lread.c: Include dispextern.h and systime.h.
17316         Don’t include frame.h.  Include systime.h.
17317         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
17318         * src/menu.c: Include character.h, coding.h.  Don’t include
17319         dispextern.h.
17320         * src/menu.h: Don’t include systime.h.
17321         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
17322         intervals.h, termhooks.h.
17323         * src/print.c: Include coding.h.  Don’t include keyboard.h,
17324         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
17325         Add forward decl of struct terminal.
17326         * src/process.c: Don’t include termhooks.h, commands.h,
17327         dispextern.h, composite.h.
17328         * src/region-cache.c: Don’t include character.h.
17329         * src/scroll.c: Don’t include keyboard.h, window.h.
17330         * src/search.c: Don’t include category.h, commands.h.
17331         * src/sound.c: Don’t include dispextern.h.
17332         * src/syntax.c: Don’t include command.h, keymap.h.
17333         * src/sysdep.c: Don’t include window.h, dispextern.h.
17334         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
17335         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
17336         * src/terminal.c: Include character.h.
17337         Don’t include charset.h, coding.h.
17338         * src/textprop.c: Don’t include character.h.
17339         * src/undo.c: Don’t include character.h, commands.h, window.h.
17340         * src/unexsol.c: Don’t include character.h, charset.h.
17341         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
17342         window.h, dispextern.h, blockinput.h, character.h, font.h.
17343         * src/widgetprv.h: Don’t include widget.h.
17344         * src/window.c: Don’t include character.h, menu.h, intervals.h.
17345         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
17346         macros.h, process.h.
17347         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
17348         intervals.h.
17349         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
17350         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
17351         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
17352         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
17353         * src/xgselect.c: Don’t include timespec.h, frame.h.
17354         Include systime.h.
17355         * src/xgselect.h: Don’t include time.h.
17356         Use a forward decl to struct timespec instead.
17357         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
17358         dispextern.h.  Include systime.h.
17359         * src/xml.c: Don’t include character.h.
17360         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
17361         * src/xselect.c: Don’t include dispextern.h, character.h,
17362         buffer.h, process.h.
17363         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
17364         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
17365         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
17367 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
17369         (/ N) now returns the reciprocal of N
17371         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
17372         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
17373         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
17374         (color-xyz-to-srgb, color-xyz-to-lab):
17375         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
17376         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
17377         (shr-color-hsl-to-rgb-fractions):
17378         Exploit the change to simplify the code a bit.
17379         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
17380         Don’t complain about single-argument calls to ‘/’.
17381         * src/data.c (arith_driver, float_arith_driver):
17382         Implement the change.
17384 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
17386         Call vc-dir-refresh after stash operations
17388         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
17389         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
17391         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
17392         since it can be abbreviated (as returned by vc-find-root).
17394 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
17396         * lisp/vc/vc-svn.el:
17397         * lisp/vc/vc-mtn.el:
17398         * lisp/vc/vc-hg.el:
17399         * lisp/vc/vc-cvs.el:
17400         * lisp/vc/vc-git.el:
17401         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
17402         Its usages have been replaced with vc-run-delayed.
17404 2015-10-20  Dima Kogan  <dima@secretsauce.net>
17406         Fix memory leak in fontset handling
17408         * src/font.c (copy_font_spec): Make a deep copy of the input
17409         argument FONT.  (Bug#21651)
17411 2015-10-20  Michael Sperber  <mike@xemacs.org>
17413         * lisp/gnus/mailcap.el (mailcap-mime-data):
17414         Conditonalize `doc-view-mode', which does not exist on XEmacs.
17416 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
17418         Update the way directories are compressed
17420         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
17421         for *.tar.gz decompression to use a pipe.
17422         Add an entry for the default directory compression (to *.tar.g).
17423         (dired-compress-file): Update.
17425         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
17427 2015-10-20  Michael Sperber  <mike@xemacs.org>
17429         Unbreak `group' option for `mail-sources'
17431         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
17432         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
17433         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
17435 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
17437         New function seq-position
17439         * lisp/emacs-lisp/seq.el (seq-position): New function.
17440         * test/automated/seq-tests.el: New tests for seq-position.
17441         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
17443 2015-10-19  Ken Brown  <kbrown@cornell.edu>
17445         Enable --with-wide-int build on 32-bit Cygwin
17447         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
17448         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
17450 2015-10-19  Glenn Morris  <rgm@gnu.org>
17452         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
17454 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
17456         Resurrect image loading under auto-image-file-mode
17458         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
17459         'openp' specially.  This special case was lost in the changes on
17460         2015-08-18.  (Bug#21685)
17462 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
17464         Fix return value of 'set-file-extended-attributes'
17466         * lisp/files.el (set-file-extended-attributes): Return non-nil
17467         when setting either ACLs or SELinux context succeeds.  Document
17468         the return value.  (Bug#21699)
17470         * doc/lispref/files.texi (Changing Files): Document the return
17471         value of set-file-extended-attributes.
17473 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
17475         Improve documentation of functions that change files
17477         * doc/lispref/files.texi (Changing Files): Document that these
17478         functions signal an error on failure.
17480 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
17482         Fix doc string of 'shell-quote-argument'
17484         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
17486 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
17488         Some minor Tramp changes
17490         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
17492         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
17493         Expand `tramp-auto-save-directory'.
17495 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
17497         Minor edits in Tramp
17499         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
17500         Declare it.
17502         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
17503         Remove declaration.
17505 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
17507         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
17509 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
17511         Avoid crashes when redisplayng a window changes faces or fonts
17513         * src/xdisp.c (redisplay_internal): If redisplaying the selected
17514         window or one of the frames turns on the frame's 'redisplay' flag,
17515         redisplay again.  (Bug#21428)
17517         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
17519 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
17521         Solve timimg issues in file-notify-tests.el
17523         * test/automated/file-notify-tests.el (file-notify-test02-events):
17524         Rectify `attribute-change' tests.  There are timing issues with
17525         gfilenotify.  (Bug#21669)
17527 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
17529         Fix quoting of data within htmlfontify doc
17531         * doc/misc/htmlfontify.texi (Data Structures, Customization):
17532         Fix quoting of data structures.  A Lisp quote is needed only
17533         when data appears within Lisp code.
17535 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
17537         * lisp/emacs-lisp/package.el: Reload archive-contents if
17538         priorities change.
17539         (package--old-archive-priorities): New variable.
17540         (package-read-all-archive-contents, package-menu--refresh): Use it
17541         to decide when the `package-archive-contents' needs to be read
17542         again.
17544 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
17546         Make src headers idempotent and standalone
17548         Redo src/*.h so that each include file is idempotent (that is, can
17549         be included multiple times with the latter inclusions having no
17550         effect) and standalone (that is, can be included by itself,
17551         with no include file other than config.h needed as a prerequisite).
17552         This is standard practice in GNU programs nowadays.
17553         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
17554         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
17555         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
17556         * src/regex.h [emacs]:
17557         * src/syntax.h, src/systty.h, src/termhooks.h:
17558         Include lisp.h, for Lisp_Object.
17559         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
17560         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
17561         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
17562         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
17563         * src/termopts.h, src/tparam.h, src/unexec.h:
17564         Protect against multiple inclusion.
17565         * src/buffer.h: Include character.h, for STRING_CHAR.
17566         * src/emacsgtkfixed.h (struct frame):
17567         * src/fontset.h (struct face):
17568         * src/region-cache.h (struct buffer):
17569         * src/termhooks.h (struct glyph):
17570         * src/xsettings.h (struct x_display_info):
17571         Add possibly-forward decl.
17572         * src/syntax.h: Include buffer.h, for BVAR.
17573         * src/sysselect.h: Include lisp.h, for eassume.
17574         * src/termchar.h: Include <stdio.h>, for FILE.
17575         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
17576         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
17578 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
17580         Handle symlink targets containing spaces in tramp-gvfs.el
17582         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17583         Handle symlink targets containing spaces.
17585 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
17587         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
17589         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
17590         same reason that `load-path' shouldn't.  Setting it via the customize
17591         interface is a trap for the user.
17593         Installed themes commonly add themselves to this variable, which means
17594         its value is not fit for being saved (it will permanently remember dirs
17595         that don't exist anymore).
17597         This is aggravated by the fact that Emacs always applies the `user'
17598         theme on top of any theme that's loaded, since this will apply the old
17599         variable value and remove any new directories that had been recently
17600         added by themes themselves.
17602         Not to mention, we already have `custom-theme-directory', which is safe
17603         to customize.
17605 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
17607         * lisp/mpc.el: Rename the new toggling commands.
17608         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
17609         (mpc-toggle-shuffle): Add "-toggle" in the name.
17611 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17613         Improve the doc string of 'completion-boundaries'
17615         * lisp/minibuffer.el (completion-boundaries): Rename the argument
17616         TABLE to COLLECTION, for consistency with other high-level
17617         completion functions.  Document how COLLECTION is called if it
17618         is a function.  (Bug#21644)
17620 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
17622         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
17624 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
17626         Make dired-do-compress work for *.zip files
17628         * lisp/dired-aux.el (dired-check-process): Transform the top-level
17629           comment into a docstring.
17630         (dired-shell-command): New command.  This mirrors
17631         `dired-check-process', but is more user-friendly for passing
17632         arguments.
17633         (dired-compress-file-suffixes): Allow to specify the command switches
17634         along with input (%i) and output (%o) inside the PROGRAM part.
17635         Add an entry for *.zip files, and update the entry for *.tar.gz files
17636         to the new style.  Update the docstring.
17637         (dired-compress-file): When PROGRAM matches %i or %o, use the new
17638         logic.
17639         (dired-update-file-line): Avoid an error when at end of buffer.
17641         Fixes bug#21637.
17643 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17645         Minor improvement in documentation of internals
17647         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
17649 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17651         Improve documentation of COLLECTION in completion functions
17653         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
17654         cross-reference to "Programmed Completion".
17656         * src/minibuf.c (Fcompleting_read): Improve the doc string.
17657         (Bug#21644)
17659 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17661         Add more release info to etc/HISTORY
17663         * etc/HISTORY: Add more release information about 19.x and 20.x
17664         versions.
17666 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
17668         New file etc/HISTORY
17670         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
17671         * etc/HISTORY: New file.
17672         * etc/NEWS: Mention it.
17674 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
17676         js-mode: Don't misindent generator methods
17678         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
17679         generator methods from multiplication operator
17680         (https://github.com/mooz/js2-mode/issues/275).
17682 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
17684         Fix animation timeout delay calculation
17686         * lisp/image.el (image-animate-timeout):
17687         Don’t assume speed is floating-point.
17689 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
17691         Add commands for controlling MPD modes
17693         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
17694         (mpc-cmd-single): New functions.
17695         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
17696         (mpc-mode-menu): Add new commands as menu items.
17698 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
17700         Refer to `(elisp)Basic Completion' in completing-read docstring
17702         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
17703         Completion' in the docstring (bug#21644).
17705 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
17707         * lisp/mpc.el (mpc-format): Always push form to pred
17709 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17711         Spelling fixes
17713         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
17714         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
17715         Fix misspelling of nonexistent file name.
17717 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
17719         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
17721 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
17723         Some editing fixes in Tramp
17725         * lisp/net/tramp-gvfs.el:
17726         * doc/misc/tramp.texi: "customer option" -> "custom option".
17728         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
17730 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
17732         Use proper localization in tramp-gvfs.el
17734         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17735         Suppress localized settings in order to proper parse gfvs output.
17737 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
17739         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
17740         Quote argument in proper order.  (Bug#21562)
17742 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
17744         Fix typos in docstrings
17746         * lisp/emacs-lisp/map.el:
17747         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
17748           macros.
17750 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
17752         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
17754 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
17756         Make dired-jump work with tar-subfile-mode
17758         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
17759           emitting an error, switch to `tar-superior-buffer'.
17761 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
17763         * .gitignore: Add build-aux/ar-lib.
17765 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
17767         Better docstrings in seq.el and map.el
17769         * lisp/emacs-lisp/map.el:
17770         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
17772 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17774         Merge from gnulib
17776         This incorporates:
17777         2015-10-13 binary-io, u64, unistd: port to strict C
17778         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
17779         2015-09-25 c-ctype: port better to z/OS EBCDIC
17780         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
17781         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
17782         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
17783         Copy from gnulib.
17785 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17787         Take XPNTR private
17789         * src/alloc.c (PURE_POINTER_P): Remove.
17790         All uses replaced with PURE_P.
17791         (XPNTR_OR_SYMBOL_OFFSET): New function.
17792         (XPNTR): Move here from lisp.h.
17793         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
17794         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
17795         Remove unnecessary cast.
17796         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
17797         to avoid an unnecessary runtime test for symbols.
17798         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
17799         Only alloc.c needs XPNTR now.
17801 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17803         Add MPC play/pause command
17805         * lisp/mpc.el (mpc-toggle-play): New command.
17806         (mpc-mode-map): Bind it to "s".
17807         (mpc-mode-menu): Add corresponding menu item.
17809 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17811         Add bindings and menu items for prev and next tracks
17813         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
17814         "<" to mpc-prev.
17815         (mpc-mode-menu): Add corresponding menu items
17817 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
17819         Reduce face-related consing during frame creation.
17821         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
17822         attribute list once.
17823         (face-spec-reset-face): Use it instead of building the list.
17825 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
17827         Do process ConfigureNotify events indicating size changes.
17829         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
17830         events don't have the same size, process each one.
17832 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17834         Derive mpc-mode from special-mode
17836         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
17837         (mpc-mode): Derive from special mode.
17838         (mpc-songs-mode-map): Don't set parent keymap.
17840 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17842         Fix error messages for when covers are not found.
17844         The last change to mpc-format let the binding to file call
17845         mpc-file-local-copy with nil argument.  Instead, employ if-let here
17846         so nil bindings don't result in needless computation and errors.
17847         * lisp/mpc.el: Require 'subr-x at compile time.
17848         * lisp/mpc.el (mpc-format): Use if-let.
17850 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
17852         Make dired-do-compress work for *.tar.gz files
17854         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
17855           "tar -zxvf" to *.tar.gz; update docstring.
17857         (dired-compress-file): Allow to specify switches after the command in
17858         `dired-compress-file-suffixes'.
17860 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
17862         Make dired-do-compress work for directories
17864         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
17865           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
17866         Also convert the top comment into a docstring.
17868 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17870         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
17872         ... since it might come straight from the memoizing table.
17874 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
17876         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
17878 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17880         Use special-mode in eww list modes
17882         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
17883         (eww-buffers-mode): Derive from special-mode and remove redundant
17884         setting of buffer-read-only.
17885         (eww-mode-map): Remove redundant keymap parent setting.
17886         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
17887         Remove redundant keymap suppressions and mappings.
17889 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
17891         Allow setting frame pixel sizes from frame parameters (Bug#21415)
17893         Also fix some misfeatures in frame (re-)sizing code, add more
17894         debugging information and remove some dead code.
17896         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
17897         parameter names when setting `frame-size-history'.
17898         (frame--size-history): New function.
17900         * src/frame.c (frame_inhibit_resize): If frame has not been made
17901         yet, return t if inhibit_horizontal_resize or
17902         inhibit_vertical_resize bit have been set.
17903         (adjust_frame_size): Simplify.
17904         (make_frame): Initialize inhibit_horizontal_resize,
17905         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
17906         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
17907         inhibit_vertical_resize slots.
17908         (x_set_frame_parameters): Handle `text-pixels' specification for
17909         width and height parameters.  Don't consider new_height or
17910         new_width changes.  Call adjust_frame_size instead of
17911         Fset_frame_size.
17912         (x_figure_window_size): Two new arguments x_width and y_width
17913         returning frame's figures width and height.  Calculate tool bar
17914         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
17915         Handle `text-pixels' specification for width and height
17916         parameters.
17917         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
17918         (Qx_set_window_size_1, Qx_set_window_size_2)
17919         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
17920         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
17921         (Qfree_frame_menubar_2): New symbols.
17922         * src/frame.h (structure frame): New booleans
17923         tool_bar_redisplayed, tool_bar_resized,
17924         inhibit_horizontal_resize, inhibit_vertical_resize.
17925         (x_figure_window_size): Update external declaration.
17926         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
17927         calling gtk_window_resize.
17928         (update_frame_tool_bar): Make inhibiting of frame resizing more
17929         discriminative.  Set tool_bar_resized bit.
17930         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
17931         resizing more discriminative.  Call adjust_frame_size instead of
17932         x_set_window_size.
17933         (Fx_create_frame): Handle x_width and x_height if
17934         set by x_figure_window_size.
17935         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
17936         subtract 3 from tool bar height.
17937         (x_set_window_size): Add frame_size_history_add call.
17938         (x_new_font): Call adjust_frame_size instead of
17939         x_set_window_size.
17940         * src/w32fns.c (x_change_tool_bar_height): Reset
17941         tool_bar_redisplayed and tool_bar_resized bits when adding tool
17942         bar.  Make inhibiting of frame resizing more discriminative.
17943         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
17944         (Fx_create_frame): Handle x_width and x_height if set by
17945         x_figure_window_size.  Set size hints before adjusting frame size.
17946         (x_create_tip_frame): Adjust x_figure_window_size call.
17947         * src/w32term.c (x_set_window_size): Add frame_size_history_add
17948         call.
17949         * src/widget.c (set_frame_size): Remove dead code.  Add
17950         frame_size_history_add call.  When frame_resize_pixelwise is t
17951         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
17952         pixel_width and pixel_height.
17953         (update_various_frame_slots): Remove dead code.
17954         (EmacsFrameResize): Add more information in
17955         frame_size_history_add call.
17956         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
17957         is not set.
17958         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
17959         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
17960         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
17961         tool_bar_resized bits when adding tool bar.  Make inhibiting of
17962         frame resizing more discriminative.
17963         (Fx_create_frame): Handle x_width and x_height if set by
17964         x_figure_window_size.  Set size hints before adjusting frame size.
17965         (x_create_tip_frame): Adjust x_figure_window_size call.
17966         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
17967         (set_frame_menubar): On Lucid never add core-border-width to
17968         avoid that adding XtNinternalBorderWidth adds it again.
17969         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
17970         * src/xterm.c (x_new_font): In non-toolkit case handle size
17971         change of menu bar.
17972         (x_set_window_size_1): Fix calls to frame_size_history_add.
17973         (x_wm_set_size_hint): Remove dead code.  Set
17974         size_hints.min_width and size_hints.min_height to base_width and
17975         base_height.
17977 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
17979         * test/automated/file-notify-tests.el (file-notify--test-timeout):
17980         Add docstring.  Increase to 10 seconds for remote
17981         directories.  (Bug#21669)
17983 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
17985         Unmacroize ebrowse.c and etags.c a bit
17987         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
17988         (streq, filename_eq, set_flag, has_flag): Now inline functions.
17989         (set_flag): First arg is now an address, not an lvalue.
17990         All callers changed.
17991         (filename_eq, set_flag, has_flag):
17992         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
17993         All callers changed.
17994         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
17995         Now inline functions.  Remove asserts that are unnecessary these
17996         days (and in some cases were too-generous anyway).
17998 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
18000         Use highlight for current items
18002         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
18003         Apply highlight face instead of region face.
18005 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
18007         Search for more cover image names in MPC
18009         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
18010         case insensitively
18012 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
18014         Remove or comment out unused variables
18016         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
18017         nontext_cursor, mode_cursor, hand_cursor and count.
18018         (x_change_tool_bar_height): Remove variable old_text_height.
18019         (deliver_wm_chars): Remove variable strip_Alt.
18020         (Fw32_shell_execute): Remove variable document_a.
18021         (Fw32_frame_geometry): Remove variable fullboth.
18022         * src/w32term.c (w32_setup_relief_color): Comment out variable
18023         w32_display_info.
18024         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
18025         (w32_read_socket): Comment out variables rows, columns.
18026         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
18028 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
18030         * src/w32proc.c (sys_select): Fix bitwise test.
18032 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
18034         Minor typo corrections in doc strings
18036         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
18037         Doc fixes.
18039 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
18041         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
18043 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
18045         Attempt to avoid crashes in plist-member
18047         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
18048         and a call to XCDR.  (Bug#21655)
18050 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
18052         * lisp/select.el (gui-get-primary-selection): In
18053         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
18055 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
18057         Support RTF in doc-view
18059         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
18061 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
18063         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
18065 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
18067         Replace the usage of an obsolete function in auth-source.el
18069         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
18070         Replace an usage of `epg-context-set-armor' with `setf'.
18072 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
18074         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
18076 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
18078         Have calc-yank recognize numbers in different bases.
18080         * lisp/calc/calc-yank.el (math-number-regexp): New function.
18081         (calc-yank): Use `math-number-regexp' to recognize numbers.
18083 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18085         Handle an opaque-move X11 window manager operation more efficiently
18087         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
18088         followed by more ConfigureNotify events for the same window, process
18089         only the last one.
18091 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18093         Fix cursor setting for tip frame; re-enable cursor generation
18095         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
18096         attributes sent when creating the new X window.  Don't skip setting
18097         the pointerColor parameter.
18099 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18101         Rewrite x_set_mouse_color to sync less
18103         We can track serial numbers of X requests and correlate error events
18104         with the associated requests.  This way we can identify errors for
18105         specific calls without having to use XSync after every one.
18107         * src/xfns.c (enum mouse_cursor): New type.
18108         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
18109         (mouse_cursor_types): New array listing the Lisp variables and default
18110         cursor appearances for each cursor type.
18111         (x_set_mouse_color_handler): New function; checks error event serial
18112         number against submitted requests.
18113         (x_set_mouse_color): Updated to use the new error handler callback,
18114         and to be more table-driven, to simplify repetitious code.
18116 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18118         Add x_catch_errors_with_handler
18120         * src/xterm.c (struct x_error_message_stack): Add new fields for a
18121         callback function and associated data pointer.
18122         (x_error_catcher): If the callback function is set, call it after
18123         saving the error message string.
18124         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
18125         accepts a callback function and data pointer.
18126         (x_catch_errors): Now a wrapper function.
18127         * src/xterm.h (x_special_error_handler): New typedef.
18128         (x_catch_errors_with_handler): Declare.
18130 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18132         Introduce x_uncatch_errors_after_check to reduce XSync calls
18134         Both x_had_errors_p and x_check_errors call XSync, so if they're
18135         immediately followed by x_uncatch_errors, its XSync call will be
18136         redundant, resulting in a wasted round trip to the X server.
18138         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
18139         x_uncatch_errors without the XSync call.
18140         (XTmouse_position, x_wm_supports):
18141         * src/xfns.c (x_set_mouse_color):
18142         * src/xmenu.c (Fx_menu_bar_open_internal):
18143         * src/xselect.c (x_own_selection, x_get_foreign_selection):
18144         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
18145         * src/xterm.h (x_uncatch_errors_after_check): Declare.
18147 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
18149         Document the optional prefix to `calc-yank'
18151         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
18152         prefix to `calc-yank'.
18153         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
18154         the Calc buffer are yanked back unchanged.
18156 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
18158         * lisp/calendar/calendar.el: Display buffer before executing body.
18160         In each use of this macro, the modeline is derived from a window width
18161         calculation, which will be wrong if (display-buffer) splits the window
18162         horizontally.
18164 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18166         Use ‘echo’ safely with ‘\’ or leading ‘-’
18168         POSIX says that ‘echo FOO’ produces implementation-defined output
18169         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
18170         behavior in that case.
18171         * Makefile.in (removenullpaths): Remove.
18172         (epaths-force): Rewrite to avoid the need for ‘echo’.
18173         (install-etc): Be clearer about escaping the shell metacharacters
18174         ‘\’ and ‘$’.
18175         * Makefile.in (install-arch-indep, install-etcdoc):
18176         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
18177         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
18178         * configure.ac, lib-src/rcs2log, make-dist:
18179         * src/Makefile.in (lisp.mk):
18180         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
18181         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
18182         if $foo can contain arbitrary characters.
18183         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
18184         * doc/lispref/two-volume.make (vol1.pdf):
18185         * test/etags/make-src/Makefile (web ftp publish):
18186         Use ‘printf’ rather than ‘echo -e’.
18188 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
18190         Allow numbers with different radixes to be yanked.
18192         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
18193         default base 10.
18195 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18197         Improve CHECK_IMPURE and PURE_P speedup
18199         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
18201 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
18203         Use events instead of chars to keep track of steps.
18205         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
18206         to keep track of steps.
18208 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18210         Fix --enable-gcc-warnings problem with older GCC
18212         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
18213         This is for building with --enable-gcc-warnings with
18214         GCC 4.6 through 5.0.
18216 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
18218         Fix vertical-motion in truncated lines that end in a stretch
18220         * src/indent.c (Fvertical_motion): Expect overshoot when point is
18221         beyond window margin and lines are truncated, even if we have a
18222         stretch at point.  (Bug#21468)
18224 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
18226         Avoid link-time errors due to inline functions
18228         * src/emacs.c: Include puresize.h, to avoid link-time errors in
18229         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
18230         inline functions.
18232 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
18234         * src/data.c (Faset): Fix last change.
18236 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18238         CHECK_IMPURE and PURE_P speedup
18240         * src/intervals.c (create_root_interval):
18241         Do CHECK_IMPURE only for strings; not needed for buffers.
18242         Prefer ! STRINGP to BUFFERP, for a tad more speed.
18243         * src/puresize.h (CHECK_IMPURE, PURE_P):
18244         Now inline functions instead of macros.
18245         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
18246         All callers changed.
18247         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
18248         All callers changed.
18250 2015-10-09  Noah Friedman  <friedman@splode.com>
18252         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
18254 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18256         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
18258         our after-change-function, rather than re-adding it if it was removed.
18260 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18262         * lisp/cedet/ede: Silence some compiler warnings
18264         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
18265         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
18266         (ede-apply-object-keymap, ede-reset-all-buffers)
18267         (ede-auto-add-to-target): Use dolist.
18268         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
18269         Use field names rather than initarg names in `oref'.
18270         (ede-load-project-file): Remove unused var `file'.
18271         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
18272         (ede-set): Remove unused var `a'.
18274         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
18275         (ede-project-autoload): Avoid the old-style "name" argument.
18276         (ede-emacs-find-matching-target): Use field names rather than initarg
18277         names in `oref'.
18279         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
18280         (ede-linux-load, ede-project-autoload): Avoid the old-style
18281         "name" argument.
18282         (ede-linux-find-matching-target): Use field names rather than initarg
18283         names in `oref'.
18285 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18287         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
18289 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18291         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
18292         indenting too far after ":-".
18294 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
18296         Update case-table and categories of recently added characters
18298         * lisp/international/characters.el: Update information about Latin
18299         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
18300         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
18301         blocks.  (Byug#21654)
18303 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
18305         * src/frame.c (adjust_frame_size): In minibuffer-only windows
18306         don't count minibuffer height twice.  (Bug#21643)
18308 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
18310         Avoid inflooping in font-lock
18312         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
18313         inhibit-field-text-motion around the call to
18314         line-beginning-position, to avoid inflooping.  (Bug#21615)
18316 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
18318         Refactor duplicated code; ensure default is in completions
18320         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
18321         New function.
18322         (reftex-extract-bib-entries): Use it.
18323         (reftex-extract-bib-entries-from-thebibliography): Use it.
18325 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18327         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
18328         in the example.
18330 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
18332         * lisp/calc/calc.el: Silence byte-compiler warnings.
18333         (calc-scan-for-dels): Use ignore-errors.
18334         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
18335         (calc-read-key-sequence): Remove unused var `prompt2'.
18336         (calc-kill-stack-buffer): Remove unused var `buflist'.
18337         (calc): Remove unused var `oldbuf'.
18338         (calc-refresh): Use inhibit-read-only.
18339         (calc-can-abbrev-vectors): Declare.
18340         (calc-record): Remove unused var `mainbuf'.
18341         (math-sub-bignum): Remove unused var `sum'.
18342         (math-svo-c, math-svo-wid, math-svo-off): Declare.
18344 2015-10-08  Daiki Ueno  <ueno@gnu.org>
18346         Use g_clear_error instead of g_error_free
18348         * src/image.c: Define g_clear_error instead of g_error_free.
18349         (init_svg_functions): Resolve symbol g_clear_error instead of
18350         g_error_free.
18351         (svg_load_image): Use g_clear_error instead of g_error_free, to
18352         suppress GLib warnings when ERR is not set.  See bug#21641.
18354 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
18356         * src/image.c (image_size_error): Simplify.
18358 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
18360         Fix problems caught with --enable-gcc-warnings
18362         * src/image.c (lookup_rgb_color):
18363         * src/xfns.c (x_defined_color):
18364         * src/xterm.c (x_parse_color):
18365         Remove unused locals.
18367 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
18369         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
18371 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
18373         Format initial input uniformly
18375         * lisp/calc/calc.el (calc-digit-start-entry): New function.
18376         * lisp/calc/calc.el (calcDigit-start):
18377         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
18378         Use `calc-digit-start-entry' to format input.
18380 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18382         Disable non-working pointerColor setting for X tooltip frame
18384         It generates a bunch of server traffic, but there's some bug wherein
18385         the new mouse cursor settings don't seem to get used.  In most
18386         situations the cursor isn't likely to be seen anyway, so it's not
18387         urgent to fix.
18389         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
18391 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18393         Reduce some unnecessary X calls
18395         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
18396         call.  If border width is wanted, get it from the XGetGeometry call
18397         instead of calling XGetWindowAttributes on the same window.  Skip some
18398         X calls if we've already detected an error from the X server.
18399         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
18400         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
18402 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18404         Reduce color allocation/query traffic in the TrueColor case
18406         When working with an X visual with TrueColor class, pixel values can
18407         be generated from the RGB values according to mask value provided by
18408         the server on connection.  Some of the image-handling code was already
18409         doing this.
18411         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
18412         lookup_rgb_color.
18413         (x_mutable_colormap): New function.
18414         * src/image.c (lookup_rgb_color): Move pixel composition code to
18415         x_make_truecolor_pixel.
18416         (x_kill_gs_process): Call x_mutable_colormap.
18417         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
18418         x_mutable_colormap.
18419         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
18420         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
18421         pixel value into RGB values directly, and don't send a request to the
18422         server.
18423         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
18424         value with x_make_truecolor_pixel.
18425         (x_copy_color): For an immutable color map, just return the provided
18426         pixel value.
18428 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18430         Cache XParseColor results in the X display info structure
18432         With repeated lookups of foreground and background colors for multiple
18433         faces per frame, we issue a lot of redundant color name lookups to the
18434         X server, waiting every time for the response.  On a remote network
18435         with, say, 30ms round-trip time, this can add nearly a full second to
18436         creation of a new frame.
18438         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
18439         * src/image.c (get_spec_bg_or_alpha_as_argb):
18440         (xpm_init_color_cache, xpm_lookup_color):
18441         * src/xfns.c (x_defined_color):
18442         * src/xterm.c (x_parse_color): New function; caches color names not
18443         starting with "#" in the display-info structure.
18444         (x_delete_display): Delete the cache content.
18445         * src/xterm.h (struct color_name_cache_entry): New type.
18446         (x_parse_color): Declare.
18447         (struct x_display_info): Add a new field for the cache.
18449 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
18451         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
18453 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
18455         Fix segfault in image_size_error
18457         * src/image.c (image_size_error): Pass a Lisp string to
18458         image_error, not a C string.  (Bug#21641)
18460 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
18462         Highlight CSS variable definitions
18464         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
18465         CSS variables.  (Bug#21638)
18467 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18469         * test/automated/tabulated-list-test.el: New file.
18470         Test bug#21639 and some basic functionality.
18472 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18474         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
18475         Check if column can be sorted before trying.  (Bug#21639)
18477 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
18479         Add test for `self-insert-command' (bug#21633)
18481         * test/automated/cmds-tests.el: New file.
18483 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
18485         * src/window.c (resize_frame_windows): Don't set root window's
18486         top position when resizing horizontally.
18488 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18490         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
18491         Document more possible values.
18493 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
18495         * lisp/textmodes/tex-mode.el: Use lexical-binding.
18497 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
18499         * lisp/indent.el (indent--default-inside-comment): New function.
18500         (indent-for-tab-command): Use it for `noindent' indentation.
18502 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
18504         Fix bug in GC_CHECK_MARKED_OBJECTS check
18506         * src/alloc.c (mark_object): Fix bug in checking code.
18507         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
18508         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
18509         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
18510         bucket.  The bug did not affect behavior either in the normal case
18511         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
18512         not have an internal error that a properly-written
18513         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
18515 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
18517         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
18518         Add prettified version for \\Bbb{Q}.
18520 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
18522         * test/automated/package-test.el (package-test-install-single):
18523         Add a test for bug#21625.
18525 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
18527         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
18528           not a package-desc object.  Also clarify documentation.  (Bug#21625)
18530 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
18532         Fix display of characters adjacent to ZWJ and ZWNJ
18534         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
18535         characters the same as directional formatting controls.
18536         (bidi_level_of_next_char): Include all Bn characters in rule L1,
18537         as mandated by the UBA.
18539 2015-10-06  Andreas Schwab  <schwab@suse.de>
18541         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
18542         number.  (Bug#21633)
18544 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
18546         * doc/lispref/objects.texi (Window Type): Add a cross reference.
18548         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
18550 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
18552         * lisp/language/misc-lang.el (composition-function-table):
18553         Fix entries for Arabic and Syriac.
18555 2015-10-05  Damien Cassou  <damien@cassou.me>
18557         Add first unit tests for auth-source.el
18559         * test/automated/auth-source-tests.el: New file.
18561 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
18563         Remove redundant redisplay code
18565         * src/xdisp.c (redisplay_internal, try_cursor_movement)
18566         (try_window_reusing_current_matrix, try_window_id): Remove
18567         redundant restrictions on redisplay optimizations based on the
18568         frame's 'redisplay' flag.  See
18569         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
18570         discussions.
18572 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
18574         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
18576 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
18578         Update tutorials/TUTORIAL.cn
18580         * etc/tutorials/TUTORIAL.cn: Improve translation.
18582 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18584         * src/macfont.m (macfont_encode_char, syms_of_macfont):
18585         Remove unused vars.
18587 2015-10-04  Stefan Merten  <stefan@merten-home.de>
18589         Pull in version numbers from rst.el upstream release.
18591         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
18592         (rst-svn-timestamp, rst-official-version)
18593         (rst-official-cvs-rev, rst-package-emacs-version-alist):
18594         Update version numbers.
18596 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
18598         * test/automated/coding-tests.el: New file.
18600 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
18602         Improve XEmacs compatibility of Tramp
18604         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
18605         Declare if it doesn't exist.
18606         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
18607         (redisplay): Make it an alias if it doesn't exist.
18609         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
18610         `file-remote-p' (due to XEmacs compatibility).
18612         * lisp/net/trampver.el (locate-dominating-file)
18613         (tramp-compat-replace-regexp-in-string): Autoload.
18614         (tramp-repository-get-version): Do not dupe byte-compiler.
18616 2015-09-02  K. Handa  <handa@gnu.org>
18618         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
18620         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
18621         Adjusted for the change of type of elements in the array
18622         MFLTGlyphString.glyphs.
18624 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
18625             Michael Heerdegen  <michael_heerdegen@web.de>
18627         shr: fix too long lines in rendered buffers (Bug#21012)
18629         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
18630         Correct calculation of available width.
18631         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
18632         is nil.
18634 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18636         Restore blank line before next section, erroneously erased
18637         in my previous commit
18639         * etc/compilation.txt (symbol ant): Add an additional trailing blank
18640         line to this section, so that there are two of them immediately before
18641         the next section.
18643 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18645         Support MSW filename style for ant compilation error regexp
18647         * etc/compilation.txt (symbol ant):
18648         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
18649         Support MSW filename style.
18651 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
18653         * nt/INSTALL: Minor spelling and quote fixes.
18655         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
18657 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
18659         Maintain ordering of JSON object keys by default
18661         * lisp/json.el (json-object-type): Mention order handling in doc-string.
18662         (json--plist-reverse): New utility function.
18663         (json-read-object): Maintain ordering for alists and plists.
18664         (json-pretty-print): Ensure that ordering is maintained.
18666         * test/automated/json-tests.el (test-json-plist-reverse): New test for
18667         `json--plist-reverse'.
18668         (json-read-simple-alist): Update test to accommodate for changes in
18669         `json-read-object'.
18671         * etc/NEWS: Document the new behavior of the pretty printing functions.
18673 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
18675         * src/coding.c (complement_process_encoding_system): Revert last change.
18677 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
18679         * admin/MAINTAINERS: Add entry for Ulf Jasper.
18681 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
18683         Doc fix for `defmacro'
18685         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
18687 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
18689         More validatation of coding systems
18691         * src/fileio.c (Finsert_file_contents): Remove redundant
18692         coding-system check.
18693         (choose_write_coding_system): Likewise.
18694         * src/coding.c (complement_process_encoding_system): Check argument
18695         for valid coding system.
18697 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
18699         Avoid crashes in coding_inherit_eol_type
18701         * src/coding.c (coding_inherit_eol_type): Check the validity of
18702         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
18703         (Bug#21602)
18705 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
18707         More validatation of coding system in 'write-region'
18709         * src/coding.c (choose_write_coding_system): More validation of
18710         coding-system from various sources.  Suggested by Andreas Schwab
18711         <schwab@linux-m68k.org>.  (Bug#21602)
18713 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
18715         Avoid crashes due to invalid coding-system
18717         * src/fileio.c (choose_write_coding_system)
18718         (Finsert_file_contents): Check validity of coding-system-for-write
18719         and coding-system-for-read bound by the caller.  (Bug#21602)
18721 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
18723         Adapt to new prettify-symbols-unprettify-at-point default
18725         * etc/NEWS: Mention that unprettication of symbol at point is off
18726         by default.
18728 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
18730         Revert my two recent process.c changes
18732         Revert "Improve last commit to process.c" and "Remove callback-handled
18733         channels from Available set" because they did not fix bug#21313.
18735         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
18736         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
18738 2015-10-02  Markus Triska  <triska@metalevel.at>
18740         * lisp/progmodes/prolog.el: Update and extend operator table.
18741         (prolog-smie-grammar): Add multifile, public etc.
18743 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18745         Allow autogen even when Git is not installed
18747         * autogen.sh: Test ‘git status’ before trying to use Git.
18749 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
18751         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
18752         Adjust lto/lfrom when we have uncommitted changes.
18754 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18756         Fix problems found by clang 3.5.0
18758         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
18759         * src/font.c (font_parse_family_registry):
18760         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
18762 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
18764         * nt/INSTALL: Update instructions for running autogen.sh.
18766         * nt/INSTALL: Point to ezwinports for libXpm binaries.
18768 2015-10-02  Daniel Colascione  <dancol@dancol.org>
18770         Fix winner in cl-lib not loaded case
18772         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
18773         without requiring CL
18775 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18777         Fix a few problems with directed quotes
18779         This is in response to a problem report by Kaushal Modi in:
18780         http://bugs.gnu.org/21588#25
18781         * lisp/cedet/mode-local.el (describe-mode-local-overload):
18782         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
18783         * lisp/info-xref.el (info-xref-check-all-custom):
18784         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
18785         Prefer directed to undirected single quotes in diagnostics.
18787 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18789         Revert "Attempt to fix slow redisplay caused by last changes"
18791         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
18792         (try_cursor_movement): Don't relax requirements for redisplay
18793         optimizations for the selected frame.  (Bug#21597)
18795         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
18797 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18799         Fix slow redisplay when daemon frame exists
18801         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
18802         when looking for frames that need to be redisplayed.  (Bug#21597)
18804 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18806         Attempt to fix slow redisplay caused by last changes
18808         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
18809         (try_cursor_movement): Relax requirements for redisplay
18810         optimizations for the selected frame.  (Bug#21597)
18812 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
18814         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
18815         Improve doc string.
18817 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
18819         * lisp/minibuffer.el (minibuffer-completion-help):
18820         Set default base-size, in case completion table does not set it.
18822 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18824         Fix GUD display of GDB output with non-ASCII text
18826         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
18827         (gdb-mi-decode): New function.
18828         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
18829         decode octal escapes in GDB output.  (Bug#21572)
18831 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18833         * nt/INSTALL: Document where to find XPM support files.
18835 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
18837         Un- and re-prettification are not exclusive
18839         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
18840         Re-apply prettification to previous symbol also when unprettifying
18841         next one.
18843 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
18845         Don't unprettify symbol at point by default
18847         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
18848         Default to disabled (nil).
18850 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18852         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
18853         Support unprettifying when point is after a symbol.
18855         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
18857 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
18859         Avoid assertion violations in push_prefix_prop
18861         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
18862         a line that has a line-prefix defined starts with an image.  (Bug#21428)
18864 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
18866         Disable some display optimizations when frames need redisplay
18868         These optimizations were previously disabled by the
18869         windows_or_buffers_changed flag, which now is not set
18870         when only some frames need to be redrawn.
18871         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
18872         'redisplay' flag is set.
18873         (try_window_reusing_current_matrix, try_window_id)
18874         (try_cursor_movement): Disable these optimizations when the
18875         frame's 'redisplay' flag is set.
18877 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
18879         Don't modify buffer by unprettification
18881         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
18882         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
18883         modify buffer when setting/removing custom prettify-symbols-start/end
18884         text properties.  Add them to font-lock-extra-managed-props, too.
18886 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
18888         Try to avoid redisplaying all frames when creating a new one
18890         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
18891         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
18892         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
18893         * src/frame.c (x_set_screen_gamma): Set the specific frame's
18894         `redisplay' bit rather than windows_or_buffers_changed.
18896         * src/window.c (apply_window_adjustment): Remove redundant setting of
18897         windows_or_buffers_changed.
18899         * src/xdisp.c (redisplay_internal): Set the specific frame's
18900         `redisplay' bit rather than update_mode_lines in response to
18901         cursor_type_changed.
18902         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
18903         (AINC): Adjust accordingly.
18905 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
18907         Implement unprettification of symbol at point
18909         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
18910         symbol at point.
18911         (prettify-symbols--current-symbol-bounds): New variable.
18912         (prettify-symbols--post-command-hook): New function.
18913         (prettify-symbols-unprettify-at-point): New defcustom.
18914         (prettify-symbols-mode): Use it.
18915         (prettify-symbols--compose-symbol): Use them.
18917 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18919         * src/macfont.m (mac_font_descriptor_supports_languages):
18920         Regard "zh" as synonym of "zh-Hans".
18922 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18924         Work around crash when displaying etc/HELLO on OS X 10.11
18926         * src/macfont.m (mac_font_get_weight)
18927         (mac_font_descriptor_get_adjusted_weight): New functions.
18928         (macfont_store_descriptor_attributes): Adjust weight.
18930 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18932         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
18934 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
18936         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
18937         of the columns.
18939 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
18941         Use unar and lsar to handle RAR archives in arc-mode
18943         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
18944         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
18946 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
18948         Clarify :create in auth-source's docs
18950         * lisp/gnus/auth-source.el (auth-source-search):
18951         Clarify :create's meaning.
18953 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
18955         Avoid empty -path arguments in rgrep
18957         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
18958         the list produced according to grep-find-ignored-directories,
18959         before passing it to Find/Grep invocation.  (Bug#21548)
18961 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
18963         Clarify documentation of pos-visible-in-window-p
18965         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
18966         t for POS.  See
18967         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
18968         for the original report.
18970         * doc/lispref/windows.texi (Window Start and End): Clarify the
18971         meaning of t for the POSITION argument of pos-visible-in-window-p.
18973 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18975         * lisp/progmodes/prolog.el: Fix various indentation cases.
18976         (prolog-operator-chars): New const (add \\).
18977         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
18978         (prolog-smie-rules): Add rules according to bug#21526.
18980 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18982         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
18983         (sh-indent-after-continuation): Add new value `always' (bug#17620)
18984         (sh-smie-sh-rules): Remove old handling of continued lines.
18985         (sh-smie--indent-continuation): New function.
18986         (sh-set-shell): Use it.
18988 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18990         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
18991         Remove redundant :group keyword args.
18992         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
18993         Remove variables.
18994         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
18995         turn them into compile-time variables.
18996         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
18997         Add rules for break, continue, return, global, and persistent.
18998         Refine the rule for "until".
18999         (octave-smie--funcall-p, octave-smie--end-index-p)
19000         (octave-smie--in-parens-p): New functions.
19001         (octave-smie-backward-token, octave-smie-forward-token): Use them to
19002         distinguish the "enumeration" function and the "end" index from
19003         their corresponding keywords.
19004         (octave--block-offset-keywords): New constant.
19005         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
19006         parsing.
19007         (octave-reserved-words): Redefine using octave-smie-grammar.
19008         (octave-font-lock-keywords): Use octave-smie--funcall-p and
19009         octave-smie--end-index-p.
19011 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19013         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
19015 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
19017         * nt/INSTALL: Remove references to GTK site.
19018         That site no longer offers Windows downloads.
19020 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
19022         * nt/INSTALL: Add instructions for installing Git.
19024 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
19026         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
19027         use colors.  Suggested by Eli Zaretskii.
19029 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
19031         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
19032         not supporting 256 above colors (bug#21557).
19034 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
19036         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
19038         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
19040 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
19042         Add documentation for seq.el
19044         * doc/lispref/sequences.texi: Add documentation regarding extending
19045         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
19046         seq-do and seq-map.
19048 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
19050         Better documentation for seq-some
19052         * doc/lispref/sequences.texi:
19053         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
19054         guarantee that the returned value is the first non-nil value that
19055         resulted from applying the predicate.
19057 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
19059         * lisp/arc-mode.el: Sharp-quote function arguments.
19061 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
19063         Avoid redisplay error in ediff-regions-wordwise
19065         * lisp/vc/ediff-util.el
19066         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
19067         set before activating it.  (Bug#21567)
19069 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
19071         Another attempt to fix crashes due to prematurely freed faces
19073         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
19074         faces for as long as we might have desired matrices that reference
19075         those faces.  (Bug#21428)
19077 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
19079         Add auctex development list email address
19081 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
19083         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
19085 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
19087         Improve wrapfig package support and caption parsing
19089         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
19090         Correct description string and add wraptable environment.
19091         (reftex-default-context-regexps): Improve caption regexp.
19093 2015-09-28  Anders Lindgren  <andlind@gmail.com>
19095         Respect value of frame_resize_pixelwise when handling fullscreen state
19097         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
19098         setting size increments.
19100 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
19102         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
19104 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
19106         Add prettify-symbols-alist for js-mode
19108         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
19109         (js-mode): Use it.
19111 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
19113         * nt/subdirs.el: File deleted (no longer used).
19115 2015-09-26  Alan Mackenzie  <acm@muc.de>
19117         Fix follow-scroll-up/down, making them replacements for scroll-up/down
19119         1. Allow point to move between follow windows in scroll operations.
19120         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
19121         when EOB was isolated in the last follow window.
19123         * lisp/follow.el (follow-fixed-window): New variable.
19124         (follow-get-scrolled-point): New function.
19125         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
19126         Reformulate the code.  Put `scroll-command' properties on the functions.
19127         Correct minor errors in ...-down's doc string and code.
19128         (follow-calc-win-end): Amend incomplete doc string.  Use
19129         `pos-visible-in-window-p' to check whether EOB is in the window.
19130         (follow-estimate-first-window-start): Correct an off-by-1 error.
19131         (follow-adjust-window): Add handling for explicit scrolling operations.
19133 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
19135         * admin/MAINTAINERS: Add self, plus list some more files
19136         sans maintaners.
19138 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
19140         New DWIM commands for changing letter-case
19142         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
19143         New functions.  (Bug#21501)
19145 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
19147         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
19149 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
19151         Make face realization be more frame-specific
19153         * src/frame.h (struct f): New flag face_change.
19154         * src/xfaces.c (Finternal_make_lisp_face)
19155         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
19156         (update_face_from_frame_parameter): Set the face_change flag only
19157         for the frame whose faces are affected.
19158         * src/xdisp.c (init_iterator): If a frame's face_change flag is
19159         set, free faces only on that frame.
19160         (redisplay_internal): Disable "display optimization 1" if the
19161         frame's face_change flag is set.
19162         (redisplay_window): Don't allow skipping a window's redisplay if
19163         its frame's face_change flag is set.
19164         * src/frame.c (x_set_screen_gamma): Instead of calling
19165         Fclear_face_cache, call clear_face_cache and set
19166         windows_or_buffers_changed to a non-zero value.  This avoids
19167         setting the global face_change flag that triggers face realization
19168         on all frames and thorough redisplay of all of them.
19170         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
19171         clear face cache if the selected frame is a GUI frame.
19173 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
19175         Remove font-latex specific check
19177         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
19178         Use syntax-ppss data to identify verbatim contents.
19180 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
19182         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
19183         Fix some false negatives.
19185 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19187         Reorder Windows version in Emacs manifests
19189         * nt/emacs-x64.manifest:
19190         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
19191         highest.
19193 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19195         Update Emacs manifest files for Windows 10
19197         * nt/emacs-x86.manifest:
19198         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
19200 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19202         Avoid non-ASCII decoding errors in C src files
19204         * src/nsterm.m:
19205         * src/lisp.h:
19206         * src/editfns.c:
19207         * src/doprnt.c: Add 'coding' cookies -- these files include
19208         Unicode characters and should be decoded as UTF-8.
19210 2015-09-25  Alan Mackenzie  <acm@muc.de>
19212         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
19214         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
19215         amend to match current modes and functions.
19216         (edebug-set-initial-mode): Uncomment and change from setting a defun's
19217         `edebug-initial-mode''s property to setting the variable
19218         `edebug-initial-mode'.
19219         (top level): Create new binding C-x C-a C-m for
19220         `edebug-set-initial-mode'.
19222         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
19223         `edebug-set-initial-mode' and its new key binding.
19224         (Edebug Options): Mention the new command in the pertinent place.
19226         * etc/NEWS: Write entry for this change.
19228 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19230         Avoid non-ASCII decoding errors in Texinfo files
19232         * doc/misc/tramp.texi:
19233         * doc/lispref/strings.texi:
19234         * doc/lispref/positions.texi:
19235         * doc/lispref/help.texi:
19236         * doc/lispref/functions.texi:
19237         * doc/lispintro/emacs-lisp-intro.texi:
19238         * doc/emacs/text.texi:
19239         * doc/emacs/modes.texi:
19240         * doc/emacs/mini.texi:
19241         * doc/emacs/display.texi:
19242         * doc/emacs/custom.texi:
19243         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
19244         Unicode characters and should be decoded as UTF-8.
19245         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
19246         apostrophe unnecessarily.
19248 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
19250         Merge from gnulib
19252         This incorporates:
19253         2015-09-25 c-ctype: rewrite to use inline functions
19254         2015-09-24 maint: add coding cookies to non-ASCII sources
19255         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
19256         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
19257         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
19258         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
19259         * lib/set-permissions.c:
19260         Copy from gnulib.
19262 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
19264         Update publicsuffix.txt from upstream
19266         * etc/publicsuffix.txt: Update from
19267         https://publicsuffix.org/list/effective_tld_names.dat
19268         dated 2015-09-24 17:29:21 UTC.
19270 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
19272         Prevent timers from messing up TTY menus
19274         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
19275         the TTY menu is open.  (Bug#21530)
19277 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
19279         No need to mention K&R C in c-mode intro
19281 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
19283         Fix recent bootstrap problems
19285         * src/syntax.c (parse_sexp_propertize): Fix last fix.
19286         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
19287         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
19289 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
19291         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
19293 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
19295         Properly quote nested xml comments (Bug#6267) (Bug#20001)
19297         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
19298         (nxml-mode): Set comment-quote-nested-function.
19300 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
19302         Allow major-modes full control over quoting nested comments
19304         * lisp/newcomment.el (comment-quote-nested-function): New variable.
19305         (comment-quote-nested-default): New function.
19306         (comment-quote-nested): Use `comment-quote-nested-function'.
19308 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19310         Prefer CALLN in a few more places
19312         * src/macfont.m (macfont_set_family_cache):
19313         * src/nsterm.m (append2):
19314         * src/xterm.c (x_cr_export_frames):
19315         Prefer CALLN to allocating the arg arrays by hand.
19317 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
19319         Adapt file-notify-test02-events test case
19321         * test/automated/file-notify-tests.el (file-notify-test02-events):
19322         Create a new watch for every test.
19324 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
19326         Continue gfilenotify.c implementation of missing parts
19328         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
19329         `gfile-add-watch' call.
19330         (file-notify-rm-watch): Modify `file-notify-descriptors' only
19331         after calling the low level functions.
19333         * src/gfilenotify.c (dir_monitor_callback): Check, whether
19334         event_type is expected.
19335         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
19336         (Fgfile_rm_watch): Fix typo.
19337         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
19339 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
19341         * src/syntax.c (parse_sexp_propertize): Handle spurious
19342         e_property_truncated flag.
19343         (update_syntax_table_forward): Remove invalid assertion.
19345 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
19347         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
19348         space display spec on text-mode terminals, by calling
19349         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
19350         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
19351         test for a GUI frame.
19353 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
19355         Move let-when-compile to lisp-mode.el
19357         This fixes the bootstrapping problem of `let-when-compile' using
19358         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
19360 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19362         * lisp/url/url-http.el (url-http-parse-headers): Do not
19363         automatically include Authorization header in redirect.
19364         (Bug#21350)
19366 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
19368         Clarify documentation of ':relative-width'
19370         * doc/lispref/display.texi (Specified Space): Document that
19371         ':relative-width' is only supported on GUI frames.
19373 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
19375         Fix 'current-column' in presence of :relative-width
19377         * src/indent.c (check_display_width): Support ':relative-width'
19378         in a display spec that specifies a stretch glyph.  (Bug#21533)
19380 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
19382         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
19384         ... to conform better to CONTRIBUTE guidelines.
19386 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
19388         * lisp/progmodes/prolog.el: Fix indentation of empty line
19390         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
19391         `empty-line-token' element.
19392         (smie-indent-empty-line): New function.
19393         (smie-indent-functions): Add it.
19395         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
19396         behavior and use the new `empty-line-token' element (bug#21526).
19397         (prolog-mode-variables): Fix comment-start-skip setting to match
19398         comment-start.
19400         * test/indent/prolog.prolog: Add nested indentation tests.
19402         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
19403         comment-start-skip not to misuse submatch 1.
19405 2015-09-22  Alan Mackenzie  <acm@muc.de>
19407         Make description of `edebug-initial-mode' user friendly
19409         Fixes bug#21365.
19411         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
19412         description of `edebug-initial-mode' from that of its implementation
19413         to that of its visual effect and use.  Move the paragraph higher up.
19415 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
19417         lisp/progmodes/gud.el (gud-format-command): Fix last commit
19419         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
19420         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
19422 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
19424         Improve last commit to process.c
19426 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
19428         Implement gfile-valid-p
19430         * lisp/filenotify.el (file-notify-callback): Fix typo.
19431         (gfile-valid-p): Remove defalias.
19433         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
19434         the file or directory to be watched is deleted.
19435         (Fgfile_add_watch): Make watch_object a triple.
19436         (Fgfile_rm_watch): Check, whether watch is cancelled already.
19437         (Fgfile_valid_p): New defun.
19438         (syms_of_gfilenotify): Declare Sgfile_valid_p.
19440 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
19442         Remove callback-handled channels from Available set
19444         * src/process.c (wait_reading_process_output): Remove channel from
19445         Available set if it is handled by a callback, e.g., dbus or
19446         inotify (bug#21313).
19448 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
19450         Use lunate epsilon for TeX \epsilon
19452         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
19453         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
19454         \epsilon to use GREEK LUNATE EPSILON SYMBOL
19456 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
19458         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
19460         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
19461         rather than outermost paren (bug#21526).
19463 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19465         Improve git diff hunk headers for .el, .texi
19467         Problem reported by Alan Mackenzie in:
19468         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
19469         * .gitattributes (*.el, *.texi): New patterns.
19470         * autogen.sh: Configure diff.elisp.xfuncname and
19471         diff.texinfo.xfuncname if using Git.
19473 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
19475         Don't rely on defaults in decoding UTF-8 encoded Lisp files
19477         * lisp/replace.el:
19478         * lisp/textmodes/rst.el:
19479         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
19481 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19483         Clarify or replace a few \u escapes
19485         * doc/lispref/nonascii.texi (Character Properties)
19486         More-detailed commentary for \u escapes.
19487         * lisp/progmodes/python.el (python--prettify-symbols-alist):
19488         * lisp/replace.el (query-replace-from-to-separator):
19489         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
19490         (rst-mode-syntax-table):
19491         * lisp/whitespace.el (whitespace-display-mappings):
19492         Prefer actual character to \u escape when this makes the code
19493         easier to follow in the usual case where Unicode chars can be
19494         displayed.
19496 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19498         Pacify GCC -Wmaybe-uninitialized in xdisp.c
19500         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
19501         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
19502         charpos.  The loop should always execute at least once anyway.
19504 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
19506         Signal error on invalid regexp
19508         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
19509         Signal an error when the user tries searching with a regexp
19510         matching the empty string.
19512 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
19514         Another fix of file-notify-tests for w32notify
19516         * test/automated/file-notify-tests.el (file-notify-test02-events):
19517         Further adaptation for w32notify: reduce the number of expected
19518         'changed' events.  (Bug#21435)
19520 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
19522         Adapt tests and manual for w32notify
19524         * doc/lispref/os.texi (File Notifications): w32notify does not
19525         send `attribute-changed' events.
19527         * test/automated/file-notify-tests.el (file-notify--test-with-events):
19528         Simplify parameters.  Adapt all callees.
19529         (file-notify-test02-events): w32notify does not send
19530         `attribute-changed' events.
19531         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
19532         Do not skip in case of w32notify.  Simply ignore this part of the test.
19534 2015-09-21  Dima Kogan  <dima@secretsauce.net>
19536         Fix setting breakpoints when remote-debugging
19538         * lisp/progmodes/gud.el (gud-format-command): Send localized file
19539         names to the debugger running on the remote.  (Bug#13304)
19541 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
19543         Better docstring and parameter name for seq-find
19545         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
19546         the parameter `sentinel' to `default'.
19548         * doc/lispref/sequences.texi (Sequence Functions): Update the
19549           documentation for `seq-find' accordingly.
19551 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
19553         Avoid infinite recursion while displaying box face
19555         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
19556         the previous string/buffer character position under bidi
19557         iteration.  (Bug#21428)
19559 2015-09-21  Anders Lindgren  <andlind@gmail.com>
19561         Keep upper edge unchanged when changing size of NS frame
19563         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
19564         (Bug#21415).
19566 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19568         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
19569         (prolog-smie-rules): Accommodate standard if/then/else special
19570         indentation.
19571         (prolog-mode): Add . to electric-indent-chars.
19572         (prolog-electric--if-then-else): Re-indent the line before adding space
19573         after the new char (bug#21526).
19575 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
19577         Add prettify symbols to python-mode
19579         * lisp/progmodes/python.el (python-prettify-symbols-alist):
19580         New variable.
19581         (python-mode): Use it
19583 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19585         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
19587 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
19589         (compilation-error-regexp-alist-alist): Tone down guile-file
19591         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
19592         Make guile-file a bit less enthusiastic (bug#21496).
19594 2015-09-20  Drew Csillag  <drew@thecsillags.com>
19596         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
19597         Fix m4_* highlighting.
19599         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
19600         of commands when they have a "m4_" prefix.
19602 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
19604         '.' -> `.' in doc string
19606         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
19607         individual chars with grave quotes instead of straight quotes, as
19608         this works better when they are translated to curved quotes.
19610 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
19612         Improve file notifications, especially for Tramp
19614         * doc/lispref/files.texi (Magic File Names):
19615         Mention `file-notify-valid-p'.
19617         * doc/lispref/os.texi (File Notifications):
19618         Describe `file-notify-valid-p'.
19620         * etc/NEWS: Add `file-notify-valid-p'.
19622         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
19623         Improve implementation.
19624         (tramp-gvfs-monitor-file-process-filter): Rename from
19625         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
19626         process if appropriate.
19628         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
19629         Improve implementation.
19630         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
19631         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
19632         if appropriate.
19633         (tramp-sh-inotifywait-process-filter): Rename from
19634         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
19635         appropriate.
19637         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
19638         Use `delete-process'.
19639         (tramp-handle-file-notify-valid-p): Check also, that file or
19640         directory to be watched still exists.
19642         * test/automated/file-notify-tests.el (file-notify--test-timeout):
19643         New defun.  Use it at all places a timeout is needed.
19644         (file-notify--test-cleanup): Delete directories recursively.
19645         Cleanup also Tramp connections.
19646         (file-notify-test02-events): Add tests for `attribute-change'.
19647         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
19648         Add tests for `file-notify-rm-watch'.
19650 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
19652         Use %s to format strings instead of splicing them
19654         If FOO might contain quotes that are part of a file or variable
19655         name, the quotes should not be translated when showing FOO’s name
19656         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
19657         is not quite right, as it would translate FOO’s quotes.
19658         Change it to (message "%s: bar" FOO) instead.
19659         * lisp/allout.el (allout-process-exposed):
19660         * lisp/calc/calc-ext.el (calc-do-prefix-help):
19661         * lisp/calc/calc-store.el (calc-store-into):
19662         * lisp/calendar/todo-mode.el (todo-category-completions):
19663         * lisp/cedet/semantic/complete.el (semantic-completion-message):
19664         * lisp/org/ob-latex.el (convert-pdf):
19665         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
19666         * lisp/org/ox-latex.el (org-latex-compile):
19667         * lisp/org/ox-man.el (org-man-compile):
19668         * lisp/org/ox-odt.el (org-odt--export-wrap):
19669         * lisp/org/ox-texinfo.el (org-texinfo-compile):
19670         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
19671         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
19672         (verilog-signals-combine-bus, verilog-read-defines)
19673         (verilog-getopt-file, verilog-expand-dirnames)
19674         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
19675         * lisp/term/ns-win.el (ns-spi-service-call):
19676         Use %s to avoid translating quotes of file names etc. in diagnostics.
19678 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19680         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
19681         (js-mode): Don't set syntax-begin-function.
19683 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19685         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
19686         syntax-begin-function is a symbol.
19688 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
19690         Improve documentation of 'run-at-time'
19691         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
19692         In particular, don't refer to 'diary-entry-time', because it is
19693         unavailable until diary-lib is loaded.  Also, refer to
19694         'timer-duration-words', not 'timer-duration', as the latter's doc
19695         string says nothing about the accepted strings.
19697 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
19699         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
19701 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
19703         Repair pdbtrack remote file tracking
19704         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
19705         Rectify pdbtrack so it follows transitions from one remote source
19706         file to the next.
19708 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
19710         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
19712 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
19714         Adapt vc-src to the old-new vc-checkin API
19715         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
19716         additional optional parameter.
19718 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
19720         Add overflow module to CSS property list
19721         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
19722         from CSS Overflow Module Level 3.
19724 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
19726         Fix documentation of "C-u C-x v v"
19727         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
19728         documentation of "C-u C-x v v" match what the code does.
19730         Resurrect the ability to specify a revision in vc-next-action
19731         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
19732         * lisp/vc/vc-dav.el (vc-dav-checkin):
19733         * lisp/vc/vc-git.el (vc-git-checkin):
19734         * lisp/vc/vc-hg.el (vc-hg-checkin):
19735         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
19736         an additional optional argument, the revision to checkin.
19737         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
19738         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
19739         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
19740         a revision to checkin.
19741         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
19742         revision when checking in files.
19743         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
19744         for the details.
19746 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
19748         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
19749         (verilog-decls-princ, verilog-modport-princ)
19750         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
19752 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
19754         Fix the routine for help on Calc's prefixes
19755         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
19756         (calc-do-prefix-help): Use `read-char' to determine the next Calc
19757         command.
19759 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
19761         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
19762         (font-lock-fontify-block): Don't let-bind it.
19763         (font-lock-compile-keywords): Don't use it.
19764         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
19765         start one slot earlier, instead.
19766         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
19767         Don't declare.
19768         (syntax-ppss): Don't use it either.
19769         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
19770         from docstring.
19771         * doc/emacs/display.texi (Font Lock): Don't mention
19772         font-lock-beginning-of-syntax-function.
19773         * doc/lispref/modes.texi (Font Lock Basics): Update description of
19774         font-lock-defaults.
19775         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
19776         * lisp/loadhist.el (unload-feature-special-hooks):
19777         Remove font-lock-beginning-of-syntax-function.
19778         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
19779         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
19780         font-lock-beginning-of-syntax-function.
19782 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
19784         Backslash cleanup in Elisp source files
19785         This patch should not change behavior.  It typically omits backslashes
19786         where they are redundant (e.g., in the string literal "^\$").
19787         In a few places, insert backslashes where they make regular
19788         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
19789         "^\\*", which has the same effect as a regular expression.
19790         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
19791         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
19792         RCS IDs, as that makes it clearer that the backslash is intended.
19794         Some more minor backslash fixes
19795         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
19796         * test/automated/info-xref.el (info-xref-test-write-file):
19797         Double backslashes in strings.
19799         Fix several backslash typos in Elisp strings
19800         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
19801         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
19802         (todo-reset-done-string, todo-reset-comment-string)
19803         (todo-reset-highlight-item):
19804         * lisp/erc/erc-networks.el (erc-networks-alist):
19805         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
19806         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
19807         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
19808         (nntp-telnet-shell-prompt):
19809         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
19810         * lisp/image-dired.el (image-dired-rotate-original):
19811         (image-dired-get-exif-file-name):
19812         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
19813         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
19814         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
19815         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
19816         * lisp/net/shr-color.el (shr-color->hexadecimal):
19817         * lisp/org/org-bibtex.el (org-bibtex-fields):
19818         * lisp/org/org-docview.el (org-docview-export):
19819         * lisp/org/org-entities.el (org-entities):
19820         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
19821         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
19822         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
19823         (ebnf-style-database):
19824         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
19825         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
19826         * lisp/progmodes/sql.el (sql-product-alist):
19827         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
19828         (verilog-error-font-lock-keywords)
19829         (verilog-assignment-operator-re):
19830         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
19831         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
19832         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
19833         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
19834         For example, to get the regular expression ‘\.’ use the string
19835         literal "\\.", not "\." (which is equivalent to ".").
19836         * lisp/emulation/viper-util.el (viper-glob-unix-files):
19837         Remove stray ‘\j’ from string.
19838         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
19839         (nntp-telnet-shell-prompt):
19840         Treat > like $ when matching a shell prompt.
19841         * lisp/progmodes/make-mode.el (makefile-browse):
19842         Properly quote a diagnostic.
19844         Fix minor quoting problems in diagnostics
19845         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
19846         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
19847         Follow text-quoting-style in diagnostic, and quote a file name.
19849 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
19851         * doc/lispref/frames.texi (Cursor Parameters):
19852         Document 'x-stretch-cursor'.
19854 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19856         Omit unnecessary \ before paren in C docstrings
19857         Although \( is needed in docstrings in Elisp code, it is not needed in
19858         docstrings in C code, since C function definitiions do not start with
19859         a parenthesis.  The backslashes made the docstrings a bit harder to
19860         read and to format in columns.  Also, some C docstrings had ( in
19861         column 1 and this did not appear to be causing any problems.  So,
19862         simplify C docstrings by replacing \( with ( and \) with ).
19864         A few more minor quoting fixes in a script and a text file
19866         Minor quoting fixes in scripts and doc
19867         Prefer straight quotes in random script files, as they are not
19868         converted.  Prefer grave quotes in a couple of places in the manual
19869         that were missed earlier, as these quotes are converted.
19871         Minor backslash fixes in manuals and scripts
19872         * Makefile.in (install-arch-indep):
19873         * admin/charsets/compact.awk:
19874         * admin/charsets/gb180302.awk (gb_to_index):
19875         * admin/charsets/gb180304.awk (gb_to_index):
19876         Avoid undefined behavior in Awk regular expression backslashes.
19877         * doc/misc/efaq.texi (Matching parentheses):
19878         Omit unnecessary backslashes.
19879         * doc/misc/gnus-faq.texi (FAQ 5-8):
19880         Avoid undefined behavior in suggested sed backslash usage.
19882         Add -Wswitch to --enable-gcc-warnings
19883         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
19884         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
19885         * lib-src/etags.c (main, consider_token, C_entries):
19886         * src/coding.c (encode_invocation_designation):
19887         * src/data.c (Ftype_of):
19888         * src/eval.c (Fdefvaralias, default_toplevel_binding)
19889         (Fbacktrace__locals, mark_specpdl):
19890         * src/lisp.h (record_xmalloc):
19891         * src/syntax.c (scan_lists, scan_sexps_forward):
19892         * src/window.c (window_relative_x_coord):
19893         * src/xdisp.c (push_it, pop_it):
19894         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
19895         Error out or do nothing (as appropriate) if a switch statement
19896         with an enum value does not cover all of the enum.
19897         * src/dispextern.h (struct iterator_stack_entry.u.comp):
19898         Remove unused member discovered by using -Wswitch.
19899         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
19900         * src/vm-limit.c (check_memory_limits):
19901         Simplify warning-diagnostic computation by using a table.
19903         etags ‘fatal’ function is now printf-like
19904         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
19905         Also, now static; not clear why it needed to be extern.
19906         (verror): New function, with most of the old contents of ‘error’.
19907         (fatal, error): Use it.
19909 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
19911         More adaptations in file-notify-tests.el
19912         * test/automated/file-notify-tests.el
19913         (file-notify-test05-dir-validity): Skip for w32notify in
19914         batch-mode.  (Bug#21432)
19916 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
19918         Adapt test in file-notify-tests.el
19919         * test/automated/file-notify-tests.el
19920         (file-notify-test04-file-validity): Skip for w32notify in
19921         batch-mode.  Add test lost last commit.
19923 2015-09-16  Dima Kogan  <dima@secretsauce.net>
19925         winner no longer holds on to dead frames
19926         * lisp/winner.el (winner-change-fun): Cull dead frames.
19927         This prevents a potentially massive memory leak.  See:
19928         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
19930 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
19932         Use common report_file_notify_error function
19933         * src/fileio.c (report_file_notify_error): New function.
19934         * src/inotify.c (report_inotify_error): Remove function.
19935         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
19936         (Finotify_rm_watch): Use report_file_notify_error.
19937         * src/lisp.h (report_file_notify_error): Declare external function.
19938         * src/w32notify.c (report_w32notify_error): Remove function.
19939         (Fw32notify_add_watch, Fw32notify_rm_watch):
19940         Use report_file_notify_error.
19942 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
19944         Fix documentation.
19945         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
19946         the documentation of the root mean square.
19948 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
19950         Remove tool_bar_redisplayed_once and associated code.
19951         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
19952         * src/frame.c (make_frame, x_set_font): Remove initialization of
19953         f->tool_bar_redisplayed_once.
19954         * src/w32fns.c (x_change_tool_bar_height):
19955         * src/xfns.c (x_change_tool_bar_height): Don't check for
19956         f->tool_bar_redisplayed_once.
19957         * src/xdisp.c (redisplay_internal): Remove handling of
19958         f->tool_bar_redisplayed_once.
19960 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
19962         Restore some of the quoting in the manuals
19963         * doc/lispref/windows.texi (Coordinates and Windows)
19964         (Coordinates and Windows):
19965         * doc/lispref/variables.texi (Lexical Binding)
19966         (File Local Variables):
19967         * doc/lispref/text.texi (Format Properties):
19968         * doc/lispref/symbols.texi (Symbol Components):
19969         * doc/lispref/strings.texi (Creating Strings):
19970         * doc/lispref/sequences.texi (Sequence Functions):
19971         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
19972         (Search and Replace):
19973         * doc/lispref/processes.texi (Bindat Spec):
19974         * doc/lispref/os.texi (Idle Timers):
19975         * doc/lispref/objects.texi (Basic Char Syntax):
19976         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
19977         * doc/lispref/nonascii.texi (Character Properties):
19978         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
19979         (Mode Line Variables):
19980         * doc/lispref/minibuf.texi (Text from Minibuffer):
19981         * doc/lispref/loading.texi (Autoload):
19982         * doc/lispref/keymaps.texi (Controlling Active Maps):
19983         * doc/lispref/frames.texi (Frame Layout, Size and Position)
19984         (Size Parameters, Implied Frame Resizing):
19985         * doc/lispref/files.texi (Changing Files, Magic File Names):
19986         * doc/lispref/eval.texi (Self-Evaluating Forms):
19987         * doc/lispref/display.texi (Progress, Abstract Display)
19988         (Abstract Display Example, Bidirectional Display):
19989         * doc/lispref/commands.texi (Event Mod):
19990         * doc/emacs/windows.texi (Displaying Buffers):
19991         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
19992         * doc/emacs/text.texi (Enriched Text):
19993         * doc/emacs/programs.texi (MixedCase Words):
19994         * doc/emacs/picture-xtra.texi (Insert in Picture)
19995         (Tabs in Picture):
19996         * doc/emacs/misc.texi (Emacs Server, Printing):
19997         * doc/emacs/mini.texi (Minibuffer History):
19998         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
19999         (Pulling / Pushing):
20000         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
20001         * doc/emacs/help.texi (Help, Help Echo):
20002         * doc/emacs/glossary.texi (Glossary):
20003         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
20004         (Frame Commands):
20005         * doc/emacs/files.texi (Reverting, Saving, Directories):
20006         * doc/emacs/entering.texi (Exiting):
20007         * doc/emacs/emacs.texi (Top):
20008         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
20009         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
20010         appropriate or replace quoting with @dfn.
20011         * doc/misc/ediff.texi (Window and Frame Configuration):
20012         * doc/lispref/processes.texi (Network Feature Testing):
20013         * doc/lispref/display.texi (Display Margins): Quote the phrase
20014         after "a.k.a." where appropriate.
20016 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
20018         Clarify reftex-extra-bindings docs
20019         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
20020         * doc/misc/reftex.texi (Key Bindings): Document that the variable
20021         only has an effect at load-time.
20023 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
20025         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
20026         search argument.  (Bug#21492) (Bug#21493)
20028 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
20030         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
20031         Add pretty symbols for \qquad and \varrho.
20033 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
20035         Add new functions for the root mean square of a (Calc) vector
20036         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
20037         New functions.
20038         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
20039         `calc-vector-rms', add autoloads for `calc-vector-rms' and
20040         `calcFunc-rms'.
20041         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
20042         `calcFunc-rms'.
20043         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
20044         `calc-vector-rms'.
20045         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
20046         command.
20048 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
20050         Add monotone EDE generic project
20051         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
20052         Add monotone generic project.
20054         Revert premature commit
20055         * doc/lispref/files.texi: Revert premature commit of change to
20056         file-name-all-completions.
20058         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
20059         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
20060         with cl-generic defaults.
20061         (elisp--xref-find-references): Add doc string.
20062         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
20063         tests to find bug.
20065         Fix bugs in eieio-oref-default related to class symbols
20066         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
20067         (eieio-oref-default): Handle class properly.
20069 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20071         Quote “fullboth” when defining it
20072         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
20073         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
20075 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
20077         Minor doc fix in emacs/ack.texi
20078         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
20079         first argument.
20081 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
20083         Adapt tests in auto-revert-tests.el
20084         * test/automated/auto-revert-tests.el (auto-revert--timeout):
20085         Make it a defconst.
20086         (auto-revert--wait-for-revert): New defun.
20087         (auto-revert-test00-auto-revert-mode)
20088         (auto-revert-test01-auto-revert-tail-mode)
20089         (auto-revert-test02-auto-revert-mode-dired): Use it.
20091 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
20093         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
20094         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
20095         (cl-lib-fdefs): Add defgeneric.
20096         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
20097         (eieio-kw, cl-lib-kw, el-kw): Remove.
20099 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20101         Quote less in manuals
20102         The manuals often used quotes ``...'' when it is better to use @dfn or
20103         @code or capitalized words or no quoting at all.  For example, there is
20104         no need for the `` and '' in “if a variable has one effect for
20105         @code{nil} values and another effect for ``non-@code{nil}'' values”.
20106         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
20107         unnecessary quoting like this, and to use @dfn etc. instead when called
20108         for (Bug#21472).
20110 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
20112         * lisp/custom.el (load-theme): Only compute hash when needed.
20114 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20116         Pacify --enable-gcc-warnings
20117         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
20119 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
20121         Improve error reports in inotify.c
20122         * src/inotify.c (report_inotify_error): New function.  Clone of
20123         report_w32notify_error.
20124         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
20125         (Finotify_rm_watch): Use it.
20127 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
20129         Fix the file-notify tests for watch validation on w32
20130         * test/automated/file-notify-tests.el
20131         (file-notify-test04-file-validity): Move the directory deletion
20132         out of the file-notify--test-with-events macro.
20133         (file-notify-test04-file-validity)
20134         (file-notify-test05-dir-validity): Enlarge the timeout of
20135         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
20137 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
20139         Use OPEN BOX instead of space for \quad.
20140         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
20141         character for \quad instead of a space.
20143 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
20145         Add missing *.pbm images
20146         * etc/images/connect.pbm: New file.
20147         * etc/images/custom/down-pushed.pbm: New file.
20148         * etc/images/custom/down.pbm: New file.
20149         * etc/images/custom/right-pushed.pbm: New file.
20150         * etc/images/custom/right.pbm: New file.
20151         * etc/images/describe.pbm: New file.
20152         * etc/images/disconnect.pbm: New file.
20153         * etc/images/ezimage/bits.pbm: New file.
20154         * etc/images/ezimage/bitsbang.pbm: New file.
20155         * etc/images/ezimage/box-minus.pbm: New file.
20156         * etc/images/ezimage/box-plus.pbm: New file.
20157         * etc/images/ezimage/box.pbm: New file.
20158         * etc/images/ezimage/checkmark.pbm: New file.
20159         * etc/images/ezimage/dir-minus.pbm: New file.
20160         * etc/images/ezimage/dir-plus.pbm: New file.
20161         * etc/images/ezimage/dir.pbm: New file.
20162         * etc/images/ezimage/doc-minus.pbm: New file.
20163         * etc/images/ezimage/doc-plus.pbm: New file.
20164         * etc/images/ezimage/doc.pbm: New file.
20165         * etc/images/ezimage/info.pbm: New file.
20166         * etc/images/ezimage/key.pbm: New file.
20167         * etc/images/ezimage/label.pbm: New file.
20168         * etc/images/ezimage/lock.pbm: New file.
20169         * etc/images/ezimage/mail.pbm: New file.
20170         * etc/images/ezimage/page-minus.pbm: New file.
20171         * etc/images/ezimage/page-plus.pbm: New file.
20172         * etc/images/ezimage/page.pbm: New file.
20173         * etc/images/ezimage/tag-gt.pbm: New file.
20174         * etc/images/ezimage/tag-minus.pbm: New file.
20175         * etc/images/ezimage/tag-plus.pbm: New file.
20176         * etc/images/ezimage/tag-type.pbm: New file.
20177         * etc/images/ezimage/tag-v.pbm: New file.
20178         * etc/images/ezimage/tag.pbm: New file.
20179         * etc/images/ezimage/unlock.pbm: New file.
20180         * etc/images/gnus/important.pbm: New file.
20181         * etc/images/gnus/mail-send.pbm: New file.
20182         * etc/images/gnus/receipt.pbm: New file.
20183         * etc/images/gnus/toggle-subscription.pbm: New file.
20184         * etc/images/gnus/unimportant.pbm: New file.
20185         * etc/images/gud/all.pbm: New file.
20186         * etc/images/gud/rcont.pbm: New file.
20187         * etc/images/gud/recstart.pbm: New file.
20188         * etc/images/gud/recstop.pbm: New file.
20189         * etc/images/gud/rfinish.pbm: New file.
20190         * etc/images/gud/rnext.pbm: New file.
20191         * etc/images/gud/rnexti.pbm: New file.
20192         * etc/images/gud/rstep.pbm: New file.
20193         * etc/images/gud/rstepi.pbm: New file.
20194         * etc/images/gud/thread.pbm: New file.
20195         * etc/images/lock-broken.pbm: New file.
20196         * etc/images/lock-ok.pbm: New file.
20197         * etc/images/lock.pbm: New file.
20198         * etc/images/mail/copy.pbm: New file.
20199         * etc/images/mail/forward.pbm: New file.
20200         * etc/images/mail/not-spam.pbm: New file.
20201         * etc/images/mail/outbox.pbm: New file.
20202         * etc/images/mail/preview.pbm: New file.
20203         * etc/images/mail/save-draft.pbm: New file.
20204         * etc/images/mh-logo.pbm: New file.
20205         * etc/images/mpc/add.pbm: New file.
20206         * etc/images/mpc/ffwd.pbm: New file.
20207         * etc/images/mpc/next.pbm: New file.
20208         * etc/images/mpc/pause.pbm: New file.
20209         * etc/images/mpc/play.pbm: New file.
20210         * etc/images/mpc/prev.pbm: New file.
20211         * etc/images/mpc/rewind.pbm: New file.
20212         * etc/images/mpc/stop.pbm: New file.
20213         * etc/images/redo.pbm: New file.
20214         * etc/images/smilies/braindamaged.pbm: New file.
20215         * etc/images/smilies/cry.pbm: New file.
20216         * etc/images/smilies/dead.pbm: New file.
20217         * etc/images/smilies/evil.pbm: New file.
20218         * etc/images/smilies/forced.pbm: New file.
20219         * etc/images/smilies/grin.pbm: New file.
20220         * etc/images/smilies/indifferent.pbm: New file.
20221         * etc/images/sort-ascending.pbm: New file.
20222         * etc/images/sort-column-ascending.pbm: New file.
20223         * etc/images/sort-criteria.pbm: New file.
20224         * etc/images/sort-descending.pbm: New file.
20225         * etc/images/sort-row-ascending.pbm: New file.
20226         * etc/images/unchecked.pbm: New file.
20227         * etc/images/zoom-in.pbm: New file.
20228         * etc/images/README: Update instructions for PBM files.
20230         Add separator.pbm tool-bar image
20231         * etc/images/separator.pbm: New file.  Having it avoids the side
20232         effect of changing the tool-bar height when the default font's size
20233         changes and XPM image support is not available, due to the SPC
20234         characters that are left in the Lisp string used to display the tool
20235         bar, because there are no images to display instead of those SPC
20236         characters.
20238         Make show-paren-match face visible on mono-color displays
20239         * lisp/faces.el (show-paren-match): Use the underline face for
20240         mono-color displays.  (Bug#21481)
20242 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
20244         Don’t double-encode non-ASCII mail clipboard
20245         * lisp/mail/mailclient.el (mailclient-send-it):
20246         Also fix the case when mailclient-place-body-on-clipboard-flag
20247         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
20249 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
20251         Adapt file-notify-tests.el test cases
20252         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
20253         * src/inotify.c (Finotify_valid_p): Adapt docstring.
20254         * test/automated/file-notify-tests.el
20255         (file-notify-test03-autorevert)
20256         (file-notify-test04-file-validity)
20257         (file-notify-test04-file-validity-remote)
20258         (file-notify-test05-dir-validity)
20259         (file-notify-test05-dir-validity-remote): Adapt docstring.
20260         (file-notify-test04-file-validity): Let events arrive before
20261         calling final `file-notify-valid-p'.  Do not ignore errors.
20262         (file-notify-test05-dir-validity): Do not manipulate
20263         `temporary-file-directory', it isn't necessary.  Let events arrive
20264         before calling final `file-notify-valid-p'.  Do not ignore errors.
20266 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
20268         Don’t double-encode non-ASCII for mail client
20269         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
20270         Use RFC 6068’s list of unreserved characters.
20271         (mailclient-send-it): When encoding the body as a URL,
20272         first decode it as per Content-Type: and Content-Transfer-Encoding:,
20273         as URLs must use percent-encoded UTF-8 (Bug#21471).
20274         * doc/misc/url.texi (mailto): Update RFC number.
20276 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
20278         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
20280 2015-09-14  Alan Mackenzie  <acm@muc.de>
20282         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
20283         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
20284         `cadr/car'.
20286 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
20288         Clarify documentation of char-table extra slots
20289         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
20290         slot numbers are zero-based.  (Bug#21467)
20292 2015-09-14  Alan Mackenzie  <acm@muc.de>
20294         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
20295         Fixes bug#21449.
20296         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
20297         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
20298         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
20299         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
20300         Insert "\\|\\\\." into regexps which match symbols.
20302 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
20304         Improve the doc string of w32notify-valid-p
20305         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
20306         that removing a watch makes its object invalid.
20308 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
20310         Fix tests for file-notify-valid-p
20311         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
20312         Use delete-directory to delete file-notify--test-tmpfile if it is
20313         a directory.  Likewise for file-notify--test-tmpfile1.
20314         (file-notify-test04-file-validity)
20315         (file-notify-test05-dir-validity): Delete the parent directory of
20316         the test.  Ignore errors when cleaning up after the test.
20318 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
20320         Report file-notify-error in w32notify.c
20321         * src/w32notify.c (report_w32notify_error): New function.
20322         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
20323         errors, instead of calling report_file_error.  (Bug#21432)
20325         Implement w32notify-valid-p
20326         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
20327         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
20328         'identity'.
20330 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
20332         Test file-notify-valid-p
20333         * test/automated/file-notify-tests.el
20334         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
20335         New tests.
20337 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
20339         Fix markup in ELisp manual
20340         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
20341         of the 'alpha' parameter value.  (Bug#21470)
20343 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
20345         Introduce `file-notify-valid-p'
20346         * lisp/filenotify.el (file-notify-valid-p): New defun.
20347         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
20348         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
20349         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
20350         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
20351         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
20352         <file-notify-valid-p>: Add handler.
20353         * lisp/net/tramp.el (tramp-file-name-for-operation):
20354         Add `file-notify-valid-p'.
20355         (tramp-handle-file-notify-valid-p): New defun.
20356         * src/inotify.c (Finotify_valid_p): New defun.
20357         (syms_of_inotify): Declare Sinotify_valid_p.
20359 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
20361         Port Unicode char detection to FreeBSD+svgalib
20362         Problem reported by Ashish SHUKLA in:
20363         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
20364         * configure.ac: Check for struct unipair.unicode instead of for
20365         <linux/kd.h>, since that’s more specific to what the code
20366         actually needs.
20367         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
20369         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
20371 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
20373         Fix vertical cursor motion across overlay strings with newlines
20374         * src/indent.c (Fvertical_motion): Don't leave point in the middle
20375         of an overlay string with newlines, as that will position the
20376         cursor after the string at whatever column is there.  (Bug#21468)
20378 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
20380         Fix tests in file-notify-tests.el
20381         * test/automated/file-notify-tests.el: Remove Tramp declarations.
20382         (file-notify-test00-availability): Print remote command w/o Tramp
20383         internal functions.
20384         (file-notify-test02-events, file-notify-test02-events-remote):
20385         Adapt docstring.
20386         (file-notify-test03-autorevert): Use `format-message' when
20387         inspecting *Messages* buffer.
20389 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
20391         Bind inhibit-modification-hooks rather than a/b-c-f
20392         * lisp/wid-edit.el (widget-editable-list-insert-before)
20393         (widget-editable-list-delete-at):
20394         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
20395         (cperl-font-lock-unfontify-region-function):
20396         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
20397         * lisp/obsolete/longlines.el (longlines-mode):
20398         * lisp/obsolete/fast-lock.el (save-buffer-state):
20399         * lisp/mouse.el (mouse-save-then-kill-delete-region):
20400         * lisp/gnus/message.el (message-hide-headers):
20401         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
20402         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
20403         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
20404         than after/before-change-functions to nil.
20406 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
20408         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
20409         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
20410         the buffers, even if the forced redisplay is interrupted.
20412         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
20414         Merge syntax-propertize--done and parse-sexp-propertize-done
20415         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
20416         (syntax-propertize): Set syntax-propertize--done even if
20417         syntax-propertize-function is nil.  Avoid recursive invocations.
20418         (syntax-propertize-chunks): New var.
20419         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
20420         Simplify.
20421         (parse-sexp-propertize-function): Don't set any more.
20422         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
20423         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
20424         Call Qinternal__syntax_propertize instead of
20425         Vparse_sexp_propertize_function.  Truncate e_property if needed.
20426         (update_syntax_table_forward): Streamline.
20427         (syms_of_syntax): Define Qinternal__syntax_propertize.
20428         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
20430 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
20432         Prefer straight quoting in some text files
20433         Mostly this just changes ` to ' in static text.  Some exceptions:
20434         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
20435         typically does that now.
20436         * admin/quick-install-emacs (TRY, top level):
20437         Use straight quoting in diagnostics.
20438         * src/README: Fix working-directory confusion.
20440         * CONTRIBUTE: Move send-email here from git-workflow.
20442 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
20444         Improve file notifications in Tramp
20445         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
20446         Set proper events to watch for.
20447         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
20448         watched events.
20450 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
20452         Fix NS build with --enable-checking='glyphs'
20453         * src/nsfns.m (unwind_create_frame): Make the preprocessor
20454         conditionals for referencing 'dpyinfo' consistent throughout the
20455         function.  (Bug#21426)
20457 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
20459         Add seq-find
20460         This function is similar to `seq-some' but returns the found element.
20461         In the cases where nil can be the found element, a sentinel optional
20462         argument can be provided to avoid ambiguities.
20463         * lisp/emacs-lisp/seq.el (seq-find): New function.
20464         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
20465         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
20466         seq-find.
20468 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
20470         Document file-notify--test-with-events.
20471         * test/automated/file-notify-tests.el (file-notify--test-with-events):
20472         Add docstring.
20474 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
20476         Report used native library in file-notify-tests.el
20477         * test/automated/file-notify-tests.el
20478         (tramp-get-remote-gvfs-monitor-dir)
20479         (tramp-get-remote-inotifywait): Declare them.
20480         (file-notify-test00-availability): Print used native library.
20482 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
20484         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
20485         (mpc-file-local-copy): Check for absolute path.  Check more config
20486         locations.
20488 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
20490         Improve documentation of categories
20491         * doc/lispref/syntax.texi (Categories): Clarify the example of
20492         using define-category and modify-category-entry.  (Bug#21448)
20494 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
20496         Revert some stray curved quotes I missed earlier
20497         Problem reported by David Kastrup in:
20498         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
20499         * lisp/international/mule-cmds.el (leim-list-header):
20500         Use format-message with an ASCII-only format.
20502         Prefer NUMBERP to spelling it out
20503         * src/editfns.c (styled_format):
20504         * src/frame.h (NUMVAL):
20505         * src/image.c (parse_image_spec):
20506         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
20507         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
20508         * src/process.c (Fsignal_process):
20509         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
20510         * src/xfaces.c (check_lface_attrs):
20511         * src/xselect.c (x_fill_property_data, x_send_client_event):
20512         Use NUMBERP rather than INTEGERP || FLOATP.
20514 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
20516         Improve file-notify-tests
20517         * test/automated/file-notify-tests.el: Use lexical-binding.
20518         (file-notify--test-cleanup): New function.
20519         (file-notify-test00-availability, file-notify-test01-add-watch)
20520         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
20521         (file-notify--test-with-events): New macro.
20522         (file-notify-test02-events): Use it.
20524 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
20526         Add patch-sending instructions to git-workflow
20527         From a suggestion by Mitchel Humpherys in:
20528         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
20529         * admin/notes/git-workflow (Sending patches): New section.
20531         Port to GIFLIB 5.0.6 and later
20532         Problem reported by Mitchel Humpherys in:
20533         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
20534         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
20535         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
20536         (gif_load) [HAVE_GIF]: Use it.
20538 2015-09-10  Glenn Morris  <rgm@gnu.org>
20540         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
20542 2015-09-09  Glenn Morris  <rgm@gnu.org>
20544         * test/automated/file-notify-tests.el (file-notify-test02-events):
20545         Fix recent change.
20547 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20549         Refix movemail GCC pacification
20550         Problem reported by Ken Brown in:
20551         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
20552         * lib-src/movemail.c (main): Fix previous change.
20554 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20556         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
20557         Mark unused vars with underscore.
20559         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
20560         (parse_sexp_propertize): ...from here.
20562         * lisp/filenotify.el: Use lexical-binding
20563         (file-notify-add-watch): Avoid add-to-list.
20565 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
20567         Start checking event types in file-notify tests
20568         * test/automated/file-notify-tests.el (file-notify--test-events):
20569         New variable.
20570         (file-notify--test-event-handler): Append received event to
20571         file-notify--test-events for later analysis.
20572         (file-notify-test02-events): Assert that the expected notifications have
20573         arrived in the expected order.
20575 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20577         Merge from gnulib and texinfo
20578         This incorporates:
20579         2015-08-03 Improve port of stdalign to C++11
20580         * lib/stdalign.in.h: Copy from gnulib.
20581         * doc/misc/texinfo.tex: Copy from texinfo.
20583 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20585         Make syntax.c call syntax-propertize on demand
20586         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
20587         (parse-sexp-propertize-function): Use it.
20588         (syntax-propertize): Disable parse-sexp-propertize-function.
20589         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
20590         New functions.
20591         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
20592         `parse-sexp-propertize-function'.
20593         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
20594         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
20595         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
20596         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
20597         Don't assume `point' is set.
20599 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
20601         Fix indentation of an @example in ELisp manual
20602         * doc/lispref/syntax.texi (Categories): Untabify the example.
20603         (Bug#21448)
20605 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20607         Define internal-char-font even if --without-x
20608         The function is used now even in non-graphical environments.
20609         Problem reported by Glenn Morris in:
20610         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
20611         * src/font.c (Finternal_char_font): Move here ...
20612         * src/fontset.c (Finternal_char_font): ... from here.
20614 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20616         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
20617         Remove warning.
20619 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
20621         Fix display of complex local data types in GDB-MI
20622         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
20623         variable has no value, display "<complex data type>" as a
20624         placeholder, instead of a confusing "nil".  (Bug#21438)
20626 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
20628         Remove redundant redefinition of seq-drop-while from seq.el
20629         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
20631 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
20633         * lisp/emacs-lisp/package.el (package--ensure-init-file):
20634         More robust check for `package-initialize' calls in init file.
20635         This function accepts an optional argument, but calls passing
20636         an argument would not have been detected.
20638 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20640         Port movemail to RHEL 6 with --enable-gcc-warnings
20641         * lib-src/movemail.c (main): Declare local only if needed.
20643         Port recent Linux console changes to RHEL 6
20644         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
20646         Improvements for curved quotes on Linux consule
20647         This should help Emacs work better out-of-the-box on Linux consoles,
20648         which have only limited support for displaying Unicode characters.
20649         Also, undo the recent change that caused text-quoting-style to
20650         affect quote display on terminals, so that the two features are
20651         independent.  See Alan Mackenzie in:
20652         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
20653         Finally, add a style parameter to startup--setup-quote-display,
20654         so that this function can also be invoked after startup, with
20655         different styles depending on user preference at the time.
20656         * configure.ac: Check for linux/kd.h header.
20657         * doc/emacs/display.texi (Text Display): Document quote display.
20658         * doc/lispref/display.texi (Active Display Table):
20659         * etc/NEWS:
20660         * lisp/startup.el (startup--setup-quote-display, command-line):
20661         text-quoting-style no longer affects quote display.
20662         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
20663         * lisp/international/mule-util.el (char-displayable-p):
20664         * lisp/startup.el (startup--setup-quote-display):
20665         On a text terminal supporting glyph codes, use the reported
20666         glyph codes instead of the terminal coding system, as this
20667         is more accurate on the Linux console.
20668         * lisp/startup.el (startup--setup-quote-display):
20669         New optional arg STYLE.
20670         * src/fontset.c (Finternal_char_font):
20671         Report glyph codes for a text terminal, if they are available.
20672         Currently this is supported only for the Linux console.
20673         * src/termhooks.h (struct terminal): New member glyph-code-table.
20674         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
20675         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
20676         (terminal_glyph_code): New function.
20678 2015-09-08  Juri Linkov  <juri@linkov.net>
20680         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
20681         underline.  (Bug#21433)
20683 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20685         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
20687 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
20689         Fix double-reporting of rename events with inotify
20690         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
20691         of rename events with inotify (bug#21435).
20693 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
20695         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
20696         (tetris-mode-map): Use it.
20698 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20700         Remove a few simple cases of global redisplay
20701         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
20702         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
20703         rather than returning a "resized_p" boolean.
20704         (redisplay_internal): Adjust call accordingly.
20705         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
20706         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
20707         tracking of this undesirable situation.
20709         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
20710         * src/process.c (status_notify): Only set the update_mode_line on the
20711         relevant buffers rather than setting it globally.
20713 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
20715         * lisp/electric.el (electric-quote-post-self-insert-function):
20716         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
20717         (electric-quote-mode): Activate everywhere in message-mode.
20719 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
20721         Go back to grave quoting in source-code docstrings etc.
20722         This reverts almost all my recent changes to use curved quotes
20723         in docstrings and/or strings used for error diagnostics.
20724         There are a few exceptions, e.g., Bahá’í proper names.
20725         * admin/unidata/unidata-gen.el (unidata-gen-table):
20726         * lisp/abbrev.el (expand-region-abbrevs):
20727         * lisp/align.el (align-region):
20728         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
20729         (outlineify-sticky):
20730         * lisp/apropos.el (apropos-library):
20731         * lisp/bookmark.el (bookmark-default-annotation-text):
20732         * lisp/button.el (button-category-symbol, button-put)
20733         (make-text-button):
20734         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
20735         * lisp/calc/calc-embed.el (calc-do-embedded):
20736         * lisp/calc/calc-ext.el (calc-user-function-list):
20737         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
20738         * lisp/calc/calc-help.el (calc-describe-key)
20739         (calc-describe-thing, calc-full-help):
20740         * lisp/calc/calc-lang.el (calc-c-language)
20741         (math-parse-fortran-vector-end, math-parse-tex-sum)
20742         (math-parse-eqn-matrix, math-parse-eqn-prime)
20743         (calc-yacas-language, calc-maxima-language, calc-giac-language)
20744         (math-read-giac-subscr, math-read-math-subscr)
20745         (math-read-big-rec, math-read-big-balance):
20746         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
20747         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
20748         (calc-auto-recompute):
20749         * lisp/calc/calc-prog.el (calc-fix-token-name)
20750         (calc-read-parse-table-part, calc-user-define-invocation)
20751         (math-do-arg-check):
20752         * lisp/calc/calc-store.el (calc-edit-variable):
20753         * lisp/calc/calc-units.el (math-build-units-table-buffer):
20754         * lisp/calc/calc-vec.el (math-read-brackets):
20755         * lisp/calc/calc-yank.el (calc-edit-mode):
20756         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
20757         * lisp/calendar/appt.el (appt-display-message):
20758         * lisp/calendar/diary-lib.el (diary-check-diary-file)
20759         (diary-mail-entries, diary-from-outlook):
20760         * lisp/calendar/icalendar.el (icalendar-export-region)
20761         (icalendar--convert-float-to-ical)
20762         (icalendar--convert-date-to-ical)
20763         (icalendar--convert-ical-to-diary)
20764         (icalendar--convert-recurring-to-diary)
20765         (icalendar--add-diary-entry):
20766         * lisp/calendar/time-date.el (format-seconds):
20767         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
20768         (timeclock-make-hours-explicit, timeclock-log-data):
20769         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
20770         (todo-item-mark, todo-check-format)
20771         (todo-insert-item--next-param, todo-edit-item--next-key)
20772         (todo-mode):
20773         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
20774         * lisp/cedet/mode-local.el (describe-mode-local-overload)
20775         (mode-local-print-binding, mode-local-describe-bindings-2):
20776         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
20777         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
20778         * lisp/cus-start.el (standard):
20779         * lisp/cus-theme.el (describe-theme-1):
20780         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
20781         (custom--sort-vars-1, load-theme):
20782         * lisp/descr-text.el (describe-text-properties-1, describe-char):
20783         * lisp/dired-x.el (dired-do-run-mail):
20784         * lisp/dired.el (dired-log):
20785         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
20786         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
20787         (ad-disable-advice, ad-remove-advice, ad-set-argument)
20788         (ad-set-arguments, ad--defalias-fset, ad-activate)
20789         (ad-deactivate):
20790         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
20791         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
20792         (byte-optimize-while, byte-optimize-apply):
20793         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
20794         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
20795         (byte-compile-log-file, byte-compile-format-warn)
20796         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
20797         (byte-compile-cl-warn)
20798         (byte-compile-warn-about-unresolved-functions)
20799         (byte-compile-file, byte-compile--declare-var)
20800         (byte-compile-file-form-defmumble, byte-compile-form)
20801         (byte-compile-normal-call, byte-compile-check-variable)
20802         (byte-compile-variable-ref, byte-compile-variable-set)
20803         (byte-compile-subr-wrong-args, byte-compile-setq-default)
20804         (byte-compile-negation-optimizer)
20805         (byte-compile-condition-case--old)
20806         (byte-compile-condition-case--new, byte-compile-save-excursion)
20807         (byte-compile-defvar, byte-compile-autoload)
20808         (byte-compile-lambda-form)
20809         (byte-compile-make-variable-buffer-local, display-call-tree)
20810         (batch-byte-compile):
20811         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
20812         * lisp/emacs-lisp/chart.el (chart-space-usage):
20813         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
20814         (check-declare-warn, check-declare-file)
20815         (check-declare-directory):
20816         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
20817         (checkdoc-message-text-engine):
20818         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
20819         (cl--describe-class):
20820         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
20821         (cl--generic-describe, cl-generic-generalizers):
20822         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
20823         (cl-symbol-macrolet):
20824         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
20825         * lisp/emacs-lisp/copyright.el (copyright)
20826         (copyright-update-directory):
20827         * lisp/emacs-lisp/edebug.el (edebug-read-list):
20828         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
20829         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
20830         (eieio-oref):
20831         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
20832         * lisp/emacs-lisp/eieio-speedbar.el:
20833         (eieio-speedbar-child-make-tag-lines)
20834         (eieio-speedbar-child-description):
20835         * lisp/emacs-lisp/eieio.el (defclass, change-class):
20836         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
20837         (elint-init-form, elint-check-defalias-form)
20838         (elint-check-let-form):
20839         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
20840         (ert-results-pop-to-backtrace-for-test-at-point)
20841         (ert-results-pop-to-messages-for-test-at-point)
20842         (ert-results-pop-to-should-forms-for-test-at-point)
20843         (ert-describe-test):
20844         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
20845         (find-function-library):
20846         * lisp/emacs-lisp/generator.el (iter-yield):
20847         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
20848         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
20849         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
20850         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
20851         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
20852         (advice--make, define-advice):
20853         * lisp/emacs-lisp/package-x.el (package-upload-file):
20854         * lisp/emacs-lisp/package.el (package-version-join)
20855         (package-disabled-p, package-activate-1, package-activate)
20856         (package--download-one-archive)
20857         (package--download-and-read-archives)
20858         (package-compute-transaction, package-install-from-archive)
20859         (package-install, package-install-selected-packages)
20860         (package-delete, package-autoremove, describe-package-1)
20861         (package-install-button-action, package-delete-button-action)
20862         (package-menu-hide-package, package-menu--list-to-prompt)
20863         (package-menu--perform-transaction)
20864         (package-menu--find-and-notify-upgrades):
20865         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
20866         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
20867         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
20868         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
20869         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
20870         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
20871         (rx-form):
20872         * lisp/emacs-lisp/smie.el (smie-config-save):
20873         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
20874         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
20875         * lisp/emacs-lisp/testcover.el (testcover-1value):
20876         * lisp/emacs-lisp/timer.el (timer-event-handler):
20877         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
20878         (viper-toggle-search-style, viper-kill-buffer)
20879         (viper-brac-function):
20880         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
20881         * lisp/env.el (setenv):
20882         * lisp/erc/erc-button.el (erc-nick-popup):
20883         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
20884         * lisp/eshell/em-dirs.el (eshell/cd):
20885         * lisp/eshell/em-glob.el (eshell-glob-regexp)
20886         (eshell-glob-entries):
20887         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
20888         * lisp/eshell/esh-opt.el (eshell-show-usage):
20889         * lisp/facemenu.el (facemenu-add-new-face)
20890         (facemenu-add-new-color):
20891         * lisp/faces.el (read-face-name, read-face-font, describe-face)
20892         (x-resolve-font-name):
20893         * lisp/files-x.el (modify-file-local-variable):
20894         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
20895         (set-auto-mode, hack-one-local-variable--obsolete)
20896         (dir-locals-set-directory-class, write-file, basic-save-buffer)
20897         (delete-directory, copy-directory, recover-session)
20898         (recover-session-finish, insert-directory)
20899         (file-modes-char-to-who, file-modes-symbolic-to-number)
20900         (move-file-to-trash):
20901         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
20902         * lisp/find-cmd.el (find-generic, find-to-string):
20903         * lisp/finder.el (finder-commentary):
20904         * lisp/font-lock.el (font-lock-fontify-buffer):
20905         * lisp/format.el (format-write-file, format-find-file)
20906         (format-insert-file):
20907         * lisp/frame.el (get-device-terminal, select-frame-by-name):
20908         * lisp/fringe.el (fringe--check-style):
20909         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
20910         * lisp/help-fns.el (help-fns--key-bindings)
20911         (help-fns--compiler-macro, help-fns--parent-mode)
20912         (help-fns--obsolete, help-fns--interactive-only)
20913         (describe-function-1, describe-variable):
20914         * lisp/help.el (describe-mode)
20915         (describe-minor-mode-from-indicator):
20916         * lisp/image.el (image-type):
20917         * lisp/international/ccl.el (ccl-dump):
20918         * lisp/international/fontset.el (x-must-resolve-font-name):
20919         * lisp/international/mule-cmds.el (prefer-coding-system)
20920         (select-safe-coding-system-interactively)
20921         (select-safe-coding-system, activate-input-method)
20922         (toggle-input-method, describe-current-input-method)
20923         (describe-language-environment):
20924         * lisp/international/mule-conf.el (code-offset):
20925         * lisp/international/mule-diag.el (describe-character-set)
20926         (list-input-methods-1):
20927         * lisp/mail/feedmail.el (feedmail-run-the-queue):
20928         * lisp/mouse.el (minor-mode-menu-from-indicator):
20929         * lisp/mpc.el (mpc-playlist-rename):
20930         * lisp/msb.el (msb--choose-menu):
20931         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
20932         * lisp/net/imap.el (imap-interactive-login):
20933         * lisp/net/mairix.el (mairix-widget-create-query):
20934         * lisp/net/newst-backend.el (newsticker--sentinel-work):
20935         * lisp/net/newst-treeview.el (newsticker--treeview-load):
20936         * lisp/net/rlogin.el (rlogin):
20937         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
20938         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
20939         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
20940         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
20941         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
20942         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
20943         (org-babel-goto-named-result):
20944         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
20945         * lisp/org/ob-ref.el (org-babel-ref-resolve):
20946         * lisp/org/org-agenda.el (org-agenda-prepare):
20947         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
20948         (org-clock-resolve):
20949         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
20950         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
20951         * lisp/org/org-habit.el (org-habit-parse-todo):
20952         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
20953         (org-mouse-context-menu):
20954         * lisp/org/org-table.el (org-table-edit-formulas):
20955         * lisp/org/ox.el (org-export-async-start):
20956         * lisp/proced.el (proced-log):
20957         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
20958         (ada-check-matching-start, ada-goto-matching-start):
20959         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
20960         * lisp/progmodes/ada-xref.el (ada-find-executable):
20961         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
20962         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
20963         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
20964         (flymake-start-syntax-check-process):
20965         * lisp/progmodes/python.el (python-shell-get-process-or-error)
20966         (python-define-auxiliary-skeleton):
20967         * lisp/progmodes/sql.el (sql-comint):
20968         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
20969         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
20970         * lisp/recentf.el (recentf-open-files):
20971         * lisp/replace.el (query-replace-read-from)
20972         (occur-after-change-function, occur-1):
20973         * lisp/scroll-bar.el (scroll-bar-columns):
20974         * lisp/server.el (server-get-auth-key):
20975         * lisp/simple.el (execute-extended-command)
20976         (undo-outer-limit-truncate, list-processes--refresh)
20977         (compose-mail, set-variable, choose-completion-string)
20978         (define-alternatives):
20979         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
20980         (command-line-1):
20981         * lisp/subr.el (noreturn, define-error, add-to-list)
20982         (read-char-choice, version-to-list):
20983         * lisp/term/common-win.el (x-handle-xrm-switch)
20984         (x-handle-name-switch, x-handle-args):
20985         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
20986         * lisp/textmodes/reftex-ref.el (reftex-label):
20987         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
20988         * lisp/textmodes/two-column.el (2C-split):
20989         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
20990         (tutorial--find-changed-keys):
20991         * lisp/type-break.el (type-break-noninteractive-query):
20992         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
20993         (wdired-do-perm-changes):
20994         * lisp/whitespace.el (whitespace-report-region):
20995         Prefer grave quoting in source-code strings used to generate help
20996         and diagnostics.
20997         * lisp/faces.el (face-documentation):
20998         No need to convert quotes, since the result is a docstring.
20999         * lisp/info.el (Info-virtual-index-find-node)
21000         (Info-virtual-index, info-apropos):
21001         Simplify by generating only curved quotes, since info files are
21002         typically that ways nowadays anyway.
21003         * lisp/international/mule-diag.el (list-input-methods):
21004         Don’t assume text quoting style is curved.
21005         * lisp/org/org-bibtex.el (org-bibtex-fields):
21006         Revert my recent changes, going back to the old quoting style.
21008 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21010         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
21011         (package--autoloads-file-name)
21012         (package--activate-autoloads-and-load-path): New function.
21013         (package-activate-1): Delegate autoloading and load-path
21014         configuration to `package--activate-autoloads-and-load-path'.
21015         (package--compile): Before compilation, call
21016         `package--activate-autoloads-and-load-path' instead of
21017         `package-activate-1'.
21019 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21021         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
21023 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
21025         Fix deletion of symlinks to directories on MS-Windows
21026         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
21027         symlink to a directory, try again with 'rmdir'.
21028         (is_symlink): If the argument is a symlink to a directory, set a
21029         bit in the return value to indicate that fact.
21031 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21033         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
21034         When `package-initialize' is called as part of loading the init file,
21035         the user probably doesn't want it to be called again afterwards.
21036         In this situation, `package-initialize' now sets
21037         `package-enable-at-startup' to nil to prevent that.  The user can have
21038         the old behavior by setting this variable to t after the call to
21039         `package-initialize'.  (Bug#21423)
21040         * doc/emacs/package.texi (Package Installation): Document it.
21041         * doc/lispref/package.texi (Packaging Basics): Document it.
21042         * etc/NEWS: Document it.
21044 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
21046         Bump version of ntlm.el to 2.00
21047         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
21048         Add comm keyword.
21050 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
21052         * doc/misc/gnus.texi (Mail Source Specifiers):
21053         Allow :mailbox to be a list.
21055 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
21057         * lisp/progmodes/etags.el (etags-tags-completion-table):
21058         Allow even one non-regular character before the implicit tag name.
21059         Reported at http://emacs.stackexchange.com/questions/15269/.
21061 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
21063         Add support for NTLMv2 authentication
21064         * lisp/net/ntlm.el (ntlm): New customization group.
21065         (ntlm-compatibility-level): New defcustom.
21066         (ntlm-compute-timestamp): New function.
21067         (ntlm-generate-nonce): Likewise.
21068         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
21070 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
21072         * lisp/emacs-lisp/package.el: Rename custom faces.
21073         All of the recently introduced faces, like `package-name-face', have
21074         been renamed to no end in `-face' to comply with the convention
21075         described in (info "(elisp) Defining Faces").
21076         (package-name, package-description)
21077         (package-status-built-in, package-status-external)
21078         (package-status-available, package-status-new)
21079         (package-status-held, package-status-disabled)
21080         (package-status-installed, package-status-dependency)
21081         (package-status-unsigned, package-status-incompat)
21082         (package-status-avail-obso): New faces.
21083         (package-menu--print-info-simple): Use them.
21085 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
21087         mail-source.el: Make the imap mail-source's :mailbox handle a list
21088         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
21089         Allow :mailbox to be  a list.
21091 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
21093         nnimap.el: Handle nil arg to nnimap-request-group
21094         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
21095         This arg isn't always passed in, check it's not nil before making it
21096         into a list.  The active arg will also be nil if the group is new,
21097         check for that.
21099 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
21101         File notifications: Support renaming over directory boundaries
21102         * lisp/filenotify.el (file-notify-handle-event):
21103         (file-notify--pending-event): Adapt docstring.
21104         (file-notify--descriptor, file-notify-callback): Reimplement in
21105         order to support renaming over directory boundaries.
21106         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
21107         * doc/lispref/os.texi (File Notifications): Remove limitation of
21108         file renaming to the same directory.
21110 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
21112         Spelling fix (Bug#21420)
21114 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
21116         Improve the semantic of map-some
21117         Update map-some to return the returned by the predicate, similar to
21118         seq-some.
21119         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
21120           return value of the predicate.
21121         * test/automated/map-tests.el (test-map-some): Update the test to check
21122           for non-nil values only.
21124         Rename map-contains-key-p and map-some-p
21125         Remove the "-p" suffix from both function names.
21126         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
21127           Rename the functions.
21128         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
21129           Update both test functions.
21131         Improve the semantic of seq-some
21132         Update seq-some to return non-nil if the predicate returns non-nil for
21133         any element of the seq, in which case the returned value is the one
21134         returned by the predicate.
21135         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
21136           docstring.
21137         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
21138         * doc/lispref/sequences.texi (Sequence Functions): Update the
21139           documentation for seq-some.
21141         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
21142         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
21143           without the "-p" prefix.
21144         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
21145           the tests accordingly.
21146         * doc/lispref/sequences.texi (Sequence Functions): Update the
21147           documentation for seq.el.
21149 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
21151         text-quoting-style for usage of fn names with ‘’
21152         * lisp/help.el (help--docstring-quote): Don’t assume
21153         text-quoting-style is ‘curve’ when generating usage strings for
21154         functions whose names contain curved quotes.
21156 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
21158         Fix fix for describe-function keybinding confusion
21159         This fixes a bug introduced by the previous patch.
21160         * lisp/help-fns.el (help-fns--signature):
21161         Last arg of help-fns--signature is now a buffer, or nil if a
21162         raw signature is wanted.  All callers changed.
21163         (describe-function-1): Use this to do the right thing with signatures.
21165 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
21167         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
21169         Use PAT rather than UPAT in pcase macros
21170         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
21171         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
21172           than UPAT.
21174 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
21176         Fix describe-function keybinding confusion
21177         * lisp/help-fns.el (describe-function-1): Compute signature
21178         in the original buffer, not in standard-output, so that
21179         substitute-command-keys uses the proper keybindings.
21180         This fixes Bug#21412, introduced in commit
21181         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
21183 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
21185         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
21187 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
21189         Avoid read error messages from 'inotify'
21190         * src/process.c (wait_reading_process_output): Add a
21191         'tls_available' set and manipulate it instead of 'Available' when
21192         checking TLS inputs.  Assign the value to 'Available' only if we
21193         find any TLS data waiting to be read.  This avoids error messages
21194         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
21196 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
21198         Avoid errors in thing-at-point with 2nd argument non-nil
21199         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
21200         sequences.  (Bug#21391)
21202 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
21204         Fix segfaults due to using a stale face ID
21205         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
21206         (display_echo_area_1, redisplay_internal): Call it to avoid
21207         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
21208         faces, which could case a segfault if the frame's face cache was
21209         freed since the last redisplay.  (Bug#21394)
21210         * src/xfaces.c (free_realized_faces):
21211         Call forget_escape_and_glyphless_faces.
21212         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
21214 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21216         Fix minor problems with " in manual
21218 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
21220         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
21221         multi-hop files.
21223 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21225         Support automated ‘make check’ in non-C locale
21226         This lets the builder optionally test Emacs behavior in other locales.
21227         The C locale is still the default for tests.
21228         * test/automated/Makefile.in (TEST_LOCALE): New macro.
21229         (emacs): Use it.
21230         * test/automated/flymake-tests.el (flymake-tests--current-face):
21231         Use C locale for subprocesses so that tests behave as expected.
21232         * test/automated/python-tests.el:
21233         (python-shell-prompt-validate-regexps-1)
21234         (python-shell-prompt-validate-regexps-2)
21235         (python-shell-prompt-validate-regexps-3)
21236         (python-shell-prompt-validate-regexps-4)
21237         (python-shell-prompt-validate-regexps-5)
21238         (python-shell-prompt-validate-regexps-6)
21239         (python-shell-prompt-set-calculated-regexps-1):
21240         Adjust expected output to match locale.
21241         * test/automated/tildify-tests.el (tildify-test--test)
21242         (tildify-space-test--test, tildify-space-undo-test--test):
21243         This test assumes UTF-8 encoding.
21245 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
21247         Fix some more docstring etc. quoting problems
21248         Mostly these fixes prevent the transliteration of apostrophes
21249         that should stay apostrophes.  Also, prefer curved quotes in
21250         Bahá’í proper names, as that’s the preferred Bahá’í style and
21251         these names are chock-full of non-ASCII characters anyway.
21252         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
21253         (eieio-defclass-internal):
21254         * lisp/emacs-lisp/eieio.el (defclass):
21255         * lisp/hi-lock.el (hi-lock-mode):
21256         Don’t transliterate Lisp apostrophes when generating a
21257         doc string or diagnostic.
21258         * lisp/international/mule-diag.el (list-coding-systems-1):
21259         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
21260         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
21261         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
21262         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
21263         Substitute quotes before putting them in the help buffer.
21265 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
21267         Re-add the notion of echo_prompt lost in the translation
21268         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
21269         echo_prompt which contains the actual string.  Update all uses.
21270         * src/keyboard.c (kset_echo_prompt): New function.
21271         (echo_update): Add echo_prompt at the very beginning.
21272         (read_char): Remove workaround for bug#19875, not needed any more.
21273         (read_key_sequence): Set echo_prompt rather than echo_string
21274         (bug#21403).
21275         (mark_kboards): Mark echo_prompt.
21277         Fix disassembly of non-compiled lexical functions (bug#21377)
21278         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
21279         * lisp/emacs-lisp/disass.el: Use lexical-binding.
21280         (disassemble): Recognize `closure's as well.
21281         (disassemble-internal): Use indirect-function and
21282         help-function-arglist, and accept `closure's.
21283         (disassemble-internal): Use interactive-form.
21284         (disassemble-1): Use functionp.
21286         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21287         Don't compose inside verbatim blocks!
21289 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
21291         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
21292         (bug#19441).
21294         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
21296 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
21298         vc-git-mode-line-string: Explicitly re-apply the face
21299         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
21300         the face (bug#21404).
21302 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
21304         Treat initial-scratch-message as a doc string
21305         * doc/emacs/building.texi (Lisp Interaction):
21306         * doc/lispref/os.texi (Startup Summary):
21307         * etc/NEWS: Document this.
21308         * lisp/startup.el (initial-scratch-message):
21309         Look up find-file’s key rather than hardcoding it.
21310         (command-line-1): Substitute the doc string.
21311         This also substitutes the quotes, which will help test display
21312         quoting at startup.
21314         Fix describe-char bug with glyphs on terminals
21315         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
21316         buffers too, so don’t treat them differently from graphic displays.
21317         Without this fix, describe-char would throw an error on a terminal
21318         if given a glyph with a non-default face.
21320         Follow text-quoting-style in display table init
21321         This attempts to fix a problem reported by Alan Mackenzie in:
21322         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
21323         * doc/lispref/display.texi (Active Display Table):
21324         Mention how text-quoting-style affects it.
21325         * doc/lispref/help.texi (Keys in Documentation):
21326         Say how to set text-quoting-style in ~/.emacs.
21327         * etc/NEWS: Document the change.
21328         * lisp/startup.el (startup--setup-quote-display):
21329         Follow user preference if text-quoting-style is set.
21330         (command-line): Setup quote display again if user expresses
21331         a preference in .emacs.
21333 2015-09-02  K. Handa  <handa@gnu.org>
21335         Fix typo
21336         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
21337         -> OTF_positioning_type_components_mask.
21339         Fix previous change
21340         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
21341         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
21343 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
21345         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
21346         Rename from vc-find-file-hook and make interactive.
21347         (vc-find-file-hook): Redefine as obsolete alias.
21349 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21351         Escape ` and ' in doc
21352         Escape apostrophes and grave accents in docstrings if they are
21353         are supposed to stand for themselves and are not quotes.  Remove
21354         apostrophes from docstring examples like ‘'(calendar-nth-named-day
21355         -1 0 10 year)’ that confuse source code with data.  Do some other
21356         minor docstring fixups as well, e.g., insert a missing close quote.
21358 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
21360         Generalize the prefix-command machinery of C-u
21361         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
21362         (prefix-command-preserve-state-hook): New hooks.
21363         (internal-echo-keystrokes-prefix): New function.
21364         (prefix-command--needs-update, prefix-command--last-echo): New vars.
21365         (prefix-command-update, prefix-command-preserve): New functions.
21366         (reset-this-command-lengths): New compatibility definition.
21367         (universal-argument--mode): Call prefix-command-update.
21368         (universal-argument, universal-argument-more, negative-argument)
21369         (digit-argument): Call prefix-command-preserve-state.
21370         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
21371         the "prefix argument" to echo.
21372         (this_command_key_count_reset, before_command_key_count)
21373         (before_command_echo_length): Delete variables.
21374         (echo_add_key): Always add a space.
21375         (echo_char): Remove.
21376         (echo_dash): Don't give up when this_command_key_count is 0, since that
21377         is now the case after a prefix command.
21378         (echo_update): New function, extracted from echo_now.
21379         (echo_now): Use it.
21380         (add_command_key, read_char, record_menu_key): Remove old disabled code.
21381         (command_loop_1): Don't refrain from pushing an undo boundary when
21382         prefix-arg is set.  Remove other prefix-arg special case, now handled
21383         directly in the prefix commands instead.  But call echo_now if there's
21384         a prefix state to echo.
21385         (read_char, record_menu_key): Use echo_update instead of echo_char.
21386         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
21387         (Freset_this_command_lengths): Delete function.
21388         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
21389         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
21390         * lisp/simple.el: Use those new hooks for C-u.
21391         (universal-argument--description): New function.
21392         (prefix-command-echo-keystrokes-functions): Use it.
21393         (universal-argument--preserve): New function.
21394         (prefix-command-preserve-state-hook): Use it.
21395         (command-execute): Call prefix-command-update if needed.
21396         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
21397         (kmacro-step-edit-prefix-index): Delete variables.
21398         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
21399         support for prefix arg commands.
21400         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
21401         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
21402         (cua--shift-control-prefix): Use prefix-command-preserve-state.
21403         Remove now unused arg `arg'.
21404         (cua--prefix-override-handler, cua--prefix-repeat-handler)
21405         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
21406         Update accordingly.
21407         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
21408         any more.
21409         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
21410         if the mark is not set.
21412 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21414         Rework quoting in Emacs Lisp Introduction
21415         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
21416         (if in more detail, type-of-animal in detail, else): Rework the
21417         early example to use " rather than ' so that we don’t burden
21418         complete novices with the low-priority detail of text quoting style.
21419         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
21420         (kill-new function, kill-ring-yank-pointer)
21421         (Complete forward-sentence, Loading Files)
21422         (Code for current-kill, Code for current-kill, yank):
21423         Resurrect the Emacs 22 versions of the code, which uses grave
21424         quoting style in doc strings.
21425         (Complete zap-to-char): Mention how quoting works in doc strings.
21427         Setup quote display only if interactive
21428         * lisp/startup.el (command-line):
21429         Skip call to startup--setup-quote-display if noninteractive.
21430         Without this change, python-shell-prompt-validate-regexps-1
21431         fails in test/automated/python-tests.el when run in an
21432         en_US.utf8 locale on Fedora.
21434 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
21436         Use defalias at the top level
21437         * lisp/gnus/gnus-util.el (gnus-format-message):
21438         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
21439         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
21441 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21443         terminal-init-w32console mimics command-line
21444         Problem reported by Eli Zaretskii.
21445         * lisp/startup.el (startup--setup-quote-display):
21446         New function, refactored from a part of ‘command-line’.
21447         (command-line): Use it.
21448         * lisp/term/w32console.el (terminal-init-w32console):
21449         Use it, so that this function stays consistent with ‘command-line’.
21451         Display replacement quotes with shadow glyphs
21452         * lisp/startup.el (command-line): When displaying ASCII
21453         replacements for curved quotes, use a shadow glyph instead of a
21454         regular one, to avoid ambiguity.
21456 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
21458         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
21460 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21462         Docstring fixes re quotes in C code
21463         Fix some docstring quoting problems, mostly by escaping apostrophe.
21465 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
21467         Some Tramp password fixes
21468         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
21469         of the hops.
21470         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
21471         at the beginning of the command.  Otherwise, it could be
21472         interpreted as password prompt if the remote host echoes the
21473         command.
21474         (tramp-remote-coding-commands): Add "openssl enc -base64".
21476 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
21478         Make vc-git-working-revision always return the commit hash
21479         * lisp/vc/vc-git.el (vc-git-working-revision):
21480         Return the commit hash (bug#21383).
21481         (vc-git--symbolic-ref): New function, extracted from above.
21482         (vc-git-mode-line-string): Use it.
21484 2015-09-01  K. Handa  <handa@gnu.org>
21486         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
21487         * src/ftfont.c (MFLTGlyphFT): New type.
21488         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
21489         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
21490         elements in the array MFLTGlyphString.glyphs.
21492 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21494         Improve comments in elisp-mode.el, elisp-mode-tests.el
21495         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
21497         Delete Emacs 25 test in mode-local.el
21498         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21499         Fix missed an edit in previous commit.
21501         Show all known mode-local overrides in *Help*
21502         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21503         Assume Emacs 25. Add all known mode-local overrides.
21505 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
21507         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
21508         Ensure that the article where the search word is found is displayed
21509         and pointed to in the summary buffer.
21511 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
21513         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
21514         When the region is active, but is empty (length 0), act as though
21515         the region was not active; that is, put a comment at the end of
21516         the line.  (Bug#21119)
21518 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
21520         Port tls.el to older Emacs
21521         * lisp/net/tls.el (tls-format-message):
21522         Alias to format-message, or format if not available.
21523         (open-tls-stream): Use it.
21525 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
21527         hideif.el: Recognize .h++ as C++ header
21528         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
21530         isearch: Document character folding mode
21531         * lisp/isearch.el (isearch-forward):
21532         Mention `isearch-toggle-character-fold' in doc string.
21534 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21536         Quoting fixes in ERC and Eshell
21537         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
21538         * lisp/erc/erc-backend.el (define-erc-response-handler):
21539         * lisp/erc/erc-fill.el (erc-fill-static-center):
21540         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
21541         * lisp/eshell/em-glob.el (eshell-glob-entries):
21542         * lisp/eshell/em-hist.el (eshell-save-some-history):
21543         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
21544         (eshell-shuffle-files):
21545         * lisp/eshell/esh-cmd.el (eshell-do-eval):
21546         * lisp/eshell/esh-proc.el (eshell-process-interact)
21547         (eshell-query-kill-processes):
21548         Respect ‘text-quoting-style’ in diagnostics and doc strings.
21550         Quoting fixes in Gnus
21551         * lisp/gnus/gnus-agent.el:
21552         (gnus-agent-possibly-synchronize-flags-server):
21553         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
21554         * lisp/gnus/gnus-eform.el (gnus-edit-form):
21555         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
21556         (gnus-group-nnimap-edit-acl):
21557         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
21558         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
21559         * lisp/gnus/message.el (message-strip-subject-encoded-words)
21560         (message-check-recipients, message-send-form-letter):
21561         * lisp/gnus/mm-decode.el (mm-display-part):
21562         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
21563         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
21564         (mml-smime-get-ldap-cert):
21565         * lisp/gnus/spam-report.el (spam-report-process-queue):
21566         Respect ‘text-quoting-style’ in diagnostics.
21567         * lisp/gnus/gnus-art.el (article-display-face)
21568         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
21569         Use straight quoting in email.
21570         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
21571         Escape apostrophes in doc strings.
21573         Quoting fixes in lisp mail, mh-e, net, url
21574         * lisp/mail/emacsbug.el (report-emacs-bug)
21575         (report-emacs-bug-hook): Use straight quotes in outgoing email,
21576         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
21577         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
21578         * lisp/mail/rmailout.el (rmail-output-read-file-name):
21579         * lisp/net/imap.el (imap-interactive-login):
21580         * lisp/net/tls.el (open-tls-stream):
21581         * lisp/url/url-auth.el (url-register-auth-scheme):
21582         Respect ‘text-quoting-style’ in diagnostics.
21583         * lisp/mh-e/mh-e.el (mh-sortm-args):
21584         Quote docstring example using text quotes, not as a Lisp quote.
21586 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
21588         Fix some byte-compiler warnings in EDE
21589         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
21590         existing autoloader list, rather than add to it.
21591         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
21592         argument to eieio class constructor.
21593         (ede-show-supported-projects): New.
21594         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
21595         with (oref ... name).
21596         (ede-auto-load-project): Use slot name, not initarg key.
21597         * lisp/cedet/ede/generic.el (ede-generic-load)
21598         (ede-generic-find-matching-target): Use slot name, not initarg key.
21599         (ede-find-target): Use oref-default on class name.
21600         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
21601         class constructor.
21602         (ede-enable-generic-projects): Make project type names unique.
21604 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
21606         Fix directory accessibility tests for w32 network volumes
21607         * src/w32.c (faccessat): Don't fail with network volumes without a
21608         share.
21609         (w32_accessible_directory_p): Handle network volumes without a
21610         share.
21612         Fix handling long file names in readdir on MS-Windows
21613         * src/w32.c (sys_readdir): Append "\*" to the directory after
21614         converting it to UTF-16/ANSI, not before, to avoid overflowing the
21615         260-character limit on file names in filename_to_utf16/ansi.
21617         Make file-accessible-directory-p reliable on MS-Windows
21618         * src/w32.c (w32_accessible_directory_p): New function.
21619         * src/w32.h (w32_accessible_directory_p): Add prototype.
21620         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
21621         w32_accessible_directory_p to test a directory for accessibility
21622         by the current user.  (Bug#21346)
21623         (Ffile_accessible_directory_p): Remove the w32 specific caveat
21624         from the doc string.
21626 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
21628         Don't call do_pending_window_change in signal handlers (Bug#21380)
21629         * src/gtkutil.c (xg_frame_resized):
21630         * src/xterm.c (x_set_window_size):
21631         * src/w32term.c (x_set_window_size): Don't call
21632         do_pending_window_change.
21634 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21636         Quoting fixes in lisp/org
21637         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
21638         (org-tags-view):
21639         * lisp/org/org-capture.el (org-capture-mode)
21640         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
21641         (org-ctags-ask-append-topic):
21642         * lisp/org/org.el (org-time-string-to-time)
21643         (org-time-string-to-absolute):
21644         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
21645         (org-ctags-ask-append-topic):
21646         * lisp/org/org.el (org-time-string-to-time)
21647         (org-time-string-to-absolute):
21648         Respect ‘text-quoting-style’ in diagnostics.
21649         * lisp/org/org-agenda.el (org-agenda-custom-commands)
21650         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
21651         * lisp/org/org-capture.el (org-capture-fill-template):
21652         Avoid contraction in output file that might be ASCII.
21653         * lisp/org/org-compat.el (format-message):
21654         Define if not already defined, for backward compatibility.
21655         * lisp/org/org-src.el (org-edit-src-save):
21656         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
21657         Escape apostrophes in diagnostics.
21659         Treat “instead” strings as docstrings
21660         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
21661         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
21662         Substitute quotes in instead strings.
21664 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
21666         Better documentation of seq-let
21667         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
21668         documentation of seq-let.
21670 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21672         * lisp/international/ccl.el: Fix quoting.
21674         Quoting fixes in lisp/international and lisp/leim
21675         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
21676         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
21677         * lisp/international/mule-cmds.el:
21678         (select-safe-coding-system-interactively, leim-list-file-name):
21679         * lisp/international/quail.el (quail-use-package, quail-help):
21680         * lisp/international/titdic-cnv.el (tit-process-header)
21681         (miscdic-convert):
21682         Respect text quoting style in doc strings and diagnostics.
21683         * lisp/international/quail.el (lisp/international/quail.el):
21684         * lisp/leim/quail/ethiopic.el ("ethiopic"):
21685         Escape apostrophes in doc strings.
21687         Make ‘text-quoting-style’ a plain defvar
21688         It doesn’t need customization, as it’s likely useful only by experts.
21689         Suggested by Stefan Monnier in:
21690         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
21691         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
21693         Quoting fixes in lisp/textmodes
21694         * lisp/textmodes/bibtex.el (bibtex-validate)
21695         (bibtex-validate-globally, bibtex-search-entries):
21696         * lisp/textmodes/ispell.el (ispell-command-loop):
21697         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
21698         * lisp/textmodes/texinfmt.el (texinfmt-version)
21699         (texinfo-format-region, texinfo-format-buffer-1):
21700         * lisp/textmodes/two-column.el (2C-split):
21701         Respect text quoting style in doc strings and diagnostics.
21702         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
21703         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
21704         Escape apostrophes in doc strings.
21706         Documentation fixes re quotes
21707         Prefer curved quotes in examples if users will typically see
21708         curved quotes when the examples run.
21709         Mention format-message when appropriate.
21710         Don’t use @code in examples.
21711         Quote an apostrophe with @kbd.
21713         Quoting fixes in lisp/progmodes
21714         * lisp/progmodes/cc-engine.el (c-bos-report-error):
21715         * lisp/progmodes/cpp.el (cpp-edit-reset):
21716         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
21717         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
21718         (etags-tags-apropos, list-tags, tags-apropos):
21719         * lisp/progmodes/executable.el (executable-set-magic):
21720         * lisp/progmodes/octave.el (octave-sync-function-file-names)
21721         (octave-help, octave-find-definition-default-filename)
21722         (octave-find-definition):
21723         Respect text quoting style in doc strings and diagnostics.
21724         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
21725         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
21726         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
21727         Escape apostrophes in doc strings.
21728         * lisp/progmodes/cmacexp.el (c-macro-expansion):
21729         Use straight quoting in ASCII comment.
21730         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
21731         (idlwave-pad-keyword):
21732         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
21733         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
21734         (vhdl-electric-semicolon, vhdl-electric-comma)
21735         (vhdl-electric-period, vhdl-electric-equal):
21736         Use directed quotes in diagnostics and doc strings.
21738 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
21740         Minor documentation and NEWS tweak
21741         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
21742         Add an index entry.
21743         * etc/NEWS: Fix a typo in character-fold-to-regexp.
21745 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
21747         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
21748         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
21749         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
21750         Adapt test.
21752 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21754         Text quoting fixes in cedet, emulation, emacs-lisp
21755         * lisp/cedet/ede.el (ede-check-project-directory):
21756         * lisp/cedet/semantic/analyze/debug.el
21757         (semantic-analyzer-debug-insert-include-summary):
21758         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
21759         * lisp/cedet/semantic/decorate/include.el
21760         (semantic-decoration-unknown-include-describe)
21761         (semantic-decoration-all-include-summary):
21762         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
21763         * lisp/emulation/edt.el (edt-load-keys):
21764         * lisp/emulation/viper-cmd.el
21765         (viper-display-current-destructive-command)
21766         (viper-query-replace, viper-brac-function):
21767         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
21768         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
21769         Respect text quoting style in doc string or diagnostic.
21770         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21771         Use format-message to avoid overtranslating quotes.
21772         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
21773         Escape an apostrophe in a docstring.
21774         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
21776 2015-08-29  Daniel Colascione  <dancol@dancol.org>
21778         Fix which-func for curly quotes: look for symbol, not message
21779         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
21780         imenu-unavailable error symbol instead of trying to match message
21781         exactly.
21782         * lisp/imenu.el (imenu-unavailable): New error.
21783         (imenu-unavailable-error): New function.
21785 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
21787         Fix Python tests on MS-Windows
21788         * test/automated/python-tests.el
21789         (python-shell-calculate-command-1): Run python-shell-interpreter
21790         through shell-quote-argument before comparing with what
21791         python-shell-calculate-command returns.
21792         (python-shell-calculate-pythonpath-1)
21793         (python-shell-calculate-pythonpath-2)
21794         (python-shell-calculate-process-environment-2): Use path-separator
21795         instead of a literal ':'.
21796         (python-shell-calculate-exec-path-2)
21797         (python-shell-calculate-exec-path-3)
21798         (python-shell-calculate-exec-path-4)
21799         (python-shell-with-environment-1)
21800         (python-shell-with-environment-2): Run "/env/bin" through
21801         expand-file-name before comparing with exec-path.  (Bug#21375)
21803 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21805         Use Core Text types/functions/variables/enumerators directly
21806         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
21807         (CharacterCollection): Remove typedefs.  All uses replaced with
21808         definitions.
21809         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
21810         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
21811         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
21812         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
21813         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
21814         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
21815         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
21816         definitions.
21817         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
21818         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
21819         (MAC_FONT_FORMAT_BITMAP)
21820         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
21821         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
21822         All uses replaced with definitions.
21823         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
21824         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
21825         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
21826         Add compatibility enumerators for older versions.
21827         (mac_font_descriptor_create_with_attributes)
21828         (mac_font_descriptor_create_matching_font_descriptors)
21829         (mac_font_descriptor_create_matching_font_descriptor)
21830         (mac_font_descriptor_copy_attribute)
21831         (mac_font_descriptor_supports_languages)
21832         (mac_font_create_with_name, mac_font_get_size)
21833         (mac_font_copy_family_name, mac_font_copy_character_set)
21834         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
21835         (mac_font_get_descent, mac_font_get_leading)
21836         (mac_font_get_underline_position)
21837         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
21838         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
21839         replaced with definitions.
21840         (mac_font_create_preferred_family_for_attributes)
21841         (mac_font_get_advance_width_for_glyph)
21842         (mac_font_get_bounding_rect_for_glyph)
21843         (mac_font_create_available_families, mac_font_shape):
21844         Remove macros for renamed functions.
21845         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
21846         * src/macfont.m (mac_font_descriptor_supports_languages):
21847         Rename from mac_ctfont_descriptor_supports_languages.
21848         (mac_font_create_preferred_family_for_attributes): Rename from
21849         mac_ctfont_create_preferred_family_for_attributes.
21850         (mac_font_get_advance_width_for_glyph): Rename from
21851         mac_ctfont_get_advance_width_for_glyph.
21852         Use kCTFontOrientationDefault also for older versions.
21853         (mac_font_get_bounding_rect_for_glyph): Rename from
21854         mac_ctfont_get_bounding_rect_for_glyph.
21855         Use kCTFontOrientationDefault also for older versions.
21856         (mac_font_create_available_families): Rename from
21857         mac_ctfont_create_available_families.
21858         (mac_font_equal_in_postscript_name): Rename from
21859         mac_ctfont_equal_in_postscript_name.  All uses changed.
21860         (mac_font_create_line_with_string_and_font): Rename from
21861         mac_ctfont_create_line_with_string_and_font.  All uses changed.
21862         (mac_font_shape): Rename from mac_ctfont_shape.
21863         (mac_font_family_compare): Remove unused declaration.
21865 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21867         Fix minor text quoting in calc, calendar, vc
21868         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
21869         * lisp/calc/calc-help.el (calc-j-prefix-help):
21870         * lisp/calc/calc-misc.el (calc-help):
21871         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
21872         Escape an apostrophe in a docstring.
21873         * lisp/calc/calc-forms.el (calc-hms-notation):
21874         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
21875         Escape an apostrophe in a diagnostic.
21876         * lisp/calc/calc-misc.el (calc-help):
21877         * lisp/calendar/diary-lib.el (diary-include-files):
21878         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
21879         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
21880         * lisp/vc/ediff-diff.el (ediff-same-contents):
21881         * lisp/vc/ediff-merg.el (ediff-re-merge):
21882         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
21883         * lisp/vc/ediff-util.el (ediff-test-save-region)
21884         (ediff-status-info):
21885         * lisp/vc/ediff.el (ediff-merge-revisions)
21886         (ediff-merge-revisions-with-ancestor):
21887         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
21888         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
21889         Respect text quoting style in doc string or diagnostic.
21890         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
21891         * lisp/vc/add-log.el (change-log-goto-source):
21892         Avoid double-formatting.
21893         * lisp/vc/ediff-init.el (format-message):
21894         New backward-compatibility alias.
21896 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21898         Fix minor text quoting problems in lisp top level
21899         * lisp/apropos.el (apropos-describe-plist):
21900         * lisp/cus-theme.el (customize-themes):
21901         * lisp/dired.el (dired-log):
21902         * lisp/help-fns.el (describe-variable):
21903         * lisp/hexl.el (hexl-insert-multibyte-char):
21904         * lisp/info.el (Info-finder-find-node):
21905         * lisp/json.el (json-read-string):
21906         * lisp/novice.el (disabled-command-function)
21907         (disabled-command-function):
21908         * lisp/startup.el (normal-mouse-startup-screen):
21909         * lisp/woman.el (WoMan-log, WoMan-warn):
21910         Respect text quoting style in doc string or diagnostic.
21911         * lisp/replace.el (replace-character-fold):
21912         * src/syntax.c (Fmodify_syntax_entry):
21913         Escape an apostrophe in a docstring.
21914         * lisp/tempo.el (tempo-define-template):
21915         Remove confusing apostrophe from docstring.
21916         * lisp/whitespace.el (whitespace-mark-x):
21917         Use directed quotes in docstring.
21919 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
21921         Fix indentation rule in css-mode
21922         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
21923         brackets in presence of pseudo-selectors.  (Bug#21328)
21925 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
21927         Fix a bug in recording a macro while flyspell-mode is active
21928         * lisp/subr.el (sit-for): Don't call read-event when recording a
21929         macro.  (Bug#21329)
21931 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
21933         Tweak startup screen quoting
21934         * lisp/startup.el (normal-splash-screen): Use standard
21935         "M-" abbrevation rather than a confusingly-different one.
21936         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
21938 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
21940         Add test case for ‘format’ bug and refactor
21941         * src/editfns.c (styled_format): Refactor internally, mostly by
21942         moving declarations closer to uses.  This should not affect behavior.
21943         * test/automated/textprop-tests.el (textprop-tests-format): New test.
21945         Fix ‘format’ bug with property offsets
21946         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
21947         bug in calculating string property offsets (Bug#21351).
21949         Use straight quotes in lib-src diagnostics
21950         These auxiliary programs can’t use Emacs’s text-quoting-style,
21951         and it’s too much trouble to redo that mechanism by hand.
21952         So just use straight quotes for now.
21953         * lib-src/ebrowse.c (main):
21954         * lib-src/emacsclient.c (decode_options, main):
21955         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
21956         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
21957         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
21958         (none_help, print_language_names, print_help, add_regex)
21959         (suggest_asking_for_help):
21960         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
21961         Use straight quotes in diagnostics.
21963         ‘text-quoting-style’ fixes for admin
21964         * admin/admin.el (cusver-scan, cusver-check):
21965         * admin/authors.el (authors-canonical-file-name):
21966         * admin/bzrmerge.el (bzrmerge-missing):
21967         Respect ‘text-quoting-style’ in diagnostics.
21969 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
21971         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
21972         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
21973         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
21974         * doc/lispref/internals.texi (Writing Emacs Primitives):
21975         * etc/NEWS:
21976         Document the change.
21977         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
21978         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
21979         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
21980         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
21981         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
21982         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
21983         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
21984         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
21985         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
21986         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
21987         Remove.  All uses removed.  The code now assumes
21988         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
21989         * src/bytecode.c (relocate_byte_stack):
21990         Rename from unmark_byte_stack, since it now only relocates.
21991         All callers changed.
21992         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
21993         with GCPROs removed.
21994         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
21995         * test/automated/finalizer-tests.el (finalizer-basic)
21996         (finalizer-circular-reference, finalizer-cross-reference)
21997         (finalizer-error):
21998         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
21999         Remove tests, as they depend on gc-precise.
22001 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
22003         Improve seq-concatenate for new sequence types
22004         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
22005         ensure that concatenation happens on sequences only.  This makes it
22006         possible to use `seq-concatenate' for new types of seqs.
22007         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
22008         New function used in `seq-concatenate'.
22009         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
22010         for seq-into-sequence.
22012 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
22014         Add mode local overrides to xref-find-definitions
22015         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
22016         (xref-mode-local-overload): New; add mode local overrides to
22017         xref-find-definitions.
22018         * test/automated/elisp-mode-tests.el: Add mode local override tests.
22019         (xref-elisp-test-run): Handle indented defuns.
22020         (xref-elisp-generic-*): Improve doc strings.
22021         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
22022         (elisp--xref-find-definitions): Use it.
22024         Add mode local overrides to describe-function
22025         * lisp/cedet/mode-local.el (describe-mode-local-overload):
22026         New; add mode local overrides to describe-function.
22027         * etc/NEWS: Document change.
22029 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22031         Prefer straight quoting in some etc text files
22032         These files are plain text and might be used by non-Emacs apps.
22033         They’re mostly ASCII, so just use straight quotes.
22035         Fix quoting in ‘message_with_string’
22036         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
22037         should work now.
22038         * src/xdisp.c (message_to_stderr): New function, refactored from
22039         part of ‘message3_nolog’.
22040         (message3_nolog): Use it.
22041         (message_with_string): Use it.  Don’t mishandle NUL bytes when
22042         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
22043         Use ‘format-message’, not ‘format’, so that quotes are translated.
22045 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
22047         Mention false positives of file-accessible-directory on w32
22048         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
22049         (Bug#21346)
22051 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22053         Treat error strings as help
22054         * src/print.c (print_error_message): Translate quotes and command
22055         keys in errmsg so that users see, e.g., "Symbol’s value as
22056         variable is void: foo" when text-quoting-style is curved.
22058 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
22060         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
22062 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22064         Top-level elisp files respect ‘text-quoting-style’
22065         In top-level elisp files, use format-message in diagnostic formats,
22066         so that they follow user preference as per ‘text-quoting-style’
22067         rather than being hard-coded to quote `like this'.
22068         * lisp/allout.el (allout-get-configvar-values):
22069         * lisp/apropos.el (apropos-symbols-internal):
22070         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
22071         (dired-do-create-files-regexp, dired-create-files-non-directory):
22072         * lisp/dired-x.el (dired-do-run-mail):
22073         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
22074         * lisp/disp-table.el (standard-display-european):
22075         * lisp/find-dired.el (find-dired):
22076         * lisp/forms.el (forms-mode):
22077         * lisp/ido.el (ido-buffer-internal):
22078         * lisp/info.el (Info-index-next):
22079         * lisp/outline.el (outline-invent-heading):
22080         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
22081         * lisp/proced.el (proced-log):
22082         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
22083         * lisp/recentf.el (recentf-open-files, recentf-save-list):
22084         * lisp/savehist.el (savehist-save):
22085         * lisp/server.el (server-ensure-safe-dir):
22086         * lisp/ses.el (ses-rename-cell):
22087         * lisp/simple.el (list-processes--refresh):
22088         * lisp/startup.el (command-line):
22089         * lisp/strokes.el (strokes-unset-last-stroke)
22090         (strokes-execute-stroke):
22091         Use format-message so that quotes are restyled.
22092         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
22093         Don’t quote ‘raised’.
22094         * lisp/descr-text.el (describe-char):
22095         * lisp/dirtrack.el (dirtrack-debug-message):
22096         * lisp/hexl.el (hexl-insert-multibyte-char):
22097         Apply substitute-command-keys to help string.
22098         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
22099         (wdired-do-perm-changes):
22100         Let dired-log do the formatting.
22102 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22104         Go back to grave quoting in Tramp
22105         * lisp/net/tramp-adb.el:
22106         * lisp/net/tramp-cache.el:
22107         * lisp/net/tramp-compat.el:
22108         * lisp/net/tramp-gvfs.el:
22109         * lisp/net/tramp-gw.el:
22110         * lisp/net/tramp-sh.el:
22111         * lisp/net/tramp-smb.el:
22112         * lisp/net/tramp.el:
22113         Stick with grave quoting in diagnostics strings.  This is more
22114         portable to older Emacs, desirable for Tramp.
22115         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
22116         for diagnostic that needs requoting.
22117         * lisp/net/tramp-compat.el (format-message):
22118         Fall back on simple ‘format’, since that’s good enough now.
22120         Go back to grave quoting in Gnus
22121         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
22122         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
22123         (gnus-agent-fetch-headers):
22124         * lisp/gnus/gnus-int.el (gnus-start-news-server):
22125         * lisp/gnus/gnus-registry.el:
22126         (gnus-registry--split-fancy-with-parent-internal)
22127         (gnus-registry-post-process-groups):
22128         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
22129         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
22130         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
22131         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
22132         * lisp/gnus/spam.el (spam-check-blackholes):
22133         Stick with grave quoting in diagnostics strings.  This is more
22134         portable to older Emacs, desirable for Gnus.
22136         Fix customization of text-quoting-style
22137         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
22138         * lisp/wid-edit.el (widget-docstring):
22139         Get raw docstring here since it’s cooked later and should not be
22140         cooked twice.
22141         * lisp/cus-edit.el (custom-group-value-create):
22142         Cook the docstring before inserting it.
22143         * lisp/cus-start.el (text-quoting-style): Quote the customization
22144         docstrings according to the new rules.  Give curved examples.
22146         format-message now curves ` and '
22147         That way, the caller doesn’t have to use curved quotes to
22148         get diagnostics that match the text-quoting-style preferences.
22149         Suggested by Dmitry Gutov in:
22150         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
22151         This means we no longer need %qs, so remove that format.
22152         While we’re at it, fix an unlikely bug and lessen the pressure
22153         on the garbage collector by processing the string once rather
22154         than twice in the usual case.
22155         * doc/lispref/strings.texi (Formatting Strings):
22156         * etc/NEWS: Document this.
22157         * lisp/subr.el (format-message): Remove; now done in C.
22158         * src/callint.c (Fcall_interactively):
22159         * src/editfns.c (Fmessage, Fmessage_box):
22160         Use Fformat_message instead of Finternal__text_restyle
22161         followed by Fformat.
22162         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
22163         uLSQM and uRSQM.
22164         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
22165         when pure ASCII now suffices.  Fix unlikely bug when parsing
22166         unibyte string containing non-ASCII bytes.  Use inline code
22167         rather than memcpy, as it’s a tiny number of bytes.
22168         (Finternal__text_restyle): Remove; no longer used.
22169         (syms_of_doc): Don’t declare it.
22170         * src/editfns.c (Fformat): Rewrite in terms of new function
22171         ‘styled_format’.
22172         (Fformat_message): New function, moved here from subr.el.
22173         (styled_format): New function, with the old guts of Fformat,
22174         except it now optionally transliterates quotes, and it transliterates
22175         traditional grave accent and apostrophe quoting as well.
22176         Remove recently-added q flag; no longer needed or used.
22177         (syms_of_editfns): Define format-message.
22178         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
22179         Remove; no longer need to be global symbols.
22180         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
22181         so that callers can use `%s'.
22182         * src/image.c (image_size_error, xbm_load_image, xbm_load)
22183         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
22184         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
22185         (svg_load_image, gs_load, x_kill_gs_process):
22186         * src/lread.c (load_warn_old_style_backquotes):
22187         * src/xfaces.c (load_pixmap):
22188         * src/xselect.c (x_clipboard_manager_error_1):
22189         Use `%s' instead of %qs in formats.
22191 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
22193         Minor fixes in doc/emacs/search.texi
22194         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
22195         (Special Isearch): Use @w{} to generate several consecutive spaces
22196         with Texinfo 6.  (Bug#21345)
22198 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
22200         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
22201         (tramp-awk-coding-test): New defconsts.
22202         (tramp-remote-coding-commands): Use them.
22203         (tramp-find-inline-encoding): Check for Perl only if necessary.
22205 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
22207         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
22208         index entries for the special form `quote'.
22210 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22212         Spelling fixes
22214         Gnus format-message typo fix
22215         * lisp/gnus/gnus-util.el (gnus-format-message):
22216         Fix typo when running in older Emacs.
22218         Prefer directed to neutral quotes in docstings and diagnostics.
22219         In docstrings, escape apostrophes that would otherwise be translated
22220         to curved quotes using the newer, simpler rules.
22221         * admin/unidata/unidata-gen.el (unidata-gen-table):
22222         * lisp/align.el (align-region):
22223         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
22224         * lisp/bookmark.el (bookmark-default-annotation-text):
22225         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
22226         * lisp/calc/calc-lang.el (math-read-giac-subscr)
22227         (math-read-math-subscr):
22228         * lisp/calc/calc-misc.el (report-calc-bug):
22229         * lisp/calc/calc-prog.el (calc-fix-token-name)
22230         (calc-read-parse-table-part):
22231         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
22232         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
22233         * lisp/dabbrev.el (dabbrev-expand):
22234         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
22235         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
22236         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
22237         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
22238         * lisp/erc/erc-button.el (erc-nick-popup):
22239         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
22240         * lisp/eshell/em-dirs.el (eshell/cd):
22241         * lisp/eshell/em-glob.el (eshell-glob-regexp):
22242         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
22243         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
22244         * lisp/eshell/esh-opt.el (eshell-show-usage):
22245         * lisp/files-x.el (modify-file-local-variable):
22246         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
22247         (filesets-update-pre010505):
22248         * lisp/find-cmd.el (find-generic, find-to-string):
22249         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
22250         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
22251         (gnus-agent-fetch-headers):
22252         * lisp/gnus/gnus-int.el (gnus-start-news-server):
22253         * lisp/gnus/gnus-registry.el:
22254         (gnus-registry--split-fancy-with-parent-internal):
22255         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
22256         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
22257         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
22258         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
22259         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
22260         * lisp/gnus/spam.el (spam-check-blackholes):
22261         * lisp/mail/feedmail.el (feedmail-run-the-queue):
22262         * lisp/mpc.el (mpc-playlist-rename):
22263         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
22264         * lisp/net/mairix.el (mairix-widget-create-query):
22265         * lisp/net/tramp-cache.el:
22266         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
22267         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
22268         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
22269         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
22270         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
22271         (org-babel-goto-named-result):
22272         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
22273         * lisp/org/ob-ref.el (org-babel-ref-resolve):
22274         * lisp/org/org-agenda.el (org-agenda-prepare):
22275         * lisp/org/org-bibtex.el (org-bibtex-fields):
22276         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
22277         (org-clock-resolve):
22278         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
22279         * lisp/org/org-habit.el (org-habit-parse-todo):
22280         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
22281         (org-mouse-context-menu):
22282         * lisp/org/org-table.el (org-table-edit-formulas):
22283         * lisp/org/ox.el (org-export-async-start):
22284         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
22285         (dun-rooms, dun-endgame-questions):
22286         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
22287         * lisp/progmodes/ada-xref.el (ada-find-executable):
22288         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
22289         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
22290         (flymake-start-syntax-check-process):
22291         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
22292         * lisp/progmodes/sql.el (sql-comint):
22293         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
22294         * lisp/server.el (server-get-auth-key):
22295         * lisp/subr.el (version-to-list):
22296         * lisp/textmodes/reftex-ref.el (reftex-label):
22297         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
22298         * lisp/vc/ediff-diff.el (ediff-same-contents):
22299         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
22300         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
22301         Use directed rather than neutral quotes in diagnostics.
22303         Treat ' like ’ even when not matching `
22304         This is simpler and easier to explain, and should encourage better
22305         typography.  Do this in Electric Quote mode and when translating
22306         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
22307         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
22308         * doc/emacs/text.texi (Quotation Marks):
22309         * doc/lispref/help.texi (Keys in Documentation):
22310         * etc/NEWS:
22311         Document this.
22312         * lisp/electric.el (electric-quote-post-self-insert-function):
22313         * src/doc.c (Fsubstitute_command_keys):
22314         Always treat ' like ’ even when not matched by an open quote.
22316 2015-08-25  Glenn Morris  <rgm@gnu.org>
22318         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
22319         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
22321 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22323         * src/macfont.m (macfont_create_family_with_symbol):
22324         Accept localized names.
22326 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22328         Tramp diagnostics as per ‘text-quoting-style’
22329         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
22330         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
22331         (tramp-adb-handle-delete-directory)
22332         (tramp-adb-handle-delete-file)
22333         (tramp-adb-handle-file-local-copy)
22334         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
22335         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
22336         (tramp-adb-maybe-open-connection):
22337         * lisp/net/tramp-cache.el:
22338         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
22339         (tramp-compat-octal-to-decimal)
22340         (tramp-compat-coding-system-change-eol-conversion):
22341         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
22342         (tramp-gvfs-do-copy-or-rename-file)
22343         (tramp-gvfs-handle-delete-directory)
22344         (tramp-gvfs-handle-delete-file)
22345         (tramp-gvfs-handle-expand-file-name)
22346         (tramp-gvfs-handle-file-local-copy)
22347         (tramp-gvfs-handle-file-notify-add-watch)
22348         (tramp-gvfs-handle-make-directory)
22349         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
22350         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
22351         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
22352         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
22353         (tramp-sh-handle-set-visited-file-modtime)
22354         (tramp-sh-handle-set-file-modes)
22355         (tramp-sh-handle-file-name-all-completions)
22356         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
22357         (tramp-do-copy-or-rename-file-directly)
22358         (tramp-do-copy-or-rename-file-out-of-band)
22359         (tramp-sh-handle-make-directory)
22360         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
22361         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
22362         (tramp-sh-handle-start-file-process)
22363         (tramp-sh-handle-file-local-copy)
22364         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
22365         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
22366         (tramp-find-file-exists-command, tramp-open-shell)
22367         (tramp-find-shell)
22368         (tramp-open-connection-setup-interactive-shell)
22369         (tramp-find-inline-encoding, tramp-find-inline-compress)
22370         (tramp-compute-multi-hops, tramp-maybe-open-connection)
22371         (tramp-wait-for-output, tramp-send-command-and-check)
22372         (tramp-send-command-and-read, tramp-get-remote-path)
22373         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
22374         (tramp-get-ls-command-with-quoting-style)
22375         (tramp-get-test-command, tramp-get-remote-ln)
22376         (tramp-get-remote-perl, tramp-get-remote-stat)
22377         (tramp-get-remote-readlink, tramp-get-remote-trash)
22378         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
22379         (tramp-get-remote-inotifywait, tramp-get-remote-id)
22380         (tramp-get-remote-python):
22381         * lisp/net/tramp-smb.el (tramp-smb-errors)
22382         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
22383         (tramp-smb-handle-delete-directory)
22384         (tramp-smb-handle-delete-file)
22385         (tramp-smb-handle-file-local-copy)
22386         (tramp-smb-handle-make-directory)
22387         (tramp-smb-handle-make-directory-internal)
22388         (tramp-smb-handle-make-symbolic-link)
22389         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
22390         (tramp-smb-handle-set-file-modes)
22391         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
22392         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
22393         (tramp-process-actions):
22394         Generate diagnostics according to ‘text-quoting-style’, by
22395         using curved quotes in format strings and ‘format-message’
22396         when appropriate.
22397         * lisp/net/tramp-compat.el (format-message):
22398         Define a replacement, if it’s an older version of Emacs
22399         that doesn’t have it already.
22401         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
22403 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
22405         Fix documentation for `save-excursion'
22406         * doc/lispref/positions.texi (Excursions):
22407         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
22408         (Template for save-excursion, Point and mark): `save-excursion'
22409         does not save&restore the mark any more.
22411 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
22413         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
22414         New defconsts.
22415         (tramp-do-file-attributes-with-stat)
22416         (tramp-do-directory-files-and-attributes-with-stat): Use them.
22417         (tramp-convert-file-attributes): Remove double slashes in symlinks.
22418         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
22419         Handle symlinks with "//" in the file name.
22421         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
22423 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
22425         Fix cl-subseq and cl-concatenate
22426         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
22427         seq functions.
22428         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
22429         seq-concatenate.
22431 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
22433         Fix full-screen code when there is no window manager (Bug#21317)
22434         * src/xterm.h (x_wm_supports): Declare external.
22435         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
22436         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
22437         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
22438         `fullscreen' frame parameter.
22439         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
22440         without a window manager.
22442 2015-08-24  Glenn Morris  <rgm@gnu.org>
22444         * lisp/version.el (emacs-version): No longer include build host.
22445         * doc/lispref/intro.texi (Version Info): Update example.
22447 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22449         * doc/lispref/elisp.texi: Fix typo in previous change.
22451         More-conservative ‘format’ quote restyling
22452         Instead of restyling curved quotes for every call to ‘format’,
22453         create a new function ‘format-message’ that does the restyling,
22454         and using the new function instead of ‘format’ only in contexts
22455         where this seems appropriate.
22456         Problem reported by Dmitry Gutov and Andreas Schwab in:
22457         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
22458         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
22459         * doc/lispref/commands.texi (Using Interactive):
22460         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
22461         * doc/lispref/display.texi (Displaying Messages, Progress):
22462         * doc/lispref/elisp.texi:
22463         * doc/lispref/help.texi (Keys in Documentation):
22464         * doc/lispref/minibuf.texi (Minibuffer Misc):
22465         * doc/lispref/strings.texi (Formatting Strings):
22466         * etc/NEWS:
22467         Document the changes.
22468         * lisp/abbrev.el (expand-region-abbrevs):
22469         * lisp/apropos.el (apropos-library):
22470         * lisp/calc/calc-ext.el (calc-record-message)
22471         (calc-user-function-list):
22472         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
22473         * lisp/calc/calc-lang.el (math-read-big-balance):
22474         * lisp/calc/calc-store.el (calc-edit-variable):
22475         * lisp/calc/calc-units.el (math-build-units-table-buffer):
22476         * lisp/calc/calc-yank.el (calc-edit-mode):
22477         * lisp/calendar/icalendar.el (icalendar-export-region)
22478         (icalendar--add-diary-entry):
22479         * lisp/cedet/mode-local.el (mode-local-print-binding)
22480         (mode-local-describe-bindings-2):
22481         * lisp/cedet/semantic/complete.el (semantic-completion-message):
22482         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
22483         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
22484         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
22485         * lisp/descr-text.el (describe-text-properties-1, describe-char):
22486         * lisp/dframe.el (dframe-message):
22487         * lisp/dired-aux.el (dired-query):
22488         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
22489         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
22490         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
22491         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
22492         (cconv-analyze-form):
22493         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
22494         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
22495         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
22496         * lisp/emacs-lisp/edebug.el (edebug-format):
22497         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
22498         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
22499         (eldoc-message):
22500         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
22501         * lisp/emacs-lisp/find-func.el (find-function-library):
22502         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
22503         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
22504         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
22505         * lisp/emacs-lisp/package.el (package-compute-transaction)
22506         (package-install-button-action, package-delete-button-action)
22507         (package-menu--list-to-prompt):
22508         * lisp/emacs-lisp/timer.el (timer-event-handler):
22509         * lisp/emacs-lisp/warnings.el (lwarn, warn):
22510         * lisp/emulation/viper-cmd.el:
22511         (viper-toggle-parse-sexp-ignore-comments)
22512         (viper-kill-buffer, viper-brac-function):
22513         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
22514         * lisp/facemenu.el (facemenu-add-new-face):
22515         * lisp/faces.el (face-documentation, read-face-name)
22516         (face-read-string, read-face-font, describe-face):
22517         * lisp/files.el (find-alternate-file, hack-local-variables)
22518         (hack-one-local-variable--obsolete, write-file)
22519         (basic-save-buffer, delete-directory):
22520         * lisp/format.el (format-write-file, format-find-file)
22521         (format-insert-file):
22522         * lisp/help-fns.el (help-fns--key-bindings)
22523         (help-fns--compiler-macro, help-fns--obsolete)
22524         (help-fns--interactive-only, describe-function-1)
22525         (describe-variable):
22526         * lisp/help.el (describe-mode):
22527         * lisp/info-xref.el (info-xref-output):
22528         * lisp/info.el (Info-virtual-index-find-node)
22529         (Info-virtual-index, info-apropos):
22530         * lisp/international/kkc.el (kkc-error):
22531         * lisp/international/mule-cmds.el:
22532         (select-safe-coding-system-interactively)
22533         (select-safe-coding-system, describe-input-method):
22534         * lisp/international/mule-conf.el (code-offset):
22535         * lisp/international/mule-diag.el (describe-character-set)
22536         (list-input-methods-1):
22537         * lisp/international/quail.el (quail-error):
22538         * lisp/minibuffer.el (minibuffer-message):
22539         * lisp/mpc.el (mpc--debug):
22540         * lisp/msb.el (msb--choose-menu):
22541         * lisp/net/ange-ftp.el (ange-ftp-message):
22542         * lisp/net/gnutls.el (gnutls-message-maybe):
22543         * lisp/net/newst-backend.el (newsticker--sentinel-work):
22544         * lisp/net/newst-treeview.el (newsticker--treeview-load):
22545         * lisp/net/nsm.el (nsm-query-user):
22546         * lisp/net/rlogin.el (rlogin):
22547         * lisp/net/soap-client.el (soap-warning):
22548         * lisp/net/tramp.el (tramp-debug-message):
22549         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
22550         * lisp/nxml/nxml-parse.el (nxml-parse-error):
22551         * lisp/nxml/rng-cmpct.el (rng-c-error):
22552         * lisp/nxml/rng-match.el (rng-compile-error):
22553         * lisp/nxml/rng-uri.el (rng-uri-error):
22554         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
22555         * lisp/org/org-ctags.el:
22556         (org-ctags-ask-rebuild-tags-file-then-find-tag):
22557         * lisp/proced.el (proced-log):
22558         * lisp/progmodes/ebnf2ps.el (ebnf-log):
22559         * lisp/progmodes/flymake.el (flymake-log):
22560         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
22561         * lisp/replace.el (occur-1):
22562         * lisp/simple.el (execute-extended-command)
22563         (undo-outer-limit-truncate, define-alternatives):
22564         * lisp/startup.el (command-line):
22565         * lisp/subr.el (error, user-error, add-to-list):
22566         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
22567         (tutorial--find-changed-keys):
22568         * src/callint.c (Fcall_interactively):
22569         * src/editfns.c (Fmessage, Fmessage_box):
22570         Restyle the quotes of format strings intended for use as a
22571         diagnostic, when restyling seems appropriate.
22572         * lisp/subr.el (format-message): New function.
22573         * src/doc.c (Finternal__text_restyle): New function.
22574         (syms_of_doc): Define it.
22576 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22578         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
22580 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22582         python.el: Fix python-shell-buffer-substring on indented code
22583         (Bug#21086)
22584         * lisp/progmodes/python.el (python-shell-buffer-substring):
22585         Respect current line indentation when calculating string.
22586         * test/automated/python-tests.el
22587         (python-shell-buffer-substring-10)
22588         (python-shell-buffer-substring-11)
22589         (python-shell-buffer-substring-12): New tests.
22591 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22593         Fix minor glitches from ‘format’ reversion
22594         * doc/lispref/strings.texi (Formatting Strings):
22595         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
22596         Documentation’, not below.
22597         * src/syntax.c (Finternal_describe_syntax_value):
22598         Prefer AUTO_STRING to build_string where either will do, as
22599         AUTO_STRING is a bit faster.
22601 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22603         python.el: Defer shell setup code until first interactive prompt
22604         * lisp/progmodes/python.el
22605         (python-shell-comint-watch-for-first-prompt-output-filter):
22606         New function.
22607         (inferior-python-mode): Use it.
22608         (python-shell-first-prompt-hook): New hook.
22609         (python-shell-send-setup-code)
22610         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
22611         this hook instead of inferior-python-hook.
22613 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
22615         Remove the calls to `seq-into` from `seq-concatenate`
22616         Since most new types of seq would have to be defined as sequences (cons
22617         cells or CL structs, mostly), there is no need to convert the seqs to
22618         sequences (which can be a fairly expensive operation).
22619         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
22620         sequences.
22622 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22624         python.el: Fix completion for pdb interactions
22625         * lisp/progmodes/python.el (python-shell-completion-setup-code):
22626         Simplify.  Toggle print_mode for native wrapped completer.
22627         (python-shell-completion-native-setup): Ensure process buffer.
22628         Add print_mode attribute to completer wrapper to toggle returning
22629         or printing candidates.
22630         (python-shell-completion-native-get-completions): Cleanup.
22631         (python-shell-completion-get-completions): Cleanup.
22632         (python-shell-completion-at-point): Perform prompt checks.
22633         Force fallback completion in pdb interactions.
22635 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
22637         Make seq.el more extensible by using cl-defmethod
22638         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
22639         make it easier to extend seq.el with new "seq types".
22640         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
22641         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
22642         subseq in cl-extra.el, and use it in seq.el.
22644 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22646         python.el: Fix prompt detection with user overridden interpreter
22647         * lisp/progmodes/python.el (python-shell-prompt-detect):
22648         Honor buffer local python-shell-interpreter and
22649         python-shell-interpreter-interactive-arg.
22651 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
22653         Support exec-directory with non-ASCII characters on Windows
22654         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
22655         in the system's ANSI codepage, when it is used for invoking
22656         cmdproxy.
22658 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
22660         Revert "Extend ‘format’ to translate curved quotes"
22661         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
22663         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
22664         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
22666 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
22668         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
22669         Clarify "invisible window".
22671 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
22673         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
22674         magic-fallback-mode-alist.
22676 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22678         python.el: fallback completion, ffap and eldoc setup enhancements
22679         Setup codes are now sent continuously so that the current frame is
22680         always taken into account.  This allows working within debuggers
22681         and always keeping a fresh version of setup codes that will return
22682         proper results.
22683         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
22684         (python-shell-send-setup-code): Send code only when
22685         python-shell-setup-codes is non-nil.
22686         (python-shell-completion-string-code): Cleanup trailing newline.
22687         (python-shell-completion-get-completions): Always use
22688         python-shell-completion-setup-code.
22689         (python-ffap-setup-code): Work with any object, not only modules.
22690         (python-ffap-string-code): Cleanup trailing newline.
22691         (python-ffap-module-path): Always use python-ffap-setup-code.
22692         (python-eldoc-string-code): Cleanup trailing newline.
22693         (python-eldoc--get-doc-at-point): Always use
22694         python-eldoc-setup-code.  Return non-nil only if docstring is
22695         found.
22697         python.el: Increase native completion robustness
22698         * lisp/progmodes/python.el (python-shell-completion-native-setup):
22699         Make completer print real candidates and just return dummy ones to
22700         avoid input modification.
22701         (python-shell-completion-native-get-completions): Set
22702         comint-redirect-insert-matching-regexp to non-nil and make
22703         comint-redirect-finished-regexp match the last dummy candidate.
22704         Use python-shell-accept-process-output to wait for the full list
22705         of candidates.
22707 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
22709         Fix invocation of programs via cmdproxy.exe
22710         * src/w32proc.c (sys_spawnve): Use exec-directory, not
22711         invocation-directory, for finding cmdproxy.exe.  When Emacs is
22712         run from the source tree, look for cmdproxy.exe in the same source
22713         tree.  (Bug#21323)
22715 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
22717         Handle comments inside unquoted URIs in css-mode
22718         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
22719         (css-syntax-propertize-function): New defconst.
22720         (css--font-lock-keywords): Handle parens around unquoted URIs.
22721         (css-mode): Set `syntax-propertize-function'.
22723 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
22725         Support invocation of Hunspell with multiple dictionaries
22726         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
22727         Support lists of dictionaries of the form "DICT1,DICT2,...".
22728         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
22730         Minor formatting changes in ispell.el
22731         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
22732         (ispell-print-if-debug, ispell-aspell-find-dictionary)
22733         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
22734         (ispell-hunspell-dictionary-alist)
22735         (ispell-hunspell-fill-dictionary-entry)
22736         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
22737         (ispell-buffer-with-debug, ispell-complete-word)
22738         (ispell-current-dictionary, ispell-current-personal-dictionary)
22739         (ispell-accept-output, ispell-minor-mode)
22740         (ispell-personal-dictionary, ispell-dictionary-alist)
22741         (ispell-really-aspell, ispell-really-hunspell)
22742         (ispell-encoding8-command, ispell-aspell-supports-utf8)
22743         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
22744         Fix whitespace, inconsistent capitalization, and arguments in doc
22745         strings.
22747 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
22749         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
22750         function refused to resize a size-preserved window.
22752 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
22754         * doc/lispref/windows.texi (Selecting Windows): Improve
22755         documentation and indexing of 'window-use-time'.
22757 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
22759         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
22760         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
22761         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
22762         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
22763         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
22764         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
22765         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
22766         Fix up commenting style.
22768 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22770         text-quoting-style in emacs-lisp diagnostics
22771         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
22772         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
22773         (ad-disable-advice, ad-remove-advice, ad-set-argument)
22774         (ad-set-arguments):
22775         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
22776         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
22777         (byte-optimize-while, byte-optimize-apply):
22778         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
22779         (byte-compile-log-file, byte-compile-format-warn)
22780         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
22781         (byte-compile-cl-warn)
22782         (byte-compile-warn-about-unresolved-functions)
22783         (byte-compile-file, byte-compile-fix-header)
22784         (byte-compile--declare-var, byte-compile-file-form-defmumble)
22785         (byte-compile-form, byte-compile-normal-call)
22786         (byte-compile-variable-ref, byte-compile-variable-set)
22787         (byte-compile-subr-wrong-args, byte-compile-setq-default)
22788         (byte-compile-negation-optimizer)
22789         (byte-compile-condition-case--old)
22790         (byte-compile-condition-case--new, byte-compile-save-excursion)
22791         (byte-compile-defvar, byte-compile-autoload)
22792         (byte-compile-lambda-form)
22793         (byte-compile-make-variable-buffer-local, display-call-tree)
22794         (batch-byte-compile):
22795         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
22796         (cconv-analyze-form):
22797         * lisp/emacs-lisp/chart.el (chart-space-usage):
22798         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
22799         (check-declare-warn, check-declare-file)
22800         (check-declare-directory):
22801         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
22802         (checkdoc-message-text-engine):
22803         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
22804         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
22805         (cl-symbol-macrolet):
22806         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
22807         * lisp/emacs-lisp/copyright.el (copyright)
22808         (copyright-update-directory):
22809         * lisp/emacs-lisp/edebug.el (edebug-read-list):
22810         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
22811         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
22812         (eieio-oref, eieio-oset-default):
22813         * lisp/emacs-lisp/eieio-speedbar.el:
22814         (eieio-speedbar-child-make-tag-lines)
22815         (eieio-speedbar-child-description):
22816         * lisp/emacs-lisp/eieio.el (defclass, change-class):
22817         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
22818         (elint-init-form, elint-check-defalias-form)
22819         (elint-check-let-form):
22820         * lisp/emacs-lisp/ert.el (ert-get-test):
22821         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
22822         (find-function-library):
22823         * lisp/emacs-lisp/generator.el (iter-yield):
22824         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
22825         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
22826         * lisp/emacs-lisp/package-x.el (package-upload-file):
22827         * lisp/emacs-lisp/package.el (package-version-join)
22828         (package-disabled-p, package-activate-1, package-activate)
22829         (package--download-one-archive)
22830         (package--download-and-read-archives)
22831         (package-compute-transaction, package-install-from-archive)
22832         (package-install, package-install-selected-packages)
22833         (package-delete, package-autoremove)
22834         (package-install-button-action, package-delete-button-action)
22835         (package-menu-hide-package, package-menu--list-to-prompt)
22836         (package-menu--perform-transaction)
22837         (package-menu--find-and-notify-upgrades):
22838         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
22839         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
22840         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
22841         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
22842         * lisp/emacs-lisp/smie.el (smie-config-save):
22843         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
22844         * lisp/emacs-lisp/testcover.el (testcover-1value):
22845         Use curved quotes in diagnostic format strings.
22847 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22849         python.el: Ensure remote process-environment on non-interactive processes
22850         * lisp/progmodes/python.el
22851         (python-shell-tramp-refresh-process-environment): New function.
22852         (python-shell-with-environment): Use it.
22853         * test/automated/python-tests.el (python-shell-with-environment-2):
22854         Update.
22856         python.el: Enhancements to process environment setup.
22857         * lisp/progmodes/python.el (python-shell-process-environment)
22858         (python-shell-extra-pythonpaths, python-shell-exec-path)
22859         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
22860         (python-shell-setup-codes): Remove :safe.
22861         (python-shell-remote-exec-path): New defcustom.
22862         (python-shell--add-to-path-with-priority): New macro.
22863         (python-shell-calculate-pythonpath): Give priority to
22864         python-shell-extra-pythonpaths.  Update docstring.
22865         (python-shell-calculate-process-environment): Give priority to
22866         python-shell-process-environment.  Update docstring.
22867         (python-shell-calculate-exec-path): Give priority to
22868         python-shell-exec-path and calculated virtualenv bin directory.
22869         Update docstring.
22870         (python-shell-tramp-refresh-remote-path): New function.
22871         (python-shell-with-environment): Use it when working remotely and
22872         do not modify tramp-remote-path.  Allow nesting.
22873         (python-shell-calculate-command): Remove useless
22874         python-shell-with-environment call.
22875         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
22876         (python-shell-calculate-pythonpath-2)
22877         (python-shell-calculate-process-environment-6)
22878         (python-shell-calculate-process-environment-7)
22879         (python-shell-calculate-process-environment-8)
22880         (python-shell-calculate-exec-path-3)
22881         (python-shell-calculate-exec-path-4)
22882         (python-shell-calculate-exec-path-5)
22883         (python-shell-calculate-exec-path-6)
22884         (python-shell-with-environment-3): New tests.
22885         (python-shell-calculate-process-environment-2)
22886         (python-shell-calculate-process-environment-3)
22887         (python-shell-calculate-process-environment-4)
22888         (python-shell-calculate-process-environment-5)
22889         (python-shell-calculate-exec-path-1)
22890         (python-shell-calculate-exec-path-2)
22891         (python-shell-with-environment-1)
22892         (python-shell-with-environment-2): Update and simplify.
22894 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22896         Avoid hard-coding "M-x command" in docstrings
22897         * lisp/calendar/todo-mode.el (todo-mode):
22898         * lisp/desktop.el (desktop-save-mode):
22899         * lisp/edmacro.el (edit-kbd-macro):
22900         * lisp/emacs-lisp/package.el (package-menu-execute):
22901         * lisp/emulation/viper-cmd.el (viper-ask-level):
22902         * lisp/emulation/viper-init.el (viper-expert-level):
22903         * lisp/filesets.el (filesets-add-buffer):
22904         * lisp/follow.el (follow-mode):
22905         * lisp/gnus/auth-source.el (auth-sources):
22906         * lisp/international/ogonek.el (ogonek-informacja)
22907         (ogonek-information):
22908         * lisp/net/tramp.el (tramp-process-actions):
22909         * lisp/org/org-gnus.el (org-gnus-no-new-news):
22910         * lisp/org/org.el (org-ellipsis):
22911         * lisp/progmodes/python.el (python-shell-get-process-or-error):
22912         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
22913         * lisp/server.el (server-start):
22914         * lisp/type-break.el (type-break-noninteractive-query):
22915         * lisp/userlock.el (ask-user-about-supersession-help):
22916         * lisp/whitespace.el (whitespace-report-region):
22917         Prefer (substitute-command-keys "`\\[foo-command]'")
22918         to "`M-x foo-command'" in docstrings and the like.
22920 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
22922         Use add-function for prettify-symbols-compose-predicate
22923         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
22924         prettify-symbols-compose-predicate in terms of add-function.
22925         * etc/NEWS: Mention prettify-symbols-compose-predicate and
22926         prettify-symbols-mode support in tex-mode.
22928 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
22930         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
22931         (smie-indent-exps, smie-indent-keyword): Use it.
22932         * test/indent/css-mode.css: Test alignment with leading comment.
22934 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22936         Respect text-quoting-style in (*Finder*) menus
22937         * lisp/info.el (info--prettify-description):
22938         Treat description as a docstring, so that it's requoted as
22939         per text-quoting-style.
22941 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
22943         Document `window-use-time' in Elisp manual
22944         * doc/lispref/windows.texi (Selecting Windows): Document
22945         `window-use-time'.
22947 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
22949         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
22950         This is a cleaner fix for Bug#21260 than the previous change.
22952 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22954         Respect text-quoting-style in calc
22955         In calc, tespect text-quoting-style preference in diagnostic
22956         formats and fix a few similar problems in docstrings.
22957         * lisp/calc/calc-aent.el (math-read-factor):
22958         * lisp/calc/calc-embed.el (calc-do-embedded):
22959         * lisp/calc/calc-ext.el (calc-user-function-list)
22960         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
22961         * lisp/calc/calc-help.el (calc-describe-key)
22962         (calc-describe-thing):
22963         * lisp/calc/calc-lang.el (calc-c-language)
22964         (math-parse-fortran-vector-end, math-parse-tex-sum)
22965         (math-parse-eqn-matrix, math-parse-eqn-prime)
22966         (calc-yacas-language, calc-maxima-language, calc-giac-language)
22967         (math-read-big-rec, math-read-big-balance):
22968         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
22969         (calc-auto-recompute):
22970         * lisp/calc/calc-prog.el (calc-user-define-invocation)
22971         (math-do-arg-check):
22972         * lisp/calc/calc-store.el (calc-edit-variable):
22973         * lisp/calc/calc-units.el (math-build-units-table-buffer):
22974         * lisp/calc/calc-vec.el (math-read-brackets):
22975         * lisp/calc/calc-yank.el (calc-edit-mode):
22976         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
22977         Use curved quotes in diagnostic format strings.
22978         * lisp/calc/calc-help.el (calc-describe-thing):
22979         Format docstrings with substitute-command-keys.
22980         * lisp/calc/calc-help.el (calc-j-prefix-help):
22981         * lisp/calc/calc-misc.el (calc-help):
22982         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
22983         Escape a docstring "`".
22985 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
22987         Fix documentation of 'menu-set-font' and 'set-frame-font'
22988         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
22989         * doc/lispref/frames.texi (Frame Font): Document that
22990         set-frame-font with the last argument 't' will also make the font
22991         the default for the future GUI frames.
22993         Document '--create-frame' option to emacsclient
22994         * doc/emacs/misc.texi (emacsclient Options): Document the
22995         '--create-frame' option.  (Bug#21308)
22997 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
22999         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
23001 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
23003         Document 'get-mru-window' in the ELisp manual
23004         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
23005         'get-mru-window'.  (Bug#21306)
23007         Clarify documentation of 'get-buffer-window-list'
23008         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
23009         current window, if relevant, will be the first in the list
23010         returned by 'get-buffer-window-list'.
23011         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
23013 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
23015         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
23016         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
23017         `switch-to-buffer'.
23019 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
23021         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
23022         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
23023         `display-buffer' instead of `switch-to-buffer'.
23025 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23027         Follow user preference in calendar diagnostics
23028         Respect text-quoting-style preference in diagnostic formats by
23029         using curved quotes (which are translated as per text-quoting-style)
23030         instead of grave accent and apostrophe (which are not).
23031         * lisp/calendar/appt.el (appt-display-message):
23032         * lisp/calendar/diary-lib.el (diary-check-diary-file)
23033         (diary-mail-entries, diary-from-outlook):
23034         * lisp/calendar/icalendar.el (icalendar-export-region)
23035         (icalendar--convert-float-to-ical)
23036         (icalendar--convert-date-to-ical)
23037         (icalendar--convert-ical-to-diary)
23038         (icalendar--convert-recurring-to-diary)
23039         (icalendar--add-diary-entry):
23040         * lisp/calendar/time-date.el (format-seconds):
23041         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
23042         (timeclock-make-hours-explicit):
23043         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
23044         (todo-item-mark, todo-check-format)
23045         (todo-insert-item--next-param, todo-edit-item--next-key)
23046         (todo-mode):
23047         Use curved quotes in diagnostic format strings.
23048         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
23049         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
23050         Just use straight quoting for simple test case.
23052 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
23054         * src/gfilenotify.c (Fgfile_add_watch):
23055         Handle errors from g_file_monitor.
23057 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
23059         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
23060         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
23061         frame" instead of "non-minibuffer frame".
23063         Fix frame geometry related text
23064         * doc/lispref/frames.texi (Frame Layout):
23065         Rename `x-frame-geometry' to `frame-geometry'.
23066         * doc/lispref/frames.texi (Mouse Position):
23067         * doc/lispref/windows.texi (Coordinates and Windows):
23068         Use `set-mouse-absolute-pixel-position' instead of
23069         `x-set-mouse-absolute-pixel-position'.
23071         Sanitize frame geometry related functions
23072         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
23073         (Fx_frame_edges): Rename to Fns_frame_edges.
23074         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
23075         (Fx_frame_edges): Rename to Fw32_frame_edges.
23076         (Fx_mouse_absolute_pixel_position): Rename to
23077         Fw32_mouse_absolute_pixel_position.
23078         (Fx_set_mouse_absolute_pixel_position): Rename to
23079         Fw32_set_mouse_absolute_pixel_position.
23080         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
23081         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
23082         (ns-frame-edges, w32-mouse-absolute-pixel-position)
23083         (x-mouse-absolute-pixel-position)
23084         (w32-set-mouse-absolute-pixel-position)
23085         (x-set-mouse-absolute-pixel-position): Declare.
23086         (frame-geometry, mouse-absolute-pixel-position)
23087         (set-mouse-absolute-pixel-position): New functions.
23088         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
23090 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
23092         Fix MinGW64 build broken by latest w32uniscribe.c changes
23093         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
23094         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
23095         (Bug#21260)
23097 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
23099         Add TeX defaults for prettify-symbol-mode
23100         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
23101         Rename from tex-prettify-symbols-alist.
23102         (tex--prettify-symbols-compose-p): New function.
23103         (tex-common-initialization): Use them as prettify-symbols-alist
23104         and prettify-symbols-compose-predicate.
23106         Generalize prettify-symbols to arbitrary modes
23107         * lisp/progmodes/prog-mode.el
23108         (prettify-symbols-default-compose-p): New function.
23109         (prettify-symbols-compose-predicate): New variable.
23110         (prettify-symbols--compose-symbol): Use it.
23112 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
23114         Don't quote symbols 'like-this' in docstrings etc.
23115         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
23116         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
23117         * lisp/allout.el (allout-add-resumptions, allout-mode):
23118         * lisp/calculator.el (calculator-operators):
23119         * lisp/cedet/data-debug.el (dd-propertize):
23120         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
23121         * lisp/cedet/semantic/analyze/debug.el:
23122         (semantic-analyzer-debug-global-miss-text):
23123         * lisp/cedet/semantic/lex-spp.el:
23124         (semantic-lex-spp-replace-or-symbol-or-keyword):
23125         * lisp/cedet/semantic/symref.el:
23126         (semantic-symref-cleanup-recent-buffers-fcn):
23127         * lisp/cedet/semantic/tag.el (semantic-tag-class):
23128         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
23129         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
23130         * lisp/gnus/pop3.el (pop3-authentication-scheme):
23131         * lisp/help-fns.el (describe-function-orig-buffer):
23132         * lisp/imenu.el (imenu--history-list):
23133         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
23134         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
23135         (feedmail-queue-default-file-slug)
23136         (feedmail-queue-buffer-file-name):
23137         * lisp/net/mairix.el (mairix-searches-mode-map):
23138         * lisp/net/newst-backend.el (newsticker-retrieval-method)
23139         (newsticker-auto-mark-filter-list):
23140         * lisp/obsolete/vi.el (vi-mode):
23141         * lisp/progmodes/cc-engine.el (c-literal-type):
23142         * lisp/progmodes/cpp.el (cpp-face):
23143         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
23144         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
23145         * lisp/progmodes/pascal.el (pascal-auto-lineup):
23146         * lisp/progmodes/prog-mode.el (prog-widen):
23147         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
23148         (verilog-auto-lineup, verilog-auto-reset-widths)
23149         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
23150         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
23151         (flyspell-maybe-correct-doubling):
23152         * lisp/textmodes/table.el (table-justify, table-justify-cell)
23153         (table-justify-row, table-justify-column, table-insert-sequence)
23154         (table--justify-cell-contents):
23155         * lisp/url/url-auth.el (url-get-authentication):
23156         * lisp/window.el (display-buffer-record-window):
23157         * lisp/xml.el (xml-parse-file, xml-parse-region):
23158         * src/gfilenotify.c (Fgfile_add_watch):
23159         Don't quote symbols with apostrophes in doc strings.
23160         Use asymmetric quotes instead.
23161         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
23162         Likewise for symbol in diagnostic.
23163         * lisp/image.el (image-extension-data):
23164         * lisp/register.el (frame-configuration-to-register):
23165         * src/buffer.c (syms_of_buffer):
23166         Remove bogus apostrophes after symbols.
23167         * lisp/thumbs.el (thumbs-conversion-program):
23168         Quote Lisp string values using double-quotes, not apostrophes.
23170 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
23172         Describe frame geometry and related functions in Elisp manual
23173         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
23174         (Showing Images): Update references.
23175         * doc/lispref/elisp.texi (Top): Update node listing.
23176         * doc/lispref/frames.texi (Frame Geometry): New node.
23177         Move `Size and Position' section here.
23178         (Size Parameters): Update references.
23179         (Mouse Position): Update references and nomenclature.
23180         Describe new functions `x-mouse-absolute-pixel-position' and
23181         `x-set-mouse-absolute-pixel-position'.
23182         * doc/lispref/windows.texi (Window Sizes): Update references.
23183         (Resizing Windows): Update references.  Move description of
23184         `fit-frame-to-buffer' here.
23185         (Coordinates and Windows): Update nomenclature and references.
23186         Describe new arguments of `window-edges'.  Comment out
23187         descriptions of `window-left-column', `window-top-line',
23188         `window-pixel-left' and `window-pixel-top'.  Describe
23189         `window-absolute-pixel-position'.
23191 2015-08-20  Alan Mackenzie  <acm@muc.de>
23193         Handling of `c-parse-state'.  Fix low level bug.
23194         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
23195         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
23197 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
23199         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
23200         window instead of deleting it.
23202 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
23204         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
23205         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
23206         determine whether frame has a titlebar.
23207         Suggested by Eli Zaretskii <eliz@gnu.org>
23209 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
23211         Add a prettify-symbols-alist for (La)TeX
23212         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
23213         New variable holding an alist suitable as prettify-symbols-alist in
23214         (La)TeX modes.
23216 2015-08-19  Alan Mackenzie  <acm@muc.de>
23218         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
23219         Fixes debbugs#21275.
23220         In Emacs >= 25, let electric-pair-mode take precedence over
23221         delete-selection-mode.
23222         * lisp/delsel.el (delete-selection-uses-region-p): New function,
23223         previously a lambda expression in a property value for
23224         `self-insert-command'.
23225         (top-level): Set the `delete-selection' property of
23226         `self-insert-command' to `delete-selection-uses-region-p'.
23227         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
23228         property for c-electric-\(brace\|paren\) the value
23229         `delete-selection-uses-region-p' when the latter function exists.
23231 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23233         Fix key binding quoting in tutorial *Help*
23234         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
23235         When generating help for custom key bindings, use the user-preferred
23236         quoting style rather than hardcoding the grave style.
23238 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
23240         Improve and future-proof OTF fonts support in w32uniscribe.c
23241         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
23242         about the expected results and why the new Uniscribe APIs are not
23243         used in this function.
23244         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
23245         (ScriptGetFontFeatureTags_Proc): New function typedefs.
23246         (uniscribe_new_apis): New static variable.
23247         (uniscribe_check_features): New function, implements OTF features
23248         verification while correctly accounting for features in the list
23249         after the nil member, if any.
23250         (uniscribe_check_otf_1): New function, retrieves the features
23251         supported by the font for the requested script and language using
23252         the Uniscribe APIs available from Windows Vista onwards.
23253         (uniscribe_check_otf): If the new Uniscribe APIs are available,
23254         use them in preference to reading the font data directly.  Call
23255         uniscribe_check_features to verify that the requested features are
23256         supported, replacing the original incomplete code.
23257         (syms_of_w32uniscribe): Initialize function pointers for the new
23258         Uniscribe APIs.  (Bug#21260)
23259         (otf_features): Scan the script, langsys, and feature arrays back
23260         to front, so that the result we return has them in alphabetical
23261         order, like ftfont.c does.
23262         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
23263         New variable for debugging w32uniscribe.c code.
23265 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
23267         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
23268         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
23269         clause of `isearch-search-fun-default'.  That lax variable does not
23270         refer to lax-whitespacing.  Related to (bug#21777).
23271         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
23272         * lisp/character-fold.el (character-fold-search): Set to nil.
23273         Default to nil for now, until someone implements proper
23274         lax-whitespacing with char-fold searching.
23276 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
23278         Fix doc-string of `help-mode-finish'.
23279         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
23281         In nsimage.m include coding.h (Bug#21292)
23282         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
23284         Move window edge functions to Elisp.
23285         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
23286         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
23287         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
23288         Move to window.el.
23289         (calc_absolute_offset): Remove.
23290         * lisp/frame.el (frame-edges): New function.
23291         * lisp/window.el (window-edges, window-pixel-edges)
23292         (window-absolute-pixel-edges): Move here from window.c.
23293         (window-body-edges, window-body-pixel-edges)
23294         (window-absolute-body-pixel-edges): Move here from window.c and
23295         rename "inside" to "body".  Keep old names as aliases.
23296         (window-absolute-pixel-position): New function.
23298 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
23300         [Gnus]: Use overlay functions directly
23301         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
23302         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
23303         (gnus-article-highlight-signature, gnus-article-extend-url-button)
23304         (gnus-article-add-button, gnus-insert-prev-page-button)
23305         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
23306         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
23307         (gnus-cite-add-face):
23308         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
23309         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
23310         (gnus-tree-recenter, gnus-highlight-selected-tree):
23311         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
23312         (gnus-summary-show-thread, gnus-summary-hide-thread)
23313         (gnus-highlight-selected-summary):
23314         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
23315         * lisp/gnus/message.el (message-fix-before-sending)
23316         (message-toggle-image-thumbnails):
23317         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
23318         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
23319         Use overlay functions directly instead of using gnus-overlay-*,
23320         message-overlay-*, and sieve-overlay-*.
23321         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
23322         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
23323         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
23324         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
23325         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
23326         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
23327         (message-overlay-get, message-overlay-put, message-overlays-in):
23328         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
23329         (sieve-overlays-at): Remove.
23331 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
23333         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
23334         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
23335         builds can use the declaration from the system headers.
23336         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
23337         definition of TITLEBAR_INFO.
23338         Suggested by Eli Zaretskii  <eliz@gnu.org>
23340 2015-08-19  Glenn Morris  <rgm@gnu.org>
23342         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
23344 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23346         Use new q ‘format’ flag when fixing quotes in C
23347         * src/image.c (image_size_error): New function.  All uses of
23348         image_error with "Invalid image size ..."  changed to use it.
23349         * src/image.c (image_size_error, xbm_load_image, xbm_load)
23350         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
23351         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
23352         (imagemagick_load, svg_load, svg_load_image, gs_load)
23353         (x_kill_gs_process):
23354         * src/lread.c (load_warn_old_style_backquotes):
23355         * src/xfaces.c (load_pixmap):
23356         * src/xselect.c (x_clipboard_manager_error_1):
23357         Use %qs, not uLSQM and uRSQM.
23358         * src/syntax.c (Finternal_describe_syntax_value):
23359         Prefer Fsubstitute_command_keys to Fformat, as this lets
23360         us use AUTO_STRING.
23361         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
23362         as it's now guaranteed to be ASCII.
23363         * src/xselect.c (x_clipboard_manager_error_2):
23364         Avoid grave accent in low-level stderr diagnostic.
23366 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
23368         New q flag for ‘format’
23369         * doc/lispref/processes.texi (Sentinels):
23370         Don't hardwire grave quoting style in example.
23371         * doc/lispref/strings.texi (Formatting Strings):
23372         * etc/NEWS:
23373         Document new q flag.
23374         * src/editfns.c (Fformat): Implement it.
23376 2015-08-18  Daiki Ueno  <ueno@gnu.org>
23378         pinentry.el: Add debugging support
23379         * lisp/net/pinentry.el (pinentry-debug): New variable.
23380         (pinentry-debug-buffer): New variable.
23381         (pinentry--process-filter): Send input to the debug buffer, if
23382         `pinentry-debug' is set.
23384         pinentry.el: Improve multiline prompt
23385         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
23386         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
23387         command.
23389 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
23391         Fix multibyte confusion in diagnostics
23392         * src/print.c (print_error_message):
23393         Don't assume that the caller's name is unibyte.
23394         * src/xdisp.c (vadd_to_log):
23395         Don't assume that the formatted diagnostic is unibyte.
23397         Fix file name encodings in diagnostics
23398         Also, close some minor races when opening image files, by opening
23399         them once instead of multiple times.
23400         * src/gtkutil.c (xg_get_image_for_pixmap):
23401         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
23402         (svg_load):
23403         * src/nsimage.m (allocInitFromFile:):
23404         * src/xfns.c (xg_set_icon):
23405         Encode file name, since x_find_image_file no longer does that.
23406         * src/image.c (x_find_image_fd): New function.
23407         (x_find_image_file): Use it.  Do not encode resulting file name,
23408         since callers sometimes need it decoded.
23409         (slurp_file): File arg is now a fd, not a file name.
23410         All callers changed.  This saves us having to open the file twice.
23411         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
23412         (svg_load):
23413         Use x_find_image_fd and fdopen to save a file-open.
23414         Report file name that failed.
23415         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
23417 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
23419         Allow blink-matching-paren to jump off screen
23420         * doc/emacs/programs.texi (Matching): Mention the
23421         `blink-matching-paren' value `jump-offscreen'.
23422         * lisp/simple.el (blink-matching-paren): New possible value.
23423         (blink-matching-paren-on-screen): Clarify the docstring.
23424         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
23426         Refine the previous change
23427         * lisp/simple.el (blink-matching-open): Use minibuffer-message
23428         outside of save-excursion (bug#21286).
23430 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
23432         Rewrite and add frame geometry related functions.
23433         * src/frame.c (Fframe_position): New function.
23434         (Fset_frame_position): Rename parameters and rewrite doc-string.
23435         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
23436         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
23437         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
23438         Qtitle_bar_size.
23439         * src/nsfns.m (frame_geometry): New function.
23440         (Fx_frame_geometry): Call frame_geometry.
23441         (Fx_frame_edges): New function.
23442         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
23443         (GetTitleBarInfo_Proc): Define these so we can use the
23444         GetTitleBarInfo API.
23445         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
23446         (Fx_frame_geometry): Rewrite.
23447         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
23448         (Fx_set_mouse_absolute_pixel_position): New functions.
23449         * src/xfns.c (frame_geometry): New function.
23450         (Fx_frame_geometry): Call frame_geometry.
23451         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
23452         (Fx_set_mouse_absolute_pixel_position): New functions.
23454 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
23456         Improve Tramp's compatibility
23457         * lisp/net/tramp.el (tramp-get-method-parameter):
23458         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
23459         (tramp-adb-get-device):
23460         * lisp/net/trampver.el (tramp-repository-get-version):
23461         Use `tramp-compat-replace-regexp-in-string'.
23463 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
23465         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
23466         Encode/decode string.
23468 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
23470         Clarify what happens to match data on failure
23471         Problem reported by Ernesto Alfonso (Bug#21279).
23472         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
23473         Document more carefully what happens to match data after a failed
23474         search.
23475         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
23476         the return value is undefined if the last search failed.
23477         (Fmatch_data): Simplify doc string line 1.
23479 2015-08-18  Daiki Ueno  <ueno@gnu.org>
23481         Revert "pinentry.el: Support external passphrase cache"
23482         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
23483         pinentry.el shouldn't directly interact with the secrets service,
23484         but ask the caller to cache the passphrase.
23486 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
23488         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
23489         Message mode hooks.
23491 2015-08-17  Daiki Ueno  <ueno@gnu.org>
23493         epg.el: Make gpgconf output parsing future proof
23494         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
23495         --list-options" output.
23497         pinentry.el: Support external passphrase cache
23498         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
23499         (pinentry--allow-external-password-cache): New local variable.
23500         (pinentry--key-info): New local variable.
23501         (secrets-enabled, secrets-search-items, secrets-get-secret):
23502         Declare.
23503         (pinentry--send-passphrase): New function, split from
23504         `pinentry--process-filter'.
23505         (pinentry--process-filter): Use secrets.el to retrieve passphrase
23506         from login keyring.
23508         pinentry.el: Popup window for multiline prompt
23509         * lisp/net/pinentry.el (pinentry): New custom group.
23510         (pinentry-popup-prompt-window): New user option.
23511         (pinentry-prompt-window-height): New user option.
23512         (pinentry--prompt-buffer): New variable.
23513         (pinentry-prompt-mode-map): New variable.
23514         (pinentry-prompt-mode): New function.
23515         (pinentry--prompt): New function.
23516         (pinentry--process-filter): Use `pinentry--prompt' instead of
23517         `read-passwd' and `y-or-n-p'.
23519 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
23521         message.el: Silent the byte compiler
23522         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
23523         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
23524         (message-delete-overlay, message-window-inside-pixel-edges):
23525         Declare before using.
23527         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
23528         (message-window-inside-pixel-edges): XEmacs compatible functions.
23530 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
23532         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
23534 2015-08-17  Noah Friedman  <friedman@splode.com>
23536         * lisp/simple.el (blink-matching-open): Restore point before
23537         calling minibuffer-message.
23539 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
23541         * lisp/play/dunnet.el: Update version number in header (now
23542         matches help).
23544 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23546         Curved quotes in --batch diagnostics in non-UTF-8
23547         When run with --batch, check that curved quotes are compatible with
23548         the system locale before outputting them in diagnostics.
23549         Problem reported by Eli Zaretskii in:
23550         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
23551         * lisp/startup.el (command-line): Set internal--text-quoting-flag
23552         after the standard display table is initialized.
23553         * src/doc.c (default_to_grave_quoting_style): New function.
23554         (text_quoting_style): Use it.
23555         (text_quoting_flag): New static var, visible to Lisp as
23556         internal--text-quoting-flag.
23557         * src/emacs.c: Include <wchar.h> if available.
23558         (using_utf8): New function.
23559         (main): Use it to initialize text_quoting_flag.
23560         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
23561         Don't define, as it's not needed and it clashes with wchar.h.
23563 2015-08-17  Glenn Morris  <rgm@gnu.org>
23565         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
23566         from makeinfo about spurious "Note:" cross-reference, and for grammar.
23568 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
23570         Minor change in variable initialization on MS-Windows
23571         * src/w32fns.c <after_dead_key>: Initialize to -1.
23572         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
23573         non-zero.
23575         Fix a bug with LWindow key remapping on MS-Windows
23576         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
23578 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
23580         Improve fontset support for latest OTF script tags
23581         * lisp/international/fontset.el (otf-script-alist): Add some
23582         missing script tags.
23583         (setup-default-fontset): Include settings for v2 versions of the
23584         script tags used by some modern OTF/TTF fonts.
23586 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23588         Spelling fixes
23590 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
23592         Use curved quotes in core elisp diagnostics
23593         In the core elisp files, use curved quotes in diagnostic formats,
23594         so that they follow user preference as per ‘text-quoting-style’
23595         rather than being hard-coded to quote `like this'.
23596         * lisp/abbrev.el (expand-region-abbrevs):
23597         * lisp/button.el (button-category-symbol, button-put)
23598         (make-text-button):
23599         * lisp/cus-start.el:
23600         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
23601         (custom--sort-vars-1, load-theme):
23602         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
23603         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
23604         (cl-generic-generalizers):
23605         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
23606         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
23607         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
23608         (advice--make, define-advice):
23609         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
23610         * lisp/emacs-lisp/timer.el (timer-event-handler):
23611         * lisp/env.el (setenv):
23612         * lisp/facemenu.el (facemenu-add-new-face)
23613         (facemenu-add-new-color):
23614         * lisp/faces.el (face-documentation, read-face-name)
23615         (face-read-string, read-face-font, face-spec-set-match-display)
23616         (read-color, x-resolve-font-name):
23617         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
23618         (set-auto-mode, hack-local-variables)
23619         (hack-one-local-variable--obsolete)
23620         (dir-locals-set-directory-class, write-file)
23621         (basic-save-buffer, delete-directory, copy-directory)
23622         (recover-session, recover-session-finish, insert-directory)
23623         (file-modes-char-to-who, file-modes-symbolic-to-number)
23624         (move-file-to-trash):
23625         * lisp/font-lock.el (font-lock-fontify-buffer):
23626         * lisp/format.el (format-write-file, format-find-file)
23627         (format-insert-file):
23628         * lisp/frame.el (get-device-terminal, select-frame-by-name):
23629         * lisp/fringe.el (fringe--check-style):
23630         * lisp/help.el (describe-minor-mode-from-indicator):
23631         * lisp/image.el (image-type):
23632         * lisp/international/fontset.el (x-must-resolve-font-name):
23633         * lisp/international/mule-cmds.el (prefer-coding-system)
23634         (select-safe-coding-system-interactively)
23635         (select-safe-coding-system, activate-input-method)
23636         (toggle-input-method, describe-current-input-method):
23637         * lisp/international/mule-conf.el (code-offset):
23638         * lisp/mouse.el (minor-mode-menu-from-indicator):
23639         * lisp/replace.el (query-replace-read-from)
23640         (occur-after-change-function, occur-1):
23641         * lisp/scroll-bar.el (scroll-bar-columns):
23642         * lisp/simple.el (execute-extended-command)
23643         (undo-outer-limit-truncate, compose-mail, set-variable)
23644         (choose-completion-string, define-alternatives):
23645         * lisp/startup.el (site-run-file, tty-handle-args)
23646         (command-line, command-line-1):
23647         * lisp/subr.el (noreturn, define-error, add-to-list)
23648         (read-char-choice):
23649         * lisp/term/common-win.el (x-handle-xrm-switch)
23650         (x-handle-name-switch, x-handle-args):
23651         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
23652         Use curved quotes in diagnostics.
23653         * lisp/international/mule.el (find-auto-coding):
23654         Use " to quote in a diagnostic, to be consistent with the rest of
23655         this file.
23657         Convert lisp/term/x-win.el to UTF-8
23658         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
23659         runtime behavior, and the file is multilingual so compile-time
23660         appearance shouldn't be an issue.
23661         * admin/notes/unicode: Document this.
23663 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
23665         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
23666         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
23667         issues and comments, bug#943.
23668         (verilog-type-font-keywords): Cycle delay operators like ##1 and
23669         ##[0:$] are now highlighted in their entirety similarly to the #
23670         delay-control operator.  Likewise, the followed-by operators #-#
23671         and #=# are no longer partially highlighed.
23672         (verilog-backward-syntactic-ws-quick)
23673         (verilog-skip-backward-comments): Minor performance improvements
23674         to buffer traversal functions for reduced latency.
23675         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
23676         keyword 'final' follows 'assert/assume/cover', then it is part of
23677         a deferred immediate assertion item and should not be treated as a
23678         final construct for indentation.  Reported by Yuri Sugihara.
23679         (verilog-do-indent): Virtual task/function/class definition lines
23680         should not be considered as declarations.  Reported by Enzo Chi.
23681         (verilog-do-indent): Do not falsely indent to '=' of
23682         property/sequence operators on subsequent lines of a multi-line
23683         statement.
23684         (verilog-assignment-operator-re): Fix '!==' operator and add
23685         support for '<->', ':/', '#-#', and '#=#' operators.
23686         (verilog-calculate-indent, verilog-label-be): Enable
23687         case-sensitive regular expression parsing when looking for
23688         keywords.
23689         (verilog-calc-1): Detect 'pure virtual method' declarations which
23690         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
23691         (verilog-backward-ws&directives): When moving back to the start of
23692         a line and the preceeding line ended with an escaped-newline, then
23693         jump up one line.  This properly consumes a multi-line
23694         pre-processor directive.  Reported by Kaushal Modi.
23695         (verilog-dpi-import-export-re, verilog-extended-complete-re)
23696         (verilog-calc-1): Teach verilog-mode to properly indent after a
23697         DPI import/export statement that resides outside of a module.
23698         Reported by Kaushal Modi.
23699         (verilog-extended-complete-re): Update regexp to match both
23700         "DPI-C" and "DPI".  Reported by Kaushal Modi.
23702 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23704         substitute-command-keys a few more doc strings
23705         * lisp/allout.el (outlineify-sticky):
23706         * lisp/files.el (hack-one-local-variable--obsolete):
23707         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
23708         Use substitute-command-keys on some doc strings so that
23709         they don't use hard-coded key bindings or quoting styles.
23711         Fix quoting in Fformat calls
23712         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
23713         (xpm_load, xpm_load_image, pbm_load, png_load_body)
23714         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
23715         (imagemagick_load, svg_load, svg_load_image, gs_load)
23716         (x_kill_gs_process):
23717         * src/lread.c (load_warn_old_style_backquotes):
23718         * src/xfaces.c (load_pixmap):
23719         * src/xselect.c (x_clipboard_manager_error_1):
23720         Quote diagnostics according to user preference when calling
23721         Fformat or its derivatives.
23723 2015-08-15  Glenn Morris  <rgm@gnu.org>
23725         * admin/admin.el (set-version, set-copyright): Remove deleted files.
23727 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
23729         Allow describe-function helpers to access buffer-local values
23730         This will be used by cedet/mode-local.el `describe-mode-local-override'
23731         on `help-fns-describe-function-functions' in upstream CEDET.
23732         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
23733         `describe-function'.
23734         (describe-function): Bind it, save it on the help xref stack.
23736         Handle pulse-background being nil
23737         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
23738         pulse-background, handle it being nil.
23740 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23742         Fix "\`" confusion in Lisp strings
23743         * admin/authors.el (authors-canonical-author-name):
23744         Fix typo by using "\\`" not "\`" in string RE.
23745         * lisp/obsolete/complete.el (PC-complete-as-file-name):
23746         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
23747         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
23748         Use plain "`", not the equivalent-but-confusing "\`", in strings.
23749         * lisp/textmodes/texinfmt.el: Fix comment likewise.
23751 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
23753         * nt/zipdist.bat: Remove -- no longer used.
23755 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
23757         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
23758         rather than "getenforce".
23759         (tramp-sh-handle-set-file-selinux-context): Do not
23760         cache SELinux context if not all context components are given.
23762 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
23764         Add doc strings to 2 help-mode.el functions
23765         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
23766         strings.  (Bug#21263)
23768         Remove files used by the old MS-Windows specific build procedure
23769         * admin/unidata/makefile.w32-in:
23770         * doc/emacs/makefile.w32-in:
23771         * doc/lispintro/makefile.w32-in:
23772         * doc/lispref/makefile.w32-in:
23773         * doc/misc/makefile.w32-in:
23774         * leim/makefile.w32-in:
23775         * lib-src/makefile.w32-in:
23776         * lib/makefile.w32-in:
23777         * lisp/makefile.w32-in:
23778         * nt/INSTALL.OLD:
23779         * nt/config.nt:
23780         * nt/emacs-src.tags:
23781         * nt/envadd.bat:
23782         * nt/gmake.defs:
23783         * nt/makefile.w32-in:
23784         * nt/multi-install-info.bat:
23785         * nt/nmake.defs:
23786         * nt/paths.h:
23787         * src/makefile.w32-in: Files deleted.
23788         * nt/configure.bat: Remove everything except the blurb about the
23789         new build procedure.
23790         * make-dist: Remove references to makefile.w32-in in various
23791         directories, and to files in nt/ that were deleted.
23792         * etc/NEWS: Mention the fact that the files were dropped.
23794 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23796         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
23797         (Bug#21248)
23799 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
23801         Default to inotify instead of gfile
23802         * configure.ac (with_file_notification): Fix typo that
23803         prevented suppression of file notification if HAVE_NS.
23804         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
23805         with_file_notification is 'yes' (Bug#21241).
23806         * etc/NEWS: Mention this.
23808         Fix broken URLs for ISO-IR
23809         * doc/emacs/mule.texi (Charsets):
23810         * lisp/international/mule-conf.el:
23811         Fix broken URL (Bug#21248).
23813         Low-level diagnostics now use ‘text-quoting-style’
23814         * src/doprnt.c (doprnt):
23815         Format ` and ' as per ‘text-quoting-style’.
23816         * src/xdisp.c (vmessage, message): Mention that the format should
23817         not contain ` or '.
23819         Prefer ‘format’ to ‘substitute-command-keys’
23820         * src/character.h (uLSQM, uRSQM): Move here ...
23821         * src/doc.c (uLSQM, uRSQM): ... from here.
23822         * src/doc.c (Fsubstitute_command_keys):
23823         * src/syntax.c (Finternal_describe_syntax_value):
23824         * lisp/cedet/mode-local.el (mode-local-print-binding)
23825         (mode-local-describe-bindings-2):
23826         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
23827         * lisp/cus-theme.el (describe-theme-1):
23828         * lisp/descr-text.el (describe-text-properties-1, describe-char):
23829         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
23830         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
23831         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
23832         * lisp/emacs-lisp/package.el (describe-package-1):
23833         * lisp/faces.el (describe-face):
23834         * lisp/help-fns.el (help-fns--key-bindings)
23835         (help-fns--compiler-macro, help-fns--parent-mode)
23836         (help-fns--obsolete, help-fns--interactive-only)
23837         (describe-function-1, describe-variable):
23838         * lisp/help.el (describe-mode):
23839         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
23840         to implement quoting style.  This generally makes the code simpler.
23842         Extend ‘format’ to translate curved quotes
23843         This is a followup to the recent doc string change, and deals with
23844         diagnostics and the like.  This patch is more conservative than
23845         the doc string change, in that the behavior of ‘format’ changes
23846         only if its first arg contains curved quotes and the user prefers
23847         straight or grave quotes.  (Come to think of it, perhaps we should
23848         be similarly conservative with doc strings too, but that can wait.)
23849         The upside of this conservatism is that existing usage is almost
23850         surely unaffected.  The downside is that we'll eventually have to
23851         change Emacs's format strings to use curved quotes in places where
23852         the user might want curved quotes, but that's a simple and
23853         mechanical translation that I'm willing to do later.  (Bug#21222)
23854         * doc/lispref/help.texi (Keys in Documentation):
23855         Move description of text-quoting-style from here ...
23856         * doc/lispref/strings.texi (Formatting Strings):
23857         ... to here, and describe new behavior of ‘format’.
23858         * etc/NEWS: Describe new behavior.
23859         * lisp/calc/calc-help.el (calc-describe-thing):
23860         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
23861         * lisp/info.el (Info-find-index-name):
23862         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
23863         of recently-added curved quotes.
23864         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
23865         Move from here ...
23866         * src/lisp.h: ... to here.
23867         * src/doc.c (text_quoting_style): New function.
23868         (Fsubstitute_command_keys): Use it.
23869         * src/editfns.c (Fformat): Implement new behavior.
23870         * src/lisp.h (enum text_quoting_style): New enum.
23872 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
23874         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
23875         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
23877 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
23879         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
23880         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
23882 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
23884         Flush file properties in Tramp
23885         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
23886         (tramp-sh-handle-set-file-times):
23887         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
23888         (tramp-adb-handle-set-file-times): Flush the file properties of
23889         the directory.
23891 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
23893         * doc/emacs/misc.texi (Amusements): Fixed typo.
23895 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
23897         Don't miss warnings about removing string text properties while dumping
23898         * src/alloc.c (purecopy): Warn about removing a string's text
23899         properties even when the same string was already pure-copied
23900         earlier.
23901         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
23902         (elisp--xref-format-extra): Fix the commentary.
23904 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
23906         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
23908 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
23910         * lisp/progmodes/compile.el: Use lexical-binding.
23911         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
23913 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
23915         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
23916         * lisp/uniquify.el: Remove redundant `:group's.
23918 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
23920         * lisp/net/tramp-adb.el
23921         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
23922         result to prevent modification of the tramp-cache by side effects.
23923         Use the correct cache key.
23925 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
23927         Make add_to_log varargs
23928         * src/alloc.c (run_finalizer_handler):
23929         * src/charset.c (load_charset_map_from_vector):
23930         * src/nsimage.m (ns_load_image):
23931         * src/xfaces.c (load_pixmap, load_color2):
23932         Simplify, now that add_to_log has a variable number of args.
23933         * src/image.c (image_error): Take a variable number of args.
23934         Callers simplified.
23935         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
23936         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
23937         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
23938         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
23940         Optional args for holiday-greek-orthodox-easter
23941         * etc/NEWS: Document this.
23942         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
23943         Add optional args N and STRING, mimicking the API and code of
23944         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
23946 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
23948         xref-find-definitions: Exclude more generic function items.
23949         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
23950         Add doc string.
23951         (cl--generic-find-defgeneric-regexp): New.
23952         (find-function-regexp-alist): Add it.
23953         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
23954         elisp-mode.el, change to search for ";;; Code:"
23955         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
23956         (find-function-regexp-alist): Add them.
23957         * lisp/progmodes/elisp-mode.el:
23958         (elisp--xref-format, elisp--xref-format-extra): Change back to
23959         defvar due to bug#21237.
23960         (elisp--xref-find-definitions): Exclude co-located default methods for
23961         generic functions.  Also exclude implicitly declared defgeneric.
23962         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
23963         mode variables defined by 'define-minor-mode'.
23964         * test/automated/elisp-mode-tests.el: Declare generic functions, add
23965         tests for them.
23966         (xref-elisp-test-run): Fix bug.
23967         (emacs-test-dir): Improve initial value.
23968         (find-defs-defun-defvar-el): Don't expect defvar.
23969         (find-defs-feature-el): Match change to find-feature-regexp.
23971 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
23973         Improve warning about purecopy of strings with properties
23974         * src/alloc.c (purecopy): Show the offending string with the
23975         warning about removing its text properties.
23977 2015-08-12  Alan Mackenzie  <acm@muc.de>
23979         Introduce new macros to cover Emacs's new names in cl-lib.el
23980         This also eliminates `mapcan' warnings in XEmacs.
23981         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
23982         characterise [X]Emacs versions.
23983         (top-level): Require either 'cl or 'cl-lib, depending on
23984         c--mapcan-status.
23985         Change this back to cc-external-require from an eval-when-compile
23986         require.
23987         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
23988         (c--delete-duplicates): New macros which expand into either old or new
23989         names.
23990         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
23991         rather than the old names.
23992         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
23993         rather than mapcan.
23994         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
23995         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
23996         depending on c--mapcan-status.
23997         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
23998         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
23999         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
24000         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
24001         (c-decl-block-key, c-keywords, c-keywords-obarray)
24002         (c-regular-keywords-regexp, c-primary-expr-regexp)
24003         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
24004         (c-known-type-key, c-nonlabel-token-key)
24005         (c-make-init-lang-vars-fun): Use the new macros rather than the old
24006         names.
24008 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
24010         loadhist.el (read-feature): Conform to completing-read
24011         * lisp/loadhist.el (read-feature): According to `completing-read'
24012         documentation, if collection is a list, then it must be a list of
24013         strings, not a list of symbols like before.
24015 2015-08-12  David Kastrup  <dak@gnu.org>
24017         Deal gracefully with up-events (Bug#19746)
24018         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
24019         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
24020         those may easily be injected by user-level Lisp code.
24021         (read_key_sequence): Discard unbound up-events like unbound
24022         down-events: they are even more likely only relevant for special
24023         purposes.
24024         While Emacs will not produce up-events on its own currently (those are
24025         converted to drag or click events before being converted to
24026         Lisp-readable structures), the input queue can be made to contain them
24027         by synthesizing events to `unread-command-events'.  Emacs should deal
24028         consistently with such events.
24030 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
24032         Fix display of thin lines whose newline has line-height property of t
24033         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
24034         and descent values of non-empty glyph rows, since they could have
24035         forced low values deliberately.  (Bug#21243)
24037 2015-08-12  Richard Stallman  <rms@gnu.org>
24039         Offer to combine multiple To or CC fields.
24040         * lisp/mail/sendmail.el (mail-combine-fields): New function.
24041         (mail-send): Call 'mail-combine-fields'.
24043         Don't decrypt encrypted files.
24044         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
24046         Handle encrypted mbox files.
24047         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
24048         the mbox file if necessary.
24050         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
24051         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
24052         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
24053         In a mime message, reenable Mime and show the parts that
24054         were shown before.
24055         Add keyword "decrypt" if anything decrypted.
24057         epa-inhibit inhibits auto-recognition of .gpg files
24058         * lisp/epa-file.el (epa-inhibit): New variable.
24059         (epa-file-handler): Check epa-inhibit.
24061 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
24063         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
24065 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24067         Respect python.el imenu when semantic-mode is off
24068         Fixes bug#21220
24069         * lisp/cedet/semantic/wisent/python.el: Do not force
24070         wisent-python-default-setup on python-mode-hook.
24072 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24074         Give names to Unicode code points in C code
24075         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
24076         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
24077         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
24078         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
24079         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
24080         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
24081         (OBJECT_REPLACEMENT_CHARACTER):
24082         New named constants for Unicode code points.
24083         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
24084         * src/composite.c (char_composable_p):
24085         * src/lread.c (readevalloop, read1):
24086         * src/xdisp.c (get_next_display_element):
24087         Use them.
24088         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
24089         Remove; now in character.h.
24091 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
24093         elisp--xref-find-definitions handle cl-defstuct default constructor
24094         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
24095         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
24096         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
24097         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
24098         from xref-elisp-test for ease of debugging.
24099         (xref-elisp-deftest): Rename from xref-elisp-test.
24100         (find-defs-constructor): New test.
24101         (find-defs-defgeneric-el): Match batch test config.
24102         (compile): Required for find-defs compilation-minor-mode test.
24103         (find-defs-defvar-el): Match code change.
24104         (find-defs-face-el): Match code change.
24105         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
24106         Improve doc string.
24108 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
24110         * lisp/replace.el (perform-replace): Document `replacements'.
24111         (perform-replace): Move the description of the format of `replacements'
24112         from the body's comment to the doc string.
24114 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
24116         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
24117         sequence.  Recent adb version send initial escape sequences, even
24118         when terminal type is set to TERM=dumb.
24120 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
24122         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
24123         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
24124         Function deleted.
24125         (elisp--xref-format-cl-defmethod): New defconst.
24126         (find-feature-regexp, find-alias-regexp): New defcustoms.
24127         (elisp--xref-make-xref): New function.
24128         (elisp--xref-find-definitions): Rewrite using the above, handle many
24129         more cases.  Always output all available definitions.
24130         (xref-location-marker): No need for special cases.
24131         * test/automated/elisp-mode-tests.el: Add more tests of
24132         elisp--xref-find-definitions, improve current tests.
24134 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
24136         Fix recording of events pushed onto unread-command-events
24137         * src/keyboard.c (read_char): Make sure events read from
24138         unread-command-events and unread-post-input-method-events are
24139         always recorded by record_char.  Reported by David Kastrup
24140         <dak@gnu.org>, see
24141         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
24143 2015-08-10  Samer Masterson  <samer@samertm.com>
24145         Set file buffer as current for "--file"
24146         * lisp/startup.el (command-line-1): Set file buffer as current before
24147         it is displayed so it can be used with options like "--eval".
24148         (Bug#21095)
24150 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
24152         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
24153         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
24154         after setting LC_ALL to the desired locale, to avoid affecting how
24155         numbers are read and printed.  (Bug#21223)
24157 2015-08-10  Alan Mackenzie  <acm@muc.de>
24159         Fix "Invalid search bound (wrong side of point)" in fontification
24160         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
24161         an initialization expression, check point is not beyond the
24162         fontification limit.
24164 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24166         Fix DPI calculation when Xft/DPI is default
24167         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
24168         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
24169         Remove unnecessary cast while we're in the neighborhood.
24171 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
24173         Add project-vc-search-path and project-vc-ignores
24174         * lisp/progmodes/project.el (project-vc): New group.
24175         (project-vc-search-path, project-vc-ignores): New variables.
24176         (project--value-in-dir): Utility function.
24177         (project-search-path, project-ignores): Use them.
24178         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
24179         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
24181 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24183         Fix some minor quoting issues with grave accent
24184         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
24185         Remove redundant quotes.
24186         * src/doc.c (uLSQM, uRSQM): New macros.
24187         * src/doc.c (Fsubstitute_command_keys):
24188         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
24189         preference for quotes rather than hardcoding the ‘grave’ style.
24190         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
24191         (re_match_2_internal) [DEBUG]: In debugging output, quote C
24192         strings with "...", not `...'.
24194         ChangeLog.2 ignores remote-tracking merges
24195         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
24196         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
24197         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
24199 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
24201         Use kpsewhich in ffap-latex-mode, if available
24202         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
24203         (ffap-latex-mode): Use kpsewhich if available.
24205         ffap: disallow braces in filenames for tex modes
24206         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
24207         braces in tex-related modes.
24209         Remove useless backslashes from ffap-string-at-point-mode-alist
24210         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
24211         misleading backslashes from default value.
24213         Augment docstring of ffap-string-at-point-mode-alist
24214         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
24215         and END are handled.
24217 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24219         * lisp/org/org-src.el (org-edit-src-code)
24220         (org-edit-fixed-width-region):
24221         * lisp/simple.el (completion-setup-function):
24222         Remove calls to substitute-command-keys that always just return
24223         their argument.
24225 2015-08-09  Daiki Ueno  <ueno@gnu.org>
24227         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
24228         (Bug#21210)
24230 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
24232         Fix link to source code in help window
24233         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
24234         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
24235         'No longer include timestamp in header of .elc files'.  Add code
24236         that will return .el source file in load-path.
24238 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
24240         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
24241         Respect `isearch-lax-whitespace' when searching through
24242         `isearch-word'.
24244 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
24246         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
24248         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
24249         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
24250         (org-set-regexps-and-options, org-assign-fast-keys)
24251         (org-contextualize-keys, org-contextualize-validate-key)
24252         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
24253         (org-find-olp, org-find-exact-heading-in-directory)
24254         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
24255         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
24256         (org-replace-escapes): Use dolist.
24257         (org-mode): Optimize away XEmacs-only code.
24258         (org-refile-get-targets): Remove unused var `f'.
24259         (org-fast-todo-selection): Remove unused var `e'.
24260         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
24261         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
24262         (org-format-latex): Use dolist.  Remove unused var `e'.
24263         (org-toggle-heading): Access vars lexically rather than dynamically.
24264         (org-backward-sentence, org-forward-sentence, org-meta-return)
24265         (org-kill-line): Mark arg as unused.
24266         (org-submit-bug-report): Silence compiler warning.
24267         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
24268         (org-get-cursor-date): Remove unused var `tm'.
24269         (org-comment-or-uncomment-region): Use standard name `_'.
24270         (reftex-docstruct-symbol, reftex-cite-format): Declare to
24271         silence byte-compiler.
24272         (org-reftex-citation): Add `org--' prefix to dynamically scoped
24273         `rds' var.
24275 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
24277         Electric quote if coding is undecided or no conv
24278         * lisp/electric.el (electric--insertable-p): Also say that a
24279         string is insertable if the buffer file coding system is undecided
24280         or uses no conversion, as curved quotes will work in either case.
24282         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
24284 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
24286         Fix overlay string display regressions introduced in Emacs 24.5
24287         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
24288         buffer position, if we move the iterator to a new position as
24289         result of jumping over text covered by a "replacing" display
24290         property.
24291         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
24293         Support recovery from C stack overflow on MS-Windows
24294         * src/w32fns.c (w32_reset_stack_overflow_guard)
24295         (stack_overflow_handler): New functions for handling C stack
24296         overflow exceptions.
24297         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
24298         specially, and zero out except_addr if we do.
24299         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
24300         mode.
24301         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
24302         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
24303         the MinGW build, but the code guarded by that is for Posix hosts.
24304         * src/keyboard.c (command_loop) [WINDOWSNT]:
24305         Call w32_reset_stack_overflow_guard.
24306         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
24307         (sigsetjmp): New macro.
24308         (w32_reset_stack_overflow_guard): Declare the prototype.
24309         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
24311 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
24313         Improve error signalling for seq-subseq
24314         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
24315         when indexes are too large, but to silently ignore numbers which
24316         are too negative for lists.  String and vector handling errors in
24317         both cases.  This has been regularized.  Error signaling behavior
24318         has been explicitly added to the doc string.
24320         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
24321         therefore also impacted by this change.  Update the doc string
24322         to reflect this.
24324         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
24325         added for these exceptional cases, as well as one non exceptional
24326         base case.
24328 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
24330         Improve error checking in tramp-adb.el
24331         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
24332         Improve error checking.  "ls -l" on Android in Enforcing mode can
24333         print "lstat './FILENAME failed: Permission denied".
24335 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
24337         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
24338         non-struct vectors.
24340 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
24342         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
24343         * lisp/window.el: Fix typo that broke build.
24344         (display-buffer--action-function-custom-type):
24345         Add `display-buffer-use-some-frame'.
24346         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
24348         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
24349         * lisp/window.el (display-buffer-use-some-frame): Add support for
24350         'inhibit-same-window in alist.
24351         * doc/lispref/windows.texi (display-buffer-use-some-frame):
24352         Doc support for 'inhibit-same-window in alist.
24354 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
24356         Avoid infinite loop in display of invisible text in strings
24357         * src/xdisp.c (handle_invisible_prop): If the next change of
24358         invisibility spec does not mean the beginning of a visible text,
24359         update the string position from which to start the search for the
24360         next invisibility change.  This avoids an infinite loop when we
24361         have more than one invisibility spec that are made inactive by
24362         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
24363         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
24364         for the situation that caused bug #21200.
24366 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
24368         * lisp/emacs-lisp/package.el: Simplify describe-package-1
24369         (package-help-section-name-face): New face.
24370         (package--print-help-section): New function.
24371         (describe-package-1): Refactor section printing.
24372         (package-make-button): Use face instead of font-lock-face, which
24373         doesn't work on buttons.
24375         * lisp/emacs-lisp/package.el: Define custom faces
24376         (package-name-face, package-description-face)
24377         (package-status-built-in-face, package-status-external-face)
24378         (package-status-available-face, package-status-new-face)
24379         (package-status-held-face, package-status-disabled-face)
24380         (package-status-installed-face, package-status-dependency-face)
24381         (package-status-unsigned-face, package-status-incompat-face)
24382         (package-status-avail-obso-face): New faces.
24383         (package-menu--print-info-simple): Use them.
24385 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24387         Fix some confusion with ‘format’
24388         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
24389         (allout-graphics-modification-handler):
24390         Protect arbitrary string in a format context with "%s" format.
24391         * lisp/avoid.el:
24392         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
24393         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
24394         * lisp/erc/erc-button.el (erc-button-beats-to-time):
24395         * lisp/gnus/message.el (message-send-form-letter):
24396         * lisp/org/ob-core.el (org-babel-check-evaluate)
24397         (org-babel-confirm-evaluate):
24398         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
24399         * lisp/org/ox-latex.el (org-latex-compile):
24400         * lisp/org/ox-man.el (org-man-compile):
24401         * lisp/org/ox-odt.el (org-odt-template):
24402         * lisp/org/ox-texinfo.el (org-texinfo-compile):
24403         * lisp/progmodes/prolog.el (prolog-help-info)
24404         (prolog-view-predspec):
24405         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
24406         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
24407         * lisp/textmodes/rst.el (rst-replace-lines):
24408         Change (message (format ...)) to (message ...), and likewise
24409         for ‘error’.  This lessens the probability of confusion when the
24410         output of ‘format’ contains ‘%’.
24412 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
24414         * lisp/replace.el (replace-character-fold): Default to nil.
24416         * lisp/character-fold.el: Fix lax whitespace.
24417         (character-fold-table): Don't make space match other whitespace chars.
24418         (character-fold-to-regexp): Simplify lax behavior.
24420 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
24422         Preserve window point in xref-find-definitions-other-window
24423         Fix the problem reported by Ingo Logmar in
24424         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
24425         * lisp/progmodes/xref.el (xref--goto-char): Extract from
24426         xref--goto-location.
24427         (xref--pop-to-location): Use it.  Replace xref--goto-location with
24428         a direct xref-location-marker call.
24429         (xref--show-location): Likewise.
24430         (xref--display-position): Use xref--goto-char.
24432         * lisp/progmodes/project.el: Add a paragraph to the front matter.
24434 2015-08-04  David Kastrup  <dak@gnu.org>
24436         * lisp/vc/emerge.el (emerge-show-file-name):
24437         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
24438         (vhdl-comment-insert, vhdl-hooked-abbrev):
24439         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
24440         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
24441         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
24442         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
24443         * lisp/obsolete/vip.el (vip-escape-to-emacs)
24444         (vip-prefix-arg-value, vip-prefix-arg-com):
24445         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
24446         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
24447         (quail-tibkey-update-translation):
24448         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
24449         * lisp/leim/quail/lao.el (quail-lao-update-translation):
24450         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
24451         (quail-japanese-self-insert-and-switch-to-alpha):
24452         * lisp/leim/quail/hangul.el (hangul2-input-method)
24453         (hangul3-input-method, hangul390-input-method):
24454         * lisp/language/hanja-util.el (hangul-to-hanja-char):
24455         * lisp/international/robin.el (robin-input-method):
24456         * lisp/international/quail.el (quail-start-translation)
24457         (quail-start-conversion):
24458         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
24459         (gnus-article-describe-key-briefly):
24460         * lisp/eshell/em-hist.el (eshell-list-history):
24461         * lisp/term.el (term-dynamic-list-input-ring)
24462         (term-dynamic-list-completions):
24463         * lisp/subr.el (momentary-string-display):
24464         * lisp/simple.el (read-quoted-char):
24465         * lisp/pcomplete.el (pcomplete-show-completions):
24466         * lisp/kmacro.el (kmacro-repeat-on-last-key):
24467         * lisp/info.el (Info-summary):
24468         * lisp/ehelp.el (electric-help-command-loop):
24469         * lisp/ebuff-menu.el (electric-buffer-list)
24470         (Electric-buffer-menu-exit):
24471         * lisp/double.el (double-translate-key):
24472         * lisp/comint.el (comint-dynamic-list-input-ring)
24473         (comint-dynamic-list-completions): Do not overwrite preexisting
24474         contents of `unread-command-events' when putting new events into it.
24476 2015-08-04  Daniel Colascione  <dancol@dancol.org>
24478         Improve ansi-color filtering of unrecognized escape sequences
24479         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
24480         escape sequences.
24481         (ansi-color-filter-apply, ansi-color-apply): Filter out
24482         unrecognized escape sequences.
24484 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
24486         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
24487         definitions to `easy-menu-define', improve a couple to account for
24488         async, and add a couple of new commands.
24490 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
24492         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
24494 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
24496         Add new 'calendar-weekend-days' option
24497         Make the days receiving the 'calendar-weekend-header' face freely
24498         customizable, as they differ by region/culture.
24499         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
24500         new variable.
24501         * lisp/calendar/calendar.el (calendar-generate-month): New variable
24502         calendar-weekend-days to customize day header fontification.
24504 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24506         Redo text-quoting-style variable
24507         Rename help-quote-translation to text-quoting-style,
24508         and use symbols rather than characters as values.
24509         This follows suggestions along these lines by Alan Mackenzie in:
24510         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
24511         and by Drew Adams in:
24512         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
24513         * doc/lispref/help.texi (Keys in Documentation)
24514         * etc/NEWS:
24515         * lisp/cus-start.el (standard):
24516         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
24517         Document and/or implement the new behavior instead of the old.
24518         (syms_of_doc): New symbols 'grave' and 'straight'.
24520 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
24522         nnimap.el: Use IMAP MOVE extension if available
24523         * lisp/gnus/nnimap.el (nnimap-request-move-article)
24524         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
24525         Use MOVE extension if available.
24527         nnimap.el: Explicitly ask for server capabilities
24528         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
24529         capabilities will be returned in the login-result.
24531 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
24533         Treat help strings like other doc strings
24534         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
24535         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
24536         substitute-command-keys.
24537         * src/keyboard.c (show_help_echo, parse_menu_item): Call
24538         substitute-command-keys on the help string before displaying it.
24540         Also mention "curly quotes"
24541         See Drew Adams's email in:
24542         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
24543         * doc/lispref/help.texi (Keys in Documentation):
24544         Add index entry "curly quotes".
24545         * etc/NEWS: Use the phrase "curly quotes" too.
24547         ede-proj-target-makefile docstring tweaks
24548         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
24549         Consistently use "all:" to describe the all: target,
24550         replacing three different and confusingly-quoted usages.
24552 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
24554         Don't abort emacsclientw when -a was specified
24555         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
24556         out if we are in emacsclientw and -a was specified.
24558 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
24560         Fix handling of 1st keystroke on MS-Windows
24561         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
24562         This is needed to correctly handle the session's first keystroke,
24563         if it has any modifiers.  (Bug#19994)
24565 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
24567         Substitute some customization etc. doc strings
24568         These changes apply substitute-command-keys to some
24569         doc strings that were going through untranslated
24570         when creating customization or other widgets.
24571         * lisp/cus-edit.el (custom-group-value-create):
24572         * lisp/wid-edit.el (widget-default-create):
24573         (widget-push-button-value-create):
24574         Treat the widget tag as a doc string.
24575         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
24576         Treat the :documentation value as a doc string.
24577         * lisp/wid-edit.el (widget-choose):
24578         Treat the choice names as doc strings.
24579         (widget-default-create): Treat the :doc value as a doc string.
24580         (widget-toggle-value-create): Treat the :on and :off values
24581         as doc strings.
24582         (widget-documentation-string-value-create):
24583         Substitute the doc string.
24585 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
24587         Add a second argument to project-ignores
24588         * lisp/progmodes/project.el (project-ignores): Add a second
24589         argument DIR.
24590         * lisp/progmodes/project.el (project-ignores): Only include the VC
24591         ignores if DIR is the VC root.
24592         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
24594 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
24596         Prevent incorrect display when 'line-spacing' variable is set
24597         * src/xdisp.c (try_window_id): Give up this optimization if the
24598         buffer has its 'line-spacing' variable set non-nil.
24600 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
24602         Don't pass NOVISIT to find-file
24603         * lisp/progmodes/etags.el (next-file):
24604         Don't pass NOVISIT to find-file (bug#21175).
24606         Ignore buffer restriction for tags-loop-eval
24607         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
24608         restriction (bug#21167).
24610 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
24612         Fix a thinko in 'ffap-gopher-at-point'
24613         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
24615         Honor 'line-spacing' for empty lines
24616         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
24617         property and 'line-spacing' frame parameter or variable or
24618         property for empty lines, by doing the same processing as in
24619         x_produce_glyph for newline characters.  (Bug#21165)
24621 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
24623         Simplify by assuming C99 integer division
24624         * src/floatfns.c (ceiling2, floor2, truncate2):
24625         Assume C99 (i.e., Fortran) semantics for integer division.
24626         This simplifies the code.
24628 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
24630         Don't overflow if computing approximate percentage
24631         * lisp/align.el (align-region):
24632         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
24633         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
24634         * lisp/cus-edit.el (custom-buffer-create-internal):
24635         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
24636         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
24637         (checkdoc-next-message-error):
24638         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
24639         * lisp/epa.el (epa-progress-callback-function):
24640         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
24641         * lisp/ffap.el (ffap-menu-rescan):
24642         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
24643         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
24644         * lisp/gnus/nneething.el (nneething-retrieve-headers):
24645         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
24646         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
24647         * lisp/gnus/nnml.el (nnml-retrieve-headers):
24648         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
24649         * lisp/gnus/nntp.el (nntp-retrieve-headers)
24650         (nntp-retrieve-articles):
24651         * lisp/imenu.el (imenu--relative-position):
24652         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
24653         (skkdic-convert-okuri-nasi):
24654         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
24655         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
24656         * lisp/org/org-list.el (org-update-checkbox-count):
24657         * lisp/org/org.el (org-table-map-tables)
24658         (org-update-parent-todo-statistics):
24659         * lisp/play/decipher.el (decipher-insert-frequency-counts)
24660         (decipher-analyze-buffer):
24661         * lisp/profiler.el (profiler-format-percent):
24662         * lisp/progmodes/cc-cmds.el (c-progress-update):
24663         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
24664         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
24665         (idlwave-list-load-path-shadows):
24666         * lisp/progmodes/opascal.el (opascal-step-progress):
24667         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
24668         (vhdl-scan-directory-contents):
24669         * lisp/textmodes/bibtex.el (bibtex-progress-message):
24670         * lisp/textmodes/flyspell.el (flyspell-small-region)
24671         (flyspell-external-point-words):
24672         * lisp/textmodes/table.el (table-recognize):
24673         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
24674         progress-report percentages and the like.  This avoids problems
24675         if (* 100 NUMERATOR) would overflow.
24676         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
24677         * lisp/gnus/registry.el (registry-reindex):
24678         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
24679         * lisp/descr-text.el (describe-char):
24680         * lisp/org/org-colview.el (org-nofm-to-completion):
24681         * lisp/ps-print.el (ps-plot):
24682         * lisp/simple.el (what-cursor-position):
24683         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
24684         more-complicated and less-accurate approximation.
24686         Fix some int overflows in profiler.c
24687         * src/profiler.c (make_log): Make args EMACS_INT, not int,
24688         to avoid unwanted behavior on 'int' overflow.
24689         (make_log, evict_lower_half, record_backtrace):
24690         Use ptrdiff_t, not int, for object indexes.
24692         Port to pedantic memcpy
24693         * src/keyboard.c (menu_bar_items, tool_bar_items):
24694         * src/xrdb.c (magic_db):
24695         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
24697         Merge from gnulib
24698         This incorporates:
24699         2015-07-29 time_rz: port to pedantic memcpy
24700         * lib/time_rz.c: Copy from gnulib.
24702 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
24704         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
24705         When updating the very last entry, tabulated-list-print would
24706         erase it and then try to look at the next one (which obviously
24707         isn't there).
24709 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
24711         Allow to use the old key processing code on MS-Windows
24712         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
24713         New variable.
24714         (w32_wnd_proc): Use it to invoke the old code that processed
24715         character keys, as fallback, when this variable is non-nil.
24716         Fix typos in comments.  (Bug#19994)
24718 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
24720         Improve handling of Unicode keyboard input on MS-Windows
24721         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
24722         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
24723         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
24724         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
24725         successful, don't call TranslateMessage.  (Bug#19994)
24727 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
24729         Fix default-directory in changeset diffs after vc-print-log
24730         * lisp/vc/log-view.el (log-view-diff-common): Move the
24731         revision-granularity check back into log-view-diff-changeset.
24732         (log-view-diff-changeset): Bind default-directory to the current
24733         VC root.
24735         Rename project-directories to project-roots
24736         * lisp/progmodes/project.el (project-search-path-function)
24737         (project-search-path): Update the docstring.
24738         (project-directories): Rename to `project-roots', update all
24739         callers and implementations accordingly.
24740         (project-root): Remove.
24741         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
24742         as the default file mask.
24744 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
24746         Support long URLs in w32-shell-execute
24747         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
24748         and filename_to_ansi to convert the DOCUMENT argument, as it could
24749         be a URL that is not limited to MAX_PATH characters.  Instead, use
24750         MultiByteToWideChar directly, and allocate heap storage as
24751         required to accommodate the converted string.  Likewise with
24752         non-Unicode operation.  Ensure OPERATION is null-terminated, even
24753         if it is longer than 32K bytes.  (Bug#21158)
24755 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
24757         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
24759 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
24761         Add docs for display-buffer action display-buffer-use-some-frame
24762         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
24763         * doc/lispref/windows.texi (Display Action Functions):
24764         Add display-buffer-use-some-frame.
24765         * etc/NEWS: Mention display-buffer-use-some-frame.
24767         Add display-buffer action display-buffer-use-some-frame
24768         * lisp/window.el (display-buffer-use-some-frame): New.
24770         Handle vc-mtn error more gently
24771         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
24772         branch is nil.
24774 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
24776         Fix Tramp problems with multihops, and nc
24777         * lisp/net/tramp-cache.el (tramp-get-file-property)
24778         (tramp-set-file-property, tramp-flush-file-property)
24779         (tramp-get-connection-property, tramp-set-connection-property)
24780         (tramp-flush-connection-property): Remove hop from vector.
24781         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
24782         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
24783         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
24784         netstat to 60".
24785         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
24786         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
24787         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
24788         Keep hop in result.
24789         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
24790         Add hop tests.
24792 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
24794         Resurrect highlighting of repeated words by Flyspell Mode
24795         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
24796         characters between point and the doublon candidate, so that
24797         flyspell-word-search-backward finds it.  (Bug#21157)
24799         Fix redisplay of large images on expose events
24800         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
24801         between signed negative values and unsigned values.  This
24802         prevented redisplay on expose events when the window showed a very
24803         large image.
24805 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
24807         Remove unnecessary stack overflow dependency
24808         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
24809         Don't worry about $ac_cv_header_sys_resource_h and
24810         $ac_cv_func_getrlimit, as they're no longer needed for this.
24811         Problem reported by Eli Zaretskii in:
24812         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
24814 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
24816         Pacify compilation -Wincompatible-pointer-types warnings
24817         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
24818         warning.
24819         (CompareStringW_Proc): New typedef.
24820         (w32_compare_strings): Use it, to pacify compiler warnings under
24821         "-Wincompatible-pointer-types".
24822         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
24823         (GetDiskFreeSpaceExA_Proc): New typedefs.
24824         (Ffile_system_info): Use them, to pacify compiler warnings under
24825         "-Wincompatible-pointer-types".
24827 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
24829         Fix subscript error in calculate_direct_scrolling
24830         Use slightly-longer cost vectors.  Without this change,
24831         calculate_direct_scrolling can have a subscript violation when
24832         FRAME_LINES (frame) <= delta.
24833         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
24834         (line_ins_del, do_line_insertion_deletion_costs):
24835         Allocate and use slightly-larger cost vectors, ones based on
24836         FRAME_TOTAL_LINES instead of FRAME_LINES.
24838         Fix uninitalized value in encode_coding_object
24839         * src/coding.c (encode_coding_object): Also initialize
24840         coding->src_pos and coding->src_pos_byte when NILP (src_object).
24841         This avoids later use of uninitialized storage.
24843 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
24845         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
24846         (Bug#21141)
24848 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
24850         Merge from gnulib
24851         This incorporates:
24852         2015-07-27 time_rz: port better to MinGW
24853         2015-07-27 time: port __need_time_t to MinGW
24854         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
24855         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
24856         * lib/time-internal.h: New file, from gnulib.
24858 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
24860         Handle NULL pointers in w32heap.c allocation routines
24861         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
24862         freeable".
24863         (realloc_after_dump, realloc_before_dump, free_before_dump):
24864         Handle NULL pointers gracefully, as Emacs now seems to expect that.
24866         Fix Cairo build without PNG
24867         * src/image.c: Define PNG function when USE_CAIRO is defined, even
24868         if HAVE_PNG is not.  (Bug#21133)
24870         MS-Windows follow-up for recent TZ-related changes
24871         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
24872         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
24873         picking up 'struct timespec' from pthread.h, if it is installed on
24874         the user's system.  We want either the definitions from MinGW
24875         system headers, if available, or the Gnulib replacements if not.
24876         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
24877         lib/time.h.
24878         * lib/time.in.h: Don't let __need_* symbols affect what happens on
24879         MinGW.  These symbols are defined by MinGW system headers, but we
24880         don't want that to affect whether Gnulib portions of the header
24881         are or aren't used.
24883 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
24885         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
24887         New optional ZONE arg for format-time-string etc.
24888         This simplifies time conversions in other time zones.
24889         It also prevents display-time-world tampering with TZ (Bug#21020).
24890         * admin/admin.el (add-release-logs):
24891         Use improved add-log-time-format API.
24892         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
24893         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
24894         * configure.ac (tzalloc): Remove test for this, since
24895         Emacs no longer uses HAVE_TZALLOC directly.
24896         * doc/lispref/os.texi (Time of Day, Time Conversion)
24897         (Time Parsing):
24898         * etc/NEWS: Document the new behavior.
24899         Merge from gnulib, incorporating:
24900         2015-07-25 strftime: fix newly-introduced bug on Solaris
24901         2015-07-23 fprintftime, strftime: use timezone_t args
24902         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
24903         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
24904         * m4/time_h.m4:
24905         Update from gnulib.
24906         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
24907         New files from gnulib.
24908         * lisp/time-stamp.el (time-stamp-string):
24909         * lisp/time.el (display-time-world-list)
24910         (display-time-world-display):
24911         Use new API, with time zone arg.
24912         * lisp/time.el (display-time-world-display):
24913         Fix race when current-time advances while we're running.
24914         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
24915         (add-log-iso8601-time-string): Accept optional time zone arg.
24916         * lisp/vc/add-log.el (add-change-log-entry):
24917         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
24918         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
24919         Add rules for the time module, since they're now needed
24920         for tzalloc etc.
24921         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
24922         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
24923         * src/editfns.c: Include errno.h.
24924         (set_time_zone_rule): Omit unnecessary forward decl.
24925         (initial_tz): Remove, replacing with ...
24926         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
24927         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
24928         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
24929         (tzlookup): New static functions.
24930         (init_editfns): New arg DUMPING.  All uses changed.
24931         (init_editfns): Omit most initialization if dumping, not if
24932         !initialized.  Initialize wall_clock_tz and local_tz.
24933         (emacs_nmemftime, format_time_string): Time zone argument can now
24934         be any time zone, not just a boolean for UTC or local time.  All
24935         callers changed.
24936         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
24937         (Fcurrent_time_zone): New optional arg ZONE.
24938         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
24939         the same form as with the other new additions.
24940         (decode_time_zone): Remove; no longer needed.
24941         (tzvalbuf): Now file-scope.
24942         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
24943         (syms_of_editfns): Define Qwall.
24944         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
24945         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
24946         [!HAVE_TZALLOC]:
24947         Remove; now supplied by gnulib.
24948         * src/emacs.c (main):
24949         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
24951 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
24953         Fix infinite loop in delete-consecutive-dups
24954         * lisp/subr.el (delete-consecutive-dups): Work even if the last
24955         element is nil (Bug#20588).  Avoid rescan of a circular list in
24956         deletion of last element.
24958 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
24960         Have `x-frame-geometry' return nil for terminal and initial
24961         frames (Bug#21132)
24962         * src/nsfns.m (Fx_frame_geometry):
24963         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
24964         terminal frames.
24965         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
24966         (Fx_frame_geometry): Return nil for terminal frames
24968 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
24970         * etc/tutorials/TUTORIAL.ja: Improve translation.
24972 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
24974         Avoid crashes when w32 GUI functions are called in -batch
24975         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
24976         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
24977         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
24979         Fix flyspell-check-previous-highlighted-word
24980         * lisp/textmodes/flyspell.el
24981         (flyspell-check-previous-highlighted-word): Really accept a
24982         numeric argument, as the doc string describes.  Fix an off-by-one
24983         error in looking up overlays, so invocation with point immediately
24984         after a word would check that word.  Clarify the doc string as
24985         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
24987 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
24989         Minor cleanup in tramp-tests.el
24990         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
24991         Implement using the documented interface
24992         `tramp-connection-properties', rather than with internal functions.
24994 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
24996         Pass lambdas to `skeleton-read'
24997         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
24998         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
24999         lambdas to `skeleton-read' (bug#20386).
25001 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
25003         * INSTALL (DETAILED BUILDING AND INSTALLATION):
25004         Mention --without-imagemagick.
25006         Don't require GUI frames and mouse for Flyspell menus
25007         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
25008         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
25009         support, since pop-up menus work with text terminals and can be
25010         controlled via the keyboard.
25012         Improve documentation of Flyspell commands
25013         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
25014         can be invoked via the keyboard.  Mention those commands by name
25015         and add them to the fn index.  (Bug#21125)
25017 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
25019         Fix some Tramp problems with HP-UX
25020         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
25021         Add "tab0" to stty call.
25022         * test/automated/tramp-tests.el (tramp-persistency-file-name):
25023         Set to nil.
25024         (tramp--test-hpux-p): New defun.
25025         (tramp--test-utf8): Use it.
25027 2015-07-22  Glenn Morris  <rgm@gnu.org>
25029         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
25031 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
25033         Fix point positioning in ffap-next-guess
25034         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
25035         as our callers expect.  This was clobbered as part of fixing
25036         bug#5673.  (Bug#21107)
25037         (ffap-gopher-at-point): Set ffap-string-at-point-region.
25039 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
25041         * lisp/window.el (even-window-sizes): Fix customization type.
25043         Optionally even widths of `display-buffer' windows.  (Bug#21100)
25044         * lisp/window.el (quit-restore-window): Restore width if
25045         requested.
25046         (display-buffer-record-window): Record width when window is
25047         reused and horizontally combined.
25048         (even-window-sizes): New option to allow evening window widths.
25049         (even-window-heights): Defalias to `even-window-sizes'.
25050         (window--even-window-heights): Rename to
25051         `window--even-window-sizes'.  Handle side-by-side windows.
25052         (display-buffer-use-some-window): Call `window--even-window-sizes'
25053         instead of `window--even-window-heights'.
25054         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
25055         * doc/lispref/windows.texi (Choosing Window Options): Describe
25056         `even-window-sizes'.
25057         (Coordinates and Windows): Fix typo.
25059 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
25061         Add file name to autoload error messages
25062         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
25063         Add condition-case to add file name to error message.
25065 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
25067         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
25068         Use 0.0.0.1 as test host.
25070 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25072         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
25073         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
25074         Fix inf-loop (bug#21083).
25076 2015-07-21  Glenn Morris  <rgm@gnu.org>
25078         * test/automated/package-test.el (package-test-signed):
25079         Update for recent changes.
25081         * test/automated/elisp-mode-tests.el
25082         (elisp-xref-finds-both-function-and-variable)
25083         (elisp-xref-finds-only-function-for-minor-mode):
25084         Update for recent xref name changes.
25086 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
25088         Make eldoc timer non-repeatable
25089         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
25090         non-repeatable.  Since it's on post-command hook, that just wasted
25091         CPU cycles.
25093 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
25095         Mention `tramp-connection-properties' in NEWS
25097         Sync with Tramp repository
25098         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
25099         required prior changing its configuration.
25100         (Connection caching, Predefined connection information)
25101         (Remote shell setup): Fix typos.
25102         (Predefined connection information): Describe, how to overwrite
25103         parameters of `tramp-methods'.
25104         (Remote programs, Remote processes, Traces and Profiles):
25105         Simplify example.
25106         (Remote programs): Remove superfluous comment.
25107         * doc/misc/trampver.texi: Update release number.
25108         * lisp/net/tramp-cache.el (tramp-connection-properties):
25109         Adapt docstring.
25110         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
25111         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
25112         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
25113         "gvfs-mkdir -p ..." does not work robust.
25114         (tramp-gvfs-maybe-open-connection):
25115         Adapt `tramp-get-method-parameter' call.
25116         * lisp/net/tramp-sh.el (tramp-methods):
25117         Add `tramp-remote-shell-login' parameter where it fits.
25118         (tramp-get-remote-path): Use it.
25119         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
25120         (all): Adapt `tramp-get-method-parameter' calls.
25121         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
25122         (tramp-get-method-parameter): Replace argument METHOD by VEC.
25123         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
25124         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
25125         (all): Adapt `tramp-get-method-parameter' calls.
25126         * lisp/net/trampver.el: Update release number.
25127         * test/automated/tramp-tests.el (tramp--instrument-test-case):
25128         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
25129         (tramp-test13-make-directory, tramp--test-adb-p)
25130         (tramp--test-smb-or-windows-nt-p): Simplify.
25131         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
25132         (tramp--test-special-characters): Fix docstring.  Add gvfs and
25133         ftp tests.
25134         (tramp--test-utf8): Fix docstring.
25136 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
25138         Add new xref-query-replace command
25139         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
25140         New function, extracted from xref-pulse-momentarily.
25141         (xref-query-replace): New command.
25142         (xref--query-replace-1): New helper function.
25143         (xref--xref-buffer-mode-map): Add `r' binding.
25145 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
25147         Simplify icalendar decoding of Z dates
25148         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
25149         Simplify calculation of time strings with trailing "Z".
25151 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
25153         Do not corrupt grep-find-ignored-files
25154         * lisp/progmodes/project.el (project-ignores): Change the order of
25155         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
25157         Add xref-match-item, and use it
25158         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
25159         (xref-file-location): Add reader for the column slot.
25160         (xref-match-item): New class.
25161         (xref-match-bounds): A method implementation for it.
25162         (xref-make-match): New constructor function.
25163         (xref--current-item): New private variable.
25164         (xref-pulse-momentarily): Use it.
25165         (xref--pop-to-location): Change the first argument to an xref
25166         item, instead of location, bind xref--current-item.
25167         Update all callers.
25168         (xref-next-line, xref-prev-line, xref--next-error-function)
25169         (xref--mouse-2): Look for the property `xref-item',
25170         instead of `xref-location'.
25171         (xref--item-at-point): Likewise.  This function replaces
25172         `xref-location-at-point'.  Update all callers.
25173         (xref--insert-xrefs): Add the `xref-item' text property, instead
25174         of `xref-location'.
25175         (xref--collect-match): Use xref-make-match.
25177         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
25178         Update all references.
25180         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
25181         slot to `summary'.
25183         vc-hg: Perform the print-log call asynchronously
25184         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
25185         asynchronously (bug#21067).
25187         Add xref-after-jump-hook and xref-after-return-hook
25188         * lisp/progmodes/xref.el (xref-after-jump-hook)
25189         (xref-after-return-hook): New hooks.
25190         (xref-pulse-on-jump): Remove, in favor of the above.
25191         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
25192         (xref--pop-to-location, xref--display-position)
25193         (xref-pop-marker-stack): Use the new hooks, as requested in
25194         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
25196 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
25198         * lisp/progmodes/js.el (js-mode): Correct the lighter.
25200 2015-07-19  Leo Liu  <sdl.web@gmail.com>
25202         Fix a bug in cfengine3-mode
25203         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
25204         eldoc-documentation-function.
25206 2015-07-18  Julien Danjou  <julien@danjou.info>
25208         sieve-mode: support "body" test command
25209         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
25210         Add missing "body" test command.
25212 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
25214         Fix info-apropos when the default encoding is Latin-N
25215         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
25216         'undecided', so that it is set to the encoding of the Info file we
25217         are about to insert.  Otherwise, 'info-apropos' will fail to find
25218         some index nodes in some UTF-8 encoded files, if the buffer's
25219         previous encoding is Latin-N or some such.
25221 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
25223         * lisp/epg.el (epg--start): Check that gpgconf can be found
25224         before calling it.
25226         Expose more file types to OS X that Emacs understands
25227         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
25228         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
25230 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
25232         Fix visual-order cursor movement when lines are truncated
25233         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
25234         simulate display in a window of infinite width, to allow move_it_*
25235         functions reach positions outside of normal window dimensions.
25236         Remove code that tried to handle a subset of these situations by
25237         manual iteration of buffer text.  (Bug#17777)
25239         Fix following Info cross-references to anchors
25240         * lisp/info.el (Info-read-subfile): Add to the returned value the
25241         length of subfile preamble, after converting it to file's byte
25242         offset, as expected by the caller.  Use bufferpos-to-filepos.
25243         (Info-find-node-2): If searching for a node with a
25244         1000-character slop fails, try again with a 10000-character slop,
25245         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
25246         * lisp/international/mule-util.el (bufferpos-to-filepos): New
25247         function.
25248         * etc/NEWS: Mention bufferpos-to-filepos.
25250         Fix scrolling backwards on TTY frames under scroll-conservatively
25251         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
25252         in moving backwards on TTY frames.  (Bug#21080)
25254 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
25256         Consider a jsdoc tag to be a beginning of a paragraph as well
25257         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
25258         consider a jsdoc tag to be a beginning of a paragraph as well.
25260 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
25262         * lisp/emacs-lisp/package.el: Fix warnings.
25264         * lisp/emacs-lisp/package.el (package-buffer-info):
25265         Add author and maintainers to `package-buffer-info'.
25267         * lisp/emacs-lisp/package.el: Many small changes.
25268         Replace all instances of 'face with 'font-lock-face.
25269         (describe-package-1): Improve some strings and move the summary
25270         up the list.
25271         (package-install-file): Update docstring.
25272         (package-menu-hide-package): Bind to `H'.
25274         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
25275         Fix error handling.
25277 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
25279         Fix hang with large yanks This should fix the bug fixed by Mike
25280         Crowe's patch in:
25281         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
25282         A problem in this area has been reported by several users; see
25283         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
25284         This fix differs from Mike Crowe's patch in that it should avoid a
25285         race condition that could lose SIGIO signals.  ignore_sigio dates
25286         back to the 1980s when some platforms couldn't block signals, and
25287         could only ignore them, which led to races when signals arrived
25288         while being ignored.  We shouldn't have to worry about those old
25289         platforms now.
25290         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
25291         * src/emacs.c (shut_down_emacs):
25292         Don't call ignore_sigio; unrequest_sigio should suffice.
25293         * src/keyboard.c (kbd_buffer_store_buffered_event):
25294         Use unrequest_sigio, not ignore_sigio.
25295         (kbd_buffer_get_event):
25296         Call request_sigio when getting the ball rolling again.
25298 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
25300         * lisp/obsolete/longlines.el (longlines-search-function):
25301         Fallback on `isearch-search-fun-default'.
25303 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
25305         Support @-mentions
25306         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
25307         of mentions/messages with @nick instead of just nick.
25309 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
25311         Fix bug#20943
25312         * lisp/autorevert.el (auto-revert-handler): Do not check for
25313         `buffer-modified-p'.
25314         * lisp/files.el (buffer-stale--default-function): Check for
25315         `buffer-modified-p'.
25316         * test/automated/auto-revert-tests.el
25317         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
25319 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
25321         Fix delete-dups bug on long lists
25322         * lisp/subr.el (delete-dups):
25323         Don't mistakenly keep some dups when applied to long lists.
25325 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
25327         Better heuristic for C stack overflow
25328         Improve the heuristic for distinguishing stack overflows from
25329         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
25330         the getrlimit method wasn't portable to Cygwin; see:
25331         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
25332         Corinna suggested pthread_getattr_np but this also has problems.
25333         Instead, replace the low-level system stuff with a simple
25334         heuristic based on known good stack addresses.
25335         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
25336         * src/sysdep.c: Don't include <sys/resource.h>.
25337         (stack_direction): Remove.  All uses removed.
25338         (stack_overflow): New function.
25339         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
25340         Make SEGV fatal in non-main threads.
25342 2015-07-16  Daiki Ueno  <ueno@gnu.org>
25344         epg: Automatically start pinentry server
25345         * lisp/epg-config.el (epg-gpgconf-program): New variable.
25346         * lisp/epg.el (epg--start): Call `pinentry-start' if
25347         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
25349 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
25351         * lisp/gnus/nnimap.el: Fix my last bogus change.
25352         Reinstall Stefan Monnier's change that was made in
25353         <83d824bc4041332f338ad7e5e830f443535aa300>.
25355 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
25357         Merge from gnulib
25358         This incorporates:
25359         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
25360         2015-07-05 acl-permissions: Fix on FreeBSD
25361         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
25362         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
25363         * lib/set-permissions.c: Copy from gnulib.
25365         Port to stricter C99
25366         * src/keyboard.h (kbd_buffer_store_event_hold):
25367         Don't return a void expression.
25369 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
25371         * doc/emacs/frames.texi (Creating Frames):
25372         Fix the command `C-x 5 m' runs.
25374 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
25376         New autorevert tests
25377         * test/automated/auto-revert-tests.el: New file.
25379 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
25381         Clear gcprolist etc. after stack overflow
25382         After stack overflow, command_loop calls init_eval, and this needs to
25383         clear gcprolist and byte_stack_list (Bug#20996).
25384         * src/alloc.c (init_alloc):
25385         Move gcprolist and byte_stack_list initialization from here ...
25386         * src/eval.c (init_eval): ... to here.
25388 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
25390         * doc/emacs/windows.texi (Pop Up Window): Fix the description
25391         of `C-x 4 m'.
25393 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25395         Avoid deprecated enums in mac-ct font backend driver
25396         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
25397         (mac_ctfont_get_advance_width_for_glyph)
25398         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
25400         Cache font family in mac-ct font backend driver
25401         * src/macfont.m (macfont_family_cache): New variable.
25402         (syms_of_macfont): Initialize it.
25403         (macfont_available_families_cache): New variable.
25404         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
25405         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
25406         (macfont_handle_font_change_notification)
25407         (macfont_init_font_change_handler)
25408         (macfont_copy_available_families_cache): New functions.
25409         (macfont_create_family_with_symbol): Use font family caches.
25410         (macfont_list, macfont_list_family):
25411         Use macfont_copy_available_families_cache instead of
25412         mac_font_create_available_families.
25414 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
25416         Show the default value in the prompt
25417         * lisp/progmodes/xref.el: Add `M-?' binding for
25418         xref-find-references.  Declare functions `grep-read-files' and
25419         `grep-expand-template'.
25420         (xref--read-identifier): Show the default value in the prompt.
25422         * lisp/progmodes/xref.el (xref-find-regexp): When called with
25423         prefix argument, ask for file patterns to search as well.  When
25424         prompting for the directory, require an existing one.
25425         (xref-collect-matches): Add a new argument, FILES.  Use it in the
25426         above function.
25428         Add `project-ignores'
25429         * lisp/progmodes/project.el (project-ignores): New generic
25430         function, and an implementation for the VC project type.
25431         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
25432         variant of rgrep-default-command that handles a generic list of
25433         ignores.
25434         (xref-collect-matches): Use it, and pass through to it the value
25435         of the newly added argument.
25436         (xref-find-regexp): Handle ignored paths within the project.
25437         Remove outdated comment.
25438         * lisp/vc/vc.el (vc-default-ignore-completion-table):
25439         Skip the comments and the empty lines.
25441 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
25443         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
25445 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
25447         gnus-registry.el: Correct function argument order
25448         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
25449         Reverse the order of function arguments.
25451 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
25453         Bind grep-highlight-matches to nil
25454         * lisp/progmodes/xref.el (xref-collect-matches):
25455         Bind grep-highlight-matches to nil (bug#20728).
25457 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
25459         nnimap.el: Fix IMAP message size parsing
25460         * lisp/gnus/nnimap.el (nnimap-transform-headers):
25461         Don't assume that UID comes before RFC822.SIZE.
25463 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
25465         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
25466         (auth-source-creation-prompts): Declare.
25467         (nnimap-retrieve-headers, nnimap-status-message)
25468         (nnimap-request-create-group, nnimap-request-delete-group)
25469         (nnimap-close-group, nnimap-request-move-article)
25470         (nnimap-request-accept-article, nnimap-request-newgroups)
25471         (nnimap-request-post, nnimap-dummy-active-number)
25472         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
25473         (nnimap-parse-flags): Remove unused var `p'.
25474         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
25475         (nnimap-flags-to-marks): Remove unused var `totalp'.
25477 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
25479         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
25481 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25483         * src/macfont.m (macfont_list): Ignore font families lacking
25484         font descriptors.
25486 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
25488         Don't check the exit status, it can be misleading
25489         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
25490         exit status, it can be misleading.
25492         Introduce a Project API
25493         * lisp/progmodes/project.el: New file.
25494         * lisp/cedet/ede.el (project-try-ede): New function.
25495         (project-root): New implementation.
25496         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
25497         Set project-search-path-function.
25498         (elisp--xref-find-references): Delegate some logic to
25499         project-search-path.
25500         (elisp-search-path): New function.
25501         (elisp-xref-find): Don't implement `matches' anymore.
25502         * lisp/progmodes/etags.el: Don't implement `matches'.
25503         Delegate some logic to project-search-path.
25504         (etags-search-path): New function.
25505         * lisp/progmodes/xref.el (xref-find-function):
25506         Remove `matches' from the API.
25507         (xref-find-regexp): Move whatever common logic was in elisp and
25508         etags implementations, and search the directories returned by
25509         project-directories and project-search-path.
25511 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
25513         * test/automated/map-tests.el (test-map-delete-return-value):
25514         Uncomment test.
25516         Add support for gv.el in map.el
25517         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
25518         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
25519         * test/automated/map-tests.el: Update tests to work with the new
25520         implementations of map-elt and map-put.
25522 2015-07-09  Glenn Morris  <rgm@gnu.org>
25524         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
25526 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
25528         Syntax-propertize until the end of the line first
25529         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
25530         until the end of the line first.
25532 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
25534         * doc/emacs/files.texi (File Archives): Add a cross reference.
25536 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
25538         nnimap.el: Handle plain value for nnimap-stream
25539         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
25540         capabilities, so that a 'plain value for the `nnimap-stream' server
25541         variable is handled correctly.
25542         * doc/misc/gnus.texi (Customizing the IMAP Connection):
25543         Document the 'plain option.
25545 2015-07-08  Leo Liu  <sdl.web@gmail.com>
25547         Fix bug in thing-at-point--bounds-of-well-formed-url
25548         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
25549         sure boundary contains current point.
25551 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
25553         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
25554         in the end.
25556         Declare whitespace-line-column a safe file-local
25557         * lisp/whitespace.el (whitespace-line-column): Declare to be a
25558         safe file-local when the value is an integer.
25560 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
25562         gnus-group.el: Check if group names are already strings
25563         * lisp/gnus/gnus-group.el (gnus-group-group-name):
25564         The group name may already be a string.
25565         Specifically, in the group list reached from the *Server* buffer,
25566         the 'gnus-group text property returns a string.  Everywhere else
25567         it returns a symbol.
25569         nnimap.el: Remove unused let variables
25570         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
25572 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
25574         Support "maximized" property of runemacs's shortcut
25575         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
25576         the '--maximized' switch to Emacs.
25578         Support "minimized" property of runemacs's shortcut
25579         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
25580         pass the '--iconic' switch to Emacs.  (Bug#20991)
25582 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
25584         Doc fixes
25585         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
25586         C-w' in Diff mode.
25587         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
25588         Add a cross reference.
25590 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
25592         * lisp/obsolete/landmark.el: Add Obsolete-since header.
25594 2015-07-07  Glenn Morris  <rgm@gnu.org>
25596         * test/automated/ert-tests.el (ert-test-deftest):
25597         Update for recent changes.
25599 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
25601         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
25602         * lisp/emacs-lisp/gv.el (gv-setter): New function.
25603         (gv-invalid-place): New error.
25604         (gv-get): Use them.
25605         (gv-synthetic-place, gv-delay-error): New places.
25606         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
25607         (cl-defgeneric, cl-defmethod): Use gv-setter.
25609 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
25611         Make vc-tests work with MSYS svn program
25612         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
25613         svn is an MSYS program.
25615 2015-07-07  Ken Brown  <kbrown@cornell.edu>
25617         Improve recent change to emacsclient on Cygwin
25618         * lisp/server.el (server-process-filter): Remove redundant check
25619         that 'cygwin-convert-file-name-from-windows' is defined as a
25620         function on Cygwin.  Don't call that function unless its argument
25621         starts with a drive letter.
25623 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25625         * lisp/emacs-lisp/package.el (package-compute-transaction):
25626         Fix void variable due to `found-something' being in the wrong `let'.
25628 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
25630         * lisp/play/landmark.el: Move to lisp/obsolete/.
25632 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
25634         Have `x-show-tip' handle `right' and `bottom' frame parameters
25635         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
25636         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
25637         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
25638         tooltips also via `right' and `bottom' frame parameters.
25640 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
25642         Add online-help support to describe types
25643         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
25644         (describe-symbol): Improve the selection of default.
25645         * lisp/help-mode.el: Require cl-lib.
25646         (describe-symbol-backends): Move from help-fns.el.
25647         (help-make-xrefs): Use it.
25648         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
25649         for types.
25650         (cl--typedef-regexp): New const.
25651         (find-function-regexp-alist): Add entry for types.
25652         (cl-help-type, cl-type-definition): New buttons.
25653         (cl-find-class): New function.
25654         (cl-describe-type): New command.
25655         (cl--describe-class, cl--describe-class-slot)
25656         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
25657         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
25658         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
25659         New functions.  Moved from eieio-opt.el.
25660         (cl--generic-class-parents): New function, extracted from
25661         cl--generic-struct-specializers.
25662         (cl--generic-struct-specializers): Use it.
25663         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
25664         Improve constructor's docstrings.
25665         (cl-struct-unknown-slot): New error.
25666         (cl-struct-slot-offset): Use it.
25667         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
25668         definition in current-load-list.
25669         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
25670         (eieio--add-new-slot): Set it.
25671         (eieio-defclass-internal): Use new name for current-load-list.
25672         (eieio-oref): Add compiler-macro to warn about unknown slots.
25673         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
25674         as compile-time as well.  Improve constructor docstrings.
25675         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
25676         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
25677         (eieio-class-def): Remove button.
25678         (eieio-help-constructor): Use new name for load-history element.
25679         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
25680         (eieio-method-documentation): Move to cl-generic.el.
25681         (eieio-display-method-list): Use new names.
25682         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
25683         Add "define-linline".
25684         (lisp-fdefs): Remove "defsubst".
25685         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
25686         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
25687         (macroexp--warn-and-return): Use it to avoid inf-loops.
25688         Add `compile-only' argument.
25690 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25692         python.el: Fix local/remote shell environment setup
25693         * lisp/progmodes/python.el (python-shell-with-environment):
25694         Fix remote/local environment setup.
25695         * test/automated/python-tests.el (python-shell-with-environment-1)
25696         (python-shell-with-environment-2): New tests.
25698 2015-07-06  Glenn Morris  <rgm@gnu.org>
25700         * lisp/simple.el (set-variable): Tweak recent doc fix.
25702 2015-07-06  Ken Brown  <kbrown@cornell.edu>
25704         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
25706 2015-07-06  Glenn Morris  <rgm@gnu.org>
25708         * lisp/simple.el (set-variable): Use user-error for type mismatch.
25710 2015-07-06  Ken Brown  <kbrown@cornell.edu>
25712         * src/emacs.c (main): Don't increase the stack size on Cygwin.
25714 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
25716         (describe-symbol): Rewrite describe-function-or-variable
25717         * lisp/help-fns.el (describe-symbol-backends): New var.
25718         (help-xref-stack-item): Declare.
25719         (describe-symbol): Rename from describe-function-or-variable.
25720         Rewrite using describe-symbol-backends instead of help-xref-interned.
25721         * lisp/help.el (help-map): Use it.
25722         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
25723         (help-xref-interned): Make it into an obsolete alias.
25725         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
25726         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
25727         and cl-letf.
25729 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
25731         Fix parsing glitches in dired-mark-sexp (bug#13575)
25732         * lisp/dired-x.el (dired-x--string-to-number): New function.
25733         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
25734         of directory-listing-before-filename-regexp.  Consider
25735         forward-word harmful and replace it.  Add more verbiage in
25736         comments and doc string.
25738 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25740         python.el: Respect process environment for remote shells
25741         * lisp/progmodes/python.el
25742         (python-shell-calculate-process-environment): Calculate
25743         process-environment or tramp-remote-process-environment depending
25744         whether current file is remote.
25745         (python-shell-calculate-exec-path): Calculate exec-path or
25746         tramp-remote-path depending whether current file is remote.
25747         (python-shell-with-environment): New macro.
25748         (python-shell-prompt-detect, python-shell-calculate-command)
25749         (python-shell-make-comint, python-check): Use it.
25751         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
25752         * lisp/progmodes/python.el (python-shell--interpreter)
25753         (python-shell--interpreter-args): New vars.
25754         (inferior-python-mode, python-shell-make-comint): Use them.
25756         python.el: Fixes for IPython 3.x  (Bug#20580)
25757         * lisp/progmodes/python.el:
25758         (python-shell-completion-native-setup): Fix IPython 3.x setup.
25759         (python-shell-completion-native-get-completions): Fix timeout
25760         logic.
25762         python.el: Fix mark-defun behavior  (Bug#19665)
25763         * lisp/progmodes/python.el (python-mark-defun): New function.
25764         * test/automated/python-tests.el (python-mark-defun-1)
25765         (python-mark-defun-2, python-mark-defun-3): New tests.
25767 2015-07-05  Glenn Morris  <rgm@gnu.org>
25769         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
25770         such as "extends(parent), private".  (Bug#20969)
25771         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
25772         New tests.
25774 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
25776         Avoid duplicate calls to current_timespec
25777         * src/process.c (wait_reading_process_output):
25778         Cache current_timespec results as long as we're not waiting.
25780 2015-07-05  Ian Kelling  <ian@iankelling.org>
25782         Avoid returning early reading process output due to SIGIO
25783         * src/process.c (wait_reading_process_output): Extend the behavior of
25784         not breaking due to not finding output when a timer has lowered the
25785         timeout to include when SIGIO lowers the timeout.
25787         Don't return as fast reading any process output
25788         * src/process.c (wait_reading_process_output):
25789         The patch for Bug#17647 returns too fast sometimes when reading
25790         from any processes.  Revert part of it, and limit the timeout more
25791         sensibly (Bug#20978).
25793         Refactor timeouts in wait_reading_process_output
25794         * src/process.c (wait_reading_process_output):
25795         Simplify timeouts with an enum.  Remove a redundant condition.
25796         (Bug#20978)
25798         Remove ADAPTIVE_READ_BUFFERING ifdef
25799         * src/process.c (make-process, make-pipe-process, deactivate_process)
25800         (wait_reading_process_output, read_process_output, send_process)
25801         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
25802         added in case there was an operating system in which it was not
25803         useful.  That was 11 years ago and it hasn't happened.  Make
25804         development easier by not considering the effect of changes on a
25805         theoretical OS where this is disabled (Bug#20978).
25807 2015-07-05  Glenn Morris  <rgm@gnu.org>
25809         * lisp/simple.el (set-variable): Doc fix.
25811         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
25813 2015-07-05  Ian Kelling  <ian@iankelling.org>
25815         accept-process-output fix
25816         This is a followon to the fix for bug#17647 (Bug#20976).
25817         * src/process.c (status_notify): Fix too high return in some cases.
25819 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
25821         * lisp/character-fold.el (character-fold-table):
25822         Only fold decompositions if at least one character is non-spacing.
25823         (Bug#20975)
25825 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
25827         Merge from gnulib
25828         This incorporates:
25829         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
25830         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
25831         2015-07-02 update-copyright: fix test failure with perl >= 5.22
25832         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
25833         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
25834         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
25835         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
25837 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
25839         Respect `prog-indentation-context' in python.el
25840         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
25841         (python-indent-context, python-indent--calculate-indentation)
25842         (python-info-current-defun)
25843         (python-info-dedenter-opening-block-message)
25844         (python-info-line-ends-backslash-p)
25845         (python-info-beginning-of-backslash)
25846         (python-info-continuation-line-p): Use `prog-widen'.
25847         (python-indent--calculate-indentation)
25848         (python-indent--calculate-levels)
25849         (python-indent-calculate-indentation): Use `prog-first-column'.
25850         (python-indent--calculate-levels): Simplify.
25851         Ignore also initial empty lines for syntax calculation.
25852         * lisp/progmodes/python.el (python-indent-context): Return
25853         :no-indent for first non-empty line, not just in line 1.
25854         * test/automated/python-tests.el (python-indent-base-case)
25855         (python-indent-inside-paren-1, python-indent-inside-paren-2)
25856         (python-indent-inside-paren-3, python-indent-inside-paren-4)
25857         (python-indent-inside-paren-5, python-indent-inside-paren-6)
25858         (python-indent-after-backslash-1)
25859         (python-indent-after-backslash-2)
25860         (python-indent-after-backslash-3)
25861         (python-indent-after-backslash-4, python-indent-inside-string-1):
25862         Expect :no-indent for first non-empty line.
25864 2015-07-04  Daniel Colascione  <dancol@dancol.org>
25866         Factor isearch word description into new function
25867         * lisp/isearch.el (isearch--describe-word-mode): New function.
25868         (isearch-message-prefix, isearch-query-replace): Use it.
25870 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
25872         Fix mouse pointer on w32 when a menu is active
25873         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
25874         shape while a menu is in use.  This started happening since we now
25875         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
25877 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
25879         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
25880         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
25881         parameter.  (Bug#17344)
25883         Have `compilation-set-window' use right window for getting fringes
25884         (Bug#20829)
25885         * lisp/progmodes/compile.el (compilation-set-window):
25886         Take `window-fringes' from argument window.
25888 2015-07-03  Glenn Morris  <rgm@gnu.org>
25890         Update eieio tests for recent eieio-core change.
25891         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
25892         * test/automated/eieio-tests.el
25893         (eieio-test-32-slot-attribute-override-2):
25894         Replace the deleted eieio--class-v with cl--find-class.
25896 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
25898         Fix some issues with `window-divider-mode'
25899         * lisp/frame.el (window-divider-default-places): New option.
25900         (window-divider-mode): Remove option.
25901         (window-divider-mode): Make it a "regular" minor mode.
25902         (window-divider-width-valid-p): Drop frame- prefix.
25903         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
25904         prefix.  Handle `window-divider-default-places'.
25905         (frame--window-divider-mode-set-and-apply): Remove.
25906         (window-divider-default-bottom-width)
25907         (window-divider-default-right-width): Drop :group entries.
25908         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
25909         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
25910         (menu-bar-no-window-divider): Set `window-divider-default-places'
25911         and call `window-divider-mode'.
25912         * doc/emacs/frames.texi (Window Dividers): Document
25913         `window-divider-default-places'.
25915 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
25917         * doc/emacs/display.texi (Displaying Boundaries):
25918         * doc/emacs/search.texi (Word Search): Add cross references.
25920 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
25922         -batch should not affect ‘’ -> `' display
25923         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
25924         -batch (Bug#20926).
25926 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
25928         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
25929         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
25930         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
25931         Use cl--find-class instead.
25933         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
25935 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
25937         Some further fixes in Change Window node (Bug#20183)
25938         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
25939         by "resizing" in section title.  Add some concept indices.
25940         Suggested by N. Jackson (Bug#20183).
25942         * doc/emacs/windows.texi (Change Window): Reference window
25943         dividers.
25945         Document new `window-divider-mode'.
25946         * lisp/frame.el (window-divider-mode): Fix doc-string.
25947         * doc/emacs/frames.texi (Window Dividers): New section.
25949         Improve accessibility of window dividers (Bug#20183)
25950         * lisp/faces.el (window-divider)
25951         (window-divider-first-pixel, window-divider-last-pixel): Change
25952         membership from `frames' to `window-divider' customization group.
25953         * lisp/frame.el (window-divider): New customization group.
25954         (window-divider-mode): New minor mode.
25955         (window-divider-default-bottom-width)
25956         (window-divider-default-right-width): New options.
25957         (frame--window-divider-previous-mode): New variable.
25958         (frame-window-divider-width-valid-p)
25959         (frame--window-divider-mode-apply)
25960         (frame--window-divider-mode-set-and-apply): New functions.
25961         * lisp/menu-bar.el (menu-bar-options-save): Save
25962         window-divider-mode settings.
25963         (menu-bar-window-divider-customize)
25964         (menu-bar-bottom-and-right-window-divider)
25965         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
25966         (menu-bar-no-window-divider): New functions.
25967         (menu-bar-showhide-window-divider-menu): New variable.
25968         (menu-bar-showhide-menu): Show/hide window divider menu.
25969         * lisp/mouse.el (mouse-split-window-vertically)
25970         (mouse-split-window-horizontally): Replace `error' by
25971         `user-error'.  Bind `window-combination-resize' to nil.
25972         (top-level): Add/reorder mouse key bindings on mode- and
25973         vertical-line.
25975 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
25977         Don't display ‘’ as `' under X in en_GB
25978         The curved quote setup code invokes (char-displayable-p ?‘),
25979         but this isn’t reliable until after the X frame replaces the
25980         terminal frame (Bug#20926).
25981         * lisp/international/mule-cmds.el (set-locale-environment):
25982         Move curved quote setup code from here ...
25983         * lisp/startup.el (command-line): ... to here, after creating
25984         the X frame.
25986 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
25988         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
25990         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
25991         to reverse the meaning (Bug#15631).
25993 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
25995         Be more tolerant to fonts named "Foobar-12"
25996         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
25997         don't barf; instead, request a new fontset to be generated.  This
25998         avoids unnecessarily rejecting fonts named against XLFD rules.  See
25999         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
26000         for the description of the original problem.
26001         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
26002         by a hyphen in a font's name.
26004         Fix value of posn-at-pont in R2L lines
26005         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
26006         coordinate of -1, for a newline in a right-to-left line that
26007         overflowed into the left fringe.
26009 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
26011         (cl--copy-slot-descriptor): Copy the `props' alist as well
26012         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
26013         Rename from cl--copy-slot-descriptor.
26014         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
26016 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
26018         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
26019         (xterm-query-timeout): New var.
26020         (xterm--query): Use it.  Fallback on async method if we timeout before
26021         getting the first byte of the reply (bug#12354).
26023 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
26025         Spelling fixes
26026         * lisp/character-fold.el (character-fold-search):
26027         * lisp/emacs-lisp/package.el (package-hidden-regexps):
26028         Fix typos.
26030 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
26032         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
26034 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
26036         In strings, prefer plain ` and ' to \` and \'
26037         * lisp/allout.el (allout-insert-listified):
26038         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
26039         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
26040         (ls-lisp-string-lessp):
26041         * lisp/menu-bar.el (menu-bar-open):
26042         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
26043         * lisp/progmodes/compile.el (compile):
26044         * lisp/progmodes/etags.el (tags-loop-scan):
26045         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
26046         * lisp/subr.el (posn-actual-col-row):
26047         * lisp/term/pc-win.el (x-list-fonts):
26048         * lisp/textmodes/texinfmt.el (texinfmt-version):
26049         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
26050         * lisp/time.el (display-time-world-list):
26051         * lisp/tmm.el (tmm-menubar):
26052         * src/buffer.c (syms_of_buffer):
26053         * src/fileio.c (syms_of_fileio):
26054         Omit unnecessary and confusing backslash before quote.
26055         * lisp/erc/erc.el (erc-cmd-LASTLOG):
26056         * lisp/progmodes/flymake.el (flymake-fix-file-name):
26057         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
26058         Fix string that was intended to escape a backslash and not a quote.
26060 2015-06-30  Glenn Morris  <rgm@gnu.org>
26062         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
26064         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
26065         Replace hard-coded lists with wildcard + filter-out.
26067         * configure.ac (system-configuration-features): Add X11, NS.
26069         Improve reproducibility of generated loaddefs file
26070         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
26071         Make the return value the modtime of the input file (if no autoloads).
26072         (update-directory-autoloads): In the "no autoloads" section,
26073         use "most recent modtime" rather than "current time".
26075 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
26077         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
26078         (Bug#20930)
26080 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
26082         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
26084         Add seq-min and seq-max
26085         Bump version number.
26086         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
26087         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
26089 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
26091         Make sure sleep-for always delays for as long as it's told
26092         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
26093         a loop, to ensure we always wait exactly the required amount of
26094         time.  (Bug#15990)
26096 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
26098         Fix pointer signedness glitch
26099         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
26101 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
26103         Don't block changes in mouse pointer inside 'track-mouse'
26104         * etc/NEWS:
26105         * doc/lispref/frames.texi (Mouse Tracking): Document the special
26106         effect of setting 'track-mouse' to 'dragging'.
26107         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
26108         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
26109         * lisp/mouse-drag.el (mouse-drag-throw):
26110         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
26111         to avoid changes in the shape of the mouse pointer.
26112         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
26113         pointer shape when do_mouse_tracking has the value of 'dragging',
26114         not just any non-nil value.  (Bug#20934)
26115         (syms_of_xdisp): DEFSYM 'dragging'.
26117 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
26119         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
26121         * lisp/emacs-lisp/package.el (package-compute-transaction):
26122         Don't assume version sorting.
26124         * lisp/emacs-lisp/package.el (package--save-selected-packages):
26125         Don't save before init time, to avoid overwriting configurations.
26126         (Bug#20855)
26128 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
26130         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
26131         references.
26133 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
26135         Update for the upcoming CFEngine 3.7 release: support macros and
26136         quoted context strings; reformat JSON; indent promise attributes 2
26137         units by default; give function parameter descriptions in the eldoc
26138         glue.
26139         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
26140         Autoload `json-pretty-print'.  Support new features in 3.7.
26141         (cfengine-parameters-indent): Set default promise attribute indent to
26142         2 more than the promise itself.
26143         (cfengine3-macro-regex): New variable to match the new macro syntax.
26144         (cfengine3-font-lock-keywords): Use it to highlight macros.
26145         (cfengine3-indent-line): Use it to indent macros to column 0.
26146         (cfengine3-class-selector-regex): Update for the new quoted strings
26147         format.
26148         (cfengine3-reformat-json-string): New function to reformat a JSON
26149         string using `json-pretty-print'.
26150         (cfengine3-format-function-docstring): Use function parameter
26151         description if it's provided by the cf-promises syntax dump.
26153 2015-06-29  Michael R. Mauger  <michael@mauger.com>
26155         Cygwin emacsclient handles w32 file names
26156         * lisp/server.el (server-process-filter): Allow Cygwin's
26157         emacsclient to be used as a file handler on MS-Windows.
26159 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
26161         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
26162         (bug#20925).
26164 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
26166         * doc/lispref/text.texi (Sticky Properties): Improve wording.
26167         (Bug#20924)
26169         Allow font names that end in "-NN", where NN is a number
26170         * src/font.c (font_load_for_lface): If the font-spec didn't match
26171         any available fonts, try again without interpreting trailing "-NN"
26172         as the font size.  For the description of the original problem, see
26173         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
26175         .gdbinit followup to changes in !USE_LSB_TAG
26176         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
26177         !USE_LSB_TAG, as Emacs no longer does.
26179 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
26181         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
26182         Otherwise `s p' of f and F will stomp on each other's value.
26183         (Bug#20916)
26185 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
26187         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
26188         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
26190 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
26192         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
26193         as additional guess.
26195         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
26196         to a string.
26198 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
26200         apropos-library quoting fix
26201         * lisp/apropos.el (apropos-library): Quote library consistently
26202         with the rest of the quoting used by apropos.
26204         Clarify interpreter-mode-alist doc
26205         * lisp/files.el (interpreter-mode-alist):
26206         Reword to avoid confusing quoting that wasn't working anyway.
26208 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
26210         Sync with Tramp 2.2.12
26211         * doc/misc/trampver.texi:
26212         * lisp/net/trampver.el: Update release number.
26213         * test/automated/tramp-tests.el (tramp-test13-make-directory):
26214         Fix cleanup.
26216 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
26218         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
26220 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
26222         Bind grep-highlight-matches around the rgrep call
26223         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
26224         around the rgrep call (bug#20728).
26226         Put "--color" before the other options in grep-command
26227         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
26228         before the other options in grep-command (bug#20912).
26230         Add --color Grep option to the command dynamically
26231         * lisp/progmodes/grep.el (grep-template, grep-find-template):
26232         Update the description for <C>.  (Bug#20728)
26233         (grep-compute-defaults): Don't add the --color option to
26234         grep-options.  Only add it to grep-command.
26235         (grep-expand-keywords): Expand the env value opts into <C>.
26236         (grep-expand-template): Replace cf in the env with the opts list,
26237         that can include -i and --color.
26238         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
26239         "--color=always" from the template, because we don't have to.
26241 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
26243         cl-extra fixes for most-negative-fixnum
26244         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
26245         Don't mishandle an argument equal to most-negative-fixnum,
26246         whose absolute value equals itself.
26247         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
26249         Initialize cl--gensym-counter to 0
26250         Previously it was initialized to a random value, which made it
26251         harder to reproduce earlier Emacs runs.  The need for a random
26252         value went away when Emacs introduced and used the #: syntax for
26253         uninterned symbols (Bug#20862).
26254         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
26255         Document that cl--gensym-counter now starts with 0.
26256         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
26257         (cl--random-time): Move to near only remaining use.
26258         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
26260         Improve docstring for macroexp-let2
26261         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
26262         Improve as per suggestion by RMS in:
26263         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
26264         Also, rename args to match new doc string.
26266 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
26268         Fix VC test suite on MS-Windows
26269         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
26270         always starts with 3 slashes after the colon.
26271         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
26272         'w32-application-type' to invoke CVS on MS-Windows with properly
26273         formatted CVSROOT directory name.
26275         Add a new function w32-application-type
26276         * src/w32proc.c (Fw32_application_type): New function.
26278         Avoid error in TLS connections due to incorrect format
26279         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
26280         the call to 'error', instead of the unsupported %u.  Reported by
26281         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
26283 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
26285         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
26287 2015-06-26  Leo Liu  <sdl.web@gmail.com>
26289         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
26290         `with-output-to-string' in elisp.
26292         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
26293         with-output-to-string".
26294         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
26296 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
26298         Minor corrections in ELisp manual
26299         * doc/lispref/nonascii.texi (Character Properties): Correct
26300         inaccuracies in description of values of the Unicode properties.
26302         Fix invisible mouse pointers on Windows.
26303         * src/w32fns.c: Include windowsx.h.
26304         (w32_wnd_proc): If the mouse moved and the mouse pointer is
26305         invisible, make it visible again even when the main (Lisp)
26306         thread is busy.
26307         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
26308         garbaging the frame have the input thread call SetCursor.
26310 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
26312         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
26313         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
26314         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
26315         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
26316         (w32_toggle_invisible_pointer): New function.
26317         (w32_create_terminal): Add w32_toggle_invisible_pointer as
26318         toggle_invisible_pointer_hook for this terminal.
26320 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
26322         Doc fix for deletion commands
26323         'delete-char' does not respect the value of 'delete-active-region'.
26324         * doc/emacs/killing.texi (Deletion):
26325         Fix documentation for some single-char deletion commands.
26327         * doc/emacs/help.texi (Apropos):
26328         Improve documentation of 'apropos-do-all'.
26330         * doc/emacs/help.texi (Help Summary):
26331         Improve documentation of 'describe-mode'.
26333 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
26335         Fix submake dependency bug with .h files
26336         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
26337         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
26338         before the submake in $(libsrc) would spin off a subsubmake
26339         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
26341 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
26343         * lisp/character-fold.el (character-fold-table): Reuse `table'.
26345 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
26347         Translate undisplayable ‘ to `
26348         * doc/lispref/help.texi (Keys in Documentation):
26349         * lisp/international/mule-cmds.el (set-locale-environment):
26350         * lisp/term/w32console.el (terminal-init-w32console):
26351         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
26352         If ‘ is not displayable, transliterate it to `, not to '.  See:
26353         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
26355         Fix C99 incompatibilities in Cairo code
26356         * src/image.c (xpm_load) [USE_CAIRO]:
26357         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
26358         Fix pointer signedness problem.
26360 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
26362         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
26363         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
26364         `with-output-to-string' should have the same indent as `progn'.
26365         This is in line with the declaration of `with-output-to-string'.
26367 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
26369         Get ‘./configure; make -C src emacs’ to work
26370         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
26371         * lib-src/Makefile.in (../lib/libgnu.a):
26372         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
26374 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
26376         Fix GC bugs --with-wide-int and Qnil == 0
26377         Use the same alignment for the !USE_LSB_TAG case as for the
26378         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
26379         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
26380         once we changed the representation of symbols so that Qnil == 0.
26381         Problem reported by Eli Zaretskii (Bug#20862).
26382         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
26383         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
26384         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
26385         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
26386         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
26387         This optimization in the !USE_LSB_TAG case is no longer valid when
26388         symbols are represented via offsets.  Change the only use to
26389         assume that pointers might hide in objects.
26390         * src/lisp.h (alignas) [!USE_LSB_TAG]:
26391         Require support in this case, too.
26392         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
26393         This is OK, because the !USE_LSB_TAG case now applies only when
26394         Lisp_Object is wider than void *, so there's no longer any need
26395         to shift the offset.  Not shifting the offset means that
26396         symbol representations have the same alignment as pointers,
26397         which the GC assumes.
26399 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
26401         * doc/lispintro/emacs-lisp-intro.texi (Data types):
26402         Improve documentation of 'substring'.
26404 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
26406         * lisp/character-fold.el (character-fold-table): Fix table generation.
26408 2015-06-24  Glenn Morris  <rgm@gnu.org>
26410         * nextstep/Makefile.in (all): Make it the first target.
26411         (../src/emacs${EXEEXT}): Add rule for making it.
26413 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
26415         * etc/NEWS: Fix mention to old function name.
26417         * lisp/character-fold.el: New file (Bug#20887)
26418         (character-fold-to-regexp): New function.
26419         * lisp/replace.el (replace-search): Check value of
26420         `character-fold-search'.
26421         * lisp/isearch.el: Move character-folding code to
26422         character-fold.el
26423         (isearch-toggle-character-fold): New command.
26424         (isearch-mode-map): Bind it to "\M-sf".
26425         (isearch-mode): Check value of `character-fold-search'.
26427 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
26429         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
26430         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
26431         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
26433         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
26434         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
26436 2015-06-24  Glenn Morris  <rgm@gnu.org>
26438         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
26440 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
26442         lisp/gnus/nnmaildir.el: Silence lexical warnings
26443         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
26444         functional style.
26445         (nnmaildir--update-nov): Remove unused var `numdir'.
26446         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
26447         (nnmaildir-request-group, nnmaildir-request-create-group)
26448         (nnmaildir-request-post, nnmaildir-request-move-article)
26449         (nnmaildir-request-accept-article, nnmaildir-active-number):
26450         Mark unused args.
26451         (nnmaildir-get-new-mail, nnmaildir-group-alist)
26452         (nnmaildir-active-file): Declare.
26453         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
26454         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
26455         `mark', `end', `new-mark', and `mark-sym'.
26456         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
26457         `nlist2'.
26458         (nnmaildir-request-expire-articles):
26459         Remove unused vars `article', `stop' and `nlist2'.
26460         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
26461         `end'.  Use nnmaildir--article when dyn-binding is needed.
26462         Give the value directly in the `let' for `del-mark', `del-action',
26463         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
26464         (nnmaildir-close-server): Declare those local vars that need to be
26465         dyn-bound.
26467 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
26469         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
26471         Port selection info fix to clang
26472         * src/keyboard.h (kbd_buffer_store_event_hold):
26473         Don't assume C11 semantics for alignof (Bug#20756).
26475         Fix bug that munged selection info
26476         On some optimizing C compilers, copying a structure did not
26477         copy the padding bytes between elements, and the type punning
26478         between struct input_data and struct selection_input_data did
26479         not work.  Change the C code to use a proper union type instead.
26480         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
26481         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
26482         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
26483         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
26484         (mark_kboards):
26485         Use union buffered_input_event, not struct input_event.
26486         (clear_event, deliver_input_available_signal, process_special_events):
26487         Remove unnecessary forward decls.
26488         (kbd_buffer_store_buffered_event): New function, mostly just the
26489         old kbd_buffer_store_event_hold, except its argument is of type
26490         union buffered_input_event, not struct input_event.
26491         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
26492         not needed otherwise.  Argument is now of type
26493         struct selection_input_event *, not struct input_event *.
26494         All callers changed.
26495         (clear_event): Arg is now of type union buffered_input_event *,
26496         not struct input_event *.  All callers changed.
26497         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
26498         (union buffered_input_event): New type.
26499         (kbd_buffer_store_event_hold): Now an inline function,
26500         defined here.
26501         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
26502         (struct input_event): Use it.
26503         * src/xselect.c (struct selection_event_queue):
26504         Make elements be of type struct selection_input_event,
26505         not struct input_event.
26506         (selection_input_event_equal): New static function.
26507         (x_queue_event): Use it.
26508         (x_queue_event, x_decline_selection_request)
26509         (x_selection_current_request, x_reply_selection_request)
26510         (x_handle_selection_request, x_handle_selection_clear)
26511         (x_handle_selection_event): Use struct selection_input_event,
26512         not struct input_event.  All callers changed.
26513         (x_convert_selection): Omit unused first arg.  All callers changed.
26514         (Fx_disown_selection_internal): Omit unnecessary union.
26515         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
26516         rather than rolling our own equivalent.  Prefer sie.kind when
26517         setting up that kind of structure.
26518         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
26519         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
26520         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
26521         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
26522         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
26523         (SELECTION_EVENT_TIME, x_handle_selection_event):
26524         Arg is now of type struct selection_input_event *)
26525         not struct input_event *.  All callers changed.
26527 2015-06-23  Glenn Morris  <rgm@gnu.org>
26529         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
26531 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
26533         * lisp/isearch.el: Fold many unicode characters to ASCII.
26534         (isearch-character-fold-search, isearch--character-fold-extras)
26535         (isearch--character-fold-table): New variable.
26536         (isearch--character-folded-regexp): New function.
26537         (isearch-search-fun-default): Use them.
26538         * lisp/replace.el (replace-character-fold): New variable.
26539         (replace-search): Use it.
26540         * etc/NEWS: Document it.
26542 2015-06-23  Glenn Morris  <rgm@gnu.org>
26544         Check for an input event before showing a dialog box.  (Bug#20813)
26545         * lisp/subr.el (y-or-n-p):
26546         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
26547         as last-nonmenu-event.
26549 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
26551         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
26552         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
26553         (switch-to-prev-buffer, switch-to-next-buffer): Respect
26554         switch-to-visible-buffer independent of the windows history.
26556 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
26558         * src/keyboard.c (last_timer_event): Remove unused var.
26560 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
26562         * test/automated/package-test.el (package-test-update-listing):
26563         Fix test.
26565 2015-06-23  Glenn Morris  <rgm@gnu.org>
26567         Revert 2014-06-25 nextstep/Makefile change.
26568         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
26569         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
26570         not as an order-only prerequisite.
26572         * configure.ac (--with-ns): Enable by default on OS X.
26574 2015-06-23  Leo Liu  <sdl.web@gmail.com>
26576         Fix shell-for/backward-command to exclude spaces
26577         * lisp/shell.el (shell-forward-command, shell-backward-command):
26578           Handle the 'move case from re-search-forward/backward.
26579           fixes debbugs:20873
26581 2015-06-22  Juri Linkov  <juri@linkov.net>
26583         * lisp/replace.el (query-replace-read-from): Add separator to
26584         the local binding of text-property-default-nonsticky.  (Bug#20690)
26586         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
26587         (Bug#20785)
26589 2015-06-22  Ken Brown  <kbrown@cornell.edu>
26591         Enable CPU profiling on Cygwin
26592         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
26593         change that undefined this.
26594         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
26595         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
26596           Cygwin.
26598         Improve diagnostics of profiler-cpu-start
26599         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
26600         return -1 if the sampling interval is invalid.
26601         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
26602         fails.  (Bug#20843)
26604 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
26606         * lisp/emacs-lisp/package.el: Exclude packages by name.
26607         (package-hidden-regexps): New variable.
26608         (package-menu--refresh): Use it.
26609         (package-menu-hide-package): New command.
26611         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
26613 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
26615         Fix debug-timer-check on systems without HAVE_TIMERFD
26616         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
26617         the expired timers, since wait_reading_process_output doesn't.
26618         (debug_timer_callback): Enlarge the tolerance to 20 msec.
26620         Fix RCS crashes in vc-test
26621         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
26622         ports of 'ci' on MS-Windows by always passing the -t- switch.
26624 2015-06-22  Glenn Morris  <rgm@gnu.org>
26626         * doc/emacs/package.texi (Packages):
26627         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
26629         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
26631 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
26633         Port tests to help-quote-translation
26634         * test/automated/ert-x-tests.el (ert-test-describe-test):
26635         * test/automated/package-test.el (package-test-describe-package)
26636         (package-test-signed): Allow straight quotes, too.
26638 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
26640         Make find-function-on-key use the current window
26641         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
26642         Extract from `find-function-on-key', add a second argument.
26643         (find-function-on-key): Use it (bug#19679).
26644         (find-function-on-key-other-window)
26645         (find-function-on-key-other-frame): New commands.
26647 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
26649         Revert "Define `map-elt' as a generalized variable"
26650         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
26652 2015-06-21  Ken Brown  <kbrown@cornell.edu>
26654         Drop support for CPU profiling on Cygwin
26655         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
26656         (Bug#20843)
26658 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
26660         Fix some “nested” quoting confusion in doc strings
26661         * lisp/emacs-lisp/advice.el (ad-map-arglists):
26662         * lisp/kermit.el (kermit-clean-on):
26663         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
26664         * src/keyboard.c (Frecursive_edit):
26665         Use curved quotes when quoting text containing apostrophe,
26666         so that the apostrophe isn't curved in the output.
26668 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
26670         Define `map-elt' as a generalized variable
26671         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
26672         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
26673         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
26674         `setf' with `map-elt'.
26675         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
26677 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
26679         Improve error handling in tramp-adb.el
26680         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
26681         Improve error handling.
26683 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
26685         Reuse `alist-get' in map.el
26686         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
26687         elements.
26689 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
26691         Fix bytecomp-tests--warnings when $TMPDIR has a long name
26692         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
26693         Allow the warning to begin on the 3rd, not only 2nd line, which
26694         happens if temporary-file-directory has a very long name.
26696         Expect 2 icalendar tests to fail on MS-Windows
26697         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
26698         (icalendar-real-world): Make them expected failures on MS-Windows.
26700 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
26702         Improve port of settings UI to older displays
26703         * lisp/cus-start.el (standard): Don't assume curved quotes are
26704         easily distinguishable when users are tinkering with a setting
26705         that affects how curved quotes are generated.
26707         Fix quoting in electric-quote-mode doc string
26708         * lisp/electric.el (electric-quote-mode): Fix quoting.
26709         This is a fallout from the recent change introducing
26710         ‘help-quote-translation’.
26712         Spelling fix
26714         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
26716         * src/doc.c (syms_of_doc): Remove unused symbols.
26718 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
26720         * lisp/window.el (window-state-put): Undedicate target window
26721         before putting STATE into it.  (Bug#20848)
26723 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
26725         Merge from origin/emacs-24
26726         a5e6f33 Fixes: debbugs:20832
26727         b9f02cf Fixes: debbugs:20832
26729 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
26731         Fix file-in-directory-p when the directory is UNC
26732         * lisp/files.el (file-in-directory-p): Support files and
26733         directories that begin with "//".  (Bug#20844)
26735 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
26737         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
26738         in the minibuffer.  (Bug#20832)
26740 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
26742         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
26743         for adding new todo file is empty but modified.  (Bug#20832)
26745 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
26747         (filepos-to-bufferpos): Further tweaks to the utf-16 code
26748         * lisp/international/mule-util.el (filepos-to-bufferpos):
26749         Fix typo.  Move non-exact check to the utf-16 branch (the only one
26750         affected).  Don't use byte-to-position for the utf-16 case.
26752 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
26754         Minor fixes in filepos-to-bufferpos
26755         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
26756         test for utf-8-emacs.  Exempt single-byte encodings from the
26757         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
26758         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
26759         UTF-16 encoded files for CR-LF EOLs.
26761 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
26763         Improve the optional translation of quotes
26764         Fix several problems with the recently-added custom variable
26765         help-quote-translation where the code would quote inconsistently
26766         in help buffers.  Add support for quoting 'like this', which
26767         is common in other GNU programs in ASCII environments.  Change
26768         help-quote-translation to use more mnemonic values: values are now the
26769         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
26770         traditional Emacs help-buffer quoting style `like this'.  Change the
26771         default behavior of substitute-command-keys to match what's done in
26772         set-locale-environment, i.e., quote ‘like this’ if displayable,
26773         'like this' otherwise.
26774         * doc/lispref/help.texi (Keys in Documentation): Document
26775         new behavior of substitute-command-keys, and document
26776         help-quote-translation.
26777         * doc/lispref/tips.texi (Documentation Tips):
26778         Mention the effect of help-quote-translation.
26779         * etc/NEWS: Mention new behavior of substitute-command-keys,
26780         and merge help-quote-translation news into it.
26781         When talking about doc strings, mention new ways to type quotes.
26782         * lisp/cedet/mode-local.el (overload-docstring-extension):
26783         Revert my recent change to this function, which shouldn't be
26784         needed as the result is a doc string.
26785         * lisp/cedet/mode-local.el (mode-local-print-binding)
26786         (mode-local-describe-bindings-2):
26787         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
26788         * lisp/cus-theme.el (describe-theme-1):
26789         * lisp/descr-text.el (describe-text-properties-1, describe-char):
26790         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
26791         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
26792         (eieio-help-constructor):
26793         * lisp/emacs-lisp/package.el (describe-package-1):
26794         * lisp/faces.el (describe-face):
26795         * lisp/help-fns.el (help-fns--key-bindings)
26796         (help-fns--compiler-macro, help-fns--parent-mode)
26797         (help-fns--obsolete, help-fns--interactive-only)
26798         (describe-function-1, describe-variable):
26799         * lisp/help.el (describe-mode):
26800         Use substitute-command-keys to ensure a more-consistent quoting
26801         style in help buffers.
26802         * lisp/cus-start.el (standard):
26803         Document new help-quote-translation behavior.
26804         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
26805         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
26806         (help-xref-url-regexp):
26807         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
26808         * lisp/wid-edit.el (widget-documentation-link-regexp):
26809         Also match 'foo', in case we're in a help buffer generated when
26810         help-quote-translation is ?'.
26811         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
26812         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
26813         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
26814         (Fsubstitute_command_keys): Document and implement new behavior.
26815         (Vhelp_quote_translation): Document new behavior.
26817 2015-06-18  Glenn Morris  <rgm@gnu.org>
26819         * lisp/cus-start.el (help-quote-translation): Add :version.
26821         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
26823 2015-06-18  Alan Mackenzie  <acm@muc.de>
26825         Make translation of quotes to curly in doc strings optional.
26826         * src/doc.c (traditional, prefer-unicode): New symbols.
26827         (help-quote-translation): New variable.
26828         (Fsubstitute_command_keys): Make translation of quotes dependent on
26829         `help-quote-translation'; also translate curly quotes back to ASCII
26830         ones.
26831         * lisp/cus-start.el (top-level): Add a customization entry for
26832         `help-quote-translation'.
26834 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
26836         * lisp/emacs-lisp/package.el: Don't always propagate async errors
26837         (package--with-work-buffer-async): Only propagate the error if the
26838         callback returns non-nil.
26839         (package--download-one-archive): Return nil on the signature
26840         checking callback if we accept unsigned.
26841         (package--download-and-read-archives): Return non-nil on the
26842         archive download callback.
26844 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
26846         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
26847         * src/nsfns.m (Fx_create_frame):
26848         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
26849         image_cache_refcount before first x_default_parameter call.
26851 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
26853         Improve and extend filepos-to-bufferpos
26854         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
26855         Don't barf if F returns nil for some argument.
26856         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
26857         that every encoding of type 'charset' is single-byte.
26859 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
26861         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
26862         Properly delete packages.  (Bug#20836)
26864 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
26866         Update data files from just-released Unicode 8.0
26867         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
26868         status.
26869         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
26870         * admin/unidata/BidiMirroring.txt:
26871         * admin/unidata/BidiBrackets.txt:
26872         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
26874 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
26876         Document curved quotes a bit better
26877         * doc/emacs/basic.texi (Inserting Text):
26878         Mention C-x 8.  Change example to use curved quote rather
26879         than infinity, as this lets us give more ways to do it.
26880         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
26881         and quotation marks.
26882         * doc/emacs/text.texi (Quotation Marks):
26883         * doc/lispref/tips.texi (Documentation Tips):
26884         Add "curly quotes" and "curved quotes" to the index.
26885         * doc/emacs/text.texi (Quotation Marks):
26886         Give the C-x 8 shorthands for curved quotes.
26887         Cross-reference to "Quotation Marks".
26889 2015-06-17  Daiki Ueno  <ueno@gnu.org>
26891         Add pinentry.el for better GnuPG integration
26892         * lisp/pinentry.el: New file.
26893         * etc/NEWS: Add entry about pinentry.el.
26894         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
26895         (Bug#20550)
26897 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
26899         * lisp/emacs-lisp/package.el: Slightly better error reporting.
26901 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
26903         (define-minor-mode): Use setq-default for :global minor modes
26904         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
26905         Use setq-default for :global minor modes (bug#20712).
26907 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
26909         Avoid infloop in redisplay with tall images
26910         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
26911         down near ZV.  (Bug#20808)
26912         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
26913         instead of CHARPOS.
26915 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
26917         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
26918         Fix error reporting.
26920         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
26922         * lisp/emacs-lisp/package.el: Revert buffer after any operation
26923         Call `package-menu--post-refresh' after any operation that changes
26924         the package database (`package-install' and `package-delete').  To
26925         avoid performance issues in large transactions, these functions
26926         add `post-refresh' to `post-command-hook' instead of calling it
26927         immediately.
26928         (package-menu--mark-or-notify-upgrades): New function.
26929         (list-packages): Add it to `package--post-download-archives-hook'.
26930         (package-menu--post-refresh): Lose the upgrade-checking code, add
26931         code to remove itself from `post-command-hook'.
26932         (package-install, package-delete): Add it to `post-command-hook'.
26933         (package-menu-execute): Don't call `package-menu--post-refresh'.
26935 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
26937         Add missing function xref-location-group for elisp-mode.
26938         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
26940 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
26942         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
26943         The behavior now matches the description in the manual.  (Bug#20783)
26945 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
26947         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
26949 2015-06-17  Glenn Morris  <rgm@gnu.org>
26951         Generate char-script-table from Unicode source.  (Bug#20789)
26952         * admin/unidata/Makefile.in (AWK): New, set by configure.
26953         (all): Add charscript.el.
26954         (blocks): New variable.
26955         (charscript.el, ${unidir}/charscript.el): New targets.
26956         (extraclean): Also remove generated charscript.el.
26957         * admin/unidata/blocks.awk: New script.
26958         * admin/unidata/Blocks.txt: New data file, from unicode.org.
26959         * lisp/international/characters.el: Load charscript.
26960         * src/Makefile.in (charscript): New variable.
26961         (${charscript}): New target.
26962         (${lispintdir}/characters.elc): Depend on charscript.elc.
26963         (temacs$(EXEEXT)): Depend on charscript.
26965         * lisp/international/characters.el (char-script-table): Tweak
26966         some ranges to better match the source.  (Bug#20789#17)
26968         Remove "no-byte-compile: t" from a few files.
26969         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
26970         * lisp/obsolete/patcomp.el: No reason not to compile these.
26972 2015-06-16  Glenn Morris  <rgm@gnu.org>
26974         Fix some typos in copied Unicode data.  (Bug#20789)
26975         * lisp/international/characters.el (char-script-table):
26976         * lisp/international/fontset.el (script-representative-chars)
26977         (setup-default-fontset): Fix typos.
26979         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
26980         Don't print filename twice (it's in the prefix now).
26982         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
26983         No longer needed.
26985         Address a compilation warning.
26986         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
26987         Replace 't' with '_' in pcase.
26989         Address some check-declare warnings.
26990         * lisp/simple.el (tabulated-list-print):
26991         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
26992         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
26993         (ns-get-selection): Update declarations.
26995         Address some compilation warnings.
26996         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
26997         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
26998         Replace 't' with '_' in pcase.
27000         Address some compilation warnings.
27001         * lisp/face-remap.el (text-scale-adjust):
27002         * lisp/menu-bar.el (popup-menu-normalize-position):
27003         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
27004         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
27005         * lisp/emacs-lisp/generator.el (cps--transform-1):
27006         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
27007         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
27008         * lisp/progmodes/octave.el (octave-goto-function-definition)
27009         (octave-find-definition-default-filename):
27010         Replace 't' with '_' in pcase.
27012         * lisp/emacs-lisp/pcase.el (pcase--u1):
27013         Paper-over today's bootstrap failure.
27015 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
27017         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
27019         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
27021         Better confirmation message in `find-alternate-file' (Bug#20830)
27022         * lisp/files.el (find-alternate-file'): Improve the confirmation
27023         message to show the buffer name.
27025         Better docstring for null.  (Bug#20815)
27026         * src/data.c (null): Improves the docstring, saying what null returns
27027         when OBJECT is non-nil.
27029 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
27031         * lisp/net/newst-treeview.el: Use lexical-binding.
27033         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
27034         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
27035         New auxiliary function, extracted from filepos-to-bufferpos.
27036         Make sure it terminates.
27037         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
27038         Add support for the `exact' quality.
27040 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
27042         Identify feeds in newsticker treeview with :nt-feed property
27043         * lisp/net/newst-treeview.el:
27044         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
27046 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
27048         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
27049         (pcase--self-quoting-p): Floats aren't self-quoting.
27050         (pcase): Tweak docstring.
27051         (pcase--u1): Deprecate the t pattern.  Improve error detection for
27052         the nil pattern.
27053         (\`): Tweak docstring.  Signal an error for unrecognized cases.
27054         (bug#20784)
27056 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
27058         Fix infloop in filepos-to-bufferpos
27059         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
27060         offset calculation, and make it conditional on the eol-type of the
27061         file's encoding.  (Bug#20825)
27063 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
27065         Fix handling of image cache refcounts.  (Bug#20802)
27066         This backports Eli Zaretskii's solution of this problem for W32
27067         to X and NS.
27068         * src/nsfns.m (image_cache_refcount): Define unconditionally.
27069         (unwind_create_frame): If the image cache's reference count
27070         hasn't been updated yet, do that now.
27071         (Fx_create_frame): Set image_cache_refcount unconditionally.
27072         * src/xfns.c (image_cache_refcount): Define unconditionally.
27073         (unwind_create_frame): If the image cache's reference count
27074         hasn't been updated yet, do that now.
27075         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
27076         unconditionally.
27077         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
27078         X and NS.
27080 2015-06-16  Nils Ackermann  <nils@ackermath.info>
27082         Improve reftex-label-regexps default value
27083         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
27084         keyvals label regexp more strict to better cope with unbalanced
27085         brackets common in math documents.
27087 2015-06-16  Glenn Morris  <rgm@gnu.org>
27089         * doc/emacs/calendar.texi (Format of Diary File):
27090         Move "nonmarking" from here...
27091         (Displaying the Diary): ... to here.
27093         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
27094         Swap the order of these nodes.
27095         * doc/emacs/emacs.texi: Update detailed menu for the above change.
27097         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
27098         Update date of examples.
27099         (Diary, Format of Diary File): Move example from former to latter.
27100         Reduce duplication.
27102         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
27103         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
27104         Don't set no-byte-compile in the outputs.
27105         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
27107 2015-06-15  Glenn Morris  <rgm@gnu.org>
27109         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
27110         * doc/emacs/calendar.texi (Diary, Format of Diary File):
27111         Update for above diary-file change.
27113         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
27114         (apply-macro-to-region-lines): Use user-error.
27116         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
27117         (pages-directory-for-addresses): Doc fixes.
27119 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
27121         * lisp/info.el: Cleanup bytepos/charpos issues
27122         * lisp/international/mule-util.el: Use lexical-binding.
27123         (filepos-to-bufferpos): New function.
27124         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
27125         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
27126         (Info-read-subfile, Info-search): Use 0-based file positions.
27128         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
27129         (perl--syntax-exp-intro-keywords): New var.
27130         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
27131         (bug#20800).
27133 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
27135         Fix quoting when making derived mode docstring
27136         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
27137         Nest regexp-quote inside format, not the reverse.
27138         Problem reported by Artur Malabarba in:
27139         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
27141 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
27143         Fix current-iso639-language on MS-Windows
27144         * lisp/international/mule-cmds.el (set-locale-environment):
27145         Downcase the locale name before interning it.  This is so the
27146         'current-iso639-language' on MS-Windows matches the ':lang'
27147         property of font-spec objects.
27149         Limit Symbola usage some more
27150         * lisp/international/fontset.el (setup-default-fontset): Limit
27151         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
27152         (Bug#20727)
27154 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
27156         * lisp/emacs-lisp/map.el (map-let): Better docstring.
27158 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
27160         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
27161         (help-fns-test-funny-names): Spelling fixes.
27163 2015-06-14  Glenn Morris  <rgm@gnu.org>
27165         * lisp/version.el (emacs-repository-version-git): Demote errors.
27166         Check result is a hash.
27168 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
27170         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
27171         Catch errors that happen before going async.  (Bug#20809)
27173 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
27175         Another improvement of documentation of set-fontset-font
27176         * doc/lispref/display.texi (Fontsets): Say explicitly that
27177         CHARACTER can be a single codepoint.
27178         * src/fontset.c (Fset_fontset_font): Doc fix.
27180         Another improvement for symbol and punctuation characters
27181         * lisp/international/fontset.el (setup-default-fontset): Exclude
27182         from Symbola character ranges for symbols and punctuation covered
27183         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
27184         installed and where its coverage of symbols and punctuation is
27185         known to be good.  (Bug#20727)
27187 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
27189         Some generic support for multi-mode indentation.
27190         * lisp/progmodes/prog-mode.el (prog-indentation-context):
27191         New variable.
27192         (prog-first-column, prog-widen): New convenience functions.
27194 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
27196         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
27197         Don't assume that `tabulated-list-printer' will leave point at the
27198         end of the buffer.  (Bug#20810)
27200 2015-06-13  Glenn Morris  <rgm@gnu.org>
27202         Tweaks for getting repository version; a bit more like it was for bzr
27203         * lisp/version.el (emacs-repository-version-git)
27204         (emacs-repository--version-git-1): New functions,
27205         split from emacs-repository-get-version.
27206         (emacs-repository-get-version): Make the second argument meaningful.
27208         * lisp/startup.el (command-line-1): Inform if skipping relative
27209         file names due to deleted PWD.
27211         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
27212         when starup directory is missing.  (Bug#18851)
27213         (errno.h): Include it.
27215 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
27217         Better fix for documenting `X as "`X"
27218         Fix suggested by Stefan Monnier.
27219         * lisp/help-fns.el (help-fns--signature):
27220         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
27221         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
27222         Don't treat `X specially, as help-fns--signature now handles this.
27224 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
27226         Improve the default fontset when Symbola is not installed
27227         * lisp/international/fontset.el (setup-default-fontset): Only
27228         prepend Symbola and FreeMono font specs for symbols and
27229         punctuation; do not replace the default spec for them.  This
27230         should have better results when Symbola/FreeMono are not
27231         installed.  (Bug#20727)
27233         Improve documentation of ':lang' in font specs
27234         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
27235         use of the ':lang' property of the font spec.
27236         * doc/emacs/frames.texi (Fonts): Document the language names that
27237         can be in the STYLE part of XLFD.
27238         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
27239         property.
27241         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
27243         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
27245         Revert last change in fontset.el
27246         * lisp/international/fontset.el (setup-default-fontset): Revert
27247         the change "Configure Symbola font only if installed", since font
27248         search is evidently not yet set up when this function is called.
27249         (Bug#20727)
27251 2015-06-12  Glenn Morris  <rgm@gnu.org>
27253         Ensure early startup warnings are visible at the end.  (Bug#20792)
27254         * lisp/emacs-lisp/warnings.el (display-warning):
27255         If startup isn't complete, delay the warning.
27256         * lisp/startup.el (normal-top-level, command-line):
27257         Let display-warning automatically handle the needed delays.
27258         Run delayed-warnings-hook.
27260         * lisp/version.el (emacs-repository-get-version):
27261         Avoid calling external executable if possible.  (Bug#20799)
27263 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
27265         Document `X as "`X", not as "(` X)"
27266         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
27267         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
27269         * src/print.c (print_object): Minor simplification.
27271 2015-06-12  Glenn Morris  <rgm@gnu.org>
27273         * src/buffer.c (init_buffer): Add final newline to message.
27275 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
27277         Configure Symbola font only if installed
27278         * lisp/international/fontset.el (setup-default-fontset):
27279         Don't specify the Symbola font if it's not installed.
27280         Likewise for FreeMono.  (Bug#20727)
27282 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
27284         Configure Symbola font only for symbols and punctuation
27285         * lisp/international/fontset.el (setup-default-fontset): Leave
27286         only symbols and punctuation in the fontset setup for Symbola
27287         font; remove "Greek and Coptic" and "Cyrillic Supplement".
27288         (Bug#20798)
27290 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
27292         Fix crash in fontset-info
27293         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
27294         non-nil.
27296 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
27298         Port to Solaris 10 sparc + Sun C 5.13
27299         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
27300         Adjust to process.c change.
27301         * src/process.c (create_process): Declare volatile variables at
27302         top level of this function, so that they're less likely to be
27303         reused later in the function in the code executed by the vforked
27304         child.  Do not declare locals used only in the vforked child, as
27305         they might share memory with locals still live in the parent.
27306         Instead, use the same variables in the child as in the parent.
27307         This works around a subtle bug that causes a garbage collector
27308         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
27310 2015-06-12  Glenn Morris  <rgm@gnu.org>
27312         * lisp/startup.el (normal-top-level): Don't let *Messages* get
27313         a nil default-directory.
27315 2015-06-11  Glenn Morris  <rgm@gnu.org>
27317         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
27319         Some progress towards starting with PWD deleted.  (Bug#18851)
27320         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
27321         * lisp/startup.el (normal-top-level, command-line-1):
27322         * lisp/minibuffer.el (read-file-name-default):
27323         Handle default-directory being nil.
27325 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
27327         Fix "not a tty" bug on Solaris 10
27328         * configure.ac (PTY_OPEN): Define to plain 'open'
27329         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
27330         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
27331         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
27332         hosts that call grantpt which does its work via a setuid subcommand
27333         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
27334         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
27335         seems relevant in that case too.
27337 2015-06-11  Juri Linkov  <juri@linkov.net>
27339         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
27340         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
27341         (Bug#20785)
27343 2015-06-11  Glenn Morris  <rgm@gnu.org>
27345         * lisp/international/characters.el (char-script-table): Fix typo.
27347 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
27349         Fix quoting of help for functions with odd names
27350         While investigating Bug#20759, I discovered other quoting problems:
27351         C-h f mishandled characters like backslash and quote in function names.
27352         This fix changes the behavior so that 'C-h f pcase RET' now
27353         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
27354         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
27355         in src/lread.c's read1 function says that the backslash will be
27356         needed starting in Emacs 25, which implies that 'format' is
27357         correct and the old pcase documention was wrong to omit the backslash.
27358         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
27359         * lisp/help-fns.el (help-fns--signature):
27360         * lisp/help.el (help-add-fundoc-usage):
27361         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
27362         Use help--make-usage-docstring rather than formatting
27363         help-make-usage.
27364         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
27365         Return raw docstring.
27366         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
27367         raw docstring.  Take more care to distinguish raw from cooked dstrings.
27368         (describe-function-1): Let help-fns--signature substitute
27369         command keys.
27370         * lisp/help.el (help--docstring-quote): New function.
27371         (help-split-fundoc): Use it, to quote funny characters more
27372         systematically.
27373         (help--make-usage): Rename from help-make-usage, since this
27374         should be private.  Leave an obsolete alias for the old name.
27375         (help--make-usage-docstring): New function.
27376         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
27378 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
27380         * lisp/thingatpt.el (in-string-p): Revert last change,
27381         since in-string-p is not used in thingatpt.el but only from outside.
27382         Also, use lexical binding.
27384 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
27386         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
27387         * test/automated/let-alist.el (let-alist-cons): Test it.
27389 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
27391         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
27393 2015-06-10  Glenn Morris  <rgm@gnu.org>
27395         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
27397         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
27398         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
27399         * admin/gitmerge.el (gitmerge-commit-message):
27400         Exclude "skipped" messages from ChangeLog once again.
27402         Slight namespace cleanup for thingatpt.el.
27403         * lisp/thingatpt.el (thing-at-point--in-string-p)
27404         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
27405         (thing-at-point--read-from-whole-string): Rename from
27406         old versions without "thing-at-point--" prefix.
27407         Keep old versions as obsolete aliases.  Update all uses.
27409         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
27410         Move requiring of finder from here...
27411         (checkdoc-package-keywords): ... to here.
27413         Use 'user-error' in a few calendar files.
27414         * lisp/calendar/appt.el (appt-add):
27415         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
27416         (calendar-generate):
27417         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
27418         Replace 'error' with 'user-error'.
27420         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
27422         * lisp/files-x.el (add-file-local-variable):
27423         Special-case 'lexical-binding'.  (Bug#20641)
27425         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
27426         No longer autoload.
27427         * doc/misc/autotype.texi (Executables):
27428         Undocument executable-self-display.
27430         * lisp/progmodes/executable.el (executable-self-display):
27431         Use non-obsolete tail syntax.  (Bug#20779)
27432         (executable-self-display): Doc update.
27434 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
27436         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
27437         (finder-known-keywords): Silence byte-compiler.
27439 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
27441         * lisp/simple.el (eval-expression): Macroexpand before evaluating
27442         (bug#20730).
27444         * lisp/progmodes/sh-script.el: Better handle nested quotes.
27445         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
27446         (sh-font-lock-quoted-subshell): Make sure double quotes within single
27447         quotes don't mistakenly end prematurely the surrounding string.
27449         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
27451 2015-06-09  Glenn Morris  <rgm@gnu.org>
27453         * test/automated/Makefile.in (ELFILES): Sort.
27455         * Makefile.in (SUBDIR_MAKEFILES):
27456         * lwlib/Makefile.in (WARN_CFLAGS):
27457         Use built-in Make functions rather than echo+sed.
27459 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
27461         Update char-script-table
27462         * lisp/international/characters.el (char-script-table): Update
27463         from Unicode 8.0 Draft.
27465         Improve font selection for punctuation and other symbols
27466         * src/fontset.c (face_for_char): If the character's script is
27467         'symbol', and the font used for ASCII face has a glyph for it, use
27468         the font for the ASCII face instead of searching the fontsets.
27469         This comes instead of NS-specific code that used the current
27470         face's font instead, which is now disabled due to undesirable
27471         consequences.  (Bug#20727)
27473 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
27475         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
27476         Skip past `#' to find BEG (bug#20771).
27477         * test/automated/elisp-mode-tests.el
27478         (elisp-completes-functions-after-hash-quote): New test.
27480 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
27482         Fix compilation warning/error in --without-x builds
27483         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
27484         code on HAVE_WINDOW_SYSTEM.
27486         Improve the default fontset wrt symbols
27487         * lisp/international/fontset.el (setup-default-fontset): Better
27488         setup of fontset-default for symbols: use Symbola and FreeMono.
27489         (Bug#20727)
27491 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
27493         Add new command checkdoc-package-keywords
27494         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
27495         New defcustom.
27496         (checkdoc-list-of-strings-p): Add doc.
27497         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
27498         non-nil, call `checkdoc-package-keywords'.
27499         (checkdoc-get-keywords): New defun.
27500         (checkdoc-package-keywords): New command.  Warns if the current file
27501         has package.el-style keywords that aren't in `finder-known-keywords'.
27502         * etc/NEWS: Add entry.
27504 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
27506         Avoid crashes when key-binding is called from a timer
27507         * src/keymap.c (Fkey_binding): Don't segfault if called with an
27508         empty vector as KEY.  (Bug#20705)
27510         Fix a thinko in arc-mode.el
27511         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
27512         non-Zip64 case.  (Bug#20769)
27514 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
27516         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
27518 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
27520         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
27521         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
27522         "*warn*", print the warning to the standard output.  (bug#20754)
27524 2015-06-07  Glenn Morris  <rgm@gnu.org>
27526         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
27528         * src/font.c (syms_of_font) <font-log>: Doc fix.
27530         Remove the obsolete leading "*" from some C doc strings.
27531         * src/coding.c (syms_of_coding):
27532         * src/font.c (syms_of_font): Remove leading "*" from docs.
27533         * lisp/cus-start.el (enable-character-translation): Add it.
27535 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
27537         Move gen_origin from program to data
27538         That way, 'make change-history' needs to change only ChangeLog.2,
27539         instead of having to change two files.
27540         * ChangeLog.2: Add commit info for range that this file covers.
27541         * Makefile.in (new_commit_regexp): New macro.
27542         (change-history-nocommit): Simplify, by putting what used to be
27543         the gen_origin value into the data (ChangeLog.2) rather than
27544         into the program (gitlog-to-emacslog).
27545         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
27546         the input file (e.g., ChangeLog.2) rather than by having a
27547         constant in the program.  Substitute it into the output.
27549 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
27551         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
27552         function name (bug#20759).
27554 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
27556         Adapt 'struct timespec' to next release of MinGW runtime
27557         * nt/inc/ms-w32.h (struct timespec): Don't declare if
27558         __struct_timespec_defined is defined.
27560 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
27562         Merge from gnulib
27563         This incorporates:
27564         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
27565         2015-06-05 stdio: Don't redefine gets when using C++
27566         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
27567         2015-06-02 file-has-acl: fix build on Mac OS X 10
27568         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
27569         2015-06-01 pthread_sigmask: discount system version if a simple macro
27570         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
27571         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
27572         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
27573         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
27574         * lib/gnulib.mk: Regenerate.
27576 2015-06-06  Juri Linkov  <juri@linkov.net>
27578         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
27579         before calling grep-compute-defaults because now it affects the
27580         command lines computed in grep-compute-defaults.  (Bug#20728)
27582 2015-06-06  Glenn Morris  <rgm@gnu.org>
27584         Address some compilation warnings.
27585         * lisp/international/mule-cmds.el (w32-get-console-codepage)
27586         (w32-get-console-output-codepage):
27587         * lisp/progmodes/elisp-mode.el (xref-collect-references):
27588         * lisp/version.el (cairo-version-string): Declare.
27589         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
27591 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
27593         Fix display when a font claims large values of ascent and descent
27594         This fixes bug#20628.
27595         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
27596         coordinate of a hollow cursor glyph when the original glyph's
27597         ascent is too small.
27598         (get_font_ascent_descent, normal_char_ascent_descent)
27599         (normal_char_height): New functions.
27600         (handle_single_display_spec, append_space_for_newline)
27601         (calc_pixel_width_or_height, produce_stretch_glyph)
27602         (calc_line_height_property): Use normal_char_ascent_descent and
27603         normal_char_height.
27604         (x_produce_glyphs): When font-global values of ascent and descent
27605         are too large, use per-character glyph metrics instead, if
27606         possible.  But don't allow the glyph row's ascent and descent
27607         values become smaller than the values from the metrics of the
27608         font's "normal" character.
27609         * src/xftfont.c (xftfont_draw):
27610         * src/w32font.c (w32font_draw): Correct the values of ascent and
27611         descent used to draw glyphless characters' hex code in a box.
27612         * src/xterm.c (x_draw_glyph_string_background):
27613         * src/xdisp.c (x_produce_glyphs):
27614         * src/w32term.c (x_draw_glyph_string_background):
27615         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
27616         to detect fonts whose global ascent and descent values are too
27617         large to be used in layout decision, and redraw the background
27618         when that happens.
27619         * src/dispextern.h (FONT_TOO_HIGH): New macro.
27620         (get_font_ascent_descent): Add prototype.
27621         * src/xterm.c (x_new_font):
27622         * src/w32term.c (x_new_font):
27623         * src/nsterm.m (x_new_font):
27624         * src/font.c (font_open_entity):
27625         * src/composite.c (composition_gstring_width):
27626         Use get_font_ascent_descent to obtain reasonable values for ascent
27627         and descent of a font.
27629 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
27631         Add assertion in adjust_point_for_property
27632         * src/keyboard.c (adjust_point_for_property): Add eassert for
27633         current buffer being shown in selected window.
27635 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
27637         Replace uses of in-string-p; make it obsolete
27638         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
27639         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
27641 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
27643         Fix Dired display of an explicit list of files by ls-lisp.el
27644         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
27645         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
27646         correct for when displaying individual files separately, not as
27647         part of listing a directory, in which case these values are not
27648         recomputed by 'ls-lisp-insert-directory', but used verbatim.
27650         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
27652 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
27654         Do not adjust point in a non-selected window
27655         * src/keyboard.c (command_loop_1): Do not adjust point when
27656         current buffer is not shown in selected window (Bug#20590).
27658         * etc/DEBUG: Mention 'maybe_call_debugger'
27660 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
27662         Fix a unit test for map.el
27663         * test/automated/map-tests.el (test-map-let): Fix the test to work
27664         with the new syntax of `map-let'.
27666         * lisp/emacs-lisp/map.el (map-let): Better docstring.
27668         Better syntax for the map pcase pattern
27669         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
27670         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
27672         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
27674         Fix a byte-compiler error in map-put and map-delete
27675         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
27676         called with a symbol.
27678 2015-06-05  Glenn Morris  <rgm@gnu.org>
27680         * admin/gitmerge.el (gitmerge-commit-message):
27681         Revert to including "skipped" messages in ChangeLog once again.
27683 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
27685         Use string> instead of equiv lambda with string<
27686         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
27687         lambda with string<.
27689 2015-06-05  Glenn Morris  <rgm@gnu.org>
27691         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
27692         (map--delete-array): Fix typo.
27694         * test/automated/map-tests.el: Replace "assert" with "should".
27696         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
27697         (SUBDIRS_REL): Derive from SUBDIRS.
27699         Tweak some build messages.
27700         * lisp/Makefile.in ($(lisp)/loaddefs.el):
27701         * lisp/cus-dep.el (custom-make-dependencies):
27702         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
27703         * lisp/international/titdic-cnv.el (batch-titdic-convert):
27704         Don't say how to compile.
27706 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
27708         Omit U+0332 COMBINING LOW LINE in previous change
27709         It turns out that it does not work on Ubuntu 15.04.
27711         Fix transliteration of Bahá'í months
27712         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
27713         Improve quality of Latin transliteration of Bahá'í month names.
27715         Fix curved quotes in a few places
27716         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
27717         The strings in question are not doc strings, so this partially
27718         undoes the recent change that assumed they were doc strings.
27719         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
27720         * lisp/info.el (Info-finder-find-node):
27721         Use curved quotes.
27722         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
27723         Also allow curved quotes in doc strings.
27725 2015-06-04  Glenn Morris  <rgm@gnu.org>
27727         * lisp/Makefile.in (AM_V_at): Add missing definition.
27729         * lisp/Makefile.in: Quieten output a bit.
27730         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
27731         Don't echo directories, since the commands we invoke print them.
27733         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
27734         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
27735         (SUBDIRS_SUBDIRS): New variables.
27736         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
27737         Remove.
27738         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
27739         (update-subdirs, compile-main, compile-clean):
27740         Replace "setwins" usage with new "SUBDIRS" variables.
27742         * lisp/vc/compare-w.el (compare-windows-get-window-function):
27743         Fix :version tag.
27745 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27747         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
27749         Undo removal of x_clear_area call on expose for GTK3 or cairo
27750         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
27751         Clear exposed area.  (Bug#20677)
27753 2015-06-04  Glenn Morris  <rgm@gnu.org>
27755         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
27757         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
27759         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
27760         Rename from quail-lao-update-translation, since lao.el defines that.
27762 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
27764         Handle new-style advice in find-funct
27765         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
27766         Handle new-style advice.  Return the symbol's function definition.
27767         (Bug#20718)
27768         (find-function-library): Update accordingly.
27770 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
27772         Merge branch 'map'
27774         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
27776         Add new function string-greaterp
27777         * lisp/subr.el (string-greaterp): New function.  Also aliased to
27778         `string>'.
27779         * test/automated/subr-tests.el (string-comparison-test): Add unit
27780         tests for `string>'and `string<'.
27781         * src/fns.c (string-lessp): Better docstring.
27783 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
27785         Fix timezone-related functions on MS-Windows
27786         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
27787         'xputenv', even if no reallocation of tzvalbuf was necessary.
27788         This fixes a bug in timezone-related functions on MS-Windows.
27789         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
27791 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
27793         Don't pass raw directory name to 'error'
27794         * lisp/files.el (basic-save-buffer-2): Avoid format error if
27795         a directory name contains a string like "%s".
27797 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
27799         Override 'grep --color=always'
27800         * lisp/progmodes/xref.el (xref-collect-matches):
27801         Override --color=always in grep-find-template.
27803 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
27805         Fix error introduced recently in file-notify-tests.el
27806         * test/automated/file-notify-tests.el
27807         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
27808         (file-notify--deftest-remote): Revert previous patch, not
27809         necessary anymore.
27811 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
27813         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
27814         Starting from a display string after a newline, point went to the
27815         previous line.  Also, fix an inadvertent use of a buffer position
27816         with FETCH_BYTE.  (Bug#20701)
27818 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
27820         Instrument file-notify-test.el in order to catch hydra error
27821         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
27822         Wrap body by `ignore-case', in order to trap non-local errors.
27824 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27826         Undo previous changes in non-toolkit scroll bar drawing
27827         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
27828         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
27830 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
27832         * .gitignore: Also ignore doc/*/*/*.html and .ps.
27834         Support quotes 'like this' in info files
27835         This is possible when 'makeinfo --disable-encoding' is used
27836         in Texinfo 5.
27837         * lisp/calc/calc-help.el (calc-describe-thing):
27838         * lisp/gnus/gnus-art.el (gnus-button-alist):
27839         * lisp/info.el (Info-find-index-name):
27840         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
27841         Also support quotes 'like this'.
27842         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
27843         * lisp/finder.el (finder-font-lock-keywords): Remove var that
27844         hasn't been used in years, instead of bothering to fix its quoting.
27846 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
27848         * .gitignore: Remove !test/etags/html-src/*.html.
27849         It's no longer needed, since *.html was removed.  Sort.
27851 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
27853         Restore <D> instead of '.' in grep-find-template
27854         * lisp/cedet/semantic/symref/grep.el
27855         (semantic-symref-grep-use-template): Update a comment.
27856         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
27857         instead of '.' in grep-find-template (bug#20719).
27858         (rgrep): Pass nil as the directory to rgrep-default-command.
27859         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
27860         default value for DIR.
27861         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
27862         workaround.
27864 2015-06-02  Glenn Morris  <rgm@gnu.org>
27866         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
27868         * configure.ac (emacs_config_features): Add Cairo.
27870         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
27872 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
27874         Ensure that autorevert works for remote files in file-notify-tests.el
27875         * test/automated/file-notify-tests.el (file-notify--test-desc):
27876         New defvar.
27877         (file-notify--test-remote-enabled)
27878         (file-notify-test00-availability, file-notify-test01-add-watch)
27879         (file-notify-test02-events): Use it.
27880         (file-notify--test-event-test): Check proper descriptor.
27881         (file-notify-test03-autorevert): Ensure that
27882         `visited-file-modtime' has changed.  (Bug#20392)
27884 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
27886         Add a pcase pattern for maps and `map-let' based on it
27887         * lisp/emacs-lisp/map.el (map-let): New macro.
27888         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
27889         * test/automated/map-tests.el: New test for `map-let'.
27891 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
27893         Reuse rgrep mechanics in xref-find-regexp
27894         * lisp/progmodes/grep.el (rgrep-default-command):
27895         Extract from `rgrep'.
27896         * lisp/progmodes/xref.el (xref-collect-references): Split from
27897         `xref-collect-matches'.  Only handle the case of symbol search.
27898         (xref-collect-matches): Instead of Semantic Symref, use
27899         `rgrep-default-command', to take advantage of its directory and
27900         file ignore settings.
27901         (xref--collect-match): Remove the last argument, leaving the
27902         regexp construction up to the caller.
27903         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
27904         Change to take the xref-collect- function to use as an argument.
27905         (elisp-xref-find): Update accordingly.
27906         * lisp/progmodes/etags.el (etags--xref-find-matches)
27907         (etags-xref-find): Same.
27909         Move xref-elisp-location to elisp-mode.el
27910         * lisp/progmodes/xref.el (xref-elisp-location)
27911         (xref-make-elisp-location, xref-location-marker): Remove here.
27912         (xref--xref): Don't limit the type of the location slot.
27913         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
27914         Define as a cl-struct here.
27915         (xref-location-marker): Move here.
27917 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
27919         Minor tweaks for .gitignore
27920         * .gitignore: Don't ignore versioned *.html and *.ps files.
27921         Don't ignore admin/notes/tags that might be ignored as TAGS
27922         on case-insensitive filesystems.  (Bug#20710)
27924 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
27926         Generate curved quotes in ert doc
27927         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
27928         (ert-results-mode-menu)
27929         (ert-results-pop-to-backtrace-for-test-at-point)
27930         (ert-results-pop-to-messages-for-test-at-point)
27931         (ert-results-pop-to-should-forms-for-test-at-point)
27932         (ert-describe-test):
27933         Quote ‘like this’, not `like this', when generating doc strings
27934         and the like.
27935         * test/automated/ert-x-tests.el (ert-test-describe-test):
27936         Allow quoting ‘like this’.
27938 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
27940         Add test for previous commit
27941         * test/automated/replace-tests.el: New file.
27942         (query-replace--split-string-tests): Add test for previous commit.
27944         Avoid confusion in query-replace history when replacing NUL chars
27945         * lisp/replace.el (query-replace--split-string): New function.
27946         (query-replace-read-from): Rely on the 'separator' property
27947         instead of searching for the NUL character (Bug#20690).
27949 2015-06-02  Glenn Morris  <rgm@gnu.org>
27951         Merge from origin/emacs-24
27952         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
27954         * admin/gitmerge.el (gitmerge-commit-message):
27955         Exclude "skipped" messages from ChangeLog.
27957 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
27959         Sync with Tramp repository
27960         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
27961         messages.
27962         (tramp-handle-make-auto-save-file-name): When calling
27963         `make-auto-save-file-name' internally, make sure it uses Unix-like
27964         behavior, not Windows-like behavior.
27965         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
27966         the local case, because "chown" might fail on w32.
27967         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
27968         for XEmacs.
27970 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
27972         MS-Windows followup for batch stdout/stderr output changes
27973         * lisp/international/mule-cmds.el (set-locale-environment):
27974         In batch mode, use console codepages for keyboard and terminal
27975         encoding.  (Bug#20545)
27977         Update .gitattributes for DOS EOL files
27978         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
27979         CRLF end-of-line format.
27981         NS equivalents of xterm.c and w32term.c changes
27982         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
27983         glyph string background also when the font in use claims
27984         preposterously large global height value.  Helps to remove
27985         artifacts left from previous displays when glyphless characters
27986         are displayed as hex code in a box.
27987         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
27988         value for FRAME_LINE_HEIGHT, even when a font claims very large
27989         value for its height.
27991 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
27993         Avoid grave accent quoting in stderr diagnostics
27994         A few Emacs diagnostics go directly to stderr, and so can't easily
27995         contain curved quotes (as non-UTF-8 locales might mishandle them).
27996         Instead of bothering to add support for this rarity, reword the
27997         diagnostics so that they don't use grave accent to quote.
27998         * src/alloc.c (mark_memory): Fix comment.
27999         * src/buffer.c (init_buffer):
28000         * src/dispnew.c (init_display):
28001         * src/emacs.c (main, sort_args):
28002         * src/lread.c (dir_warning):
28003         * src/term.c (init_tty):
28004         * src/unexmacosx.c (unexec):
28005         * src/xfns.c (select_visual):
28006         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
28007         Reword stderr diagnostics to avoid quoting `like this'.
28008         * src/unexmacosx.c: Include errno.h.
28009         * src/xfns.c (select_visual): Encode value for locale.
28011 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
28013         Treat batch stdout/stderr like standard display
28014         Calls like (print FOO) could generate improperly encoded or
28015         hard-to-read output if FOO contains characters outside the system
28016         locale.  Fix this by treating batch stdout and stderr like
28017         interactive standard display, when it comes to transliterating and
28018         encoding characters (Bug#20545).
28019         * doc/emacs/mule.texi (Communication Coding):
28020         * doc/lispref/display.texi (Active Display Table):
28021         * doc/lispref/nonascii.texi (Locales):
28022         * etc/NEWS:
28023         * src/coding.c (syms_of_coding):
28024         * src/dispnew.c (syms_of_display):
28025         Document this.
28026         * src/print.c: Include disptab.h.
28027         (printchar_to_stream): New function, with much of the guts of the
28028         old Fexternal_debugging_output, except this one also uses the
28029         standard display table.
28030         (printchar, strout, Fexternal_debugging_output): Use it.
28032 2015-05-31  Glenn Morris  <rgm@gnu.org>
28034         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
28036 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
28038         Remove DEFSYMs that aren't used at the C level.  Also:
28039         * src/decompress.c (Qzlib_dll):
28040         * src/font.c (Qunicode_sip):
28041         * src/frame.c (Qtip_frame):
28042         * src/ftfont.c (Qserif):
28043         * src/gnutls.c (Qgnutls_dll):
28044         * src/xml.c (Qlibxml2_dll):
28045         Move from here ...
28046         * src/w32fns.c (syms_of_w32fns): ... to here,
28047         as these are used only on MS-Windows.
28049 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
28051         Use another default value for tramp-histfile-override
28052         * lisp/net/tramp-sh.el (tramp-histfile-override):
28053         Use ".tramp_history" as default.
28054         Fixes bug#20446
28056 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
28058         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
28060 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
28062         * etc/NEWS: Add an entry about map.el.
28064         Improve the docstring of functions in map.el
28065         Since a map is not a data structure but a concept, adding information
28066         about the possible types of maps can be useful information.
28067         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
28068         each public function.
28070 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
28072         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
28073         specific tests depending on the type of the map.
28075         * lisp/emacs-lisp/map.el: Better docstrings.
28077 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
28079         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
28081 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
28083         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
28085         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
28087         Fix a false negative in `map-elt' with alists and values being nil
28088         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
28089         found but its associated value is nil, do not return the default
28090         value.
28091         * test/automated/map-tests.el: Add a regression test.
28093 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
28095         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
28097         Do not signal an error when trying to delete a key from an array
28098         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
28099         the key is present to avoid signaling an error.
28100         * test/automated/map-tests.el: Add a test for deleting non-existing
28101         keys from maps.
28103         * lisp/emacs-lisp/map.el: Better docstring.
28105         Minor improvement in map-elt
28106         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
28107         doing a lookup in arrays, but check the boundaries of the array
28108         instead.
28109         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
28110         and a negative integer as key.
28112 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
28114         * test/automated/map-tests.el: Refactoring of test methods.
28116         * test/automated/map-tests.el: Renamed from map-test.el.
28118 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
28120         * lisp/emacs-lisp/map.el (map-into): Better error message.
28122         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
28124         Throw an error when converting a map into an unknown map type
28125         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
28126         not valid.
28127         * test/automated/map-tests.el: Add a regression test.
28129         New library map.el similar to seq.el but for mapping data structures.
28130         * test/automated/map-tests.el: New file.
28131         * lisp/emacs-lisp/map.el: New file.
28133 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
28135         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
28136         there's no explicit tag name (bug#20629).
28138 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
28140         Remove format2
28141         * src/editfns.c, src/lisp.h (format2): Remove.
28142         It is more trouble than it's worth, now that we have CALLN.
28143         This is just a minor refactoring.
28144         * src/buffer.c (Fkill_buffer):
28145         * src/dbusbind.c (XD_OBJECT_TO_STRING):
28146         * src/fileio.c (barf_or_query_if_file_exists):
28147         Adjust to format2 going away.
28149         Don't misencode C-generated messages
28150         Also, be more consistent about calls to 'Fmessage' vs 'message'.
28151         * src/alloc.c (Fgc_status):
28152         Prefer AUTO_STRING to build_string for Fmessage call.
28153         * src/data.c (Fmake_variable_buffer_local)
28154         (Fmake_local_variable, Fmake_variable_frame_local):
28155         * src/doc.c (store_function_docstring):
28156         Use Fmessage, not message, since the argument can contain
28157         non-ASCII characters, and this can cause the resulting message
28158         to be incorrectly encoded for the current environment.
28159         * src/fns.c (maybe_resize_hash_table):
28160         * src/xselect.c (x_clipboard_manager_save_all):
28161         Use message, not Fmessage, since Fmessage's power isn't needed here.
28162         * src/process.c (Fmake_network_process): Reword message to avoid %s.
28163         * src/xdisp.c (vmessage): Document restrictions on message contents.
28164         (message_nolog) [false]: Remove unused code.
28166         Use \r rather than ^M in string literals
28167         This is less likely to cause problems on platforms that
28168         use CRLF (or CR!) termination for lines.
28170         Update .gitattributes to match current sources
28171         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
28172         * .gitattributes: Accommodate tests that insist on DOS format.
28173         Remove test/automated/data/decompress/foo-gzipped.
28174         Add etc/e/eterm-color.
28176 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
28178         * doc/emacs/mule.texi (Modifying Fontsets):
28179         Document face-ignored-fonts.  (Bug#20628)
28181         Add etags test for the new -Q option
28182         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
28183         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
28184         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
28185         test-case changes below.
28186         * test/etags/ETAGS.good_6: New file.
28187         * test/etags/cp-src/x.cc: New file.
28188         * test/etags/Makefile (CPSRC): Add x.cc.
28189         (check): Add one more test, for -Q.
28191 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
28193         Use list for the tags completion table, not obarray
28194         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
28195         list instead of an obarray
28196         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
28197         (tags-completion-table): Combine those lists.
28198         (tags-completion-table): Update the docstring.
28200 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
28202         Restore EOL format testing in etags
28203         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
28204         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
28205         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
28206         test-case changes below.
28207         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
28208         * test/etags/cp-src/c.C (B): Add back stray CR character.
28209         * test/etags/c-src/dostorture.c: Add back.
28210         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
28212 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
28214         Declare Emacs on MS-Windows to be DPI-aware
28215         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
28216         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
28217         This avoids Windows entering compatibility mode for Emacs,
28218         which causes fonts to look less nice.
28220 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
28222         Improve Tramp traces
28223         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
28224         * lisp/net/tramp.el (tramp-debug-message): Use it.
28226 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
28228         backup-buffer minor reworking of internals
28229         * lisp/files.el (backup-buffer): Rework to avoid a couple of
28230         unused locals inadvertently introduced in the previous change.
28232         backup-buffer now reports .emacs.d/%backup% ills
28233         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
28234         fails due to disk space exhaustion or whatever, do not pretend
28235         that it succeeded.  More generally, do a better job of checking
28236         for I/O failures, and limit the scope of the condition-case to
28237         just the operations where file errors should be caught and ignored
28238         (Bug#20595).  Also, don't bother trying to delete later backups if
28239         an earlier deletion fails, as this is a sign of trouble and it's
28240         better to stop when there's trouble.
28242         copy-file now truncates output after writing
28243         * src/fileio.c (Fcopy_file): Truncate output after writing rather
28244         than before.  This is more likely to work than truncation before
28245         writing, if the file system is out of space or the user is over
28246         disk quota (Bug#20595).  Also, check for read errors.
28248 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
28250         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
28251         Don't load descriptors from directories above the package directories.
28253 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
28255         Merge from gnulib
28256         This incorporates the following (Bug#20681):
28257         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
28258         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
28259         * lib/set-permissions.c: Copy from gnulib.
28261 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
28263         Improve Tramp traces
28264         * lisp/net/tramp.el (tramp-call-process-region): New defun.
28265         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
28267 2015-05-29  Glenn Morris  <rgm@gnu.org>
28269         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
28271 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
28273         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
28274         The signature was changed in the cairo branch, merged on 2015-05-23.
28275         This oversight broke compiling only the non-toolkit X version.
28277 2015-05-29  Samer Masterson  <samer@samertm.com>
28279         * doc/lispref/os.texi: Update initial-buffer-choice docs.
28281 2015-05-29  Glenn Morris  <rgm@gnu.org>
28283         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
28284         Mark as an expected failure.
28286 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
28288         Change package test to look for curved quotes
28289         * test/automated/package-test.el (package-test-describe-package)
28290         (package-test-signed): Search for curved single quotes as well as
28291         for grave accent and apostrophe.
28293 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
28295         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
28296         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
28298 2015-05-28  Samer Masterson  <samer@samertm.com>
28300         Show files when `initial-buffer-choice' is non-nil
28301         * lisp/startup.el (command-line-1): When Emacs is given a file as an
28302         argument and `initial-buffer-choice' is non-nil, display both the file
28303         and `initial-buffer-choice'.  For more than one file, show
28304         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
28305         commands out of the command line arg parser.
28306         (initial-buffer-choice): Clarify docstring.
28308 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
28310         Fix last commit
28311         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
28312         (gnulib module qcopy-acl): Add back, as it is harmless.  This
28313         minimizes differences wrt lib/gnulib.mk.
28315         Fix the MS-Windows build as followup to gnulib update
28316         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
28317         set-permissions.c, as they don't compile on MinGW.
28318         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
28320 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
28322         Revert my change to gnus-art.el
28323         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
28324         It wasn't that important, and it caused a Gnus build to fail.  See:
28325         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
28327         New minor mode Electric Quote
28328         This lets you easily insert quotes ‘like this’ by typing
28329         quotes `like this', and similarly you can easily insert
28330         quotes “like this” by typing quotes ``like this'' (Bug#20545).
28331         * doc/emacs/basic.texi (Inserting Text):
28332         * doc/emacs/modes.texi (Minor Modes):
28333         * etc/NEWS: Document it.
28334         * doc/emacs/text.texi (Quotation Marks): New section.
28335         * lisp/electric.el (electric-quote-comment)
28336         (electric-quote-string, electric-quote-paragraph):
28337         New custom vars.
28338         (electric--insertable-p)
28339         (electric-quote-post-self-insert-function): New functions.
28340         (electric-quote-mode, electric-quote-local-mode): New minor modes.
28341         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
28342         Add curved single quotes to electric-pair-text-pairs.
28343         Set electric-quote-string in this buffer.
28345         A few more doc string fixes (Bug#20385)
28347         Accept curved quotes in doc strings
28348         * lisp/info-look.el (info-lookup-guess-custom-symbol):
28349         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
28351         Generate curved quotes in pseudo-info nodes
28352         * lisp/info.el (Info-virtual-index-find-node)
28353         (Info-virtual-index, Info-apropos-find-node, info-apropos):
28354         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
28356         Fix minor quoting problems in doc strings
28357         Most of these fixes involve escaping grave accents that are
28358         actually intended to be grave accents, not left quotes.
28359         (Bug#20385)
28361         Support curved quotes in doc strings
28362         Emacs's traditional doc string style has been to quote symbols
28363         `like this'.  This worked well on now-obsolete terminals where
28364         ` and ' were symmetric quotes, but nowadays curved quotes
28365         ‘like this’ look better.  Support quoting the new way too.
28366         (Bug#20385)
28367         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
28368         ‘like-this’ as well as `like-this'.
28369         * etc/NEWS: Mention this.
28370         * lisp/cedet/mode-local.el (overload-docstring-extension)
28371         (mode-local-print-binding, mode-local-describe-bindings-2):
28372         * lisp/cus-theme.el (describe-theme-1):
28373         * lisp/descr-text.el (describe-text-properties-1, describe-char):
28374         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
28375         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
28376         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
28377         (eieio-help-constructor):
28378         * lisp/emacs-lisp/package.el (describe-package-1):
28379         * lisp/faces.el (describe-face):
28380         * lisp/help-fns.el (help-fns--key-bindings)
28381         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
28382         (help-fns--interactive-only, describe-function-1):
28383         (describe-variable):
28384         * lisp/help.el (describe-mode):
28385         * lisp/international/mule-cmds.el (describe-input-method)
28386         (describe-language-environment):
28387         * lisp/international/mule-diag.el (describe-character-set)
28388         (print-coding-system-briefly, list-input-methods)
28389         (list-input-methods-1):
28390         Insert curved quotes rather than grave accent and apostrophe.
28391         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
28392         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
28393         (checkdoc-proper-noun-region-engine):
28394         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
28395         (lisp-cl-font-lock-keywords-2):
28396         * lisp/finder.el (finder-font-lock-keywords):
28397         * lisp/gnus/gnus-art.el (gnus-button-alist):
28398         * lisp/help-fns.el (help-do-arg-highlight)
28399         (describe-function-1, describe-variable):
28400         * lisp/help-mode.el (help-xref-symbol-regexp)
28401         (help-xref-info-regexp, help-xref-url-regexp):
28402         * lisp/help.el (describe-mode):
28403         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
28404         * lisp/wid-edit.el (widget-documentation-link-regexp):
28405         Parse symbols quoted ‘like-this’ as well as `like-this'.
28406         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
28407         Add "‘" and "’" to electric-pair-text-pairs.
28408         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
28409         (elisp-completion-at-point, elisp--preceding-sexp):
28410         Also treat "‘" and "’" as quoting chars.
28412         substitute-command-keys now curves quotes
28413         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
28414         * doc/lispref/help.texi (Keys in Documentation):
28415         * etc/NEWS: Document this.
28416         * src/doc.c (Fsubstitute_command_keys): Implement it.
28418 2015-05-28  Glenn Morris  <rgm@gnu.org>
28420         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
28421         (rmail-summary-by-topic, rmail-summary-by-senders):
28422         No longer strip leading/trailing whitespace.
28424         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
28425         (f90-no-block-limit): Add "enum".  (Bug#20680)
28426         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
28427         New tests.
28429 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
28431         * lisp/isearch.el (isearch--current-buffer): Give a default value.
28432         Un-revert changes mistakenly dropped by f9fabb2b.
28434 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
28436         Merge from gnulib
28437         This incorporates:
28438         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
28439         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
28440         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
28441         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
28442         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
28443         2015-05-26 stdio: fix probe on mingw under gcc 5.1
28444         * admin/merge-gnulib (GNULIB_MODULES):
28445         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
28446         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
28447         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
28448         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
28449         Get latest versions from gnulib.
28450         * lib/get-permissions.c, lib/set-permissions.c: New files.
28451         * lib/gnulib.mk, m4/gnulib-comp.m4:
28452         Regenerate.
28453         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
28455 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
28457         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
28458         process here.
28459         (vc-do-command): Rather than here (bug#20608).
28461 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
28463         Avoid gratuitous delete-dups in face-at-point
28464         * lisp/faces.el (face-at-point): Do not compute the properly
28465         ordered, duplicate-free list if only a single value is
28466         requested anyway.  (Bug#20519)
28468         Show the exact C-x 8 RET invocation in describe-char
28469         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
28470         invocation instead of a template.  (Bug#20522)
28472 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
28474         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
28475         (package-menu--post-refresh): Call `tabulated-list-print' with the
28476         UPDATE argument.  This only affects the refresh action, the revert
28477         action still erases tags.
28478         (package-menu-get-status): Change `assq' to `assoc'.
28479         (package-menu--mark-upgrades-1): New function.
28480         (package-menu--mark-upgrades-pending): New variable.
28481         (package-menu-mark-upgrades): Use them to delay marking until
28482         after refresh is done.
28483         (package-menu--post-refresh): Call mark-upgrades-1 if
28484         mark-upgrades-pending is non-nil.
28486 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
28488         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
28489         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
28490         (commit 3953c4be2816537be95520605d45b866dc731f4b).
28492 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
28494         * lisp/isearch.el (isearch--current-buffer): New var.
28495         (isearch-update): Set cursor-sensor-inhibit here.
28496         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
28497         (bug#20532).
28499         Change inhibit-point-motion-hooks to t
28500         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
28501         to t and document it as obsolete.
28503 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
28505         Support ZIP files that use Zip64 extensions
28506         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
28507         format of central directory offsets used by Zip64 extensions.
28508         (Bug#20665)
28510 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
28512         New test tramp-test30-make-auto-save-file-name
28513         * test/automated/tramp-tests.el
28514         (tramp-test30-make-auto-save-file-name): New test.
28515         (tramp-test31-special-characters)
28516         (tramp-test31-special-characters-with-stat)
28517         (tramp-test31-special-characters-with-perl)
28518         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
28519         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
28520         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
28521         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
28523         Improve tramp-handle-make-auto-save-file-name
28524         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
28525         (tramp-handle-make-auto-save-file-name): Let native
28526         `make-auto-save-file-name' use `auto-save-file-name-transforms',
28527         if `tramp-auto-save-directory' is not set.
28529 2015-05-27  Glenn Morris  <rgm@gnu.org>
28531         No longer set dired-directory in eshell.  (Bug#16477)
28532         * lisp/eshell/esh-mode.el (eshell-mode):
28533         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
28535         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
28537         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
28538         * lisp/progmodes/cc-mode.el (c-mode-help-address):
28539         Change to submit@debbugs.
28540         (c-mode-bug-package): New constant.
28541         (mail-position-on-field): Declare.
28542         (c-submit-bug-report): Insert X-Debbugs-Package header.
28543         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
28544         Mention debbugs.gnu.org.
28546 2015-05-26  Glenn Morris  <rgm@gnu.org>
28548         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
28549         (rmail-summary-by-recipients, rmail-summary-by-topic)
28550         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
28551         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
28553 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
28555         Handle curved quotes in info files
28556         * lisp/calc/calc-help.el (calc-describe-thing):
28557         * lisp/info.el (Info-find-index-name)
28558         (Info-try-follow-nearest-node, Info-fontify-node):
28559         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
28560         In info files, process quotes ‘like this’ the same way we process
28561         quotes `like this'.  This catches a few places we missed earlier.
28563 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
28565         xref-prompt-for-identifier: Use a list value
28566         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
28567         value, to be interpreted as a list of commands.
28568         (xref--prompt-p): New function.
28569         (xref--read-identifier): Use it.
28571 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
28573         Teach MS-Windows font back-end return per-glyph ascent/descent
28574         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
28575         values.
28576         * src/w32font.c (w32font_text_extents): Compute, cache, and
28577         accumulate per-glyph ascent and descent values, instead of copying
28578         global values from the font.  If the values are not available from
28579         the font data, i.e., non-TTF fonts, fall back on font-global values.
28580         (compute_metrics): Compute and return per-glyph ascent and descent
28581         values, if returned by GetGlyphOutlineW, falling back on
28582         font-global values.  (Bug#20628)
28583         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
28584         height of rectangle to be drawn, to be compatible with
28585         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
28586         box, when per-glyph ascent/descent values are used.
28588 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
28590         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
28591         Don't sort if sorter is nil.
28593 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
28595         Fix Bug#20621
28596         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
28597         are major modes which set `auto-save-mode' on their own rules;
28598         Tramp shall not overwrite such settings.
28600 2015-05-26  Glenn Morris  <rgm@gnu.org>
28602         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
28603         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
28604         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
28605         Doc updates.
28606         (vc-dir-mode): Remove unnecessary autoload.
28608 2015-05-25  Philipp Stephani  <phst@google.com>
28610         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
28611         (xterm--extra-capabilities-type): Add `getSelection'.
28612         (xterm--query): Add `no-async' argument.
28613         (xterm--init-activate-get-selection): New function.
28614         (terminal-init-xterm): Use it.
28615         (xterm--init-modify-other-keys): Rename from
28616         terminal-init-xterm-modify-other-keys.
28617         (xterm--init-bracketed-paste-mode): Rename from
28618         terminal-init-xterm-bracketed-paste-mode.
28619         (xterm--init-activate-set-selection): Rename from
28620         terminal-init-xterm-activate-set-selection.
28621         (xterm--selection-char): New function.
28622         (gui-backend-set-selection): Use it.  Use the &context to only apply
28623         this method in terminals where we enabled the feature.
28624         (gui-backend-get-selection): New method.
28626 2015-05-25  Daniel Colascione  <dancol@dancol.org>
28628         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
28629         keyword constants to C++.
28631 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
28633         Make TAGS files more portable to MS-Windows
28634         * etc/NEWS: Document this.
28635         * lib-src/etags.c (readline_internal) [DOS_NT]:
28636         Don't treat CRs differently from GNUish hosts.
28637         * lisp/progmodes/etags.el (etags-goto-tag-location):
28638         Adjust STARTPOS to account for the skipped CRs in dos-style files.
28640 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28642         Improve fix of bug#20634 in tramp-sh.el
28644 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
28646         Fix a typo in last commit
28647         * lib-src/etags.c (C_entries): Fix a typo.
28648         * test/etags/ETAGS.good_1:
28649         * test/etags/ETAGS.good_2:
28650         * test/etags/ETAGS.good_3:
28651         * test/etags/ETAGS.good_4:
28652         * test/etags/ETAGS.good_5:
28653         * test/etags/CTAGS.good: Update due to the change in etags.c.
28655         Fix tagging of class members in C-like OO languages
28656         * lib-src/etags.c (longopts): Add new option --class-qualify and
28657         its shorthand -Q.
28658         (print_help): Add help text for --class-qualify.
28659         (main): Add handling of -Q.
28660         (consider_token, C_entries) <omethodparm>: Append argument types
28661         to Objective C methods only if --class-qualify was specified.
28662         Qualify C++, Objective C, and Java class members with their class
28663         names only if --class-qualify was specified.
28664         (C_entries): If --class-qualify was not specified, remove the
28665         namespace and class qualifiers from tag names of C++ methods.
28666         This allows to use etags.el as xref back-end without the
28667         tag-symbol-match-p method, which greatly increases the number of
28668         potentially false positives.  (Bug#20629)
28669         * doc/man/etags.1: Update to document the new --class-qualify
28670         option.
28671         * test/etags/ETAGS.good_1:
28672         * test/etags/ETAGS.good_2:
28673         * test/etags/ETAGS.good_3:
28674         * test/etags/ETAGS.good_4:
28675         * test/etags/ETAGS.good_5:
28676         * test/etags/CTAGS.good: Update due to changes in etags.c.
28678 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
28680         (cl-generic-define-method): Side effects are evil (bug#20644)
28681         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
28682         cons-cells that might be used as keys in an `equal' hash-table.
28684 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
28686         Make erc timestamps visible again
28687         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
28688         Make timestamps visible again (if requested).
28690 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
28692         Fix last change in etags.c that broke tagging compresed files
28693         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
28694         quoting of decompression shell command for MS-Windows/MS-DOS.
28696 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
28698         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
28699         (Bug#20639)
28701 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28703         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
28704         Fix typo in "Inhibit `epa-file-handler' in Tramp"
28705         (commit 89035e247591c8d688fce922b7079881aa110f33).
28707 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
28709         Fix IPv6 addresses in Tramp
28710         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
28711         Add square brackets around host name.
28713 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28715         Inhibit `epa-file-handler' in Tramp (Bug#20634)
28716         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
28717         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
28718         `epa-file-handler'.
28720 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
28722         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
28723         (pcase-let): Document the behavior in case the pattern doesn't match.
28725 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
28727         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
28728         (tabulated-list-print): New optional argument, UPDATE.  If
28729         non-nil, the list is printed by only adding and deleting the
28730         changed entries, instead of erasing the whole buffer.  This method
28731         is much faster when few or no entries have changed.
28732         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
28733         * etc/NEWS: Document it.
28735         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
28736         (tabulated-list--get-sorter): New function.
28737         (tabulated-list-print): Restore window-line when remember-pos is
28738         passed and optimize away the `nreverse'.
28740 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
28742         Simpilify etags TEX mode scanning
28743         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
28744         Remove static vars.
28745         (TeX_commands): Deduce escapes here instead.
28746         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
28747         This removes the need for a reset_input call.
28749         Improve etags I/O error reporting
28750         * lib-src/etags.c:
28751         Don't include sys/types.h and sys/stat.h; no longer needed.
28752         (infilename): New static var.
28753         (process_file_name): Don't call 'stat'.  Instead, just open the
28754         file for reading and report any errors.  Don't bother making
28755         a copy of the file argument; it's not needed.  Be more careful to
28756         use the failing errno when reporting an error.
28757         Quote the real name better (though no perfectly)
28758         when passing it to the shell.
28759         (reset_input): New function, which reports I/O errors.
28760         All uses of 'rewind' changed to use this function.
28761         (perhaps_more_input): New function, which also checks for
28762         I/O errors.  All uses of 'feof' changed to use this function.
28763         (analyze_regex): Report an error if fclose fails.
28764         (readline_internal): Report an error if getc fails.
28765         (etags_mktmp): Return an error if close fails.
28767         etags.c: avoid side effects in 'if'
28768         * lib-src/etags.c (process_file_name, Perl_functions)
28769         (TEX_decode_env): Hoist side effects into previous statement.
28771         .gitignore tweaks
28772         * .gitignore: Ignore all *.stamp files.  Sort.
28773         Ignore [0-9]*.txt (commonly used name for git patches)
28774         and /vc-dwim-log-* (vc-dwim temporary).
28776 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
28778         Fix last change in etags.c, which failed the test suite
28779         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
28780         before the last change.
28782 2015-05-23  Glenn Morris  <rgm@gnu.org>
28784         Remove charset map files from repository, generate in first bootstrap
28785         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
28786         (all): Create the stamp file.
28787         (extraclean): Delete the stamp file.
28788         * src/Makefile.in (lispintdir, charsets): New variables.
28789         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
28790         New rules.
28791         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
28792         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
28793         * etc/charsets/*.map: Remove from repository.
28795 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
28797         Cleanup etags.c to use locale-independent code
28798         Although this doesn't alter behavior (as etags doesn't use
28799         setlocale), the new version is more clearly locale-independent and
28800         the executable is a bit smaller on my platform.
28801         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
28802         Include <c-ctype.h> instead of <ctype.h>.
28803         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
28804         (begtk, midtk):
28805         Remove; no longer needed.
28806         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
28807         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
28808         c_islower, c_tolower, respectively.
28809         (notinname, begtoken, intoken, endtoken): Rewrite as functions
28810         instead of macros, and initialize the tables at compile-time
28811         rather than at run-time.
28813         Put default action first in src/Makefile
28814         * src/Makefile.in (all): Put this rule before lisp.mk.
28815         That way, plain 'make' works in the src directory again.
28817 2015-05-23  Glenn Morris  <rgm@gnu.org>
28819         * Makefile.in: Fix extraclean rule.
28820         (extraclean_dirs): New.
28821         (extraclean): Use it.
28823 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
28825         Avoid compiler warning in image.c on MS-Windows
28826         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
28827         warning in image.c.
28829 2015-05-23  Glenn Morris  <rgm@gnu.org>
28831         Fix --without-toolkit-scroll-bars builds.
28832         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
28833         Add new argument to x_clear_area1.
28834         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
28835         Update x_clear_area arguments.
28837         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
28838         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
28839         Change to included version.
28840         (LOCAL, local, totalclean): Remove.
28841         (extraclean): Delete all generated files.
28843 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
28845         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
28846         CVS/Entries exists.
28848         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
28850         * lisp/progmodes/etags.el (tags-completion-at-point-function):
28851         Don't trust the find-tag function.
28853 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
28855         Pacify --enable-gcc-warnings
28856         * src/frame.h (x_query_color): Remove redundant extern decl.
28857         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
28858         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
28859         (ftcrfont_text_extents, ftcrfont_draw):
28860         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
28861         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
28862         (x_ins_del_lines, frame_highlight, frame_unhighlight)
28863         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
28864         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
28865         (x_update_window_begin, x_connection_closed)
28866         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
28867         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
28868         (*x_gc_get_ext_data, x_extension_initialize)
28869         (x_cr_accumulate_data):
28870         Remove redundant static decl.  Many of these GCC doesn't complain
28871         about, but we might as well clean out the duplication while we're
28872         in the neighborhood.
28873         * src/xterm.c (x_fill_trapezoid_for_relief):
28874         Remove decl of nonexistent function.
28876 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
28878         Replace gui-method macros with cl-generic with &context
28879         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
28880         (gui-method-declare, gui-call): Remove.
28881         (frame-creation-function): Use cl-defgeneric.
28882         (make-frame): Adjust callers.
28883         * lisp/menu-bar.el (menu-bar-edit-menu):
28884         Use gui-backend-selection-exists-p.
28885         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
28886         (gui-backend-get-selection): New cl-generic to replace
28887         gui-get-selection method.
28888         (gui-backend-set-selection): New cl-generic to replace
28889         gui-set-selection method.
28890         (gui-selection-owner-p): New cl-generic to replace
28891         gui-selection-owner-p method.
28892         (gui-backend-selection-exists-p): New cl-generic to replace
28893         gui-selection-exists-p method.  Adjust all callers.
28894         * lisp/server.el (server-create-window-system-frame): Don't ignore
28895         window-system spec even when unsupported.
28896         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
28897         * lisp/startup.el (handle-args-function, window-system-initialization):
28898         Use cl-defgeneric.
28899         (command-line): Adjust calls accordingly.
28900         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
28901         a window-system-initialization method.
28902         (handle-args-function, frame-creation-function): Use cl-defmethod.
28903         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
28904         (gui-get-selection): Use cl-defmethod on the new functions instead.
28905         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
28906         a gui-backend-get-selection method.
28907         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
28908         Use cl-defmethod on the new functions instead.
28909         (msdos-window-system-initialization): Turn into
28910         a window-system-initialization method.
28911         (frame-creation-function, handle-args-function): Use cl-defmethod.
28912         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
28913         a window-system-initialization method.
28914         (handle-args-function, frame-creation-function): Use cl-defmethod.
28915         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
28916         (gui-get-selection): Use cl-defmethod on the new functions instead.
28917         * lisp/term/x-win.el (x-window-system-initialization): Turn into
28918         a window-system-initialization method.
28919         (handle-args-function, frame-creation-function): Use cl-defmethod.
28920         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
28921         (gui-get-selection): Use cl-defmethod on the new functions instead.
28922         * lisp/term/xterm.el (xterm--set-selection): Turn into
28923         a gui-backend-set-selection method.
28924         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
28925         (Fns_selection_owner_p): Remove unused arg `terminal'.
28926         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
28928 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
28930         Revert "Fix etags Bug#20629 that broke C++ support"
28931         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
28933 2015-05-23  Jan D  <jan.h.d@swipnet.se>
28935         Fix etags Bug#20629 that broke C++ support
28936         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
28937         Revert commit from Sun May 10 (Bug#20629).
28939         Merge branch 'cairo'.
28940         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
28941         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
28943         Merge branch 'master' into cairo
28945         Fixes to compile cairo branch without cairo
28946         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
28947         first argument.
28948         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
28949         USE_CAIRO.
28951 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
28953         * lisp/emacs-lisp/package.el: Always update selected-packages.
28954         (package--update-selected-packages): New function.
28955         (package-menu-execute): Use it before starting the transaction,
28956         this way the list of selected packages is updated even when the
28957         transaction fails.
28958         (package-menu--perform-transaction): Don't edit selected-packages.
28960 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
28962         Fix etags reading of compressed files
28963         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
28964         Include fcntl.h, for O_CLOEXEC.
28965         (process_file_name): Don't use 'popen', whose streams cannot be
28966         rewound.  Instead, uncompress the file to a temporary file,
28967         created by 'etags_mktmp', and read from that as usual.
28968         (etags_mktmp): New function.
28969         * test/etags/ETAGS.good_1:
28970         * test/etags/ETAGS.good_2:
28971         * test/etags/ETAGS.good_3:
28972         * test/etags/ETAGS.good_4:
28973         * test/etags/ETAGS.good_5: Update to be consistent with latest
28974         changes in etags.c regarding reading compressed files.
28976         Improve documentation of 'set-fontset-font'
28977         * doc/lispref/display.texi (Fontsets): Document the value of nil
28978         for the 3rd argument of 'set-fontset-font'.
28980         Fix documentation of forward-line
28981         * src/cmds.c (Fforward_line): Clarify the return value if the line
28982         at end of accessible portion of the buffer has no newline.
28983         * doc/lispref/positions.texi (Text Lines): Document what happens
28984         if the line at end of accessible portion of buffer has no newline.
28985         (Bug#20587)
28987 2015-05-22  Glenn Morris  <rgm@gnu.org>
28989         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
28991         * admin/charsets/mapconv (LC_ALL): Set to C.
28993         * Makefile.in: Add admin/charsets into top-level clean rules.
28994         (clean): Add admin/charsets.
28995         (maybeclean_dirs): New variable.
28996         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
28998         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
29000 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
29002         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
29004 2015-05-22  Glenn Morris  <rgm@gnu.org>
29006         Generate admin/charsets Makefile via configure, and make more portable
29007         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
29008         (admin/charsets/Makefile): Generate it.
29009         * admin/charsets/Makefile.in: Rename from Makefile.
29010         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
29011         New variables, set by configure.
29012         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
29013         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
29014         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
29015         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
29016         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
29017         (all): Declare PHONY.
29018         (local): New PHONY target.
29019         (map_template): New template.  Use to define short PHONY aliases.
29020         (*.map): Add directory prefixes to targets and prerequisites.
29021         Respect make verbosity.
29022         (JISC6226.map): Replace non-portable sed append without newline.
29023         (install): Remove rule.
29024         (clean): Only delete temporary sedscript.
29025         (bootstrap-clean, distclean, maintainer-clean, extraclean)
29026         (totalclean): New PHONY rules.
29027         * admin/charsets/mapconv (BASE): Replace basename with expr.
29028         (FILE): Add "mapfiles" subdirectory.
29029         (AWK): New variable.  Use throughout in place of "awk".
29030         (main): Use "gunzip -c" in place of "zcat".
29031         Don't leave whitespace before "p", for older sed.
29032         * admin/charsets/mapfiles/PTCP154: Add final newline,
29033         to make older sed versions happy.
29035 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
29037         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
29038         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
29039         (auto-revert-notify-watch-descriptor): Use defvar-local.
29040         (find-file-hook, auto-revert-tail-mode)
29041         (auto-revert-notify-add-watch): Use setq-local.
29042         (auto-revert-notify-add-watch): Don't call make-local-variable on
29043         kill-buffer-hook (bug#20601).
29045 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
29047         Change defgeneric so it doesn't completely redefine the function
29048         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
29049         previously defined methods.
29050         (cl-generic-define-method): Let-bind purify-flag instead of
29051         using `fset'.
29052         (cl--generic-prefill-dispatchers): Only define during compilation.
29053         (cl-method-qualifiers): Remove redundant alias.
29054         (help-fns-short-filename): Silence byte-compiler.
29055         * test/automated/cl-generic-tests.el:
29056         Adjust to new defgeneric semantics.
29058 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
29060         * lisp/emacs-lisp/package.el (package-menu-execute):
29061         Remove reference to remove-dups.
29063 2015-05-21  kwhite  <kwhite@gnu.org>
29065         * lisp/erc/erc.el: Hide network/channel messages.
29066         (erc-network-hide-list, erc-channel-hide-list): New lists to define
29067         message types per network/channel.
29068         (erc-add-targets): New function to parse list of targets.
29069         (erc-hide-current-message-p): Modify to check for new targets.
29071 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
29073         Don't quote nil and t in doc strings
29074         This is as per "Tips for Documentation Strings" in the elisp manual.
29075         For consistency, do the same in diagnostics and comments.
29077 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
29079         Fix a minor problem with mouse-face on mode line
29080         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
29081         mouse face also if the mouse pointer hovers above mode-line glyphs
29082         that don't come from any Lisp string.  (Bug#20620)
29084 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
29086         * lisp/emacs-lisp/package.el: Fix selected-package logic.
29087         (package-menu-execute): Mark as selected all non-upgrade packages
29088         being installed.
29089         (package-menu--perform-transaction): Don't mark anything.
29091         * lisp/emacs-lisp/package.el: Mode-line progress report.
29092         (package-menu--transaction-status): New variable.
29093         (package-menu-mode, package-menu--perform-transaction): Use it.
29095         * lisp/emacs-lisp/package.el: Better transaction messages.
29096         (package-menu--partition-transaction): New function.
29097         (package-menu--prompt-transaction-p, package-menu-execute):
29098         Use it.
29099         (package-menu--perform-transaction): Don't do any messaging.
29101         * lisp/emacs-lisp/package.el: Revert async package transactions.
29102         (package-menu-async): Update doc.
29103         (package-install-from-archive, package-download-transaction)
29104         (package-install, package-menu--perform-transaction)
29105         (package-menu-execute): Remove asynchronous functionality.
29107 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
29109         Revert doc string changes to f90.el
29110         Problem reported by Glenn Morris in:
29111         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
29112         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
29113         Revert recent changes to doc strings, as it's intended that they
29114         use grave accent, not quote.
29116 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
29118         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
29119         Improve parameter name.
29121         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
29123 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
29125         Don't require help-fns when not needed
29126         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
29127         * lisp/emacs-lisp/elint.el:
29128         Don't require help-fns at the top level
29129         * lisp/emacs-lisp/advice.el (ad-arglist):
29130         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
29131         Don't require help-fns.  (Bug#17001)
29133 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
29135         Fix slash collapsing in etags on MS-Windows
29136         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
29137         MS-Windows code from the Posix code, and support collapsing both
29138         forward- and back-slashes on MS-Windows.  Fixes a regression found
29139         by the test suite.
29141         Improve documentation of glyphless-char-display
29142         * doc/lispref/display.texi (Glyphless Chars): Improve
29143         documentation of glyphless character display.
29145         Fix "acronym" display of glyphless characters on w32
29146         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
29147         ignore "acronym" substitutes of 1 character for glyphless characters.
29149 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
29151         Add an automated test for let-when-compile
29152         * test/automated/subr-tests.el (let-when-compile): New test.
29154         Add let-when-compile macro instead of using pcase-let
29155         * lisp/subr.el (let-when-compile): New let-like macro that makes its
29156         bindings known to macros like `eval-when-compile' in the body.
29157         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
29158         a `let-when-compile'.  Also comment out the unused lexical var
29159         `el-kws-re'.
29160         The change greatly improves readability, while providing almost the
29161         same (even shorter) byte code: instead of pre-evaluating 10 variables,
29162         tossing them into a list, and destructuring that list a full screen
29163         page later, the variables are simply bound as they are evaluated,
29164         wrapped individually in `eval-when-compile'.
29166 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
29168         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
29169         (package-delete-button-action): New function.
29170         (describe-package-1): Add Delete button.
29172         * lisp/emacs-lisp/package.el: Better dependency description.
29173         (package--used-elsewhere-p): New optional arg, ALL, and return
29174         package-desc objects instead of names.
29175         (package-delete): Update accordingly.
29176         (describe-package-1): Describe which packages require the package.
29178 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
29180         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
29181         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
29182         Fix doc-string.
29184         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
29185         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
29186         (switch-to-buffer): If the selected window is strongly dedicated
29187         to its buffer, signal error before prompting for buffer name.
29188         Handle `switch-to-buffer-in-dedicated-window'.
29189         * doc/lispref/windows.texi (Switching Buffers):
29190         Document `switch-to-buffer-in-dedicated-window'.
29192 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
29194         Prefer "this" to “this” in doc strings
29195         This mostly just straightens quotes introduced in my previous patch.
29196         Suggested by Dmitry Gutov in:
29197         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
29198         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
29199         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
29200         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
29201         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
29202         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
29203         Prefer straight double quotes to curved double quotes in doc strings.
29205         Fix minor quoting problems in doc strings
29206         These were glitches regardless of how or whether we tackle the
29207         problem of grave accent in doc strings.
29208         * lisp/calc/calc-aent.el (math-restore-placeholders):
29209         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
29210         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
29211         * lisp/leim/quail/hebrew.el ("hebrew-new")
29212         ("hebrew-biblical-sil"):
29213         * lisp/leim/quail/thai.el ("thai-kesmanee"):
29214         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
29215         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
29216         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
29217         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
29218         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
29219         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
29220         (semantic-tag-components):
29221         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
29222         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
29223         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
29224         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
29225         * lisp/emacs-lisp/generator.el (iter-next):
29226         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
29227         (gnus-article-mode-syntax-table):
29228         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
29229         * lisp/net/soap-client.el (soap-wsdl-get):
29230         * lisp/net/telnet.el (telnet-mode):
29231         * lisp/org/org-compat.el (org-number-sequence):
29232         * lisp/org/org.el (org-remove-highlights-with-change)
29233         (org-structure-template-alist):
29234         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
29235         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
29236         (handwrite-12pt, handwrite-13pt):
29237         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
29238         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
29239         * lisp/progmodes/verilog-mode.el (verilog-tool)
29240         (verilog-string-replace-matches, verilog-preprocess)
29241         (verilog-auto-insert-lisp, verilog-auto-insert-last):
29242         * lisp/textmodes/makeinfo.el (makeinfo-options):
29243         * src/font.c (Ffont_spec):
29244         Fix minor quoting problems in doc strings, e.g., missing quote,
29245         ``x'' where `x' was meant, etc.
29246         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
29247         Fix minor quoting problem in other string.
29248         * lisp/leim/quail/ethiopic.el ("ethiopic"):
29249         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
29250         Omit unnecessary quotes.
29251         * lisp/faces.el (set-face-attribute, set-face-underline)
29252         (set-face-inverse-video, x-create-frame-with-faces):
29253         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
29254         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
29255         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
29256         * lisp/net/tramp.el (tramp-methods):
29257         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
29258         * lisp/textmodes/artist.el (artist-ellipse-right-char)
29259         (artist-ellipse-left-char, artist-vaporize-fuzziness)
29260         (artist-spray-chars, artist-mode, artist-replace-string)
29261         (artist-put-pixel, artist-text-see-thru):
29262         * lisp/vc/ediff-util.el (ediff-submit-report):
29263         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
29264         Use double-quotes rather than TeX markup in doc strings.
29265         * lisp/skeleton.el (skeleton-pair-insert-maybe):
29266         Reword to avoid the need for grave accent and apostrophe.
29267         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
29268         Don't use grave and acute accents to quote.
29270 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
29272         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
29273         Silence compiler.
29275 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
29277         Try to port new etags tests to MS-Windows
29278         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
29279         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
29280         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
29281         Adjust to test-case changes below.
29282         * test/etags/Makefile (CSRC): Remove dostorture.c.
29283         Whatever it was trying to test, wasn't working portably.
29284         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
29285         just a line-ending problem.
29286         * test/etags/c-src/dostorture.c: Remove.
29287         * test/etags/cp-src/c.C: Remove stray CR.
29288         * test/etags/html-src/algrthms.html: Remove trailing CRs.
29289         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
29290         but if someone edits it later it should stay UTF-8-compatible.
29292 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
29294         Fix display of overlapping window-specific overlays
29295         * src/keyboard.c (adjust_point_for_property): When adjusting point
29296         due to display strings, ignore overlays that are specific to
29297         windows other than the currently selected one.
29298         * src/xdisp.c (handle_single_display_spec): If the display
29299         property comes from an overlay, arrange for buffer iteration to
29300         resume only after the end of that overlay.  (Bug#20607)
29302 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
29304         New command icomplete-force-complete-and-exit
29305         * lisp/icomplete.el (icomplete-force-complete-and-exit):
29306         New command
29307         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
29308         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
29309         (icomplete-minibuffer-map): Bind C-j to it.
29310         (icomplete-forward-completions, icomplete-backward-completions):
29311         Mention the new command in the docstring.
29312         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
29313         Revert the previous fix for bug#17545.
29315 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
29317         Fix last commit
29319         In Elisp manual explain how to override window manager positioning
29320         (Bug#20552)
29321         * doc/lispref/frames.texi (Position Parameters): Give example of
29322         how to override a window manager positioning decision.
29324         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
29325         * src/frame.c (Fdelete_frame): In doc-string mention that frame
29326         can't be deleted if it has a surrogate minibuffer.
29327         * doc/lispref/frames.texi (Minibuffers and Frames)
29328         (Deleting Frames): Explain "surrogate minibuffer frames".
29330         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
29332 2015-05-18  Glenn Morris  <rgm@gnu.org>
29334         Add option to ignore commit lines matching a pattern in ChangeLog
29335         * build-aux/gitlog-to-changelog: Add --ignore-line option.
29336         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
29338 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
29340         Don't skip new etags tests on non-UTF-8 hosts
29341         Problem reported by Eli Zaretskii for MS-Windows.
29342         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
29343         (LC_ALL): Set to C if the current locale isn't UTF-8.
29344         (.PHONY): Remove ediff_1 thru ediff_5.
29345         (check): Always run.
29347 2015-05-18  Glenn Morris  <rgm@gnu.org>
29349         * lisp/calculator.el (calculator-funcall):
29350         * lisp/textmodes/artist.el (artist-spray-random-points):
29351         Use standard degree/radian conversion utilities.
29353         Further lisp-complete-symbol related cleanup.
29354         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
29355         Unadvertise non-functional argument.  Replace obsolete alias.
29357 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
29359         Add a test case for Maven warning ouput
29360         * test/automated/compile-tests.el
29361         (compile-tests--test-regexps-data): Add a case for Maven warning
29362         ouput.
29363         (compile--test-error-line): Check the compilation message type, if
29364         it's specified in the test data.
29366 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
29368         Update Maven compilation-mode entry to distinguish warnings
29369         * lisp/progmodes/compile.el
29370         (compilation-error-regexp-alist-alist): Update Maven entry to
29371         distinguish warnings (bug#20556).
29373 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
29375         * test/automated/sgml-mode-tests.el: New file.
29377 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
29379         Improve handling of the first Git revision
29380         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
29381         there's no next entry, delete until the end of the buffer.
29382         (log-view-end-of-defun-1): Stop at eob.
29383         * lisp/vc/vc-annotate.el
29384         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
29385         when previous-revision is nil.
29386         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
29387         with `--' to avoid ambiguity.
29388         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
29389         returned revision string.
29390         (vc-git-annotate-time): Expect `^' before the first revision.
29391         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
29392         REV1 is nil, and REV2 is not.
29393         * lisp/vc/vc.el: Update the description of the `diff' function.
29395 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
29397         Allow checkdoc to be called in batch
29398         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
29399         is non-nil, echo the error with `warn'.
29400         How it can be used in -batch:
29401         (with-current-buffer (find-file "checkdoc.el")
29402           (checkdoc-current-buffer t))
29404 2015-05-18  Glenn Morris  <rgm@gnu.org>
29406         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
29408 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
29410         * admin/notes/unicode: New section "binary files".
29412         Change new etags test to use UTF-8 encoding
29413         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
29414         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
29415         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
29416         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
29417         * test/etags/html-src/softwarelibero.html:
29418         Switch to UTF-8 encoding.
29419         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
29420         Remove Makefile, as it's too incestuous to have the test input
29421         include the build procedure.
29422         (UTF8_LOCALE, UTF_ENCODING): New macros.
29423         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
29424         (check): Skip if not UTF-8.
29425         (.PHONY): New rule.
29426         (FRC): Remove, as superseded by .PHONY.  All uses removed.
29427         (regexfile): Prefer printf to echo when outputting oddball chars.
29428         (.PRECIOUS): Remove, as these files are not built.
29430         Rename 'foo-gzipped' to 'foo.gz'
29431         * test/automated/data/decompress/foo.gz:
29432         Rename from test/automated/data/decompress/foo-gzipped,
29433         to make it easier for other tools to tell that it's compressed.
29434         * test/automated/zlib-tests.el (zlib--decompress):
29435         Adjust to renamed file.
29437 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
29439         Set up default-directory
29440         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
29441         binding for `v'.
29442         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
29443         appropriate value for default-directory.
29445 2015-05-17  Samer Masterson  <samer@samertm.com>
29447         * lisp/eshell/em-term.el (eshell-term-sentinel):
29448         No-op by default, only kills term buffer if
29449         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
29450         (eshell-destroy-buffer-when-process-dies): New custom to preserve
29451         previous behavior.
29453         eshell: Introduce new buffer syntax
29454         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
29455         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
29456         needed (Bug#19319).
29457         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
29458         (eshell-get-target): Remove shorthand-specific code.
29459         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
29460         '#<buffer-name>'.
29462 2015-05-17  Jan D  <jan.h.d@swipnet.se>
29464         Merge branch 'master' into cairo
29466 2015-04-26  Jan D  <jan.h.d@swipnet.se>
29468         Merge branch 'master' into cairo
29470         Add PBM support for cairo
29471         * src/image.c (xcolor_to_argb32): New function.
29472         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
29473         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
29474         XImagePtr if ! USE_CAIRO.
29475         (pbm_load): Add cairo support.
29477 2015-04-12  Jan D  <jan.h.d@swipnet.se>
29479         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
29480         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
29481         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
29482         x_free_cr_resources.
29484         Handle specified bg in images.  Use generic libpng code for PNGs.
29485         * src/image.c (get_spec_bg_or_alpha_as_argb)
29486         (create_cairo_image_surface): New functions when USE_CAIRO.
29487         (xpm_load): Call the above functions.  Handle XPM without mask
29488         when USE_CAIRO.
29489         (png_load_body): Handle USE_CAIRO case.
29490         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
29491         instead.
29492         (jpeg_load_body): Call create_cairo_image_surface.
29493         (gif_load, svg_load_image): Handle specified background, call
29494         create_cairo_image_surface.
29495         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
29497 2015-04-11  Jan D  <jan.h.d@swipnet.se>
29499         Support GIF and TIFF with cairo
29500         * configure.ac: Allow jpeg with cairo.
29501         Allow tiff and gif with cairo.
29502         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
29503         (tiff_load): Create cairo image surface if USE_CAIRO.
29504         (gif_load): Ditto.
29506         Support JPEG with USE_CAIRO
29507         * configure.ac: Allow jpeg with cairo.
29508         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
29510 2015-04-05  Jan D  <jan.h.d@swipnet.se>
29512         Support RSVG and cairo
29513         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
29514         * src/dispextern.h (struct image): Add cr_data2 if cairo.
29515         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
29516         (x_clear_image): Free cr_data and cr_data2 if set.
29517         (xpm_load): Assign data to cr_data2.
29518         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
29520 2015-04-03  Jan D  <jan.h.d@swipnet.se>
29522         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
29523         * configure.ac (HAVE_RSVG): Move after cairo.
29524         (USE_CAIRO): Disable rsvg, don't disable Xpm.
29525         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
29526         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
29527         don't return early.
29528         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
29529         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
29530         and create a surface.
29532         Tool tips for menus did not show any text.
29533         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
29534         tip frames, the geometry may be wrong.
29536         Merge branch 'master' into cairo, fixes tooltips not shown.
29538         Merge branch 'master' into cairo
29540         Add CAIRO_CFLAGS to lwlib/Makefile.in
29541         * Makefile.in (CAIRO_CFLAGS): Add.
29543 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29545         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
29547 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29549         Draw outermost line using black relief and erase corners also for cairo.
29550         * src/xterm.c [USE_CAIRO]: Include math.h.
29551         (enum corners) [USE_CAIRO]: New enum.
29552         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
29553         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
29554         than 1, draw the outermost line using the black relief.
29556         * src/xterm.c (x_fill_trapezoid_for_relief):
29557         Remove unnecessary cairo_close_path.
29559 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29561         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
29563         * src/xterm.c (x_draw_stretch_glyph_string):
29564         Call x_reset_clip_rectangles instead of XSetClipMask.
29566         Use int instead of unsigned int for width and height args.
29567         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
29568         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
29569         width and height args.
29571         Modernize k&r cairo-related function declarations.
29572         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
29573         (xg_print_frames_dialog): Modernize k&r declarations.
29574         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
29575         (Fx_print_frames_dialog): Modernize k&r declarations.
29576         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
29577         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
29578         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
29579         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
29580         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
29581         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
29582         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
29583         (x_clear_area): Modernize k&r declarations.
29585         Implement wave-style variant of underlining for cairo.
29586         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
29587         (x_draw_underwave) [USE_CAIRO]: Use it.
29589         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
29590         instead of XFillRectangle.
29592 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29594         Fix fringe bitmap initialization for cairo
29595         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
29596         data for cairo image surface.
29597         * src/xterm.c (x_cr_define_fringe_bitmap):
29598         Call cairo_surface_mark_dirty.
29600 2015-02-11  Jan D  <jan.h.d@swipnet.se>
29602         Add cairo drawing
29603         * configure.ac (with-cairo): New option.
29604         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
29605         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
29606         Output "Does Emacs use cairo?".
29607         * lisp/version.el (emacs-version): Add cairo version.
29608         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
29609         (FONT_OBJ): Add comment about ftcrfont.
29610         (ALL_CFLAGS): Add CAIRO_CFLAGS.
29611         (LIBES): Add CAIRO_LIBS.
29612         * src/dispextern.h (struct image): Add cr_data for cairo.
29613         (x_cr_init_fringe): Declare.
29614         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
29615         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
29616         * src/fringe.c (x_cr_init_fringe): New function name that shares code
29617         with w32_init_fringe.
29618         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
29619         * src/ftfont.c (ftfont_info_size); New global variable.
29620         (ftfont_open2): New extern function almost the same as old ftfont_open,
29621         but takes the font_object as argument.
29622         (ftfont_open): Build font object and call ftfont_open2.
29623         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
29624         * src/gtkutil.c (xg_clear_under_internal_border)
29625         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
29626         Only queue_draw if not cairo.  Change args to x_clear_area.
29627         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
29628         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
29629         (xg_print_frames_dialog): New functions for printing.
29630         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
29631         (xg_print_frames_dialog): Declare.
29632         * src/image.c: Add defined (USE_CAIRO) for PNG.
29633         Add !defined USE_CAIRO for W32 PNG code.
29634         (x_clear_image): If cairo, destroy the surface in cr_data.
29635         (png_load): Add new cairo compatible implementation.
29636         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
29637         * src/xfns.c: New section Printing.
29638         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
29639         (x-print-frames-dialog): New printing functions.
29640         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
29641         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
29642         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
29643         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
29644         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
29645         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
29646         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
29647         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
29648         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
29649         Declare.
29650         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
29651         (max_fringe_bmp, fringe_bmp): New variables.
29652         (x_gc_get_ext_data, x_extension_initialize)
29653         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
29654         (x_set_cr_source_with_gc_foreground)
29655         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
29656         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
29657         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
29658         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
29659         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
29660         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
29661         (x_update_begin): Create cairo surface if needed.
29662         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
29663         (x_update_end): Paint cairo drawing surface to xlib surface.
29664         (x_clear_under_internal_border, x_after_update_window_line): Adjust
29665         arguments to x_clear_area.
29666         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
29667         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
29668         of XSetClipMask.
29669         (x_set_glyph_string_clipping)
29670         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
29671         instead of XSetClipRectangles.
29672         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
29673         Use x_fill_rectangle instead of XFillRectangle.
29674         (x_draw_glyph_string_foreground)
29675         (x_draw_composite_glyph_string_foreground)
29676         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
29677         instead of XDrawRectangle.
29678         (x_draw_relief_rect): Add code for USE_CAIRO.
29679         Call x_reset_clip_rectangles instead of XSetClipMask.
29680         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
29681         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
29682         instead of XSetClipMask.
29683         (x_draw_image_foreground, x_draw_image_foreground_1):
29684         x_draw_rectangle instead of XDrawRectangle.
29685         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
29686         XFillRectangle.
29687         (x_draw_image_glyph_string): If img has cr_data, use it as
29688         a cairo surface.
29689         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
29690         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
29691         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
29692         x_reset_clip_rectangles instead of XSetClipMask.
29693         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
29694         (x_clear_area1): New function that calls XClearArea.
29695         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
29696         non-cairo.
29697         (x_clear_frame): x_clear_window instead of XClearWindow.
29698         (x_scroll_run): Set frame garbaged if cairo.
29699         (XTmouse_position): Initialize *part to 0.
29700         (x_scroll_bar_create): Adjust arguments to x_clear_area.
29701         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
29702         x_fill_rectangle instead of XFillRectangle.
29703         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
29704         arguments to x_clear_area.
29705         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
29706         (handle_one_xevent): Adjust arguments to x_clear_area.
29707         Destroy cairo surface for frame if ConfigureNotify.
29708         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
29709         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
29710         x_reset_clip_rectangles instead of XSetClipMask.
29711         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
29712         x_reset_clip_rectangles instead of XSetClipMask.
29713         (x_clear_frame_area): Adjust arguments to x_clear_area.
29714         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
29715         (x_term_init): Call x_extension_initialize if cairo.
29716         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
29717         x_cr_destroy_fringe_bitmap for cairo.
29718         (x_initialize): Call x_cr_init_fringe for cairo.
29719         * src/xterm.h: Add include of cairo header files.
29720         (x_bitmap_record): Add img if cairo.
29721         (x_gc_ext_data): New struct for cairo.
29722         (x_display_info): Add ext_codes for cairo.
29723         (x_output): Add cr_context and cr_surface for cairo.
29724         (x_clear_area): Change arguments from Display*/Window to frame pointer.
29725         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
29726         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
29727         (x_cr_draw_frame, x_cr_export_frames): Declare.
29729 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
29731         Fix integer-valued `mouse-highlight' (Bug#20590)
29732         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
29734 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
29736         MS-Windows followup for ASCIIfication of curved quotes
29737         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
29738         test for curved quotes being displayable, after switching the
29739         terminal encoding.  (Bug#20545)
29741 2015-05-17  Jan D  <jan.h.d@swipnet.se>
29743         Add comment that x_shift_glyphs_for_insert is never called
29744         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
29745         Add comment that this function is never called.
29747 2015-05-16  Glenn Morris  <rgm@gnu.org>
29749         * src/lisp.mk: Remove from repository and generate at build-time.
29750         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
29751         (shortlisp_filter): New variable.
29752         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
29753         (distclean): Remove lisp.mk.
29754         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
29755         * lisp/loadup.el: Tweak layout to make it easier to parse.
29756         * make-dist: Do not distribute src/lisp.mk.
29758 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
29760         Display shorter dates in Git annotate output
29761         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
29762         format (when not overridden with vc-git-annotate-switches).
29763         (vc-git-annotate-time): Support the short format, as well as ISO
29764         8601 that has been used until now (bug#5428).
29766 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
29768         ASCIIfy curved quotes on displays lacking them
29769         * lisp/international/mule-cmds.el (set-locale-environment):
29770         If curved quotes don't work, display straight ASCII approximations
29771         (Bug#20545).
29773 2015-05-16  Glenn Morris  <rgm@gnu.org>
29775         Small src/Makefile simplification
29776         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
29777         * src/Makefile.in (lisp): Derive from shortlisp.
29778         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
29780 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
29782         * lisp/help-mode.el (help-go-forward): Doc fix.
29783         (Bug#20577)
29785         * doc/lispref/debugging.texi (Profiling): Improve indexing.
29786         (Bug#20576)
29788 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
29790         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
29791         have one fewer `not'.
29793         * lisp/vc/vc-git.el (vc-git-diff-switches)
29794         (vc-git-annotate-switches, vc-git-resolve-conflicts)
29795         (vc-git-program, vc-git-root-log-format): Remove the redundant
29796         :group declarations.
29798 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
29800         Removes the predicate from lisp-complete-symbol (Bug#20456)
29801         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
29802         and remove it from the docstring.
29804 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
29806         Add new option vc-git-resolve-conflicts
29807         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
29808         (vc-git-find-file-hook): Add to after-save-hook only when the
29809         above is non-nil.
29810         (vc-git-resolve-when-done): Update to honor the new variable.
29811         (Bug#20292)
29813 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
29815         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
29816         (tabulated-list-init-header): Document new behavior.
29817         (tabulated-list-print-fake-header): Do nothing if
29818         `tabulated-list--header-string' is nil.
29819         (tabulated-list--header-string): Add a docstring.
29820         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
29821         * etc/NEWS: Document it.
29823 2015-05-15  Leo Liu  <sdl.web@gmail.com>
29825         Revert "Fix cps--gensym"
29826         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
29827         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
29829 2015-05-15  Glenn Morris  <rgm@gnu.org>
29831         Replace AC_SUBST_FILE in configure with include in Makefiles
29832         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
29833         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
29834         (AUTO_DEPEND): New output variable.
29835         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
29836         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
29837         (lwlib_deps_frag): Replace by conditional include.
29838         * lwlib/autodeps.mk: Remove file.
29839         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
29840         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
29841         (oldxmenu_deps_frag): Replace by conditional include.
29842         * oldXMenu/autodeps.mk: Remove file.
29843         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
29844         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
29845         (lisp_frag): Replace by an include.
29846         (deps_frag): Replace by conditional include.
29847         * src/autodeps.mk: Remove file.
29849         Tweak japanese.el's loading of dependencies
29850         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
29851         * lisp/language/japanese.el: Use require rather than load.
29852         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
29853         Provide a feature.
29854         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
29855         Provide a feature in the generated file.
29857 2015-05-15  Jan D  <jan.h.d@swipnet.se>
29859         Fix NS warnings
29860         * src/nsmenu.m (ns_popup_dialog)
29861         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
29862         * src/nsfns.m (Fx_create_frame): Remove unused variables.
29863         (Fns_read_file_name): Initialize fname, remove ret.
29864         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
29865         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
29866         Remove unused variable.
29867         (init): Add parantesis in if.
29868         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
29870 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
29872         Fix a enum conversion warning in macfont.m
29873         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
29874         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
29876 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
29878         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
29879         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
29881 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
29883         * lisp/cus-start.el: Add ns-confirm-quit.
29885         Fix warnings on OSX 10.10
29886         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
29887         OSX versions.
29888         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
29889         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
29890         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
29891         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
29892         setScalesWhenResized for OSX < 10.6.
29893         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
29894         * src/nsterm.m (ns_copy_bits): New function that does not use
29895         deprecated NSCopyBits.
29896         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
29897         (runAlertPanel): New function.
29898         (applicationShouldTerminate:): Call runAlertPanel.
29899         (initFrameFromEmacs, toggleFullScreen:): Only call
29900         useOptimizedDrawing for OSX < 10.10.
29901         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
29902         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
29903         (draggingEntered:): Returns NSDragOperation.
29904         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
29906 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
29908         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
29909         (package--init-file-ensured): New variable.
29910         (package-initialize, package--ensure-init-file): Use it.
29912 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
29914         Honor :fore/background for XBM on NS (Bug#14969)
29915         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
29916         initFromXBM takes bg, fg args, remove flip arg.
29917         (ns_image_from_XBM): Add bg, fg args.
29918         * src/image.c (x_create_bitmap_from_data)
29919         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
29920         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
29921         initFromXBM.  Remove flip arg.
29922         (initFromSkipXBM): Move code to initFromXBM.
29923         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
29924         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
29925         always false.
29926         Remove bit flipping (bitPat, swt), generated incorrect images when
29927         width/height wasn't a multiple of 8.
29928         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
29929         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
29930         remove flip arg.
29932 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
29934         * lisp/emacs-lisp/package.el: Be more careful with the init file.
29935         (package--ensure-init-file): Check that user-init-file is set,
29936         exists, is readable, and is writable.  (Bug#20584)
29937         Also expand the docstring.
29939 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
29941         Sync with upstream verilog-mode revision 6232468
29942         * lisp/progmodes/verilog-mode.el
29943         (verilog-font-lock-grouping-keywords-face)
29944         (verilog-highlight-grouping-keywords): Fix use of face when
29945         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
29946         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
29947         parent is reset, bug906.  Reported by Ken Schmidt.
29948         (verilog-auto-inout-module): Add fourth regexp argument to
29949         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
29950         Reported by John Tillema.
29951         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
29952         modport if signal attachment is itself a modport.  Reported by
29953         Matthew Lovell.
29954         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
29955         always_comb and always_latch, bug844.  Reported by Greg Hilton.
29956         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
29957         with many curly-bracket pairs, bug663.
29958         (verilog-set-auto-endcomments): Fix end comments for functions of
29959         type void, etc.  Reported by Alex Reed.
29960         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
29961         caused by indent-line-to deleting tabls pre 24.5.
29962         (verilog-nameable-item-re): Fix nameable items that can have an
29963         end-identifier to include endchecker, endgroup, endprogram,
29964         endproperty, and endsequence.  Reported by Alex Reed.
29965         (verilog-label-be): When auto-commenting a buffer, consider
29966         auto-comments on all known keywords (not just a subset thereof).
29967         Reported by Alex Reed.
29968         (verilog-auto-end-comment-lines-re)
29969         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
29970         Automatically comment property/endproperty blocks to match other
29971         similar blocks like sequence/endsequence, function/endfunction, etc.
29972         Reported by Alex Reed.
29973         (verilog-set-auto-endcomments): Detect the function- or task-name
29974         when auto-commenting blocks that lack an explicit portlist.
29975         Reported by Alex Reed.
29976         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
29977         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
29978         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
29979         is nil, fix indenting initial/final to match always statements,
29980         bug825.  Reported by Tim Clapp.
29981         (verilog-extended-complete-re): Fix indentation of DPI-C imports
29982         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
29983         Mao and Jason Forkey.
29984         (verilog-read-decls): Fix parsing typed interfaces.  Fix
29985         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
29986         Fix localparam not being ignored in AUTOINSTPARAM,
29987         bug889.  Reported by Shannon Hill.
29988         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
29989         bug793.  Reported by Pierre-David Pfister.
29990         (verilog-auto-arg-format, verilog-auto-arg-ports):
29991         Add verilog-auto-arg-format to support newlines in AUTOARG.
29992         Reported by Jie Xiao.
29993         (verilog-batch-execute-func): Do not batch re-auto files loaded by
29994         Local Variables.  Fix printing "no changes to be saved" with
29995         verilog-batch.  Reported by Dan Dever.
29996         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
29997         interface-only modules, bug721.  Reported by Dean Hoyt.
29998         Author: Alex Reed <acreed4@gmail.com>
29999         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
30000         Don't treat '<keyword>:<identifier>' as the start of a labeled
30001         statement, bug905.  Reported by Enzo Chi.
30002         (verilog-directive-re, verilog-compiler-directives)
30003         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
30004         directives (plus some extras) when determining indentation, bug
30005         901.  Reported by Bernd Beuster.
30006         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
30007         iff expression doesn't start with word-character, bug900.
30008         (verilog-optional-signed-range-re, verilog-optional-signed-re):
30009         Fix incorrect indentation/alignment of unsigned declarations,
30010         bug897.
30011         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
30012         always constructs, bug895.
30013         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
30014         Reported by Eric Mastromarchi.
30015         (verilog-beg-of-statement): Fix indenting for some forms of
30016         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
30017         continued assignment incorrect if first line ends with ']', bug437.
30018         Reported by Dan Dever.  Fix indention of cover inside an
30019         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
30020         blocks, bug842.
30021         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
30022         Reported by Kaushal Modi.
30023         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
30024         (verilog-backward-token): Fix indenting sensitivity lists with
30025         named events, bug840.  Reed.
30026         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
30027         nil not honoring 'forever', 'foreach', and 'do' keywords.
30029 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
30031         Check for invalid GTK+ monitor scales
30032         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
30033         INT_MAX for too-large scales.  All callers changed to assume the
30034         result is valid (Bug#20432).
30035         (xg_frame_set_char_size, xg_update_scrollbar_pos):
30036         Calculate scale only if needed.
30037         Show ASCII approximations instead.
30039 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
30041         Fix daemon crashes when linum-mode is turned on early on
30042         * src/window.c (Fwindow_end): Don't try calling display engine
30043         functions on initial-frame frame.  (Bug#20565)
30045         Fix selective diff browsing in Ediff
30046         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
30047         Go to the beginning of the region before searching for the
30048         ediff-regexp-focus-* regexps.  (Bug#20568)
30050 2015-05-14  Jan D  <jan.h.d@swipnet.se>
30052         Fixes bug#20142
30053         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
30054         arrive in the main loop, even for Gtk 3 (Bug#20142).
30056         Don't access display after i/o error (Bug#19147).
30057         * src/xterm.c (x_connection_closed): Add third arg ioerror.
30058         If ioerror, set display to 0 (Bug#19147).
30059         (x_error_quitter): Call x_connection_closed with third arg false.
30060         (x_io_error_quitter): Call x_connection_closed with third arg true.
30062         Handle GTK_SCALE, fixes Bug#20432.
30063         * src/gtkutil.c (xg_get_gdk_scale): New function.
30064         (xg_frame_set_char_size)
30065         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
30066         (xg_get_default_scrollbar_height)
30067         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
30068         when setting sizes (Bug#20432).
30070 2015-05-13  Leo Liu  <sdl.web@gmail.com>
30072         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
30074 2015-05-13  Glenn Morris  <rgm@gnu.org>
30076         Fix bootstrap (void function cl-member).
30077         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
30078         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
30080 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
30082         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
30083         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
30084         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
30085         Avoid defalias for closures which are not immutable.
30086         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
30087         the dispatchers table with various entries.
30088         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
30089         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
30091 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
30093         Improve tagging of C bindings in DEFVAR_*
30094         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
30095         from DEFVAR_*.
30097 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
30099         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
30101 2015-05-12  Glenn Morris  <rgm@gnu.org>
30103         * lisp/progmodes/tcl.el (tcl-filter):
30104         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
30106         Add basic VC push support
30107         * lisp/vc/vc.el (vc-push): New autoloaded command.
30108         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
30109         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
30110         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
30111         (vc-bzr-push): New.
30112         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
30113         (vc-git-pull): Reimplement using vc-git--pushpull.
30114         (vc-git-push): New.
30115         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
30116         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
30117         * doc/emacs/maintaining.texi (Pulling / Pushing):
30118         Rename from "VC Pull".  Mention pushing.
30119         (VC With A Merging VCS, VC Change Log): Update xrefs.
30120         (Branches): Update menu.
30121         * doc/emacs/emacs.texi: Update menu.
30122         * etc/NEWS: Mention this.
30124 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
30126         Improve the seq pcase pattern and the `seq-let' macro
30127         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
30128         object is a sequence, and binds each element of ARGS to the
30129         corresponding element of the sequence.
30131 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
30133         Fix tags created from DEFVAR_* declarations in C
30134         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
30135         to make tags extracted from DEFVAR_* declarations more accurate.
30137         Add a test suite for etags
30138         * test/etags/: New test suite, adapted from
30139         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
30140         whose original author is Francesco Potortì <pot@gnu.org>.
30142         Fix tagging of symbols in C enumerations
30143         * lib-src/etags.c (consider_token): Don't tag symbols in
30144         expressions that assign values to enum constants.  See
30145         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
30146         for details.
30147         (C_entries): Reset fvdef to fvnone after processing a preprocessor
30148         conditional and after a comma outside of parentheses.
30150 2015-05-12  Glenn Morris  <rgm@gnu.org>
30152         * lisp/url/url-handlers.el (url-file-name-completion)
30153         (url-file-name-all-completions): Silence compiler.
30155         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
30157         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
30159 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
30161         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
30162         (cl--generic-mandatory-args): Remove.
30163         (cl--generic-split-args): New function.
30164         (cl-generic-define, cl--generic-lambda): Use it.
30165         (cl-generic-define-method): Use it as well, and add support for
30166         context args.
30167         (cl--generic-get-dispatcher): Handle &context dispatch.
30168         (cl--generic-cache-miss): `dispatch-arg' can now be a
30169         context expression.
30170         (cl--generic-dispatchers): Pre-fill.
30171         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
30172         New test.
30174 2015-05-11  Glenn Morris  <rgm@gnu.org>
30176         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
30178 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
30180         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
30181         * lisp/term/rxvt.el: Require term/xterm.
30182         (rxvt-function-map): Use xterm-rxvt-function-map.
30183         (rxvt-standard-colors): Move before first use.
30184         (terminal-init-rxvt): Use xterm--push-map and
30185         xterm-register-default-colors.
30186         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
30187         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
30188         Move shared bindings between rxvt and xterm to it.
30189         (xterm-function-map): Use it.  Move the xterm-paste binding to
30190         xterm-rxvt-function-map (bug#20444).
30191         (xterm-standard-colors): Move before first use.
30192         (xterm--push-map): New function.
30193         (xterm-register-default-colors): Take standard colors as argument.
30194         (terminal-init-xterm): Use it.  Adjust call to
30195         xterm-register-default-colors.
30197 2015-05-11  Glenn Morris  <rgm@gnu.org>
30199         * lisp/term/x-win.el: Quieten --without-x compilation.
30200         (x-own-selection-internal, x-disown-selection-internal)
30201         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
30202         Declare.
30204         * Makefile.in (emacslog): Remove srcdir.
30205         (ChangeLog): Update for the above.
30207 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
30209         python.el: better limit for looking-back calls
30210         * lisp/progmodes/python.el (python-shell-accept-process-output):
30211         Use last comint prompt start as limit for looking-back.
30213 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
30215         CEDET (srecode-insert-fcn): Fix use of oref on a class
30216         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
30217         on a class.  Reported by Pierre Lorenzon.
30218         (srecode-template-inserter-point): Remove declaration.
30220         CEDET (srecode-create-dictionary): Avoid obsolete object name
30221         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
30222         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
30224 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
30226         C-x 8 shorthands for curved quotes, Euro, etc.
30227         Although C-x 8 lets you insert arbitrary Unicode characters,
30228         it's awkward to use this to insert commonly used symbols such as curved
30229         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
30230         characters commonly found in English text and in basic math.
30231         For example, assuming the Alt key works on your keyboard and iso-transl
30232         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
30233         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
30234         (Bug#20499)
30235         * doc/emacs/mule.texi (Unibyte Mode):
30236         A few other printing characters now work too.
30237         * etc/NEWS: Document this.
30238         * lisp/international/iso-transl.el (iso-transl-char-map):
30239         Also support the following characters:
30240         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
30242 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
30244         Add xref-find-regexp
30245         * lisp/progmodes/xref.el (xref-find-function): Describe the
30246         `matches' action.
30247         (xref-find-regexp): New command, using it.
30248         (xref-collect-references): Rename to xref-collect-matches.
30249         (xref--collect-reference): Rename to xref--collect-match.
30250         (xref-collect-matches, xref--collect-match): Accept new argument,
30251         KIND.  Update accordingly.
30252         (xref--regexp-to-extended): New function.
30253         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
30254         `matches' action.
30255         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
30256         * lisp/progmodes/etags.el (etags-xref-find):
30257         Support the `matches' action.
30258         (etags--xref-find-matches): New function.
30260 2015-05-10  Glenn Morris  <rgm@gnu.org>
30262         * Makefile.in: Fixes for recent change-history changes.
30263         (change-history-nocommit): Update footer regexp.
30264         Ensure output script stays executable.
30266 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
30268         New version of `seq-let' based on a pcase pattern
30269         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
30270         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
30272 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
30274         Add basic HTML5 tags and a template
30275         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
30276         (html-tag-alist): Add HTML5 tags.
30277         (html-tag-help): Add new tags descriptions.
30278         (html-navigational-links): Template for nav links.
30279         (html-html5-template): Template for a HTML5 page.
30281 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
30283         semantic/symref/grep: Don't use word boundaries
30284         * lisp/cedet/semantic/symref/grep.el
30285         (semantic-symref-perform-search): Instead of wrapping input in
30286         word boundaries, check that the characters before and after are
30287         not word constituents.
30289         semantic/symref/grep: Support regexp search
30290         * lisp/cedet/semantic/symref.el
30291         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
30292         the search type is regexp.
30293         * lisp/cedet/semantic/symref/grep.el
30294         (semantic-symref-perform-search): Support the regexp search type.
30295         Pass -E to Grep when it's used.
30297         semantic-symref-regexp: Allow to input an arbitrary string
30298         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
30299         Allow to input an arbitrary string interactively.
30301         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
30302         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
30303         Remove tag-symbol-match-p from the default value
30304         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
30306         Declare find-tag obsolete
30307         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
30308         xref-find-definitions.
30310 2015-05-10  Jan D  <jan.h.d@swipnet.se>
30312         Draw composite string correctly (Bug#20537)
30313         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
30314         New function.
30315         (ns_draw_glyph_string): Call it.
30317 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
30319         Avoid infloop in ERC
30320         * lisp/simple.el (line-move-to-column): Ignore field boundaries
30321         while computing line beginning position.  (Bug#20498)
30323 2015-05-08  Glenn Morris  <rgm@gnu.org>
30325         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
30326         * build-aux/gitlog-to-emacslog: Check called from right directory.
30327         (srcprefix): Remove.
30329         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
30330         * Makefile.in (ChangeLog): No longer pass "distprefix".
30331         * make-dist: Update "make ChangeLog" syntax for the above change.
30333         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
30334         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
30336         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
30338         Add command-line option-parsing to gitlog-to-emacslog
30339         * build-aux/gitlog-to-emacslog: Add command-line options.
30340         By default, refuse to remove an existing output file.
30341         * Makefile.in (CHANGELOG): Update default.
30342         (ChangeLog): Do not test for existing file.
30343         (change-history-nocommit): Ensure temp file does not exist.
30345         Quieten --without-x compilation
30346         * lisp/term/common-win.el: Provide a feature.
30347         * lisp/term/x-win.el (term/common-win): Require it.
30349         * lisp/dired-aux.el (dired-do-print): Require lpr.
30351         Quieten compilation, eg in --without-x builds
30352         * lisp/dired-aux.el (lpr-printer-switch):
30353         * lisp/frame.el (tool-bar-height):
30354         * lisp/linum.el (font-info):
30355         * lisp/window.el (font-info, overflow-newline-into-fringe)
30356         (tool-bar-height):
30357         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
30358         * lisp/gnus/gnus-util.el (iswitchb-mode):
30359         * lisp/mail/rmailmm.el (libxml-parse-html-region):
30360         * lisp/net/nsm.el (gnutls-peer-status)
30361         (gnutls-peer-status-warning-describe):
30362         * lisp/net/shr.el (libxml-parse-xml-region):
30363         * lisp/url/url-http.el (gnutls-peer-status): Declare.
30365 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
30367         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
30368         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
30369         `subclass' since they're never called with a class.
30370         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
30371         srecode-dictionary-child-p.
30373 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
30375         * lisp/help.el (help--binding-locus): Document argument POSITION.
30376         (Bug#20530)
30378 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
30380         Merge from gnulib
30381         * doc/misc/texinfo.tex: Get latest version.
30383 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
30385         ffap.el (ffap-read-file-or-url): Fix completing-read call
30386         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
30387         `completing-read' should be a symbol.
30389 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
30391         Verify file modifications by other programs
30392         * src/filelock.c (lock_file): Check whether the file was modified
30393         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
30395         Fix keyboard macros that include function keys
30396         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
30397         keys in the macro before returning.  (Bug#20454)
30399 2015-05-08  Glenn Morris  <rgm@gnu.org>
30401         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
30402         "Copyright-paperwork-exempt".  (Bug#20324)
30404         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
30405         (log-edit-rewrite-tiny-change): New variable.
30406         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
30407         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
30408         * etc/NEWS: Mention this.
30410         * lisp/calc/calc.el (math-zerop): Declare.
30412         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
30414 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
30416         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
30417         Support the case when BINDINGS is a single tuple.  (Bug#20525)
30419         * etc/NEWS: Fix typo in previous commit
30420         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
30422 2015-05-07  Jan D  <jan.h.d@swipnet.se>
30424         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
30425         Output URL to Gtk+ bug (Bug#20452).
30427         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
30429 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
30431         * lisp/emacs-lisp/package.el: New "external" package status.
30432         An external package is any installed package that's not built-in
30433         and not from `package-user-dir', which usually means it's from an
30434         entry in `package-directory-list'.  They are treated much like
30435         built-in packages, in that they cannot be through the Package Menu
30436         deleted and are not considered for upgrades.
30437         (package-desc-status): Identify if a package is installed outside
30438         `package-user-dir'.
30439         (package-menu--print-info-simple)
30440         (package-menu--status-predicate): Add support for it.
30441         * etc/NEWS: Document it.
30443 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30445         * lisp/mail/rmail.el: Use lexical-binding.
30446         (rmail-bury): Remove unused var `buffer-to-bury'.
30447         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
30448         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
30449         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
30450         (rmail-insert-inbox-text): Remove unused var `movemail'.
30451         (rmail-add-mbox-headers): Remove unused var `limit'.
30452         (rmail-undelete-previous-message): Remove unused var `value'.
30453         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
30454         `resent-reply-to'.
30455         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
30456         (rmail-restore-desktop-buffer): Rename arguments.
30458 2015-05-06  Glenn Morris  <rgm@gnu.org>
30460         * Makefile.in (change-history-commit): Add missing piece of previous.
30462         Avoid unnecessary bumping of Makefile.in's timestamp
30463         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
30464         (emacslog): New variable.
30465         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
30466         (unchanged-history-files): Use $emacslog rather than Makefile.in.
30467         (change-history-nocommit): Store hash in $emacslog.
30468         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
30469         * admin/update_autogen (changelog_files): Update for the above.
30471         * Makefile.in: Don't always insist on removing existing "ChangeLog".
30472         (CHANGELOG): New variable.
30473         (no-ChangeLog): Remove.
30474         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
30475         (change-history-nocommit): Use a temp file rather than insisting
30476         on deletion of any existing "ChangeLog".
30478         * build-aux/gitlog-to-emacslog: Allow specification of output.
30480         * admin/update_autogen: Add option to update ChangeLog.
30481         (usage): Mention -H.
30482         (changelog_flag, changelog_n, changelog_files): New variables.
30483         (main): Check for -H, and maybe run change-history-nocommit.
30485 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30487         * lisp/subr.el (delete-dups): Pre-size the hashtable.
30489         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
30490         cl--arglist-args is defined (bug#20517).
30492 2015-05-06  Glenn Morris  <rgm@gnu.org>
30494         * Makefile.in (change-history-nocommit): New.
30496 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
30498         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
30499         timer when it is non-nil
30500         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
30502 2015-05-06  Glenn Morris  <rgm@gnu.org>
30504         Quieten CEDET compilation
30505         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
30506         Invert fboundp test to quieten on current Emacs.
30507         * lisp/cedet/ede/config.el (ede-shell-run-something)
30508         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
30509         (semanticdb-refresh-table): Declare.
30510         (ede-preprocessor-map): Require semantic/db.
30512         Quieten cc-mode compilation
30513         * lisp/progmodes/cc-awk.el (c-forward-sws):
30514         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
30515         Declare.
30517 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
30519         * lisp/subr.el (delete-dups): Avoid nreverse.
30521 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
30523         * lisp/subr.el (delete-dups): Make it destructive again.
30525 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
30527         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
30529 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30531         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
30532         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
30533         (testcover--read): Rename from testcover-read.  Change calling
30534         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
30535         is gone.
30536         (testcover-start): Use add-function.  Move edebug-all-defs binding to
30537         testcover--read.
30538         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
30539         (testcover-mark): Remove unused var `item'.
30540         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
30542 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
30544         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
30545           use a hash table.  This can result in ~500 times speed-up for typical
30546           collections of size 5000, like that of `load-library'.
30548 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30550         CEDET: Avoid `oref' on classes in a few more cases
30551         * lisp/cedet/ede/generic.el (ede-find-target):
30552         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
30553         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
30554         var `prefix'.
30556         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
30557         (grepflags, greppattern): Declare.
30558         (semantic-symref-perform-search): Remove unused var `pat'.
30560         CEDET (srecode-compile-inserter): Avoid `oref' on classes
30561         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
30562         Avoid `oref' on classes (bug#20491).
30563         (srecode-compile-split-code): Remove unused var `key'.
30565 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
30567         Clean up pulse.el a little
30568         * lisp/cedet/pulse.el (pulse): Remove.
30569         (pulse-momentary-timer): Save instead of the stop time.
30570         (pulse-momentary-highlight-overlay):
30571         Call pulse-momentary-unhighlight first thing.
30572         Treat pulse-momentary-overlay as a single value, not a list.
30573         Save the created timer.  Only pass the stop time to the timer.
30574         (pulse-tick): Update accordingly.
30575         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
30576         single value.  Cancel the timer.
30578 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
30580         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
30581         Support the biblatex journaltitle field.
30583 2015-05-05  Glenn Morris  <rgm@gnu.org>
30585         Minor declare-function improvement
30586         * lisp/emacs-lisp/bytecomp.el
30587         (byte-compile-macroexpand-declare-function):
30588         Handle declarations after calls.  (Bug#20509)
30590         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
30592         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
30594 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
30596         Pulse using a timer
30597         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
30598         (pulse-momentary-highlight-overlay): Set up the timer instead of
30599         calling `pulse'
30600         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
30601         (pulse-tick): New function.
30602         (pulse-momentary-unhighlight): Cut off the stop time.
30603         (pulse-delay): Update the docstring WRT to not using sit-for.
30605         Add semantic/symref/grep file patterns for ruby-mode
30606         * lisp/cedet/semantic/symref/grep.el
30607         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
30608         Clarify the docstring.
30610         Don't require match
30611         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
30612         match.  That doesn't work for every command, and some identifier
30613         completion tables are bound to be imperfect anyway.
30615 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
30617         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
30618         (semantic-grammar--template-expand): New function.
30619         (semantic-grammar-header, semantic-grammar-footer): Use it.
30620         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
30621         (semantic-grammar-file-regexp): Refine regexp.
30622         (semantic-grammar-eldoc-get-macro-docstring):
30623         Use elisp-get-fnsym-args-string when available.
30624         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
30625         instead of the old eldoc-* names.
30626         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
30627         from elisp-mode.el.  Tweak calling convention.
30628         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
30629         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
30630         elisp--get-fnsym-args-string.
30631         (elisp--highlight-function-argument): Add `prefix' arg.
30632         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
30633         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
30635 2015-05-05  Glenn Morris  <rgm@gnu.org>
30637         * lisp/help-fns.el (describe-function-1):
30638         Handle builtins with advertised calling conventions.  (Bug#20479)
30640 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
30642         Merge branch 'seq-let'
30644         Update `seq-let' documentation
30645         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
30646         with the support of  `&rest'.
30648         Add support for &rest in `seq-let'
30649         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
30650         in the argument list.
30651         * test/automated/seq-tests.el: Add a test for parsing and binding
30652         `&rest' in `seq-let'.
30654 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
30656         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
30657         Add missing increment (Bug#20467).
30658         (eieio-object-value-create): Adjust to new slots representation
30659         (Bug#20467).
30660         (eieio-object-value-create): Fix missed adjustment to new
30661         representation of slots metadata.
30663 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
30665         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
30667 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
30669         Work around "Attempt to modify read-only object"
30670         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
30671         elisp--xref-find-definitions, to work around "Attempt to modify
30672         read-only object" error.
30674         Only skip some variables that have function counterparts
30675         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
30676         Only skip minor-mode-named variable if it's defined in a Lisp
30677         file, and it's in minor-mode-list (bug#20506).
30678         * test/automated/elisp-mode-tests.el
30679         (elisp-xref-finds-both-function-and-variable)
30680         (elisp-xref-finds-only-function-for-minor-mode): New tests.
30682 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30684         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
30685         previous change.
30686         (xref--insert-xrefs): Buttonize the whole line, including the
30687         number at the beginning.
30689         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30690         Make sure we're inside the let bindings.
30691         * test/automated/elisp-mode-tests.el
30692         (elisp-completes-functions-after-let-bindings): New test.
30694 2015-05-04  Glenn Morris  <rgm@gnu.org>
30696         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
30697         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
30698         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
30699         Remove outdated declarations.
30701         Replace instances of "(eval-when-compile (autoload ...))"
30702         * lisp/gnus/gnus-art.el (nneething-get-file-name):
30703         Declare rather than autoload.
30704         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
30705         Remove pointless autoload.
30706         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
30707         (gnus-topic-create-topic, gnus-topic-enter-dribble):
30708         Declare rather than autoload.
30709         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
30710         (mailcap-extension-to-mime): Autoload at run-time.
30711         * lisp/gnus/mm-util.el (latin-unity-massage-name)
30712         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
30713         (latin-unity-representations-present-region):
30714         Declare rather than autoload.
30715         * lisp/gnus/mml-smime.el (epg-make-context)
30716         (epg-passphrase-callback-function): Autoload at run-time.
30717         (epg-context-set-signers, epg-context-result-for)
30718         (epg-new-signature-digest-algorithm)
30719         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
30720         (epg-sign-string, epg-encrypt-string)
30721         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
30722         (epg-configuration, epg-expand-group, epa-select-keys):
30723         Declare rather than autoload.
30724         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
30725         Autoload at run-time.
30726         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
30727         (gnus-registry-get-id-key, gnus-registry-action):
30728         Declare rather than autoload.
30729         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
30730         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
30731         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
30732         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
30733         (spam-stat-split-fancy): Remove pointless autoloads.
30734         * lisp/net/mairix.el: Load gnus-util when compiling.
30735         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
30736         (message-field-value): Declare rather than autoload.
30737         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
30738         Check gnus-alive-p is fbound.
30739         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
30740         (vm-check-for-killed-summary, vm-error-if-folder-empty)
30741         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
30742         Declare rather than autoload.
30744         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
30746         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
30747         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
30749         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
30751         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
30753         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
30754         * lisp/emacs-lisp/package.el (epg-signature-status):
30755         Fix declarations.
30757         * lisp/play/gametree.el (gametree-show-children-and-entry)
30758         (gametree-apply-layout, gametree-mouse-show-subtree)
30759         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
30761         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
30762         Handle cl-defgeneric, cl-defmethod.
30764 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30766         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
30767         Highlight both type and symbol name.
30769         Insert, highlight and align line numbers in xref output
30770         * lisp/progmodes/etags.el (xref-location-line): Specialize for
30771         xref-etags-location.
30772         * lisp/progmodes/xref.el (xref-location-line): New generic method.
30773         (xref-file-location): Add reader for the line slot.
30774         (xref--location-at-point): Skip to the `xref-location' property.
30775         (xref--collect-reference): Drop the line number from description.
30776         (xref--insert-xrefs): Insert, highlight and align line numbers.
30778 2015-05-04  Daniel Colascione  <dancol@dancol.org>
30780         * lisp/simple.el (save-mark-and-excursion--save)
30781         (save-mark-and-excursion--restore): Fix previous commit
30782         (255a011f0ecf004b31c59945b10154b10fac3af1).
30784 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30786         Don't pulse the indentation, or the newline
30787         * lisp/cedet/pulse.el (pulse-lighten-highlight)
30788         (pulse-reset-face): Fall back to the inherited background
30789         attribute in FACE.
30790         (pulse-momentary-highlight-region): Add autoload cookie.
30791         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
30792         indentation, or the newline, if the line's non-empty
30793         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
30795 2015-05-04  Daniel Colascione  <dancol@dancol.org>
30797         Add `save-mark-and-excursion', which has the old
30798         `save-excursion' behavior
30799         * doc/lispref/positions.texi (Excursions):
30800         Document `save-mark-and-excursion'.
30801         * lisp/font-lock.el (font-lock-fontify-block):
30802         Use `save-mark-and-excursion' instead of `save-excursion',
30803         restoring Emacs 24 behavior.
30804         * lisp/simple.el (save-mark-and-excursion--save)
30805         (save-mark-and-excursion--restore): New functions.
30806         (save-mark-and-excursion): New user macro.
30807         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
30808         in `save-excursion' documentation.
30810 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30812         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30813         Classify lone symbol inside let varlist as variable.
30814         * test/automated/elisp-mode-tests.el
30815         (completest-variables-in-let-bindings): New test.
30817         Add xref-pulse-on-jump
30818         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
30819         Add autoload cookie.
30820         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
30821         (xref--maybe-pulse): New function.
30822         (xref-pop-marker-stack, xref--pop-to-location)
30823         (xref--display-position): Use it.
30824         (xref--location-at-point): Use back-to-indentation.
30826 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
30828         lisp/org/org-{macs,list}.el: Fix lexical warnings
30829         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
30830         (org-list-get-next-item, org-list-get-prev-item)
30831         (org-list-get-children): Mark unused arg `struct'.
30832         (org-list-use-alpha-bul-p): Remove unused var `bul'.
30833         (org-toggle-checkbox): Mark unused var.
30834         (org-update-checkbox-count): Remove unused var `box-num'.
30835         (org-adapt-indentation): Declare.
30836         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
30837         (org-list-send-list): Remove unused var `txt'.
30838         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
30839         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
30840         * lisp/org/org-macs.el: Use `declare'.
30841         (org-with-limited-levels): Declare dyn-bound vars.
30843 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
30845         Fix minor issues with CEDET on MS-Windows
30846         * lisp/cedet/semantic/symref/idutils.el
30847         (semantic-symref-parse-tool-output-one-line): Fix the search
30848         regexp to match MS-Windows file names with drive letters.
30849         (Bug#19468)
30850         * lisp/cedet/semantic/symref/grep.el
30851         (semantic-symref-grep-use-template): Remove "--color=always" from
30852         Grep switches on MS-Windows.
30853         (semantic-symref-grep-shell): Use shell-file-name as the default
30854         value, so this works not only on Posix platforms.
30855         (semantic-symref-perform-search): Use shell-quote-argument instead
30856         of literal '..' for portable quoting of Grep command-line
30857         argument.  Use shell-command-switch instead of a literal "-c".
30858         * lisp/cedet/semantic/bovine/gcc.el
30859         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
30860         for an absolute file name in a portable way.
30862 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
30864         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
30865         (package-import-keyring, package-refresh-contents)
30866         (package-compute-transaction, package--save-selected-packages)
30867         (package-install-from-archive, package-delete)
30868         (package-menu--perform-transaction): Use `inhibit-message' instead.
30869         (package--compile): Set `warning-minimum-level' to :error.
30871 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
30873         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
30874         (terminal-init-screen): Use it (bug#20356).
30875         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
30876         (xterm--extra-capabilities-type): New const.
30877         (xterm-extra-capabilities): Use it.
30878         (xterm--version-handler): Lower the pseudo-version for `screen'.
30880 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
30882         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
30883         Always insert a newline at the end (to avoid mouse-face background
30884         tail at the last line).
30886         elisp-completion-at-point: Prioritize being quoted over funpos
30887         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30888         Only consider function position when not inside quoted form
30889         (bug#20425).
30890         * test/automated/elisp-mode-tests.el: New file.
30892         Stop vc-print-log from jumping to the top
30893         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
30894         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
30895         is not specified.
30896         (vc-incoming-outgoing-internal): Always pass nil.
30897         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
30898         call it, and don't set vc-sentinel-movepoint (bug#15322).
30899         (vc-print-root-log): Don't fetch the root working revision, nor
30900         pass it to vc-print-log-internal.
30902 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
30904         Fix display of keyboard layouts for right-to-left scripts
30905         * lisp/international/quail.el (quail-insert-kbd-layout):
30906         Force left-to-right paragraph direction.
30908 2015-05-02  K. Handa  <handa@gnu.org>
30910         * src/cmds.c (internal_self_insert): When we insert spaces for
30911         padding, set point before the padding spaces, not after them.
30913 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
30915         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
30917 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
30919         Fix etags-xref-find for references
30920         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
30921         Use `cl-mapcan'.
30922         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
30923         directory if no tags tables are loaded (bug#19468).
30925 2015-05-02  Philipp Stephani  <phst@google.com>
30927         Update the options in whitespace-style defcustom
30928         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
30929         `repeat' because the option is really set-like.  Add missing
30930         options.  Reorder options to match the order in the
30931         documentation.  (Bug#20346)
30933 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
30935         Fix error diagnostics of c-macro-expand
30936         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
30937         too early if no start-marker string was found -- that generally
30938         means cpp exited abnormally, and we still want to show its error
30939         messages to the user.
30941         Don't require Texinfo 5.0 for Emacs documentation
30942         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
30943         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
30944         "@codequoteundirected on", respectively, to avoid requiring
30945         Texinfo 5.x for Emacs documentation.
30947 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
30949         * lisp/files.el (pwd):
30950         When called with a prefix argument, insert the current default
30951         directory at point.
30953 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
30955         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
30956         * lisp/isearch.el (isearch-mode-map): Don't inhibit
30957         function-key-map remapping for backspace (bug#20466).
30959 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
30961         Implement xref-find-references in etags and elisp-mode
30962         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
30963         (elisp-xref-find): Use it.
30964         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
30965         * lisp/progmodes/xref.el (xref-collect-references):
30966         (xref--collect-reference): New functions.
30968 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
30970         Prefer plain characters to Texinfo circumlocutions
30971         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
30972         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
30974         Fix single-quoting style in PDF manuals
30975         The PDF versions of the GNU manuals used curved single quotes to
30976         represent grave accent and apostrophe, which made it a pain to cut
30977         and paste code examples from them.  Fix the PDF versions to use
30978         grave accent and apostrophe for Lisp source code, keystrokes, etc.
30979         This change does not affect the info files, nor does it affect
30980         ordinary uses of curved single quotes in PDF.
30981         * doc/emacs/docstyle.texi: New file, which specifies treatment for
30982         grave accent and apostrophe, as well as the document encoding.
30983         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
30984         * doc/lispintro/emacs-lisp-intro.texi:
30985         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
30986         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
30987         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
30988         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
30989         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
30990         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
30991         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
30992         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
30993         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
30994         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
30995         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
30996         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
30997         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
30998         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
30999         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
31000         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
31001         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
31002         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
31003         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
31004         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
31005         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
31006         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
31007         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
31008         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
31009         * doc/misc/woman.texi:
31010         Use it instead of '@documentencoding UTF-8', to lessen the need for
31011         global changes like this in the future.
31012         * doc/emacs/Makefile.in (EMACS_XTRA):
31013         * doc/lispintro/Makefile.in (srcs):
31014         * doc/lispref/Makefile.in (srcs):
31015         Add dependency on docstyle.texi.
31016         * doc/misc/Makefile.in (style): New macro.
31017         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
31018         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
31019         Use it.
31021 2015-05-01  Glenn Morris  <rgm@gnu.org>
31023         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
31025         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
31026         (help-fns--signature): Declare.
31028         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
31030 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
31032         New macro seq-let, providing destructuring support to seq.el
31033         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
31034         to `cl-destructuring-bind' but works on all sequence types supported
31035         by `seq.el'.  Bump version number to 1.6.
31036         * test/automated/seq-tests.el: Add tests for seq-let.
31037         * doc/lispref/sequences.texi: Add documentation for seq-let.
31039 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
31041         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
31043 2015-05-01  Glenn Morris  <rgm@gnu.org>
31045         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
31047 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
31049         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
31050         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
31051         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
31052         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
31053         (Bug#20445).
31055 2015-05-01  K. Handa  <handa@gnu.org>
31057         * lisp/international/mule-cmds.el (input-method-use-echo-area):
31058         Change :type to 'boolean.
31060 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
31062         Start using proportional fonts in eww by default
31063         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
31064         it seems to work well.
31066         Fix links in tables in shr
31067         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
31068         makes (some) links in tables not work.
31070 2015-05-01  Jan D  <jan.h.d@swipnet.se>
31072         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
31074 2015-04-30  Glenn Morris  <rgm@gnu.org>
31076         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
31077         Update for 2015-02-08 change to indirect-function.
31079         * lisp/term/ns-win.el (ns-get-selection-internal):
31080         Remove declaration for function deleted 2014-10-21.
31082         * lisp/dom.el: Load subr-x when compiling, for when-let.
31084         Silence some compilation warnings
31085         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
31086         * lisp/emulation/cua-base.el (delete-active-region):
31087         * lisp/net/net-utils.el (w32-get-console-output-codepage):
31088         * lisp/term/ns-win.el (ns-own-selection-internal)
31089         (ns-disown-selection-internal, ns-selection-owner-p)
31090         (ns-selection-exists-p, ns-get-selection):
31091         Declare for compiler.
31093         Function declaration updates prompted by 'make check-declare'
31094         * lisp/emacs-lisp/package.el (lm-homepage):
31095         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
31096         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
31097         * lisp/gnus/mml.el (libxml-parse-html-region):
31098         * lisp/gnus/nnrss.el (libxml-parse-html-region):
31099         * lisp/net/eww.el (libxml-parse-html-region):
31100         * lisp/net/shr.el (libxml-parse-html-region):
31101         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
31102         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
31103         * lisp/vc/vc-git.el (vc-annotate-convert-time):
31104         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
31105         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
31106         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
31107         Update declaration.
31109         Remove compatibility code for 20-year old function renaming
31110         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
31111         Make it an obsolete alias.
31112         (idlwave-shell-filter): Change all uses to comint-output-filter.
31114 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
31116         Add ace-window face config
31117         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
31118         configuration.
31120 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
31122         Unclutter 'make doc' output a bit
31123         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
31124         Use make subst rather than sh IFS to split target string apart.
31125         This makes 'make' output easier to follow.
31127         Merge from gnulib
31128         * doc/misc/texinfo.tex: Update from gnulib.
31130 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
31132         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
31133         (package-menu--print-info): Obsolete.
31134         (package-menu--print-info-simple): New function.
31135         (package-menu--refresh): Use it, simplify code, and improve
31136         performance.
31137         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
31138         Tiny performance improvement.
31140         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
31142 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
31144         Omit -Wstrict-overflow workaround in GCC 5
31145         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
31146         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
31148         Merge from gnulib
31149         This incorporates:
31150         2015-04-29 extern-inline: no need for workaround in GCC 5.1
31151         2015-04-26 file-has-acl: port to CentOS 6
31152         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
31154 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
31156         Set next-error-* in xref--xref-buffer-mode
31157         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
31158         Set `next-error-function' and `next-error-last-buffer'.
31159         (xref--next-error-function): New function.
31160         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
31162 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
31164         python.el: Fix warnings on looking-back calls missing LIMIT
31165         * lisp/progmodes/python.el (python-shell-accept-process-output):
31166         Pass LIMIT arg to looking-back.
31168 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
31170         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
31171         (package--download-and-read-archives): Use pushnew instead of
31172         append.  If something terrible happened during a previous
31173         download, simply refreshing should now make things work again.
31175 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
31177         Introduce etags-xref-find-definitions-tag-order
31178         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
31179         New variable.
31180         (etags--xref-find-definitions): Use it (bug#19468).
31182 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
31184         PATH- and completion-related fixes in Eshell on MS-Windows
31185         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
31186         MS-Windows, prepend "." to list of directories produced from PATH,
31187         as Windows always implicitly searches the current directory first.
31188         (eshell-force-execution): Make it have a non-nil default value on
31189         MS-Windows and MS-DOS.
31190         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
31191         eshell-force-execution is non-nil, complete on readable files and
31192         directories, not only executables.  When running on MS-Windows,
31193         prepend "." to list of directories produced from PATH, as Windows
31194         always implicitly searches the current directory first.
31196 2015-04-29  Sam Steingold  <sds@gnu.org>
31198         Bury RCIRC buffers when there is no activity
31199         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
31200         (rcirc-bury-buffers): New function.
31201         (rcirc-next-active-buffer): When there is no new activity, use
31202         `rcirc-bury-buffers' to hide all RCIRC buffers.
31204 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
31206         Fix DBUS query result parsing for secrets-search-items
31207         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
31208         parsing.  The function assumed that return value of the
31209         SearchItems method called on a collection is a list of two lists,
31210         however this is true only when no collection is specified.  GNOME
31211         had used to incorrectly return a list of two lists in both cases,
31212         but this was already fixed:
31213         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
31214         incorrect information in the secrets-search-items’ docstring.
31215         (Bug#20449)
31217 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
31219         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
31220         Use `inhibit-message' instead of hiding the previous message
31221         with (message nil).
31223 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
31225         Remove the deprecated INTERNAL_FIELD macro by expanding it
31226         * src/lisp.h (INTERNAL_FIELD): Remove.
31227         (DEFVAR_KBOARD): Modify accordingly.
31228         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
31229         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
31230         * src/buffer.c (compact_buffer): Use BVAR.
31232 2015-04-29  Glenn Morris  <rgm@gnu.org>
31234         Replace an obsolete function alias
31235         * lisp/isearch.el (isearch-yank-x-selection):
31236         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
31237         (mouse-drag-secondary-moving):
31238         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
31239         Replace obsolete alias x-get-selection with gui-get-selection.
31241 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
31243         * lisp/mail/rmailsum.el: Use lexical-binding.
31245 2015-04-29  Glenn Morris  <rgm@gnu.org>
31247         * test/automated/package-test.el (package-test-update-archives-async):
31248         Skip test on hydra.nixos.org.
31250 2015-04-28  Glenn Morris  <rgm@gnu.org>
31252         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
31253         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
31254         (foldout-mouse-hide-or-exit): Use new names for outline functions.
31256         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
31257         Update for 2014-06-26 hideif.el change.
31259         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
31260         (rmail--decode-and-apply): New function.
31261         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
31263         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
31265 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
31267         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
31268         (package-menu--refresh): Delegate obsolete-hiding to
31269         `package--remove-hidden'.
31270         (package--remove-hidden): Disregard high-priority package if it is
31271         older than the installed one.
31273 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
31275         Update source file encoding list
31276         Update admin/notes/unicode, along with coding system cookies in
31277         other files, so that the two match each other better.
31278         * admin/notes/unicode: lisp/language/ethio-util.el and
31279         lisp/language/ethiopic.el also use utf-8-emacs.
31280         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
31281         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
31282         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
31283         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
31284         * etc/refcards/sk-survival.tex:
31285         Add "coding: utf-8" so that this file is not mishandled in a
31286         Latin-1 or Big-5 locale.
31287         * lisp/international/robin.el, lisp/org/ox-ascii.el:
31288         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
31289         * lisp/language/ethio-util.el: Fix trailer.
31291 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
31293         Fix synchronous invocation of Ispell
31294         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
31295         value to ispell-process-directory before calling ispell-init-process.
31296         Don't call set-process-coding-system if ispell-async-processp is nil.
31297         (Bug#20448)
31299 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
31301         * lisp/emacs-lisp/package.el: Skip space and comments in init file
31302         (package--ensure-init-file): Insert snippet at first
31303         non-whitespace non-comments line.  Respects local-vars at the top
31304         of the file.
31306 2015-04-28  Glenn Morris  <rgm@gnu.org>
31308         * lisp/mail/rmail.el (rmail-copy-headers):
31309         Handle rmail-nonignored-headers being nil.  (Bug#18878)
31311         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
31313         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
31314         Don't get confused by a bzrlib version mismatch warning.
31316 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
31318         Change default location of EUDC options file
31319         * etc/NEWS: Document change to EUDC options file's default location.
31320         * lisp/net/eudc-vars.el (eudc-options-file): Use
31321         `locate-user-emacs-file' to change default options file location.
31323 2015-04-27  Glenn Morris  <rgm@gnu.org>
31325         * test/automated/package-test.el (package-test-update-archives-async):
31326         Try to handle the test server script dying.
31328 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31330         * lisp/saveplace.el (save-place-mode): New minor mode.
31331         (save-place): Redefine as an obsolete alias.
31333         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
31334         * lisp/midnight.el: Use lexical-binding.
31335         (midnight-mode): Make it a proper minor mode.
31336         (midnight-buffer-display-time): Make arg non-optional.
31337         (midnight-find): Remove.
31338         (clean-buffer-list-kill-never-regexps)
31339         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
31340         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
31341         contain functions.
31342         (clean-buffer-list): Use cl-find.
31343         Allow clean-buffer-list-kill-never-regexps to contain functions.
31345 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
31347         Bump version of seq.el to 1.5
31348         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
31349         from seq-doseq.  Bump version number of seq.el.
31351 2015-04-27  Glenn Morris  <rgm@gnu.org>
31353         * lisp/mail/rmail.el (rmail-reply):
31354         Decode subject before matching "Re:" prefix.  (Bug#20396)
31356 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
31358         * lisp/emacs-lisp/package.el: Small improvements
31359         (package--with-work-buffer-async): More informative error.
31360         (package-install-user-selected-packages): Rename to
31361         `package-install-selected-packages'.
31363 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31365         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
31366         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
31367         (eieio--class-make): Remove leftover `tag'.
31369 2015-04-27  Glenn Morris  <rgm@gnu.org>
31371         * lisp/gnus/message.el (gnus-extract-address-components):
31372         Remove bogus declaration that was masking previous problem.
31374 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
31376         * lisp/gnus/message.el (message-insert-formatted-citation-line):
31377         Fix typo.  (Bug#20318)
31379 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31381         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
31383         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
31384         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
31385         the buffer in yet another frame.
31386         (reftex-toc-visit-location): Make sure toc-window has focus at the end
31387         when `final' is nil.
31388         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
31389         silence warnings.  Use `--' to clarify that it's internal.
31390         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
31391         (reftex-toc-promote): Clarify unused argument.
31392         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
31393         Add `reftex--' prefix.  Fix all users.
31394         (reftex-toc-promote-prepare): Use _ for dummy variable.
31395         (reftex-toc-restore-region): Rename `m.
31397 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
31399         Fix a typo in bibtex.el
31400         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
31401         last change.  (Bug#20429)
31403         Fix redisplay of frame after loading new fonts
31404         * src/xdisp.c (redisplay_internal): When retrying redisplay of
31405         a frame because new fonts were loaded, disable all redisplay
31406         optimizations on that frame by calling SET_FRAME_GARBAGED.
31407         (Bug#20410)
31409 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31411         * lisp/info.el (Info-menu): Properly provide the `default'
31412         (Bug#20391)
31414         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
31415         Catch errors from documentation (bug#20418).
31416         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
31418 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
31420         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
31421         Remove redundant ":group 'package".
31423 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
31425         Fix a typo in rmail.el
31426         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
31427         last commit.  (Bug#20429)
31429 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
31431         Introduce xref-prompt-for-identifier
31432         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
31433         (xref--read-identifier): Use it
31434         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
31436 2015-04-26  João Távora  <joaotavora@gmail.com>
31438         `tex-insert-quote' after single `'' opens quotes instead of closing
31439         Without this, it's very hard to precede double quotes with the
31440         apostrophe character, i.e. insert the sequence '``
31441         (quote-backquote-backquote), commonly useful in portuguese, for
31442         instance.
31443         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
31444         preceding chars making `tex-insert-quote' be in the "opening" context.
31446 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
31448         Pass `id' to `completing-read' as def instead of initial input
31449         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
31450         `completing-read' as the default value instead of initial input
31451         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
31453 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
31455         Don't freeze with unreadable processes
31456         Don't freeze if an exiting process can't be read from.  (Bug#19860).
31457         This fixes a bug I introduced in
31458         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
31459         "* process.c: Add sanity checks for file descriptors."
31460         Dmitry Gutov did most of the legwork in finding the problem.
31461         * src/process.c (wait_reading_process_output):
31462         Treat non-running processes that can't be read from
31463         the same as other non-running processes.
31465 2015-04-25  Alan Mackenzie  <acm@muc.de>
31467         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
31468         * lisp/subr.el (remove-yank-excluded-properties): Put
31469         `with-silent-modifications' around only the last three lines of code.
31471 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
31473         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
31474         (package--all-keywords): Deleted variable.
31476         * etc/NEWS: Document package-hiding functionality.
31478 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
31480         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
31482         Clarify the doc string of 'replace-regexp-in-string'
31483         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
31485         Improve doc string of 'insert-buffer-substring'
31486         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
31488         MS-Windows followup for the recent gnulib update
31489         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
31490         acl-internal.c.
31492 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
31494         Spelling fixes
31496         Merge from gnulib
31497         This incorporates:
31498         2015-04-24 file-has-acl: new module, split from acl
31499         2015-04-24 manywarnings: add GCC 5.1 warnings
31500         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
31501         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
31502         2015-04-15 acl: On Linux, check for acls without libacl
31503         2015-04-14 tempname: avoid unused parameter warnings (trivial)
31504         * lib/acl-internal.c: New file, from gnulib.
31505         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
31506         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
31507         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
31508         Update from gnulib.
31510         Port --enable-gcc-warnings to GCC 5.1 x86-64
31511         * lib-src/ebrowse.c (dump_sym):
31512         * lib-src/hexl.c (main):
31513         * src/ccl.c (ccl_driver):
31514         * src/character.c (string_escape_byte8):
31515         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
31516         * src/gnutls.c (Fgnutls_boot):
31517         * src/gtkutil.c (xg_check_special_colors):
31518         * src/image.c (x_build_heuristic_mask):
31519         * src/print.c (safe_debug_print, print_object):
31520         * src/term.c (produce_glyphless_glyph):
31521         * src/xdisp.c (get_next_display_element)
31522         (produce_glyphless_glyph):
31523         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
31524         Don't use a signed format to print an unsigned integer, or vice
31525         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
31526         * src/image.c (png_load_body, jpeg_load_body):
31527         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
31529 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
31531         Add new faces to tsdh-light-theme
31532         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
31533         definitions for Info-quoted, ace-jump-face-foreground,
31534         hl-paren-face, show-paren-match, and show-paren-mismatch.
31536 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
31538         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
31540 2015-04-24  Glenn Morris  <rgm@gnu.org>
31542         * build-aux/gitlog-to-emacslog:
31543         Use raw log format rather than wrapped one.
31545 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
31547         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
31548         (seq-doseq): Fix out-of-scope binding.
31549         Don't call `seq-length at every iteration.
31550         Reduce `if's from 3 to 2 per iteration.
31551         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
31553 2015-04-24  Glenn Morris  <rgm@gnu.org>
31555         * lisp/textmodes/text-mode.el (text-mode-hook):
31556         Move text-mode-hook-identify to default.
31558         * lisp/mouse.el (minor-mode-menu-from-indicator):
31559         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
31561         * lisp/help-fns.el (describe-function): More type checking.
31562         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
31564         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
31565         (Bug#20325)
31567 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
31569         shr: strip leading whitespace when expanding URLs
31570         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
31572 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
31574         Clarify "co-authored" some more
31576         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
31578         Clarify doc strings of functions that search for properties
31579         * src/textprop.c (Fnext_char_property_change)
31580         (Fprevious_char_property_change)
31581         (Fnext_single_char_property_change)
31582         (Fprevious_single_char_property_change, Fnext_property_change)
31583         (Fnext_single_property_change, Fprevious_property_change)
31584         (Fprevious_single_property_change): Clarify doc strings wrt return
31585         value and the optional LIMIT argument.  (Bug#20411)
31587 2015-04-24  Glenn Morris  <rgm@gnu.org>
31589         * test/automated/message-mode-tests.el (message-mode-propertize):
31590         Handle non-writable HOME; eg on hydra.nixos.org.
31592 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
31594         Avoid starting threads by w32-shell-execute
31595         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
31596         local file names, before invoking ShellExecute.  (Bug#20220)
31598 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
31600         Fix following doc-links in `widget-documentation-link-action'
31601         * lisp/wid-edit.el (widget-documentation-link-action): Make
31602         following doc-links less simplistic (Bug#20398).
31604 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
31606         Improve EUDC manual
31607         * doc/misc/eudc.texi (Troubleshooting):
31608         New LDAP troubleshooting subsection.
31610 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
31612         Omit needless "\ " after multibyte then newline
31613         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
31614         (print_object): When print-escape-multibyte is non-nil and a
31615         multibyte character is followed by a newline or formfeed, followed
31616         by a hex digit, don't output a needless "\ " before the hex digit.
31617         * test/automated/print-tests.el (print-hex-backslash): New test.
31619 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
31621         Add a new `inhibit-message' variable
31622         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
31623         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
31624         `inhibit_message' is non-zero.
31625         * etc/NEWS: Add an entry.
31626         * doc/lispref/display.texi: Add an entry for `inhibit-message',
31627         mention it in `message'.
31629 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
31631         Fix last fix in `display-buffer-record-window'.
31632         * lisp/window.el (display-buffer-record-window): Fix last fix.
31634 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
31636         Minor edits in CONTRIBUTE
31637         * CONTRIBUTE: Rearrange instructions about log messages.
31638         Use "Git" capitalized all over.
31639         Use 2 spaces between sentences.
31641 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
31643         * lisp/files.el (basic-save-buffer): Fix argument.
31645         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
31646         In case `(and (null custom-file) init-file-had-error)' do the same
31647         thing we'd do if `(null user-init-file)', which is to either error out
31648         or return nil.  This is in line with `custom-save-all' which would
31649         throw an error in that situation.  (Bug#20355)
31651         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
31652         (package-menu-hide-low-priority): New variable, see its doc.
31653         (package-archive-priorities): Update doc.
31654         (package-desc-priority): New function.
31655         (package-desc-priority-version): Use it.
31656         (package--remove-hidden): New function.
31657         (package-menu--refresh): Use it.
31659         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
31660         (package-menu--hide-obsolete): New variable.
31661         (package--remove-hidden): Use it.
31662         (package-menu-hide-obsolete): New interactive function to toggle
31663         the variable.
31664         (package--quick-help-keys): Document it.
31665         (package-menu-async): Add :version tag.
31666         (package-menu-mode-map): Bind package-menu-hide-obsolete.
31667         (package-desc-status): Indicate non-installed obsolete packages as
31668         avail-obso.
31669         (package-menu-mark-install): Allow installation of avail-obso.
31670         (package-menu--status-predicate): Sort avail-obso with available.
31672 2015-04-22  Alan Mackenzie  <acm@muc.de>
31674         On C-y, stop some text property entries being written into buffer-undo-list
31675         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
31676         `with-silent-modifications'.
31678 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
31680         In display-buffer-record-window record selected window if necessary
31681         * lisp/window.el (display-buffer-record-window): Store selected window
31682         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
31684 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
31686         Fix reftex-citation bug
31687         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
31688         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
31689         integration is enabled and there are no citations in the document
31690         so far.
31692 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
31694         Add or reset based on the presence of MERGE_HEAD
31695         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
31696         `vc-git-resolve-when-done' to `after-save-hook' in either case.
31697         (vc-git-conflicted-files): Add a TODO.
31698         (vc-git-resolve-when-done): Depending on the presence of
31699         MERGE_HEAD, either update the resolved file in the index, or
31700         remove it from there.  (Bug#20292)
31702 2015-04-21  Glenn Morris  <rgm@gnu.org>
31704         * lisp/custom.el (custom-declare-group): No need to purecopy
31705         custom-current-group-alist members following recent change to set
31706         it to nil before dumping.
31708         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
31709         (Bug#20399)
31711 2015-04-21  Daniel Colascione  <dancol@dancol.org>
31713         Unbreak no-op buffer save message
31714         * lisp/files.el (basic-save-buffer): Accept called-interactively as
31715         an argument instead of directly invoking called-interactively-p,
31716         which will always yield nil in that context.
31718 2015-04-21  Alan Mackenzie  <acm@muc.de>
31720         CC Mode: Do nothing in before/after-change-functions for text
31721         property changes
31722         Fixes bug#20266.
31723         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
31724         yank-handled-properties buffer local, and remove 'category from it.
31725         (c-called-from-text-property-change-p): New function.
31726         (c-before-change): Don't do anything if a call of the new function
31727         returns non-nil.
31728         (c-after-change): Don't do much if a call of the new function returns
31729         non-nil.
31730         (c-extend-after-change-region): Put changes to text property 'fontified
31731         inside c-save-buffer-state.
31733 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
31735         Fix byte-compiler warnings about looking-back
31736         * lisp/vc/log-view.el (log-view-end-of-defun-1):
31737         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
31738         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
31739         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
31740         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
31741         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
31742         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
31743         * lisp/org/org.el (org-insert-heading, org-sort-entries):
31744         * lisp/org/org-mouse.el (org-mouse-end-headline)
31745         (org-mouse-context-menu):
31746         * lisp/org/org-clock.el (org-clock-cancel):
31747         * lisp/man.el (Man-default-man-entry):
31748         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
31749         (rmail-ensure-blank-line):
31750         * lisp/mail/footnote.el (Footnote-delete-footnote):
31751         * lisp/mail/emacsbug.el (report-emacs-bug):
31752         * lisp/info.el (Info-follow-reference, Info-fontify-node):
31753         * lisp/info-look.el (info-lookup-guess-custom-symbol):
31754         * lisp/help-fns.el (help-fns--key-bindings):
31755         * lisp/files.el (hack-local-variables):
31756         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
31757         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
31758         (viper-complete-filename-or-exit):
31759         * lisp/emulation/viper-cmd.el (viper-backward-indent):
31760         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
31761         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
31762         * lisp/cus-edit.el (custom-face-edit-value-create):
31763         * lisp/calendar/todo-mode.el (todo-set-item-priority)
31764         (todo-filter-items-1, todo-convert-legacy-files)
31765         (todo-prefix-overlays): Add explicit second arg to looking-back.
31767 2015-04-20  Glenn Morris  <rgm@gnu.org>
31769         Avoid non-nil current-load-list at startup
31770         * src/process.c (init_process_emacs): Move Fprovide statement...
31771         (syms_of_process): ... to here.
31773         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
31775         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
31776         in emacs -Q.
31778 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
31780         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
31781         (Bug#20330)
31783 2015-04-20  Glenn Morris  <rgm@gnu.org>
31785         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
31787         Tweak exec-path in uninstalled case
31788         * src/callproc.c (init_callproc): If running uninstalled, do not
31789         include eventual installation libexec directory in exec-path.
31791 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
31793         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
31794         cache keywords.
31795         (package-menu-filter): Accept a list of keywords.
31796         (package--all-keywords): New variable to cache known keywords.
31797         (package-all-keywords): Populate it if necessary.
31798         (package-refresh-contents): Reset it.
31800         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
31801         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
31802         as special keywords which match agains package archive and status
31803         respectively.
31804         * etc/NEWS: Document it.
31806 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
31808         Describe and index "empty overlays".
31809         * doc/lispref/display.texi (Overlays): Improve indexing.
31810         (Managing Overlays): Describe "empty" overlays.
31811         (Overlay Properties, Finding Overlays): Add cross-reference to
31812         where empty overlays are described.
31814 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
31816         Spelling fixes
31818         Quote 'like this' in top-level files
31819         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
31820         Prefer to single-quote 'like this' (instead of the older style
31821         `like this').
31822         * configure.ac: Fix some space-before-tab problems that 'git commit'
31823         complained about.
31825         Use bool for boolean in textprop.c, undo.c
31826         * src/textprop.c (soft, hard): Now constants instead of macros.
31827         (validate_plist): Rewrite to avoid need for boolean local.
31828         (interval_has_all_properties, interval_has_some_properties)
31829         (interval_has_some_properties_list, add_properties)
31830         (remove_properties, get_char_property_and_overlay)
31831         (Fnext_single_char_property_change)
31832         (Fprevious_single_char_property_change, add_text_properties_1)
31833         (Fremove_text_properties, Fremove_list_of_text_properties)
31834         (copy_text_properties):
31835         * src/tparam.c (tparam1):
31836         * src/undo.c (record_change, record_property_change)
31837         (syms_of_undo):
31838         Use 'true' and 'false' for booleans.
31840 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
31842         * lisp/vc/vc-git.el (vc-git-find-file-hook):
31843         Call `smerge-start-session' even when dealing with a stash
31844         conflict (bug#20292).
31846 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
31848         Add option to eshell/clear to clear scrollback.
31849         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
31850         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
31851         scrollback contents are cleared.
31852         * etc/NEWS: Describe change.
31853         * doc/misc/eshell.texi: Add entry for `clear'.
31855 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
31857         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
31858         where either will do.
31860 2015-04-19  Steve Purcell  <steve@sanityinc.com>
31862         Assume package archive-contents are UTF8-encoded
31863         * lisp/emacs-lisp/package.el (package--read-archive-file):
31864         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
31865         downloaded and cached archive-contents files, so that non-ASCII
31866         characters in package descriptions are displayed correctly in the
31867         `list-packages' menu.  (Bug#20231)
31869 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
31871         Abort when looking at stashed changes
31872         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
31873         stashed changes (bug#20292).
31875 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
31877         Refactor low-level printing for simplicity
31878         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
31879         PRINTPREPARE; doable now that we assume C99.  All callers changed.
31880         (PRINTCHAR): Remove, as it adds more mystery than clarity.
31881         All callers changed.
31882         (strout): Assume that caller computes length.  All callers changed.
31883         (print_c_string): New function.
31884         (write_string, write_string_1): Compute length instead of asking
31885         the caller to compute it.  All callers changed.
31886         (write_string): Simplify by using write_string_1.
31887         (write_string_1): Simplify by using print_c_string.
31888         (Fterpri): Compute default val more clearly.
31889         (Fprin1_to_string, print_object):
31890         Assume C99 to avoid unnecessary nesting.
31891         (print_object): Prefer print_c_string to multiple printchar, or
31892         to calling strout with -1 length.  Coalesce into sprintf when
31893         this is easy.
31895 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
31897         Prefer "Bug#1234" in commit messages (Bug#20325)
31898         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
31899         as this isn't useful for Git.
31900         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
31902 2015-04-18  Glenn Morris  <rgm@gnu.org>
31904         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
31905         (Bug#19506)
31907 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
31909         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
31910         Do not use `chomp' as a function.  (Bug#19505)
31912 2015-04-18  Glenn Morris  <rgm@gnu.org>
31914         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
31916         * doc/emacs/misc.texi (Sorting): Small edit.
31917         (Bug#19896)
31919         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
31921 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
31923         css-mode.el: Support multi-line comment filling
31924         (Bug#20256)
31925         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
31926         comment filling.
31927         (css-adaptive-fill): New function.
31928         (css-mode): Set `adaptive-fill-function'.
31929         (scss-mode): Set `comment-continue'.
31931 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
31933         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
31934         Better error messages.
31936 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
31938         Minor improvements in Bulgarian input methods
31939         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
31940         Replace U+042C with U+045D, as the former character is not used in
31941         the modern Bulgarian language.
31942         (Bug#20350)
31944 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
31946         Improve EUDC manual
31947         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
31948         authentication schemes.  Add index items.  Shorten example server
31949         name.
31951 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
31953         Don't show both feature and function with the same name
31954         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
31955         Don't show both feature and function with the same name.
31957         (elisp--xref-identifier-location): Skip variable, if it's also
31958         a function
31959         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
31960         Avoid returning both the variable and the function for the same
31961         minor mode.
31963 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
31965         Fix fontification of keywords clobbered by the prompt
31966         * lisp/comint.el (comint-output-filter): Remove the uses of
31967         with-silent-modifications I introduced as part of the last change.
31968         This fixes, e.g., erratically missing highlighting when running
31969         ./configure --help; ./configure in a shell-mode buffer with
31970         compilation-shell-minor-mode turned on.
31972 2015-04-17  Glenn Morris  <rgm@gnu.org>
31974         * admin/authors.el (authors-valid-file-names)
31975         (authors-renamed-files-alist): Additions.
31977 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
31979         * lisp/indent.el (indent-region): Don't deactivate the mark.
31980         (Bug#20357)
31982 2015-04-17  Sam Steingold  <sds@gnu.org>
31984         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
31986 2015-04-16  Leo Liu  <sdl.web@gmail.com>
31988         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
31990 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
31992         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
31993         Don't use `pcomplete' any more.
31995 2015-04-16  Glenn Morris  <rgm@gnu.org>
31997         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
31999 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
32001         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
32002         * configure.ac (LIBJPEG): Leave it empty for MinGW.
32004 2015-04-16  Glenn Morris  <rgm@gnu.org>
32006         * lisp/replace.el (query-replace-from-to-separator):
32007         Delay initialization to avoid rogue setting after startup.
32009 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
32011         Pre-4.6 GCC succeeds with unknown option
32012         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
32013         (Bug#20338)
32015 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
32017         '[:graph:]' now excludes whitespace, not just ' '
32018         * doc/lispref/searching.texi (Char Classes):
32019         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
32020         sans whitespace (not sans space).
32021         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
32022         not just space.
32023         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
32025 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
32027         * lisp/subr.el (substitute-key-definition-key, special-form-p)
32028         (macrop): Drop deprecated second arg to indirect-function.
32029         (looking-back): Make the second arg non-optional.
32031         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
32032         command is actually sent to the shell.
32034 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
32036         Port jpeg configuration to Solaris 10 with Sun C
32037         * configure.ac: Check for jpeglib 6b by trying to link it, instead
32038         of relying on cpp magic that has problems in practice.  Check for
32039         both jpeglib.h and jerror.h features.  Remove special case for
32040         mingw32, which should no longer be needed (and if it were needed,
32041         should now be addressable by hotwiring emacs_cv_jpeglib).
32042         (Bug#20332)
32044 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
32046         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
32047         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
32048         Move to elisp-mode.el.
32049         (lisp-mode-variables): (Re)move elisp-specific settings.
32050         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
32051         from lisp-mode-variables.
32052         (elisp--font-lock-flush-elisp-buffers): New function, moved from
32053         lisp-mode.el.
32055         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
32056         Avoid pathological slowdown at top-level in large file.
32058 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
32060         Standardize names of ChangeLog history files
32061         Suggested by Glenn Morris in:
32062         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
32063         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
32064         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
32065         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
32066         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
32067         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
32068         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
32069         Remove.
32071         Split top-level entries into pre- and post-April 7
32072         This more clearly distingiushes pre-April-7 ChangeLog entries (which
32073         are for top-level files only) from post-April-7 entries (which are
32074         about files at all levels.  Problem reported by Glenn Morris in:
32075         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
32076         * ChangeLog.1: Move post-April-7 entries from here ...
32077         * ChangeLog.2: ... to this new file.
32078         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
32080 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
32082         Fix recent cus-start changes that added customize-rogues
32083         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
32084         vars early.
32085         * lisp/loadup.el ("cus-start"): Move to the end to reduce
32086         customize-rogue.
32088 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
32090         Define cl-concatenate as an alias to seq-concatenate
32091         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
32092           code by making cl-concatenate an alias to seq-concatenate.
32094 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
32096         * src/lread.c (intern_1): Make sure we'd find the symbol we add
32097         (Bug#20334)
32098         * src/xfaces.c (resolve_face_name): Don't use `intern' with
32099         Lisp_Strings.
32101 2015-04-15  Glenn Morris  <rgm@gnu.org>
32103         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
32105 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
32107         Clean up gnus-uu saving code slightly
32108         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
32109         save-restriction/widen calls make more sense.
32111 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
32113         Make [:graph:] act like [:print:] sans space
32114         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
32115         [:graph:] so that it matches everything that [:print:] does,
32116         except for space.
32117         * doc/lispref/searching.texi (Char Classes):
32118         * etc/NEWS:
32119         * lisp/emacs-lisp/rx.el (rx):
32120         Document [:graph:] to be [:print:] sans ' '.
32121         * src/character.c, src/character.h (graphicp): New function.
32122         * src/regex.c (ISGRAPH) [emacs]: Use it.
32123         (BIT_GRAPH): New macro.
32124         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
32125         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
32126         Return BIT_GRAPH for RECC_GRAPH.
32127         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
32128         and ISPRINT if BIT_PRINT.
32130 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
32132         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
32133         Don't use call-next-method in a cl-defmethod.
32135         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
32136         (eieio--class-p): Remove, provided by cl-defstruct.
32138 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
32140         Add seq-intersection and seq-difference to the seq library
32141         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
32142         New functions.
32143         * test/automated/seq-tests.el: Add tests for seq-intersection and
32144         seq-difference.
32145         * doc/lispref/sequences.texi: Add documentation for seq-intersection
32146         and seq-difference.
32148 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
32150         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
32151         to avoid leaking internals.
32153 2015-04-14  Sam Steingold  <sds@gnu.org>
32155         package--ensure-init-file: widen requires save-restriction
32157 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
32159         Improve the commit-msg Git hook for unibyte environments
32160         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
32161         in unibyte environments.  (Suggested by Paul Eggert
32162         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
32163         [:print:], based on UTF-8 sequences of the unprintable characters.
32165         Describe problems with cursor caused by Windows Magnifier
32166         * etc/PROBLEMS: Describe the problem with cursor shape on
32167         MS-Windows due to Windows Magnifier.
32168         (Bug#20271)
32170         Make [:print:] support non-ASCII characters correctly
32171         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
32172         (BIT_PRINT): New bit mask.
32173         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
32174         * src/character.c (printablep): New function.
32175         * src/character.h (printablep): Add prototype.
32176         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
32177         of 'print', 'alnum', and 'alphabetic'.
32178         * doc/lispref/searching.texi (Char Classes): Document the new
32179         behavior of [:print:].
32180         * etc/NEWS: Mention the new behavior of [:print:].
32182         Assign correct general-category and names to surrogates
32183         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
32184         surrogates.  This avoids assigning them the default
32185         general-category of 'Cn', i.e. unassigned codepoints.
32186         (unidata-get-name): Give surrogates synthetic names.
32188 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
32190         Assume C89 offsetof in xterm.c, xlwmenu.c
32191         * lwlib/xlwmenu.c (offset):
32192         * src/xterm.c (cvt_string_to_pixel_args):
32193         Use offsetof, not XtOffset.
32195 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
32197         Assume C89 offsetof in widget.c
32198         * src/widget.c (XtOffset): Remove; no longer needed.
32199         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
32201         Fix think-o in previous patch
32202         * src/window.c (count_windows, get_leaf_windows):
32203         Don't optimize count_windows incorrectly.
32205 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
32207         Avoid some int overflows in window.c
32208         * src/print.c (print_object):
32209         * src/window.c (sequence_number):
32210         * src/window.h (struct window.sequence_number):
32211         Don't assume window sequence number fits in int.
32212         * src/window.c (window_select_count):
32213         * src/window.h (struct window.use_time, window_select_count):
32214         Don't assume window use time fits in int.
32215         * src/window.c (Fsplit_window_internal):
32216         Don't assume user-supplied integer, or sum, fits in int.
32217         (Fset_window_configuration, count_windows, get_leaf_windows)
32218         (save_window_save, Fcurrent_window_configuration):
32219         Use ptrdiff_t for object counts.
32220         (Fset_window_configuration): Omit unused local 'n'.
32221         (count_windows): Simplify by writing in terms of get_leaf_windows.
32222         (get_leaf_windows): Don't store through FLAT if it's null.
32223         (extract_dimension): New static function.
32224         (set_window_margins, set_window_fringes, set_window_scroll_bars):
32225         Use it to avoid undefined behavior when converting user-supplied
32226         integer to 'int'.
32228 2015-04-13  Glenn Morris  <rgm@gnu.org>
32230         Minor doc copyedits
32231         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
32232         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
32234 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
32236         [Gnus] Catch the invalid-operation that idna.el will issue
32237         * lisp/gnus/gnus-art.el (gnus-use-idna):
32238         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
32239         * lisp/gnus/message.el (message-use-idna):
32240         Catch the invalid-operation that idna.el will issue.
32242 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
32244         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
32246 2015-04-13  Sam Steingold  <sds@gnu.org>
32248         package--ensure-init-file: widen before looking for
32249         "(package-initialize)"
32251 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
32253         Change diff-switches default to `-u' (Bug#20290)
32254         * doc/emacs/files.texi (Comparing Files): Document the new default
32255         value of `diff-switches'.
32256         * doc/emacs/trouble.texi (Sending Patches): Document the preference
32257         for unified diff format.  Escape the plus in the suggested `-F' regexp
32258         value.
32259         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
32261 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32263         (gnus-group--setup-tool-bar-update): Fix last change
32264         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
32265         cursor-sensor-functions should be a list of functions.
32267 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
32269         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
32270         Use gmm-called-interactively-p.
32272 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32274         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
32275         (Bug#20321)
32276         * lisp/cus-start.el (read-buffer-function): Don't advertise
32277         iswitchb-read-buffer any more.
32278         (iswitchb): Don't tweak this obsolete group any more.
32280 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
32282         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
32284         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
32285         Adding a string after a constructor's argument list will use
32286         that string as the constructor function docstring.  If this string
32287         is absent but the struct itself was given a docstring, use that as
32288         the constructor's docstring.
32289         Fixes bug#17284.
32291 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32293         Deprecate `intangible' and `point-entered' properties
32294         * lisp/emacs-lisp/cursor-sensor.el: New file.
32295         * lisp/simple.el (pre-redisplay-functions): New hook.
32296         (redisplay--pre-redisplay-functions): New function.
32297         (pre-redisplay-function): Use it.
32298         (minibuffer-avoid-prompt): Mark obsolete.
32299         (redisplay--update-region-highlight): Adapt it to work as a function on
32300         pre-redisplay-functions.
32301         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
32302         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
32303         than point-entered to make the prompt intangible.
32304         * lisp/forms.el: Move `provide' calls to the end.
32305         (forms-mode): Don't use `run-hooks' on a local var.
32306         (forms--make-format, forms--make-format-elt-using-text-properties):
32307         Use cursor-intangible rather than `intangible'.
32308         (forms-mode): Enable cursor-intangible-mode.
32309         * lisp/isearch.el (isearch-mode): Use defvar-local.
32310         (cursor-sensor-inhibit): Declare.
32311         (isearch-mode): Set cursor-sensor-inhibit.
32312         (isearch-done): Set it back.
32313         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
32314         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
32315         any more.
32316         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
32317         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
32318         Add Edebug spec.
32319         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
32320         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
32321         inhibit-point-motion-hooks any more.
32322         (ses--cell-at-pos, ses--curcell): New functions, extracted from
32323         ses-set-curcell.
32324         (ses-set-curcell): Use them.
32325         (ses-print-cell, ses-setup): Use cursor-intangible instead of
32326         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
32327         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
32328         Use ses--cell-at-pos.
32329         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
32330         extracted from ses-command-hook.  Make them work with multiple windows
32331         displaying the same buffer.
32332         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
32333         Enable cursor-intangible-mode.
32334         (ses-command-hook): Remove cell highlight and mode-line update code.
32335         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
32336         Update for new name of text-property holding the cell name.
32337         (ses-rename-cell): Don't mess with mode-line-process.
32338         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
32339         cursor-sensor-functions property instead of point-entered.
32340         (erc-insert-timestamp-right, erc-format-timestamp):
32341         Use cursor-intangible rather than `intangible'.
32342         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
32343         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
32344         cursor-sensor-mode if needed.
32345         (erc-echo-timestamp): Adapt to calling convention of
32346         cursor-sensor-functions.
32347         (erc-insert-timestamp-right): Remove unused vars `current-window' and
32348         `indent'.
32349         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
32350         (gnus-update-group-mark-positions): Remove unused `topic' var.
32351         (gnus-group-insert-group-line): Remove unused var `header'.
32352         (gnus-group--setup-tool-bar-update): New function.
32353         (gnus-group-insert-group-line): Use it.
32354         (gnus-group-update-eval-form): Declare local
32355         dynamically-bound variables.
32356         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
32357         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
32358         (gnus-group-prepare-topics, gnus-topic-update-topic)
32359         (gnus-topic-change-level, gnus-topic-catchup-articles)
32360         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
32361         Use inhibit-read-only.
32362         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
32363         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
32364         * lisp/textmodes/reftex-index.el (reftex-display-index):
32365         Use cursor-intangible-mode if available.
32366         (reftex-index-post-command-hook): Check cursor-intangible.
32367         * lisp/textmodes/reftex-toc.el (reftex-toc):
32368         Use cursor-intangible-mode if available.
32369         (reftex-toc-recenter, reftex-toc-post-command-hook):
32370         Check cursor-intangible.
32371         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
32372         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
32373         (sgml-tags-invisible): Use with-silent-modifications and
32374         inhibit-read-only.  Enable cursor-sensor-mode.
32375         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
32376         calling convention of cursor-sensor-functions.
32377         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
32378         (table-point-entered-cell-hook, table-point-left-cell-hook):
32379         Don't autoload.
32380         (table-cell-entered-state): Remove var.
32381         (table--put-cell-point-entered/left-property)
32382         (table--remove-cell-properties):
32383         Use cursor-sensor-functions rather than point-entered/left.
32384         (table--point-entered/left-cell-function): Merge
32385         table--point-entered-cell-function and table--point-left-cell-function
32386         and adjust to calling convention of cursor-sensor-functions.
32388         Update ldef-boots.el
32390         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
32392         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
32394         Collapse successive char deletions in the undo log
32395         * src/cmds.c (remove_excessive_undo_boundaries): New function,
32396         extracted from Fself_insert_command.
32397         (Fdelete_char, Fself_insert_command): Use it.
32398         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
32399         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
32401         xterm and OSC 52: Add NEWS entry, and tweak the code
32402         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
32403         to top-level.
32404         (terminal-init-xterm-activate-set-selection): Set a terminal property.
32405         (xterm--set-selection): Use it instead of checking the value of
32406         `terminal-initted'.  Don't use string-bytes.
32408 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
32410         xterm.el: Implement OSC-52 functionality for setting the X selection
32411         * lisp/term/xterm.el (xterm-max-cut-length): New var.
32412         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
32413         New funs.
32414         (terminal-init-xterm, xterm--version-handler): Use them.
32416 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32418         Remove left over code from when we used an obsolete/loaddefs.el file
32419         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
32420         when we used an obsolete/loaddefs.el file.
32422         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
32423         (semanticdb-without-unloaded-file-searches): Use declare.
32424         (semantic-fw-add-edebug-spec): Remove.
32426         * lisp/completion.el (completion-lisp-mode-hook):
32427         Use completion-separator-chars rather than local key binding.
32429         * src/*.c: Set deactivate_mark buffer-locally
32430         (Bug#20260)
32431         * src/insdel.c (prepare_to_modify_buffer_1):
32432         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
32433         buffer-locally.
32435 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32437         python.el: Keep symmetry on sexp navigation with parens
32438         (Bug#19954)
32439         * lisp/progmodes/python.el
32440         (python-nav--forward-sexp): Add argument skip-parens-p.
32441         (python-nav-forward-sexp, python-nav-backward-sexp)
32442         (python-nav-forward-sexp-safe)
32443         (python-nav-backward-sexp-safe): Use it.
32444         * test/automated/python-tests.el
32445         (python-nav-forward-sexp-1): Fix test.
32447 2015-04-12  João Távora  <joaotavora@gmail.com>
32449         Don't use `setq-local' in Gnus code
32450         This might break upstream builds with older Emacsen
32451         * lisp/gnus/message.el (message-mode): Use `set' and
32452         `make-local-variable' instead of `setq-local'.
32454 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
32456         Update Makefile.in's .PHONY dependencies
32457         * Makefile.in (change-history-commit, master-branch-is-current)
32458         (no-ChangeLog): Now phony.
32460         Remove configure's --with-mmdf option
32461         * configure.ac (MAIL_USE_MMDF): Remove.
32462         * etc/NEWS: Document this.
32463         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
32464         (Bug#20308)
32466         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
32467         That way, 'make install' won't think it's a man page.
32468         Reported by Ashish SHUKLA in:
32469         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
32471         Improve 'make change-history' prereq tests
32472         * Makefile.in (gen_origin): Fix to match what's in the master branch.
32473         (no-ChangeLog, master-branch-is-current): New rules.
32474         (change-history): Depend on them, to avoid similar future problems.
32475         Escape the local-variables string to pacify Emacs when editing
32476         Makefile.in.
32478 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
32480         * test/automated/package-test.el (with-package-test):
32481         Kill Packages buffer.
32483         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
32484         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
32485         "Upgrade" last, and use capitalized instead of all-caps.
32487         * lisp/emacs-lisp/package.el: Completely silence async operations.
32488         (package--make-autoloads-and-stuff): Silence autoloads.
32489         (package--save-selected-packages): New function, silences
32490         `customize-save-variable'.
32491         (package--user-selected-p, package-install-from-buffer)
32492         (package-delete, package-install): Use it.
32493         (package-install-from-archive)
32494         (package-menu--perform-transaction): Silence.
32495         (package-menu-execute): Feedback when operation starts.
32497         Use delay-mode-hooks when visiting the init-file
32498         * lisp/emacs-lisp/package.el (package--ensure-init-file):
32499         delay-mode-hooks.
32500         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
32502         * lisp/files.el: Only message when saving if save-silently is nil.
32503         (save-silently): New variable.
32504         (files--message): New function.
32505         (find-file-noselect, save-buffer, basic-save-buffer)
32506         (basic-save-buffer-2, save-some-buffers, not-modified)
32507         (append-to-file): Use them.
32509 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
32511         Support debug declarations in pcase macros
32512         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
32513         (pcase-UPAT): Use it.  Remove "`".
32514         (pcase--edebug-match-macro): New function.
32515         (pcase-defmacro): Support debug declarations.
32516         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
32517         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
32518         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
32519         Add debug declaration.
32521         pcase.el: Edebug support for `app' and vector patterns
32522         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
32523         (pcase-UPAT): Use it.  Support `app' patterns.
32524         (pcase-QPAT): Support vector patterns.
32526         edebug.el: Disambiguate vector specifications
32527         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
32528         `(vector ...)' as a vector specification, not as a sublist.
32530         (gnus-summary-refer-thread): Don't clobber unread articles
32531         This fixes a bug where `A T' causes "random" articles to become marked
32532         as read.
32533         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
32534         gnus-newsgroup-unreads remains sorted.
32536         mouse-sel.el: Fix mouse-sel-get-selection-function
32537         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
32538         Use gui--last-selected-text-primary instead of no longer existing
32539         gui-last-selected-text.
32541         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
32543         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
32545 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
32547         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
32549         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
32550         right buffer.
32552         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
32553         (byte-compile--interactive): New var.
32554         (byte-compile--message): New function.
32555         (byte-compile-log-1, byte-force-recompile)
32556         (byte-recompile-directory, byte-recompile-file)
32557         (byte-compile-file, compile-defun)
32558         (byte-compile-file-form-defmumble, byte-compile)
32559         (byte-compile-file-form-defalias, display-call-tree): Use it.
32561         * lisp/files.el: Don't message when nothing happened.
32562         (save-some-buffers, basic-save-buffer): Before messaging to say
32563         "nothing was saved" check if (called-interactively-p 'any).
32565 2015-04-12  João Távora  <joaotavora@gmail.com>
32567         Summary: Improve sexp-based movement in message-mode
32568         Works by giving citations and smileys a different syntax.  This helps
32569         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
32570         sexp-based movement.
32571         * lisp/gnus/message.el (message--syntax-propertize): New function.
32572         (message-mode): Set syntax-related vars.
32573         (message-smileys): New variable.
32574         * test/automated/message-mode-tests.el: New file
32576 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
32578         Use bool for boolean in window.c
32579         * src/window.c: Omit unnecessary static function decls.
32580         (adjust_window_count, select_window, Fselect_window)
32581         (window_body_width, Fwindow_body_height, Fwindow_body_width)
32582         (set_window_hscroll, check_window_containing, Fwindow_at)
32583         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
32584         (unshow_buffer, replace_window, recombine_windows)
32585         (add_window_to_list, candidate_window_p, next_window)
32586         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
32587         (Fget_buffer_window, Fdelete_other_windows_internal)
32588         (replace_buffer_in_windows_safely, set_window_buffer)
32589         (Fset_window_buffer, Fforce_window_update)
32590         (temp_output_buffer_show, make_parent_window)
32591         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
32592         (resize_frame_windows, Fsplit_window_internal)
32593         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
32594         (Fresize_mini_window_internal, mark_window_cursors_off)
32595         (window_scroll, window_scroll_pixel_based)
32596         (window_scroll_line_based, scroll_command, Fscroll_other_window)
32597         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
32598         (Fmove_to_window_line, Fset_window_configuration)
32599         (delete_all_child_windows, apply_window_adjustment)
32600         (set_window_fringes, set_window_scroll_bars)
32601         (Fset_window_vscroll, foreach_window, foreach_window_1)
32602         (compare_window_configurations, Fcompare_window_configurations):
32603         Prefer 'bool', 'true', and 'false' for booleans.
32604         * src/window.h (WINDOW_MODE_LINE_LINES)
32605         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
32607 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
32609         Speed up byte-compilation and autoload generation by avoiding mode-hooks
32610         This prevents emacs-lisp-mode-hook from being run everytime an
32611         autoload file is generated, which can account for a fraction of
32612         package installation time depending on the hooks the user has
32613         configured.
32614         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
32615         * lisp/emacs-lisp/autoload.el (autoload-find-file)
32616         (autoload-find-generated-file): Use delay-mode-hooks.
32618         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
32619         (package-menu-refresh): Respect async and do new package checking.
32620         (list-packages): Use `package-menu-refresh' instead of repeating code.
32622         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
32623         (package--quick-help-keys): New variable.
32624         (package--prettify-quick-help-key): New function.
32625         (package-menu-quick-help): Use it.
32627         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
32628         (package--build-compatibility-table): Require finder.
32630         * test/automated/package-test.el: Fix new test.
32632         * lisp/emacs-lisp/package.el: Silence async operations.
32633         (package--silence): New variable.
32634         (package--message): New function.
32635         (package-import-keyring, package-refresh-contents)
32636         (package-compute-transaction, package-install, package-delete)
32637         (package-menu--perform-transaction, package-menu-execute): Use it.
32639         * test/automated/package-test.el: Test async functionality.
32640         (package-test-update-archives-async): New test.
32642 2015-04-11  Daiki Ueno  <ueno@gnu.org>
32644         Utilize `make-process' in epg.el
32645         * lisp/epg.el (epg-error-output): Abolish.
32646         (epg-context): New slot `error-buffer'.
32647         (epg--start): Use `make-process' and `make-pipe-process'.
32648         (epg--process-filter): Remove code separating stderr from stdout.
32649         (epg-wait-for-completion): Simplify `error-output' handling.
32650         (epg-reset): Dispose error buffer.
32652 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
32654         * .gitignore: Ignore doc temps and outputs.
32656         Port commit-msg to MSYS Bash+Gawk
32657         See Eli Zaretskii in:
32658         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
32659         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
32660         (cent_sign, print_at_sign, at_sign): Revert previous change.
32661         (print_at_sign): Prepend "BEGIN".
32662         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
32664         Port commit-msg to broken MS-Windows shell
32665         * build-aux/git-hooks/commit-msg (cent_sign):
32666         Just use UTF-8 here rather than ASCII + printf, as the latter fails
32667         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
32668         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
32670 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
32672         Support GnuTLS v3.4 and later on MS-Windows
32673         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
32674         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
32675         GnuTLS DLL to load according to value of libgnutls-version.
32676         (Bug#20294)
32678 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
32680         Minor quoting etc. fixes to misc manuals
32681         Fix some minor quoting and spacing issues.  Distinguish more
32682         clearly among grave accent and apostrophe (which are ASCII) and
32683         single quote (which is not).  Prefer the standard terms
32684         "apostrophe" and "grave accent" to alternative names that can be
32685         confusing.  Use apostrophes to single-quote ASCII text.
32686         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
32687         rather than approximating it in ASCII with grave accent.
32689 2015-04-11  Daiki Ueno  <ueno@gnu.org>
32691         Respect more keyword args in `make-process'
32692         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
32693         keywords as documented.
32695 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
32697         Extract ChangeLog entries when committing a directory
32698         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
32699         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
32700         Add a FIXME comment.
32701         (log-edit-changelog-entries): Extract from
32702         `log-edit-changelog-entries', handle FILE being a directory
32703         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
32705 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
32707         Fix problems found by --enable-gcc-warnings
32708         * src/process.c (create_process, Fmake_pipe_process)
32709         (Fmake_network_process): Omit unused locals.
32711         Fix commit-msg to handle scissors lines
32712         * build-aux/git-hooks/commit-msg:
32713         Ignore every line after a scissors line, such as a line generated
32714         by 'git commit -v'.  Problem reported by Johan Bockgård in:
32715         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
32717         port commit-msg to Gawk 3.0.4 (1999)
32718         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
32719         (print_at_sign, at_sign): New vars.  Use them to avoid problems
32720         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
32721         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
32723         Have commit-msg report commit failure
32724         * build-aux/git-hooks/commit-msg: If the commit is aborted,
32725         say so.  Simplify by doing this at the end.  Problem reported
32726         by Eli Zaretskii in:
32727         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
32729 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
32731         Clean up LDAP Configuration section of EUDC manual
32732         * doc/misc/eudc.texi: Combine indices.
32733         (LDAP Configuration): Use command markup.  Add index entries.
32734         Change formatting.  Wrap long lines.  Add noindent markup.
32736 2015-04-10  Daiki Ueno  <ueno@gnu.org>
32738         Add facility to collect stderr of async subprocess
32739         * src/w32.h (register_aux_fd): New function declaration.
32740         * src/w32.c (register_aux_fd): New function.
32741         * src/process.h (struct Lisp_Process): New member stderrproc.
32742         * src/process.c (PIPECONN_P): New macro.
32743         (PIPECONN1_P): New macro.
32744         (Fdelete_process, Fprocess_status, Fset_process_buffer)
32745         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
32746         (Fcontinue_process): Handle pipe process specially.
32747         (create_process): Respect p->stderrproc.
32748         (Fmake_pipe_process): New function.
32749         (Fmake_process): Add new keyword argument :stderr.
32750         (wait_reading_process_output): Specially handle a pipe process when
32751         it gets an EOF.
32752         (syms_of_process): Register Qpipe and Smake_pipe_process.
32753         * doc/lispref/processes.texi (Asynchronous Processes): Document
32754         `make-pipe-process' and `:stderr' keyword of `make-process'.
32755         * lisp/subr.el (start-process): Suggest to use `make-process' handle
32756         standard error separately.
32757         * test/automated/process-tests.el (process-test-stderr-buffer)
32758         (process-test-stderr-filter): New tests.
32759         * etc/NEWS: Mention new process type `pipe' and its usage with the
32760         `:stderr' keyword of `make-process'.
32762 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
32764         Minor quoting etc. fixes to lispref manual
32765         * doc/lispref/tips.texi (Documentation Tips):
32766         Distinguish more clearly among grave accent, apostrophe,
32767         and single quote.
32768         * doc/lispref/README, doc/lispref/buffers.texi:
32769         * doc/lispref/commands.texi, doc/lispref/control.texi:
32770         * doc/lispref/customize.texi, doc/lispref/display.texi:
32771         * doc/lispref/elisp.texi, doc/lispref/files.texi:
32772         * doc/lispref/frames.texi, doc/lispref/hash.texi:
32773         * doc/lispref/help.texi, doc/lispref/internals.texi:
32774         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
32775         * doc/lispref/markers.texi, doc/lispref/modes.texi:
32776         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
32777         * doc/lispref/os.texi, doc/lispref/positions.texi:
32778         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
32779         * doc/lispref/text.texi, doc/lispref/tips.texi:
32780         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
32781         Use American-style double quoting in ordinary text,
32782         and quote 'like this' when single-quoting in ASCII text.
32783         Also, fix some minor spacing issues.
32785 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
32787         Handle symlinked test directory in tramp-tests.el
32788         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
32789         (tramp--test-check-files): Use `file-truename' for directories.
32791 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
32793         Fix 'recenter' when visual-line-mode is turned on
32794         * src/window.c (Frecenter): Use the same code for GUI and TTY
32795         frames alike; use vmotion only for "initial" frames.  This is
32796         because vmotion doesn't support visual-line-mode.  Rewrite the
32797         'iarg >= 0' case to use move_it_* functions instead of using
32798         vmotion, for the same reason.  Fix the clipping of the argument
32799         value to support scroll-margin in all cases and avoid unwarranted
32800         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
32801         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
32802         which see.
32804 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
32806         * lisp/abbrev.el (define-abbrev-table): Refine last change.
32808         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
32809         use of c[ad]+r", so as to keep the "cl-" prefix on all
32810         cl-lib definitions.
32812         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
32813         Use inhibit-point-motion-hooks.
32815         * lisp/cedet/semantic: Remove some dead code.
32816         * lisp/cedet/semantic/util-modes.el
32817         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
32818         any more.
32819         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
32820         not supported any more.
32821         (semantic-safe): Use `declare'.
32822         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
32823         (semantic-tag-intangible-p): Remove unused functions.
32824         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
32825         Remove unused function.
32827         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
32828         (gnus-article-hide-text, gnus-article-unhide-text)
32829         (gnus-article-unhide-text-type): Remove special handling of
32830         `intangible' since that property is not used any more.
32831         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
32833 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
32835         Use the VC root in `log-edit-listfun'
32836         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
32837         `log-edit-listfun'.
32839 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
32841         Fix description of Unix time, mention new function.
32842         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
32843         Unix time.
32844         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
32845         (Basic Operations on Units): Mention `calc-convert-exact-units'.
32847 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
32849         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
32851 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
32853         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
32854         Don't add newline after the last entry.
32856 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
32858         css-mode.el: Add "not" pseudo-class
32859         (Bug#20267)
32860         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
32861         list of CSS pseudo-classes.
32863 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
32865         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
32867 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
32869         Stop messing with the EMACS env var
32870         * doc/emacs/misc.texi (Interactive Shell): Remove description of
32871         EMACS env var.
32873 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
32875         Adapt 'make change-history' to coding cookie
32876         * Makefile.in (change-history): Adjust to change of format of
32877         ChangeLog file, which now has a coding cookie before an indented
32878         copyright notice.
32880 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
32882         Adapt 'make change-history' to coding cookie
32883         * Makefile.in (change-history): Adjust to change of format of
32884         ChangeLog file, which now has a coding cookie before an indented
32885         copyright notice.
32887         gitlog-to-changelog coding cookie and mv -i
32888         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
32889         for copyright notice prototype, so that we get a proper "coding:"
32890         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
32891         existing ChangeLog.  Problems reported by Eli Zaretskii in:
32892         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
32894         Merge from gnulib
32895         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
32896         2015-04-09 gitlog-to-changelog: port to MS-Windows
32898 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
32900         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
32901         (Bug#20212)
32903 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
32905         Stop messing with the EMACS env var
32906         (Bug#20202)
32907         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
32908         * lisp/comint.el (comint-exec-1):
32909         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
32910         * lisp/progmodes/compile.el (compilation-start): Same and bring
32911         INSIDE_EMACS's format in line with other users.
32913         css-mode.el (css-smie-rules): Fix indentation after complex selectors
32914         (Bug#20282)
32915         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
32916         inner structure of selectors.
32918 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32920         python.el: Indent docstring lines to base-indent
32921         (Bug#19595)
32922         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
32923         an initial patch.
32924         * lisp/progmodes/python.el
32925         (python-indent-context): Add :inside-docstring context.
32926         (python-indent--calculate-indentation): Handle :inside-docstring.
32927         (python-indent-region): Re-indent docstrings.
32928         * test/automated/python-tests.el (python-indent-region-5)
32929         (python-indent-inside-string-2): Fix tests.
32931         python.el: Increase native completion robustness
32932         (Bug#19755)
32933         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
32934         this and providing useful ideas.
32935         * lisp/progmodes/python.el
32936         (python-shell-completion-native-output-timeout): Increase value.
32937         (python-shell-completion-native-try-output-timeout): New var.
32938         (python-shell-completion-native-try): Use it.
32939         (python-shell-completion-native-setup): New readline setup avoids
32940         polluting current context, ensures output when no-completions are
32941         available and includes output end marker.
32942         (python-shell-completion-native-get-completions): Trigger with one
32943         tab only.  Call accept-process-output until output end is found or
32944         python-shell-completion-native-output-timeout is exceeded.
32946 2015-04-08  Samer Masterson  <samer@samertm.com>
32948         * lisp/eshell: Make backslash a no-op in front of normal chars
32949         (Bug#8531)
32950         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
32951         (eshell-parse-backslash): Return escaped character after backslash
32952         if it is special.  Otherwise, if the backslash is not in a quoted
32953         string, ignore the backslash and return the character after; if
32954         the backslash is in a quoted string, return the backslash and the
32955         character after.
32956         * test/automated/eshell.el (eshell-test/escape-nonspecial)
32957         (eshell-test/escape-nonspecial-unicode)
32958         (eshell-test/escape-nonspecial-quoted)
32959         (eshell-test/escape-special-quoted): Add tests for new
32960         `eshell-parse-backslash' behavior.
32962 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
32964         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
32965         after the file name.
32966         (Bug#20276)
32968 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
32970         Minor quoting etc. fixes to Emacs manual
32971         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
32972         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
32973         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
32974         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
32975         * doc/emacs/indent.texi, doc/emacs/macos.texi:
32976         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
32977         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
32978         * doc/emacs/search.texi, doc/emacs/trouble.texi:
32979         * doc/emacs/vc1-xtra.texi:
32980         Use American-style double quoting in ordinary text,
32981         and quote 'like this' when single-quoting in ASCII text.
32982         Also, fix some minor spacing issues.
32984         Minor quoting etc. fixes to elisp intro
32985         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
32986         American-style double quoting in ordinary text.  In ASCII text,
32987         consistently quote 'like this' instead of `like this', unless
32988         Emacs requires the latter.
32990 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
32992         * CONTRIBUTE: Mention log-edit-insert-changelog.
32994         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
32996 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
32998         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
33000 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
33002         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
33003         Fix inheritance of initargs.  (Bug#20270)
33005 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
33007         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
33008         while dowloading information.
33010         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
33011         (package--ensure-init-file): Check file contents before visiting.
33012         (package-initialize): Call it.
33013         (package-install-from-buffer, package-install): Don't call it.
33015 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
33017         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
33018         (Bug#17517)
33020 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
33022         * lisp/net/tramp-cache.el (tramp-flush-file-property):
33023         Fix nasty scoping bug.
33025 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
33027         Add notice to visual commands section
33028         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
33029         such as git call less with its -F option which omits pagination if
33030         the contents is less than one page long.  This interferes with
33031         eshell's visual (sub-)commands.
33033 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
33035         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
33036         environment variable expansion in file names.  (Bug#19839)
33038 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
33040         Prefer double-quote to accent-grave in man pages
33042 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
33044         (Bug#20257)
33045         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
33047 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
33049         Update etc/PROBLEMS.
33050         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
33051         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
33052         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
33053         respectively); other minor updates and tweaks.  (Bug#20011)
33055 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
33057         Add doc strings for some Isearch state vars
33058         * lisp/misearch.el (multi-isearch-buffer-list)
33059         (multi-isearch-file-list): Add doc strings.
33060         (Bug#20232)
33062 2015-04-07  Alan Mackenzie  <acm@muc.de>
33064         Always mark "<" and ">" in #include directives with text properties.
33065         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
33066         "anchored matcher" with an invocation of
33067         c-make-font-lock-search-function to allow fontification when there's
33068         no trailing space on an "#include <..>" line.
33070 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
33072         Generate a ChangeLog file from commit logs
33073         * .gitignore: Add 'ChangeLog'.
33074         * build-aux/gitlog-to-changelog: New file, from Gnulib.
33075         * build-aux/gitlog-to-emacslog: New file.
33076         * CONTRIBUTE: Document the revised workflow.
33077         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
33078         instead of just special cases.
33079         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
33080         (ChangeLog, unchanged-history-files, change-history)
33081         (change-history-commit): New rules.
33082         * admin/admin.el (make-manuals-dist--1):
33083         Don't worry about doc/ChangeLog.
33084         * admin/authors.el: Add a FIXME.
33085         * admin/make-tarball.txt:
33086         * lisp/calendar/icalendar.el:
33087         * lisp/gnus/deuglify.el:
33088         * lisp/obsolete/gulp.el:
33089         * lwlib/README:
33090         Adjust to renamed ChangeLog history files.
33091         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
33092         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
33093         Remove obsolete discussion of merging ChangeLog files.
33094         New section "Maintaining ChangeLog history".
33095         * build-aux/git-hooks/pre-commit:
33096         Reject attempts to commit files named 'ChangeLog'.
33097         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
33098         * make-dist: Make and distribute top-level ChangeLog if there's a
33099         .git directory.  Distribute the new ChangeLog history files
33100         instead of scattered ChangeLog files.  Distribute the new files
33101         gitlog-to-changelog and gitlog-to-emacslog.
33102         (Bug#19113)
33104         Rename ChangeLogs for gitlog-to-changelog
33105         This patch was implemented via the following shell commands:
33106         find * -name ChangeLog |
33107         sed 's,.*,git mv & &.1,
33108         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
33109         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
33110         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
33111         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
33112         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
33113         sh
33114         git commit -am"[this commit message]"
33116 This file records repository revisions from
33117 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
33118 commit 7acfaead6df626b3737c10f98e9c4964232aa6b9 (inclusive).
33119 See ChangeLog.1 for earlier changes.
33121 ;; Local Variables:
33122 ;; coding: utf-8
33123 ;; End:
33125   Copyright (C) 2015-2016 Free Software Foundation, Inc.
33127   This file is part of GNU Emacs.
33129   GNU Emacs is free software: you can redistribute it and/or modify
33130   it under the terms of the GNU General Public License as published by
33131   the Free Software Foundation, either version 3 of the License, or
33132   (at your option) any later version.
33134   GNU Emacs is distributed in the hope that it will be useful,
33135   but WITHOUT ANY WARRANTY; without even the implied warranty of
33136   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
33137   GNU General Public License for more details.
33139   You should have received a copy of the GNU General Public License
33140   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.