electric-quote mode no longer worries about coding
[emacs.git] / ChangeLog.2
blob79f44fd8bb81a3247fe8b842b1173694ce605205
1 2016-09-16  Nicolas Petton  <nicolas@petton.fr>
3         * Version 25.1 released.
5 2016-09-15  Nicolas Petton  <nicolas@petton.fr>
7         * etc/AUTHORS: Regenerate the AUTHORS file
9 2016-09-15  Eli Zaretskii  <eliz@gnu.org>
11         Update admin/authors.el
13         * admin/authors.el (authors-fixed-entries): Add an entry for Bob
14         Weiner.
16 2016-09-14  Eli Zaretskii  <eliz@gnu.org>
18         Update Antinews in ELisp manual
20         * doc/lispref/anti.texi (Antinews): Update for Emacs 25.1.
21         * doc/lispref/elisp.texi (Top): Update the main menu entry for
22         Antinews.
24 2016-09-11  Noam Postavsky  <npostavs@gmail.com>
26         Fix comments on window height macros
28         * src/window.h (WINDOW_MODE_LINE_HEIGHT, WINDOW_HEADER_LINE_HEIGHT): Fix
29         confusing claim that "height is in pixels and in lines"; in fact it's in
30         pixels.
32 2016-09-10  Toke Høiland-Jørgensen  <toke@toke.dk>  (tiny change)
34         Fix 'url-http-create-request' when cookies are used
36         * lisp/url/url-http.el (url-http-create-request): Make sure the
37         cookie headers are a unibyte string.  For the details, see
38         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00202.html.
40 2016-09-08  Martin Rudalics  <rudalics@gmx.at>
42         Fix cross reference in frames.texi
44         * doc/lispref/frames.texi (Minibuffers and Frames): Fix cross
45         reference.
47 2016-09-04  immerrr  <immerrr@gmail.com>
49         Fix regexp-opt documentation (bug #17862)
51         * lisp/emacs-lisp/regexp-opt.el (regexp-opt):
52         * doc/lispref/searching.texi (Regexp Functions): Update PAREN doc.
54 2016-08-31  Nicolas Richard  <youngfrog@members.fsf.org>
56         * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in docstring.
58 2016-08-27  Noam Postavsky  <npostavs@gmail.com>
60         Fix tags-query-replace docstring
62         * lisp/progmodes/etags.el (tags-query-replace): Remove incorrect info
63         regarding non-existent parameters.
65 2016-08-26  Eli Zaretskii  <eliz@gnu.org>
67         Clarify documentation of precision in format specs
69         * doc/lispref/strings.texi (Formatting Strings): Be less
70         definitive wrt what precision means in format specs other than
71         floating-point, %s and %S.  (Bug#24314)
73 2016-08-24  Eli Zaretskii  <eliz@gnu.org>
75         Improve and clarify documentation of subprocesses
77         * doc/lispref/processes.texi (Subprocess Creation, Shell Arguments):
78         Mention 'make-process' rather than 'start-process'.  Update wrt
79         standard destinations of standard output/error streams and due to
80         different formats of arguments accepted by 'make-process'.
81         (Processes): Mention process objects that represent connections.
82         (Synchronous Processes): Minor clarifications.
83         (Asynchronous Processes): Describe 'make-process' and
84         'make-pipe-process' before 'start-process'.  Update and expand the
85         documentation.
86         (Deleting Processes, Process Information, Input to Processes)
87         (Signals to Processes, Query Before Exit, Network): Update and
88         expand the documentation, especially wrt process objects that
89         represent connections.
90         (Output from Processes): Mention the possibility of separating
91         stderr via 'make-process'.
92         (Filter Functions): Mention that stderr by default arrives at the
93         filter function together with stdout.  (Bug#24287)
95         * src/process.c (Fprocess_id, Fprocess_command)
96         (Fprocess_contact, Fprocess_type, Fstop_process): Doc fixes for
97         process objects that represent connections.
99 2016-08-23  Paul Eggert  <eggert@cs.ucla.edu>
101         * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
103 2016-08-21  Nicolas Petton  <nicolas@petton.fr>
105         * etc/AUTHORS: Update the AUTHORS file
107 2016-08-20  Philipp Stephani  <phst@google.com>
109         Some assorted documentation clarifications
111         * src/fileio.c (Fwrite_region): Clarify that END is ignored if
112         START is nil.
113         * src/editfns.c (Fbuffer_size): Add short discussion about
114         narrowing.
115         * src/callproc.c (Fcall_process_region): Discuss behavior when
116         START and END are not buffer positions.
118 2016-08-18  Eli Zaretskii  <eliz@gnu.org>
120         Improve commentary in src/character.h
122         * src/character.h (BYTES_BY_CHAR_HEAD, MULTIBYTE_LENGTH)
123         (MULTIBYTE_LENGTH_NO_CHECK, STRING_CHAR_AND_LENGTH): Remove stale
124         info from commentary and improve it.
126 2016-08-17  Dmitry Gutov  <dgutov@yandex.ru>
128         * etc/NEWS: Mention the change in json-encode-string.
130         The change was made to fix bug#20154, and came up again in bug#24239.
132 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
134         * src/doc.c (Fsubstitute_command_keys): Another fix for smart quotes.
136         (Bug#24206)
138 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
140         Avoid segfaults due to quoting in 'substitute-command-keys'
142         * src/doc.c (Fsubstitute_command_keys): Correct character counts
143         when the input string is unibyte.  (Bug#24206)
145 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
147         In NEWS describe new handling of window margins (Bug#24193)
149         * etc/NEWS: Describe new handling of margins when splitting or
150         resizing windows (Bug#24193).
152 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
154         Facultatively ignore margins when splitting and resizing windows (Bug#24193)
156         Provide a new window parameter 'min-margins' which allows to
157         ignore the actual widths of a window's margins when splitting or
158         resizing that window horizontally.  This should serve as a
159         workaround for handling the problems raised by Bug#24193.
161         * lisp/window.el (window--min-size-1): Handle new window
162         parameter 'min-margins'.
163         (split-window): Fix text of error messages.
164         * doc/lispref/windows.texi (Window Parameters): Describe new
165         parameter 'min-margins'.
167 2016-08-14  Noam Postavsky  <npostavs@gmail.com>
169         Document CATEGORY arg to modify-category-entry
171         * src/category.c (Fmodify_category_entry): Document CATEGORY argument.
173 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
175         Document char-script-table's effect on word motion
177         * doc/lispref/positions.texi (Word Motion): Talk about
178         char-script-table (Bug #10494).
180 2016-08-13  Eli Zaretskii  <eliz@gnu.org>
182         Further fix for 'url-http-create-request' and multibyte strings
184         * lisp/url/url-http.el (url-http-create-request): Run
185         url-mime-charset-string through url-http--encode-string.
186         (Bug#24117)
188 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
190         Fix docstring of eval-expression
192         * lisp/simple.el (eval-expression): Fix the docstring to reflect the
193         fact that the prefix argument does not affect formatting for
194         integers (Bug #20691).
196 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
198         Clarify when 'cursor' property is in effect
200         * doc/lispref/text.texi (Special Properties): Minor copyedits.
201         (Bug#24179)
203 2016-08-11  Dmitry Gutov  <dgutov@yandex.ru>
205         Convert the remaining strings to unibyte before concatenating
207         * lisp/url/url-http.el (url-http--encode-string): New function.
208         (url-http-create-request): Use it to convert ASCII to unibyte.
209         (Bug#24117)
211 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
213         Fix bug with handling the bidi cache
215         * src/xdisp.c (redisplay_window): Save and restore the state of
216         the bidi cache before reusing the iterator after calls to
217         try_window and try_window_reusing_current_matrix.
219 2016-08-10  Eli Zaretskii  <eliz@gnu.org>
221         * doc/lispref/text.texi (Change Hooks): Minor copyedits.
223 2016-08-09  Eli Zaretskii  <eliz@gnu.org>
225         Clarify documentation of before/after-change-functions
227         * doc/lispref/text.texi (Change Hooks): Clarify that the hooks are
228         not called in balanced pairs.
230 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
232         Document use of vectors in keymaps
234         * doc/lispref/keymaps.texi (Format of Keymaps): Mention vector
235         format (Bug #14797).
237 2016-08-03  Alan Third  <alan@idiocy.org>
239         Post AppDefined events from the main thread ONLY (bug#23934)
241         * src/nsterm.h: Make nextappdefined var not just GNUStep.
242         * src/nsterm.m (ns_send_appdefined, sendFromMainThread): Remove GNUStep
244 2016-08-03  John Wiegley  <johnw@newartisans.com>
246         Update to the AUTHORS file for Bob Weiner
248                 * etc/AUTHORS: Update the packages attributed to Bob Weiner
250 2016-08-02  John Wiegley  <johnw@newartisans.com>
252         Revert "Fix local printer set to left aligned string formatter."
254         This reverts commit 8a38e948b039516e70176ebe20c5349e2ade6ac5.
256 2016-08-02  John Wiegley  <johnw@newartisans.com>
258         Revert "Fix ses-delete-blanks to delete only blanks + documentation."
260         This reverts commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d.
262 2016-08-02  John Wiegley  <johnw@newartisans.com>
264         Revert "Fix English."
266         This reverts commit b275cc76f0c5ab49e81445fcc3420c8772aefd42.
268 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
270         Improve doc strings of 'gud-gdb' and 'gdb'
272         * lisp/progmodes/gdb-mi.el (gdb):
273         * lisp/progmodes/gud.el (gud-gdb): Doc fix.  (Bug#24125)
275 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
277         Fix doc string of 'minibuffer-message-timeout'
279         * src/keyboard.c (syms_of_keyboard) <minibuffer-message-timeout>:
280         Doc fix.  (Bug#24123)
282 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
284         Fix English.
286         * doc/misc/ses.texi (Nonrelocatable references): Fix grammatically
287           incorrect English.
289 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
291         Fix ses-delete-blanks to delete only blanks + documentation.
293         * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
294         'ses-range' modifier as an alternative to 'ses+'.
295         (Advanced Features): Add a refernce to node 'Nonrelocatable
296         references' concerning function 'ses-rename-cell'.
297         (Standard formula functions): Mention the '!' 'ses-range'
298         modifier as an alternative to 'ses-delete-blanks'.
299         (More on cell printing): Fix fallback printer
300         definition.  Minor editorial formatting changes.
301         (Nonrelocatable references): Document the use of
302         'ses-rename-cell' as a better way to make cell reference
303         non-relocatable.
304         (The data area): Document the presence of local printer
305         definitions in the data area.
307         * lisp/ses.el (ses-delete-blanks): Do not remove
308         *error*.  Any error in an argument should propagate into the
309         using formula rather than being silently hidden !
311 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
313         profiler: document prefix arg for tree expansion
315         * doc/lispref/debugging.texi (Profiling):
316         * lisp/profiler.el (profiler-report-toggle-entry): Document use of
317         prefix argument to expand whole call trees.
319 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
321         Clarify usage of eshell-visual-options
323         * lisp/eshell/em-term.el (eshell-visual-options): Add second option to
324         example usage (Bug #19627).
326 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
328         Fix comment in files-in-below-directory
330         * doc/lispintro/emacs-lisp-intro.texi (Files List): Comment should not
331         say append, since the code is adding to front of list (Bug #21589).
333 2016-07-28  Vincent Belaïche  <vincentb1@users.sourceforge.net>
335         Fix local printer set to left aligned string formatter.
337         * lisp/ses.el (ses-local-printer-compile): Add missing case
338         for left-aligned string formatter.
340 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
342         Bump Emacs version to 25.1 for the first RC
344         * README:
345         * configure.ac:
346         * lisp/ldefs-boot.el:
347         * msdos/sed2v2.inp: Bump Emacs version to 25.1.
349 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
351         * etc/AUTHORS: Update the AUTHORS file
353         ;; * ChangeLog.2: ChangeLog update.
355 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
357         * admin/authors.el (authors-valid-file-names): Addition.
359 2016-07-23  Eli Zaretskii  <eliz@gnu.org>
361         Warn about Cairo-related problems
363         * etc/NEWS: Warn about known problems in the Cairo build.
364         (Bug#23925)
366 2016-07-23  Paul Pogonyshev  <pogonyshev@gmail.com>
368         Don't let completion break `declare' handling
370         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Fix to not alter
371         `defun-declarations-alist' by side effect (Bug #23648).
373 2016-07-23  Noam Postavsky  <npostavs@gmail.com>
375         Adjust match data before calling after-change-funs
377         It's important to adjust the match data in between calling
378         before-change-functions and after-change-functions, so that buffer
379         change hooks will always see match-data consistent with buffer content.
380         (Bug #23917)
382         * src/insdel.c (replace_range): Add new parameter ADJUST_MATCH_DATA, if
383         true call update_search_regs.  Update all callers (except
384         Freplace_match) to pass 0 for the new parameter.
385         * src/search.c (update_search_regs): New function, extracted from
386         Freplace_match.
387         (Freplace_match): Remove match data adjustment code, pass 1 for
388         ADJUST_MATCH_DATA to replace_range instead.
390 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
392         Do not show string-rectangle preview if minibuffer is empty
394         * lisp/rect.el (rectangle--string-preview): Remove condition that sets
395         preview string to the default replacement string.
397 2016-07-21  Achim Gratz  <Stromeko@nexgo.de>
399         * etc/PROBLEMS: Add entry about selection problems under Plasma 5.
401         Bug#24013
403 2016-07-21  Paul Eggert  <eggert@cs.ucla.edu>
405         Port to glibc 2.24 (pre-release) + ppc64
407         Backport from master (Bug#24033).
408         Inspired by a suggestion by Florian Weimer in:
409         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
410         * src/emacs.c (main) [__PPC64__]:
411         Special case for __PPC64__, which needs ASLR disabled in
412         dumped Emacs too.
414 2016-07-21  Katsumi Yamaoka  <yamaoka@jpl.org>
416         * lisp/net/shr.el (shr-fill-line): Withdraw the last commit (4157159).
418         * lisp/net/shr.el (shr-fill-line):
419         Preserve text properties in folded lines (bug#24034).
421 2016-07-17  Robert Cochran  <robert-git@cochranmail.com>  (tiny change)
423         Expand FIXME near definition of fboundp
425         This expansion of the FIXME is so that future developers are aware of
426         the potential problems of aliasing fboundp to symbol-function without
427         taking backwards compatibility into account.
429         * src/data.c (fboundp): Note potential backwards compatibility issues in
430         FIXME.
432 2016-07-17  Noam Postavsky  <npostavs@gmail.com>
434         kill-rectangle should mention killed-rectangle
436         * lisp/rect.el (kill-rectangle): Mention `killed-rectangle' in docstring
437         and warning message, rather than kill ring (Bug#19773).
439 2016-07-16  Eli Zaretskii  <eliz@gnu.org>
441         Avoid assertion violations in nhexl-mode
443         * src/bidi.c (bidi_resolve_neutral): Convert an assertion to real
444         code executed in all builds.  (Bug#24001)
446 2016-07-15  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
448         Use memmove instead of memcpy on overlapping regions
450         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
451         use memmove instead of memcpy (bug#19213).
454         This is a backport from trunk.
455         (cherry picked from commit 354f9f0fc6cc05ed98883447f9b2f37943d79160)
457 2016-07-15  Noam Postavsky  <npostavs@gmail.com>
459         Document buffer-swap-text+save-excursion interaction
461         * doc/lispref/buffers.texi (Swapping Text):
462         * src/buffer.c (Fbuffer_swap_text): Add warning about interaction of
463         `buffer-swap-text' and `save-excursion' (Bug #4655).
465 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
467         Fix eieio vs cl-generic incompatibilities found in Rudel (bug#23947)
469         * lisp/emacs-lisp/cl-generic.el (cl-generic-apply): New function.
470         * lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Fix incorrect
471         mapping between cl-no-applicable-method and EIEIO's no-applicable-method.
472         * lisp/emacs-lisp/eieio-core.el (eieio--class-precedence-c3):
473         `class' is not a symbol but a class object.
475 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
477         Include cl-generic in package--builtin-versions (bug#22817)
479         * lisp/emacs-lisp/cl-generic.el (package--builtin-versions):
480         Add ourselves manually.  Don't merge since there's a better fix on master.
482 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
484         Improve timing in `tramp-test29-environment-variables'
486         * test/automated/tramp-tests.el
487         (tramp-test--shell-command-to-string-asynchronously):
488         Add additional `accept-process-output' call.
489         (tramp-test29-environment-variables): Remove additional sleep calls.
491 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
493         Add test for handling environment variables in Tramp
495         * test/automated/tramp-tests.el
496         (tramp-test--shell-command-to-string-asynchronously): New defun.
497         (tramp-test29-environment-variables): New test.
498         (tramp-test30-vc-registered)
499         (tramp-test31-make-auto-save-file-name)
500         (tramp-test32-special-characters)
501         (tramp-test32-special-characters-with-stat)
502         (tramp-test32-special-characters-with-perl)
503         (tramp-test32-special-characters-with-ls, tramp-test33-utf8)
504         (tramp-test33-utf8-with-stat, tramp-test33-utf8-with-perl)
505         (tramp-test33-utf8-with-ls)
506         (tramp-test34-asynchronous-requests)
507         (tramp-test35-recursive-load, tramp-test36-unload): Rename.
509 2016-07-13  Glenn Morris  <rgm@gnu.org>
511         * lisp/emacs-lisp/package.el (describe-package-1)
512         (package-status-external): Fix face references.  (Bug#23927)
514 2016-07-12  Stephen Berman  <stephen.berman@gmx.net>
516         Improve documentation of search functions
518         Make the documentation of the search functions more accurate,
519         complete, and uniform; in particular, extend the description of
520         the effect when the 'count' parameter is a negative number to all
521         of these functions.
523         * src/search.c (Fsearch_backward, Fsearch_forward)
524         (Fre_search_backward, Fre_search_forward)
525         (Fposix_search_backward, Fposix_search_forward):
526         * lisp/isearch.el (word-search-backward, word-search-forward)
527         (word-search-backward-lax, word-search-forward-lax): Improve doc
528         strings as described above.
530         * doc/lispref/searching.texi (String Search, Regexp Search)
531         (POSIX Regexps): Use 'count' instead of 'repeat' as the name of
532         the fourth parameter of the *-search-{forward,backward} functions
533         and improve documentation as described above.
535 2016-07-12  Michael Albinus  <michael.albinus@gmx.de>
537         Delete environment variables in Tramp when needed
539         * lisp/net/tramp-sh.el (tramp-get-env-with-u-option): New defun.
540         (tramp-sh-handle-start-file-process)
541         (tramp-sh-handle-process-file, ): Use it.  (Bug#23952)
543 2016-07-12  Eli Zaretskii  <eliz@gnu.org>
545         Add "New in Emacs 25" section to the FAQ
547         * doc/misc/efaq.texi (Latest version of Emacs): Update for later
548         versions.
549         (New in Emacs 25): New node.
550         (Status of Emacs): Add it to the menu.
552 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
554         Fix 'vertical-motion' in non-interactive sessions
556         * src/indent.c (Fvertical_motion): Don't return uninitialized
557         value in non-interactive session.  This fixes random errors in
558         batch mode, see
559         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00609.html
560         and
561         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00500.html
562         for the details.
564 2016-07-10  Andreas Schwab  <schwab@linux-m68k.org>
566         Fix memory leak in imagemagick-types
568         * src/image.c (Fimagemagick_types): Use AcquireExceptionInfo to
569         avoid memory leak.
571 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
573         Update ELisp manual to match 'string-collate-equalp' doc string
575         * doc/lispref/strings.texi (Text Comparison): Remove reference to
576         sorting from the description of 'string-collate-equalp'.  (Bug#23902)
578 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
580         Clarify docstring of find-feature-regexp
582         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Explain that `%s'
583         is optional (Bug #23520).
585 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
587         Add details to cl-lib defining macros' docstrings
589         * lisp/emacs-lisp/cl-macs.el (cl-defun, cl-defmacro): Add terse summary
590         of supported arglist forms (Bug #22462).
592 2016-07-09  Eli Zaretskii  <eliz@gnu.org>
594         Clarify doc string of 'save-buffer'
596         * lisp/files.el (save-buffer): Clarify that backups might not be
597         made even if this command is invoked with 2 or 3 "C-u"s.
598         (Bug#3702)
600 2016-07-08  Eli Zaretskii  <eliz@gnu.org>
602         Un-confuse doc string of 'string-collate-equalp'
604         * src/fns.c (Fstring_collate_equalp): Remove confusing text from
605         doc string.  (Bug#23902)
607 2016-07-07  Eli Zaretskii  <eliz@gnu.org>
609         Clarify documentation of 'mouse-on-link-p'
611         * lisp/mouse.el (mouse-on-link-p): Clarify the form of the POS
612         argument.  (Bug#23899)
614 2016-07-06  Phillip Lord  <phillip.lord@russet.org.uk>
616         Fix missing undo-boundary on revert-buffer.
618         * lisp/simple.el (undo-auto--undoable-change-no-timer): New function.
619         * src/fileio.c (insert-buffer-contents): Call
620           undo-auto--undoably-changed-buffers before changes.
622         Addresses Bug#23785.
624         Do not merge to master as c98bc98 also addresses the same bug.
626 2016-07-06  Martin Rudalics  <rudalics@gmx.at>
628         Amend last addition to etc/PROBLEMS
630         * etc/PROBLEMS: Mention GTK+ problem with unexpected frame widenings
632 2016-07-06  Paul Eggert  <eggert@cs.ucla.edu>
634         Fix open-network-stream responsiveness
636         Problem reported by Christer Ekholm (Bug#23864).
637         Backport from master.
638         * src/process.c (wait_reading_process_output):
639         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
640         when wait == INFINITY and got_output_end_time is invalid.
641         In this case the code should break, not continue.
643 2016-07-05  Phillip Lord  <phillip.lord@russet.org.uk>
645         Fix missing point information in undo
647         * src/undo.c (record_insert): Use record_point instead of
648           prepare_record, and do so unconditionally.
649           (prepare_record): Do not record first change.
650           (record_point): Now conditional on state before the last command.
651           (record_delete): Call record_point unconditionally.
652           (record_property_change): Use prepare_record.
653           (record_marker_adjustments): Use prepare_record.
655         Addresses Bug# 21722
657 2016-07-04  Eli Zaretskii  <eliz@gnu.org>
659         Avoid crashes when buffer modification hooks clobber match data
661         * src/search.c (Freplace_match): Error out if buffer modification
662         hooks triggered by buffer changes in replace_range, upcase-region,
663         and upcase-initials-region clobber the match data needed to be
664         adjusted for the replacement.  (Bug#23869)
666 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
668         Note combine-and-quote-strings doesn't shell quote
670         * doc/lispref/processes.texi (Shell Arguments):
671         * lisp/subr.el (combine-and-quote-strings): Add a note that
672         combine-and-quote-strings doesn't protect arguments against shell
673         evaluation (Bug #20333).
675 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
677         Explain when package-initialize isn't called
679         * doc/lispref/os.texi (Startup Summary): Explain that package-initialize
680         is not called when options -q, -Q, or --batch were passed (Bug #19151).
682 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
684         Fix escaping in sh-indent-after-continuation docstr
686         * lisp/progmodes/sh-script.el (sh-indent-after-continuation): Properly
687         escape backslashes in docstring (Bug#23046).
689 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
691         Clarify the documentation of back-references in replacements
693         * doc/emacs/search.texi (Regexp Replace): Clarify that \D starts
694         with \1, not \0.
696         * lisp/replace.el (query-replace-regexp)
697         (query-replace-regexp-eval, replace-regexp): Doc fix (Bug#23884)
699 2016-07-01  Noam Postavsky  <npostavs@gmail.com>
701         Clarify lexical binding with symbol args behavior
703         * doc/lispref/variables.texi (Lexical Binding): Clarify that symbol
704         arguments always refer to dynamic values (Bug #23781).  Remove mention
705         of obsolete restriction regarding lexical binding for defun and
706         defmacro, this no longer applies since 61b108cc 2012-05-29 "*
707         lisp/emacs-lisp/byte-run.el (defmacro, defun): Move from C...".
709 2016-06-30  Michael Albinus  <michael.albinus@gmx.de>
711         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
713 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
715         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23865)
717 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
719         Avoid assertion violations when rendering some fonts
721         * src/dispextern.h (FONT_TOO_HIGH): Don't consider a font "too
722         high" if its pixel_size value is zero.  This avoids assertion
723         violations at the end of x_produce_glyphs.
725 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
727         Document more details of package activation
729         * doc/emacs/package.texi (Package Installation): Explain that package
730         activation adds to load-path (Bug #21704).
732 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
734         Fixup warning message regarding HOME a bit more
736         * src/w32.c (init_environment): The manual section title is "Windows
737         HOME" (Bug #11612).  Move newline so warning fits in 80 character lines.
739 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
741         * lisp/leim/quail/indian.el ("bengali-probhat"): Change indicator to BngPB.
743 2016-06-27  Michael Albinus  <michael.albinus@gmx.de>
745         Fix input method "probhat" for Bengali
747         Author: উৎসব রায় <uroybd@gmail.com>
749         * lisp/leim/quail/indian.el ("bengali-probhat"): Fix entry.
751 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
753         Add to elisp-completion-at-point's docstring
755         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Document
756         position dependent behavior (Bug #19854).
758 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
759             Eli Zaretskii  <eliz@gnu.org>
761         Give more helpful warning about setting HOME
763         * src/w32.c (init_environment): Improve warning message that pops when
764         Emacs sets HOME according to existence of C:\.emacs (Bug #11612).
766 2016-06-26  Eli Zaretskii  <eliz@gnu.org>
768         Fix slow redisplay in term-mode
770         * lisp/term.el (term-mode): Move the setting of
771         bidi-paragraph-direction from 'ansi-term' to here, since term-mode
772         is also affected.  Do not merge to master, since there the problem
773         is solved in bidi.c by changing the regexps that delimit a
774         paragraph.  (Bug#23801)
776 2016-06-26  উৎসব রায়  <uroybd@gmail.com>
778         New input method "probhat" for Bengali
780         * lisp/leim/quail/indian.el ("probhat"): New input method.
781         (Bug#23822)
783         * etc/NEWS: Mention the new input method.
785 2016-06-25  Noam Postavsky  <npostavs@gmail.com>
786             Drew Adams  <drew.adams@oracle.com>
788         Update docs for `customize-mode'
790         * lisp/cus-edit.el (customize-mode): This function works with both major
791         and minor modes, make docstring and prompt reflect that (Bug #23649).
793         * doc/lispref/modes.texi (Derived Modes): Remove note about
794         customize-mode being experimental; it has been around since Emacs
795         22 (Bug #11299).
797 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
799         Fix documentation of 'assoc-string' and 'compare-strings'
801         * src/minibuf.c (Fassoc_string): Clarify how CASE-FOLD affects the
802         string comparison.  (Bug#23833)
803         * src/fns.c (Fcompare_strings): Fix the description of how
804         IGNORE-CASE affects the comparison.
806         * doc/lispref/strings.texi (Text Comparison): Clarify how
807         CASE-FOLD affects the string comparison in 'assoc-string'.  Fix
808         the description of how IGNORE-CASE affects the comparison in
809         'compare-strings'.
811 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
813         Error on multibyte characters in HTTP request
815         * lisp/url/url-http.el (url-http-create-request): Check the
816         constructed request in the end to verify that it does not contain
817         multibyte characters (bug#23750).
819 2016-06-22  Katsumi Yamaoka  <yamaoka@jpl.org>
821         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
822         Mask keys that launch `widget-button-click' (bug#22157).
824 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
826         Unset GIT_DIR when calling Git commands
828         * lisp/vc/vc-git.el (vc-git--call, vc-git-command):
829         Unset GIT_DIR (bug#23769).
831 2016-06-21  Phillip Lord  <phillip.lord@russet.org.uk>
833         Ensure undo-boundary after insert-file-contents.
835         * src/fileio.c: Record undoable change during insert-file-contents.
837         Addresses Bug #23785.
839 2016-06-21  Eli Zaretskii  <eliz@gnu.org>
841         Clarify documentation of 'line-spacing' and 'line-height'
843         * doc/lispref/display.texi (Line Height): Clarify how the line
844         height is determined via variables and text properties.  (Bug#23806)
846 2016-06-20  Eli Zaretskii  <eliz@gnu.org>
848         Fix removal of variables from process-environment
850         * src/callproc.c (add_env): Fix comparison of a variable with a
851         value against the same variable without a value.  (Bug#23779)
853 2016-06-20  Glenn Morris  <rgm@gnu.org>
855         * admin/authors.el (authors-ignored-files, authors-valid-file-names)
856         (authors-renamed-files-alist): Additions.
858         * admin/authors.el (authors-aliases, authors-fixed-case): Additions.
860 2016-06-18  Noam Postavsky  <npostavs@gmail.com>
862         Fix documentation of completion functions
864         So that the described behavior matches the code (and docstrings).
866         * doc/lispref/minibuf.texi (Basic Completion): Symbol keys of hash table
867         collections are used like string keys, not ignored (Bug #10416).
869 2016-06-18  Eli Zaretskii  <eliz@gnu.org>
871         Clarify documentation of 'font-lock-maximum-decoration'
873         * doc/emacs/display.texi (Font Lock): Explain how to make the
874         customization of 'font-lock-maximum-decoration' effective for an
875         existing buffer.  (Bug#23783)
877 2016-06-17  Glenn Morris  <rgm@gnu.org>
879         * doc/misc/cl.texi (Usage): Add some more details.
881 2016-06-17  Noam Postavsky  <npostavs@gmail.com>
883         Fbackward_prefix_chars: stay within buffer bounds
885         The commit 1fd3172d "(Fbackward_prefix_chars): Set point properly while
886         scanning" (1998-03-18), moved the check against of the position against the
887         buffer beginning out the loop condition so that we might end up checking
888         the syntax of characters before the beginning of the buffer.  This can
889         cause segfaults or trigger a "Point before start of properties" error in
890         `update_interval' (called indirectly from `char_quoted').
892         * src/syntax.c (Fbackward_prefix_chars): Stop the loop when beginning of
893         buffer is reached (Bug #3552, Bug #17132, Bug #19379).
895 2016-06-16  Paul Eggert  <eggert@cs.ucla.edu>
897         Fix ifdef-vs-if typo with RANDR13_LIBRARY
899         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
900         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
901         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00198.html
903         (cherry picked from commit dce99f222f1ca33265cd56ddb157817be1dc078e)
905 2016-06-16  Stephen Berman  <stephen.berman@gmx.net>
907         Fix last todo-mode change
909         * lisp/calendar/todo-mode.el (todo-read-category): Return the
910         keymap in order to use its defined key bindings.
912 2016-06-15  Stephen Berman  <stephen.berman@gmx.net>
914         Improve last todo-mode fix
916         * lisp/calendar/todo-mode.el (todo-read-category): Use
917         set-keymap-parent instead of copy-keymap, and default (as
918         previously) to the global binding (for rationale, see
919         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00217.html).
921 2016-06-14  Stephen Berman  <stephen.berman@gmx.net>
923         Fix todo-mode use of minibuffer completion keymap (bug#23695).
925         * lisp/calendar/todo-mode.el (todo-read-category): Don't
926         override minibuffer-local-completion-map globally (bug#23695).
927         Bind <SPC> key to self-insert-command.
929 2016-06-14  Glenn Morris  <rgm@gnu.org>
931         * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23764)
933         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
934         Avoid mangling autoloads with unspecified arguments.  (Bug#21299)
936 2016-06-13  Glenn Morris  <rgm@gnu.org>
938         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
939         autoloads as aliases.  (Bug#21299)
941 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
943         Minor grammar fix (bug#23746)
945         * doc/lispref/processes.texi (Synchronous Processes):
946         Another minor grammar fix (bug#23746).
948 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
950         Doc fixes for grammar and typos (bug#23746)
952         * doc/emacs/files.texi (Customize Save):
953         * doc/emacs/frames.texi (Window Dividers):
954         * doc/emacs/misc.texi (Printing):
955         * doc/lispref/compile.texi (Compiler Errors):
956         * doc/lispref/keymaps.texi (Changing Key Bindings):
957         * doc/lispref/loading.texi (Named Features):
958         * doc/lispref/markers.texi (Marker Insertion Types):
959         * doc/lispref/modes.texi (Mode Hooks):
960         * doc/lispref/text.texi (Undo):
961         * src/floatfns.c (Fldexp):
962         * src/xfaces.c (syms_of_xfaces):
963         Minor doc fixes for grammar and typos (bug#23746).
965 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
967         * doc/lispref/processes.texi (Process Buffers): Minor rewording.  (Bug#23446)
969 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
971         Add cross-reference to ELisp manual
973         * doc/lispref/commands.texi (Classifying Events): Add
974         cross-reference to "Motion Events".  (Bug#23756)
976 2016-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
978         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
980         Don't rewrite (funcall 'f ...) to (f ...).
982 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
984         Restore initial undo boundary with viper
986         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Add back last undo
987           boundary if it has been removed.
989         Addresses Bug#22295.
991 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
993         Revert "Fix viper undo breakage from undo-boundary changes"
995         This reverts commit c0139e32f1f3bb287b04e02a69a7848d6a040003.
997 2016-06-11  Ken Brown  <kbrown@cornell.edu>
999         Fix dbus crash on 32-bit Cygwin
1001         * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store
1002         connection address.  (Bug#23741)
1003         (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection
1004         address.
1006 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
1008         Bump version to 25.0.95
1010         * README:
1011         * configure.ac:
1012         * lisp/ldefs-boot.el:
1013         * msdos/sed2v2.inp: Bump Emacs version to 25.0.95.
1015 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
1017         * etc/AUTHORS: Update the AUTHORS file
1019 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
1021         add entries to authors.el
1023         * admin/authors.el (authors-renamed-files-alist): Add char-fold files.
1025 2016-06-10  Jules Tamagnan  <jtamagnan@gmail.com>
1027         Fix eldoc-related freezes in python mode
1029         * lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
1030         (python-eldoc-function-timeout)
1031         (python-eldoc-function-timeout-permanent): New defcustoms.
1032         (python-eldoc-function): If python-eldoc--get-doc-at-point times
1033         out, effectively turn off ElDoc in current buffer.  (Bug#23609)
1035 2016-06-09  Martin Rudalics  <rudalics@gmx.at>
1037         Handle mouse leaving initial window in `mouse-set-region' (Bug#23707)
1039         * lisp/mouse.el (mouse-set-region): If the mouse ends up in
1040         another window or on the menu bar, use `window-point' of
1041         selected window instead of `posn-point' of the event end
1042         (Bug#23707).
1044 2016-06-08  Marco Wahl  <marcowahlsoft@gmail.com>
1046         org.el: Fix bindings of < and > for calendar scrolling
1048         [This patch taken from upstream Org repo with 8b63dc9 dated
1049         2014-10-20 (Bug#23725).]
1050         * lisp/org/org.el (org-read-date-minibuffer-local-map):
1051         Switch to the current calendar API for scrolling the calendar.
1053 2016-06-08  Phillip Lord  <phillip.lord@russet.org.uk>
1055         Fix undo boundary in recursive edit (Bug#23632)
1057          * src/keyboard.c (recursive_edit_1): specbind
1058            undo-auto--undoably-changed-buffers.
1059          * lisp/simple.el (undo-auto--undoably-changed-buffers):
1060            fix docstring.
1062 2016-06-07  Glenn Morris  <rgm@gnu.org>
1064         Doc fixes re alist-get.  (Bug#23548)
1066         * lisp/subr.el (alist-get): Doc fix.
1067         * doc/lispref/lists.texi (Association Lists): Improve alist-get.
1069 2016-06-07  Glenn Morris  <rgm@gnu.org>
1071         * lisp/progmodes/python.el (inferior-python-mode):
1072         Avoid tabs.  (Bug#23616)
1074         * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>: Doc fix.
1076 2016-06-07  Tino Calancha  <f92capac@gmail.com>
1078         * lisp/help-fns.el (describe-function-1):
1079         Fix handling of file name for aliases.  (Bug#21950)
1081         * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
1083         * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
1085 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
1087         Fix crash in syntax.c after GC
1089         Problem reported by Vincent Belaïche (Bug#23704).
1090         * src/syntax.c (skip_chars): Recompute pointers into the
1091         buffer after every call to update_syntax_table_forward,
1092         as it can GC.
1094 2016-06-06  Dmitry Gutov  <dgutov@yandex.ru>
1096         Improve squiggly heredoc support in non-SMIE Ruby mode
1098         * lisp/progmodes/ruby-mode.el (ruby-parse-partial): Support
1099         squiggly heredocs here, too (port from upstream).
1101 2016-06-06  Stephen Berman  <stephen.berman@gmx.net>
1103         Fix doc string quoting
1105         * lisp/files.el (shell-quote-wildcard-pattern):
1106         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
1107         * lisp/subr.el (replace-regexp-in-string):
1108         * lisp/view.el (view-mode):
1109         * src/nsfns.m (syms_of_nsfns):
1110         * src/syntax.c (Fbackward_prefix_chars):
1111         Fix quoting problems in doc strings (Bug#23696).
1113 2016-06-05  Martin Rudalics  <rudalics@gmx.at>
1115         Fix mouse dragging of vertical dividers with scroll bars on left (Bug#23690)
1117         * lisp/mouse.el (mouse-drag-line): With scroll bars on the left
1118         adjust trailing edge of window on the left when dragging the
1119         vertical divider of the mode line.  (Bug#23690)
1121 2016-06-04  Eli Zaretskii  <eliz@gnu.org>
1123         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
1125         (Bug#23641)
1127 2016-05-31  Glenn Morris  <rgm@gnu.org>
1129         * test/automated/viper-tests.el (viper-test-undo-kmacro):
1130         Delete temp-file at end.
1132         * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
1134         * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
1136         * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table):
1137         Fix typo.  (Bug#23654)
1139 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
1141         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
1143 2016-05-30  Bill Wohler  <wohler@newt.com>
1145         Correct cl-flet usage (Bug#22317)
1147         * lisp/mh-e/mh-compat.el: Rename mh-cl-flet to mh-flet and convert alias to
1148         macro using patch from Katsumi Yamaoka <yamaoka@jpl.org>.
1149         * lisp/mh-e/mh-thread.el (mh-thread-set-tables):
1150         * lisp/mh-e/mh-show.el (mh-gnus-article-highlight-citation):
1151         * lisp/mh-e/mh-mime.el (mh-display-with-external-viewer):
1152         (mh-mime-display, mh-press-button, mh-push-button):
1153         (mh-display-emphasis): Call mh-flet instead of mh-cl-flet.
1155 2016-05-30  Bill Wohler  <wohler@newt.com>
1157         Release MH-E manual version 8.6
1159         * doc/misc/mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH):
1160         Update for release 8.6.
1162 2016-05-30  Mike Kupfer  <m.kupfer@acm.org>
1164         Update MH-E's documentation about HTML renderers
1166         * doc/misc/mh-e.texi (HTML): Remove the footnote with the minimum Gnus
1167         version (we are no longer trying to support multiple Emacs
1168         releases). Sort the table of HTML renderers by name (the previous
1169         ordering was based on a 10-year-old survey). Add shr and gnus-w3m to
1170         the table. Remove the entry for w3 (no longer available).  Update
1171         existing entries so that they are more consistent about what features
1172         are discussed, and to reflect recent testing (Debian 8). Small tweaks
1173         to existing text.
1175 2016-05-30  Dmitry Gutov  <dgutov@yandex.ru>
1177         Fx the we->the typo
1179         * doc/emacs/trouble.texi (Sending Patches):
1180         Fix the typo (bug#23657).
1182 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
1184         Restore frames into the current display by default
1186         * lisp/desktop.el (desktop-restore-in-current-display):
1187         Default to t, not nil (Bug#23604).
1188         * etc/NEWS: Mention the change.
1190 2016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1192         * lisp/recentf.el (recentf-open-files-item): Quick fix for (bug#22434).
1194         etc/TODO: Remove out-of-place issue
1196 2016-05-29  Eli Zaretskii  <eliz@gnu.org>
1198         Clarify doc string of 'file-name-sans-extension'
1200         * lisp/files.el (file-name-sans-extension, file-name-extension):
1201         Clarify in the doc strings what is the extension, and which
1202         leading period doesn't count.  (Bug#23643)
1204 2016-05-28  Eli Zaretskii  <eliz@gnu.org>
1206         Fix the MSDOS build
1208         * msdos/sed1v2.inp (PAXCTL_dumped, PAXCTL_notdumped): Define to
1209         empty, and remove the lines which use them in recipes, as that
1210         causes weird error message from Make and breaks the MSDOS build.
1212 2016-05-28  Andreas Schwab  <schwab@linux-m68k.org>
1214         * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Call
1215         substitute-command-keys to undo help--docstring-quote. (Bug#23634)
1217 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
1219         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
1221 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
1223         Fix infloop in 'number-sequence'
1225         * lisp/subr.el (number-sequence): Avoid overflow leading to an
1226         infloop.  (Bug#23627)
1228         * test/automated/subr-tests.el (number-sequence-test): New test.
1230 2016-05-26  Glenn Morris  <rgm@gnu.org>
1232         * lisp/emacs-lisp/find-func.el (find-function-library):
1234         Update for symbol-function no longer erroring.  (Bug#23626)
1236 2016-05-26  Glenn Morris  <rgm@gnu.org>
1238         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
1239         (w32-get-valid-locale-ids): Improve declarations.
1241 2016-05-26  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1243         Correct old cell name unbinding when renaming cell.
1245         Bug is to unbind old cell names when renaming a cell with
1246         'makunbound'. when the old cell name is of A1 type, then
1247         'kill-local-variable' must be used instead, so that only the current
1248         spreadsheet is affected. When the old cell name is a renamed cell,
1249         then 'ses--unbind-cell-name' must be used in order to remove the old
1250         name from the name hashmap.
1252         * lisp/ses.el (ses-rename-cell): check consistency of cell symbol from
1253         text-property and from array object. Instead of 'makunbound', use
1254         either 'ses--unbind-cell-name' or 'kill-local-variable' depending on
1255         whether the cell old name is a named cell or an A1 type cell
1257 2016-05-25  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1259         Document problem: slow screen refresh on missing font.
1261         See discussion of bug#22519 for more on this.
1263 2016-05-25  Glenn Morris  <rgm@gnu.org>
1265         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
1267 2016-05-25  Glenn Morris  <rgm@gnu.org>
1269         * build-aux/gitlog-to-emacslog: Handle empty generated ChangeLog.
1271         This is relevant for M-x add-release-logs right after M-x authors.
1273 2016-05-25  Glenn Morris  <rgm@gnu.org>
1275         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
1277 2016-05-25  Paul Eggert  <eggert@cs.ucla.edu>
1279         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
1281 2016-05-25  Glenn Morris  <rgm@gnu.org>
1283         * admin/authors.el (authors): First update the ChangeLog.
1285         * admin/make-tarball.txt: Related updates.
1287 2016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
1289         Rename vc-stay-local back to vc-cvs-stay-local
1291         * lisp/vc/vc-cvs.el (vc-cvs-stay-local): Rename back from
1292         vc-stay-local (bug#19548).  Improve the docstring.
1293         (vc-cvs-stay-local-p): Update accordingly.
1295 2016-05-24  Glenn Morris  <rgm@gnu.org>
1297         * doc/emacs/files.texi (Comparing Files):
1298         * doc/emacs/trouble.texi (Sending Patches): Fix external xrefs.
1300         * doc/misc/eww.texi (Advanced): Fix xref.
1302 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
1304         Fix cross-references between manuals
1306         * doc/misc/viper.texi (Viper Specials):
1307         * doc/misc/url.texi (Tramp):
1308         * doc/misc/sem-user.texi (Smart Jump):
1309         * doc/lispintro/emacs-lisp-intro.texi (Finding More):
1310         * doc/misc/efaq.texi (Replacing text across multiple files): Fix
1311         cross-references between manuals.  (Bug#23612)
1312         * doc/lispintro/emacs-lisp-intro.texi (etags): Node deleted: no
1313         longer relevant to Emacs Lisp programming.
1315 2016-05-24  Glenn Morris  <rgm@gnu.org>
1317         * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to avoid ".".
1319         * admin/admin.el (add-release-logs): Also update etc/HISTORY.
1321 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
1323         Avoid aborting due to errors in arguments of 'set-face-attribute'
1325         * src/xfaces.c (Finternal_set_lisp_face_attribute): Check the
1326         FRAME argument before using it.  This avoids gratuitous aborts in
1327         Emacs built with --enable-checking when the luser was unlucky
1328         enough to get the argument list in wrong order.
1330 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
1332         Add automated test for viper-tests.el
1334 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
1336         Fix viper undo breakage from undo-boundary changes
1338         * lisp/simple.el (undo-auto-disable-boundaries): New variable
1339         * lisp/emulation/viper-init.el (viper-undo-in-complex-command,
1340           viper-undo-needs-adjustment): Rename
1341           variable to reflect new purpose,
1342           (viper-buffer-undo-list-mark): Remove
1343         * lisp/emulation/viper-cmd.el (viper-set-complex-command-for-undo):
1344           Add undo using `undo-boundary', disable default undo-boundary
1345           addition.
1346         * lisp/emulation/viper-cmd.el
1347           (viper-complete-complex-command-for-undo,viper-adjust-undo):
1348           Change function name, remove old undo list manipulation.
1349         * lisp/emulation/viper-cmd.el (viper-undo,viper-repeat,
1350           viper-change-state-to-vi,viper-change-state):
1351           Update for function name change.
1353         Addresses Bug #22295
1355 2016-05-22  Kaushal Modi  <kaushal.modi@gmail.com>
1357         Fix reference to obsolete fn ps-eval-switch
1359         lpr-eval-switch is functionally the same as ps-eval-switch,
1360         which was obsoleted in 2cdeb903c57126d3ad5f0cbd72e182584b76ee29.
1361         So use that instead (Bug#19717).
1362         * lisp/printing.el (pr-switches): Use lpr-eval-switch instead of
1363         ps-eval-switch.
1365 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
1367         Do not trash symlinks to init file
1369         If the user’s init file is a symbolic link, do not break the link
1370         when initializing the package system.  Problem reported by Jackson
1371         Hamilton (Bug#23050).
1372         * lisp/emacs-lisp/package.el (package--ensure-init-file):
1373         Bind find-file-visit-truename when visiting the init file, and
1374         save and restore the buffer name the way cus-edit does in a
1375         similar situation (Bug#454).
1377 2016-05-22  Alan Mackenzie  <acm@muc.de>
1379         Don't print the "decomposition" line for control chars in what-cursor-position
1381         This is a temporary workaround for bug #23594, where the decomposition line
1382         for linefeed corrupted the display on a Linux virtual terminal.
1384         * lisp/descr-text.el (describe-char): Remove `decomposition' from the list of
1385         character code properties printed for control characters.
1387 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
1389         Bring back xterm pasting with middle mouse
1391         Problem reported by Jan Synáček.
1392         Solution suggested by Stefan Monnier (Bug#23519).
1393         * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
1394         (xterm--pasted-text): New decl.
1395         (isearch-xterm-paste): New function.
1396         * lisp/term/xterm.el (xterm--pasted-text): New function,
1397         taken from xterm-paste internals.
1398         (xterm-paste): Use it.
1400 2016-05-22  Eli Zaretskii  <eliz@gnu.org>
1402         Provide workaround for xftfont rendering problem
1404         * src/xftfont.c (syms_of_xftfont) <xft-font-ascent-descent-override>:
1405         New variable.
1406         (xftfont_open): Use it to work around problems with rendering some
1407         fonts.  (Bug#23360)
1409 2016-05-21  Jun Hao  <jun_hao@aol.com>
1411         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
1413         (Bug#17693)
1415 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
1417         Mention GTK+ problems in etc/PROBLEMS
1419         * etc/PROBLEMS (GDK_SCALE, GDK_DPI_SCALE): Mention the possible
1420         problems this could create and the workaround.  (Bug#23587)
1422 2016-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
1424         * lisp/emacs-lisp/package.el (package-refresh-contents):
1426         Don't change the value of `package-check-signature'.
1427         (package-check-signature): Use `epg-find-configuration'
1428         instead of `executable-find'.
1430 2016-05-20  Daiki Ueno  <ueno@gnu.org>
1432         Revert "epg: Add a way to detect gpg1 executable for tests"
1434         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
1436 2016-05-19  Eli Zaretskii  <eliz@gnu.org>
1438         Avoid errors with Czech and Slovak input methods
1440         * lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
1441         (slovak-prog-3): Remove the kp-* key bindings, they are not needed
1442         and cause errors in "C-u C-x =".
1443         * lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
1444         (czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
1445         (Bug#23559)
1447 2016-05-19  Daiki Ueno  <ueno@gnu.org>
1449         epg: Add a way to detect gpg1 executable for tests
1451         Fixes bug#23561.
1453         * test/automated/epg-tests.el
1454         (epg-tests-program-alist-for-passphrase-callback): New
1455         constant.
1456         (epg-tests-find-usable-gpg-configuration): New function,
1457         renamed from `epg-tests-gpg-usable'.  All callers changed.
1458         (epg-tests-gpg-usable): Remove.
1460         * lisp/epg-config.el (epg-config--program-alist): Factor out
1461         constructor element to...
1462         (epg-config--configuration-constructor-alist): ...here.
1463         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
1464         and add PROGRAM-ALIST argument.
1466 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
1468         * lisp/emacs-lisp/package.el: Fix free variable warnings.
1470         (package--with-response-buffer): Replace two usages of
1471         `macroexp-let2*' with `let'.
1473 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
1475         * lisp/emacs-lisp/package.el (package--with-response-buffer):
1477         Fix some macro locals leaking into body.  (Bug#22440)
1479         * test/automated/package-test.el (package-test-signed):
1480         Manually check all possible values of `package-check-signature'.
1482 2016-05-18  Eli Zaretskii  <eliz@gnu.org>
1484         Improve documentation of 'server-name'
1486         * doc/emacs/misc.texi (Emacs Server): Fix example of setting
1487         'server-name'.  Mention how to do that with daemon sessions.
1488         (Bug#23576)
1490 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
1492         Modernize ASLR advice in etc/PROBLEMS
1494         * etc/PROBLEMS (Segfault during 'make'): Modernize advice for
1495         seccomp, Docker, and NetBSD (Bug#23529).
1497 2016-05-17  Juri Linkov  <juri@linkov.net>
1499         * lisp/char-fold.el: Rename from character-fold.el.
1501         * lisp/replace.el (replace-char-fold): Rename from replace-character-fold.
1502         * test/automated/char-fold-tests.el: Rename from character-fold-tests.el.
1503         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00529.html
1505 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
1507         Bump version to 25.0.94
1509         * README:
1510         * configure.ac:
1511         * msdos/sed2v2.inp: Bump Emacs version to 25.0.94.
1513 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
1515         etc/AUTHORS: Update the AUTHORS file
1517 2016-05-16  Alan Third  <alan@idiocy.org>
1519         Fix bug#23462: Crash when iconifying frame on OS X.
1521         * src/nsterm.m (x_iconify_frame): Block input while miniaturize is
1522         running.
1524 2016-05-16  Paul Eggert  <eggert@cs.ucla.edu>
1526         Avoid shrinking windows with Gtk+ 3.20.3
1528         Problem reported by Matthias Clasen (Bug#23144).
1529         This was fixed in a different way in master.
1530         Do not merge to master.
1531         * src/xterm.c (handle_one_xevent) [GTK_CHECK_VERSION (3, 20, 3)]:
1532         Do not call xg_frame_resized in the MapNotify case.
1534 2016-05-16  Eli Zaretskii  <eliz@gnu.org>
1536         Fix bug in default setting of 'ps-paper-type'
1538         * lisp/international/mule-cmds.el (set-locale-environment): Don't
1539         inherit the value of locale from previous examination of different
1540         environment variables, which didn't look at LC_PAPER, and so using
1541         that value would effectively ignore the setting of LC_PAPER.
1542         (Bug#23544)
1544 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
1546         Properly reject malformed or empty package sigs
1548         Problem report and fix by Lizzie Dixon (Bug#23513).
1549         * lisp/emacs-lisp/package.el (package--check-signature-content):
1550         Report an error if no good signatures OR if a fatal error.  Not AND.
1552 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
1554         Remove buggy non-native image scrolling
1556         This never worked, and could cause infinite recursion.
1557         Problem reported by Glenn Morris (Bug#22465).
1558         * lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
1559         All uses removed.
1561 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
1563         * doc/misc/texinfo.tex: Sync from gnulib.
1565 2016-05-12  Glenn Morris  <rgm@gnu.org>
1567         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
1568         (find-alias-regexp): Fix :version.
1570 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
1572         Do not mistake colon at the end of regexp for slash symbol
1574         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
1575         Check the parse state in the "Symbols with special characters"
1576         rule (bug#23515).
1578 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
1580         Make package-install-from-buffer not move point
1582         * lisp/emacs-lisp/package.el (package-install-from-buffer):
1583         Use save-excursion here (bug#22616).
1585 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
1587         Redo the fix for bug#21839
1589         * lisp/help.el (help-add-fundoc-usage): Undo the previous change.
1590         (help--make-usage-docstring): Escape newlines when printing.
1592         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
1593         Ditto (bug#21839).
1595 2016-05-10  Dmitry Gutov  <dgutov@yandex.ru>
1597         Don't treat JS spread as contination method call
1599         * lisp/progmodes/js.el (js--indent-operator-re):
1600         Allow only one dot (bug#23492).
1602         * test/indent/js.js (default): Add a corresponding example.
1604 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
1606         Allow newlines inside cl function arglists
1608         * lisp/help.el (help-add-fundoc-usage): Allow newlines inside
1609         ARGLIST (bug#21839).
1611 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
1613         Publicize cl--generic-all-functions
1615         * lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
1616         Rename from cl--generic-all-functions.  Update both callers.
1618         * lisp/cedet/semantic/db-el.el
1619         (semanticdb-find-tags-external-children-of-type-method):
1620         And use it here (bug#23042).
1622 2016-05-09  Alan Mackenzie  <acm@muc.de>
1624         Add some "safe-local-variable" declarations for compatibility with master.
1626         These enable C files from the master repository to be visited in Emacs 25
1627         without generating irritating questions about configuration variable safety.
1629         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
1630         functions.
1631         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
1632         safe-local-variable property c-string-list-p.
1633         (c-macro-names-with-semicolon): give the safe-local-variable property
1634         c-string-or-string-list-p.
1636 2016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
1638         Fix doc string in `insert'
1640         * src/editfns.c (Finsert_and_inherit): The before-insertion
1641         markers do not move.
1642         (Finsert): Ditto.
1644 2016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
1646         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
1648 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
1650         Say 'All results processed' at the end
1652         * lisp/progmodes/xref.el (xref--query-replace-1):
1653         Say 'All results processed' at the end if the user hadn't
1654         cancelled the process (bug#23284).
1656 2016-05-07  Eli Zaretskii  <eliz@gnu.org>
1658         Document automatic adjustment of process' logical window dimensions
1660         * doc/lispref/processes.texi (Process Buffers): Document
1661         'set-process-window-size' and
1662         'window-adjust-process-window-size-function'.
1664         * etc/NEWS: Mention the new functionality and variable.
1666         * src/process.c (Fset_process_window_size): Improve the doc string.
1668 2016-05-06  Michael Albinus  <michael.albinus@gmx.de>
1670         tramp-sh.el: Work around a stat bug (backport from master)
1672         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
1673         stat versions which produce shell quoted output.  See also
1674         coreutils Bug#23422.
1676         (cherry picked from commit 6aad36ace9953b9672b13be68416d205532d5e59)
1678 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
1680         Doc fixes for fclist and grep
1682         A newline is needed between two fc-list calls.
1683         egrep and fgrep have been withdrawn from POSIX,
1684         so document grep -E and grep -F instead.
1686 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
1688         Minor doc fixes for quoting
1690         * doc/lispref/control.texi (Signaling Errors):
1691         * doc/lispref/display.texi (Displaying Messages):
1692         Don’t say that formats “generate”.  Try to word more clearly.
1693         * etc/NEWS: Coalesce near-duplicate entries.
1695 2016-05-05  Dmitry Gutov  <dgutov@yandex.ru>
1697         `nreverse' the marker pairs list
1699         * lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
1700         the marker pairs list for each buffer before returning.
1702 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
1704         Use save-excursion in xref-location-marker more
1706         * lisp/progmodes/elisp-mode.el (xref-location-marker): Use
1707         save-excursion, in order not to alter the value of point if the
1708         buffer is currently open in the background (problem reported by
1709         Robert Weiner).
1711         * lisp/progmodes/etags.el (xref-location-marker): Same.
1713 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
1715         shell-quote-argument DIR when appropriate
1717         * lisp/progmodes/project.el (project-file-completion-table):
1718         `shell-quote-argument' DIR as well.
1720         * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
1721         `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
1722         pointing out the problem.  Assert that DIR doesn't start with `~'.
1724 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
1726         Rework xref-query-replace-in-results
1728         * lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
1729         all xrefs from the buffer first, then delegate most of the
1730         processing to the value returned by xref--buf-pairs-iterator.
1731         (xref--buf-pairs-iterator): New function.  Return an "iterator"
1732         which partitions returned markers into buffers, and only processes
1733         markers from one buffer at a time.  When an xref is out of date,
1734         skip it with a message instead of signaling error (bug#23284).
1735         (xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
1736         CR from both strings before comparing.
1737         (xref--query-replace-1): Remove the variable current-buf, no need
1738         to track it anymore.  Simplify the filter-predicate and search
1739         functions accordingly.  Iterate over buffer-markers pairs returned
1740         by the iterator, and call `perform-replace' for each of them.  Use
1741         multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
1742         time after the first, in order not to jump between windows.
1744         * test/automated/xref-tests.el
1745         (xref--buf-pairs-iterator-groups-markers-by-buffers-1)
1746         (xref--buf-pairs-iterator-groups-markers-by-buffers-2)
1747         (xref--buf-pairs-iterator-cleans-up-markers): New tests.
1749 2016-05-04  Juri Linkov  <juri@linkov.net>
1751         * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
1753         to set minibuffer-local value of text-property-default-nonsticky.
1754         (Bug#23418, bug#23127)
1756 2016-05-04  Stephen Berman  <stephen.berman@gmx.net>
1758         Fix todo-mode bug involving archived items (bug#23447)
1760         * lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
1761         from Todo Categories mode to a category with only archived items
1762         and todo-skip-archived-categories is non-nil, make sure the
1763         archive file buffer is in Todo Archive mode to prevent
1764         todo-category-select from raising an error, and don't set
1765         todo-current-todo-file, since that makes todo-show display the
1766         archived category.  Remove a no-op call to kill-buffer, which is
1767         already called in todo-insert-category-line.
1769 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
1771         Handle "empty line" regexp in xref searches
1773         * lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
1774         match if re-search-forward doesn't move point (bug#23426).
1776         * test/automated/xref-tests.el
1777         (xref-collect-matches-finds-an-empty-line-regexp-match):
1778         Uncomment test.
1780 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
1782         Add tests for xref-collect-matches
1784         * test/automated/xref-tests.el: New file.  Add tests for
1785         xref-collect-matches.
1787 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
1789         Use grep-find-ignored-directories instead of vc-directory-exclusion-list
1791         * lisp/dired-aux.el (dired-do-find-regexp):
1792         Use grep-find-ignored-directories instead of
1793         vc-directory-exclusion-list.  The result should be functionally
1794         similar (the former uses the latter as the default value), but it
1795         should be more consistent and appropriate WRT user
1796         customizations.
1797         (dired-do-find-regexp-and-replace): Update the docstring.
1799         * lisp/dired.el: Update the corresponding autoloads.
1801         * doc/emacs/dired.texi (Operating on Files): Update the
1802         documentation accordingly.
1804 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
1806         Clear buffer-undo-list when showing xrefs
1808         * lisp/progmodes/xref.el (xref--show-xref-buffer): Clear
1809         buffer-undo-list and temporarily bind it to t while rendering the
1810         buffer contents.
1812 2016-05-03  Alan Mackenzie  <acm@muc.de>
1814         Note the quote translation in `message' in section "incompatible changes".
1816         * etc/NEWS: Note that `message' translates quotes, that the translation
1817         cannot be disabled, and that `format' can be used to get the old
1818         behavior back.
1820 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
1822         * etc/NEWS: Mention (message "%s" (format ...)).
1824 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
1826         (Common Keywords): Correct what missing :group means
1828         * doc/lispref/customize.texi (Common Keywords): Correct what
1829         missing :group means.
1831 2016-05-03  Eli Zaretskii  <eliz@gnu.org>
1833         Improve documentation of Dired's 'A' and 'Q' commands
1835         * lisp/dired-aux.el (dired-do-find-regexp)
1836         (dired-do-find-regexp-and-replace): Mention
1837         'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
1838         also the fact that REGEXP should be palatable by Grep.  (Bug#23426)
1839         * lisp/dired.el: Update the corresponding autoload forms.
1841         * doc/emacs/dired.texi (Operating on Files): Mention
1842         'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
1843         (Bug#23429)
1845 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
1847         Doc fixes for quoting
1849         * doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
1850         * doc/lispref/control.texi, doc/lispref/display.texi:
1851         * doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
1852         * src/callint.c, src/doprnt.c, src/editfns.c:
1853         Document quoting a bit more systematically.
1854         Problem reported by Alan Mackenzie (Bug#23425).
1856 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
1858         posnp doc clarification
1860         * lisp/subr.el (posnp): Mention that a posn object is returned
1861         from `event-start' (bug#18211).
1863 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
1865         Mention what a missing :group does
1867         * doc/lispref/customize.texi (Common Keywords): Document that
1868         a missing :group reuses the group from the preceding item (bug#21601).
1870 2016-05-02  Eli Zaretskii  <eliz@gnu.org>
1872         Fix documentation of dired-aux search/replace commands
1874         * lisp/dired-aux.el (dired-do-find-regexp)
1875         (dired-do-find-regexp-and-replace): Doc fixes.  (Bug#23429)
1876         * lisp/dired.el: Update the corresponding autoload forms.
1878 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
1880         Fix quoting problem in cc-engine debug message
1882         * lisp/progmodes/cc-engine.el (c-replay-parse-state-state):
1883         Use "%s" format to pass through ‘'’ unscathed (Bug#23425), and
1884         likewise for ‘`’, and ‘%’.
1886 2016-05-02  Philipp Stephani  <phst@google.com>
1888         Add electric-quote-string unit test
1890         * test/automated/electric-tests.el (electric-quote-string): New test.
1892 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
1894         Don’t electrically quote ‘'’ in Python
1896         Problem reported by Philipp Stephani (Bug#23387).
1897         * lisp/electric.el (electric-quote-post-self-insert-function):
1898         Do not requote a string starter or ender.
1900 2016-05-02  Dmitry Gutov  <dgutov@yandex.ru>
1902         `nreverse' Grep hits before passing them to xref--convert-hits
1904         * lisp/progmodes/xref.el (xref-collect-matches): `nreverse' hits
1905         before passing them to xref--convert-hits.  Fixes a regression
1906         from cc0b7132.
1908 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
1910         * doc/misc/texinfo.tex: Sync from gnulib.
1912 2016-05-01  Juri Linkov  <juri@linkov.net>
1914         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
1916         (Bug#23410)
1918 2016-05-01  Michael Albinus  <michael.albinus@gmx.de>
1920         tramp.texi: Revert last change due to backward compatibility
1922         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
1924 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1926         cua-prefix-override-inhibit-delay doc fix
1928         * lisp/emulation/cua-base.el
1929         (cua-prefix-override-inhibit-delay): Typo fix in doc string
1930         (bug#23401).
1932         (cherry picked from commit 2b4c099822811ede787fc6e575bfbb17b3cc0681)
1934 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1936         global-eldoc-mode doc fix
1938         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
1939         specific about what "applicable" means (bug#23071).
1941         (cherry picked from commit 25e95b5dd8cd92e03788e589bf99a4b399f03114)
1943 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1945         normal-top-level-add-subdirs-to-load-path doc fix
1947         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
1948         Doc fix (bug#21962).
1950         (cherry picked from commit 28aaa6d20586e3330a23b017a65e56dd6461c003)
1952 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1954         isearch-search-fun-function doc tweak
1956         * lisp/isearch.el (isearch-search-fun-function): Mention what
1957         the STRING parameter is (bug#21552).
1959         (cherry picked from commit cafc2a5940cdc523cfea6dcf1cf540f48367c62a)
1961 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1963         Fill some imenu--index-alist doc lines
1965         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
1967         (cherry picked from commit 4b7bb8f596550628eaa83b82c0f7eabe59a84964)
1969 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1971         Fmarker_position doc string clarification
1973         * src/marker.c (Fmarker_position): Clarify the doc string
1974         (bug#21231).
1976         (cherry picked from commit eeac7c57273cec3f9408b18392dd2bafe3be4450)
1978 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1980         Further define-obsolete-* doc fixups
1982         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
1983         Fix up last change.
1984         (define-obsolete-variable-alias): Ditto.
1986         (cherry picked from commit 28e9f4390d8391c2c36be4ef515cf3a2c679a5a5)
1988 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1990         Describe WHEN in all the define-obsolete- macros
1992         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
1993         Say more verbosely what WHEN is (bug#21225).
1994         (define-obsolete-function-alias): Describe the WHEN parameter.
1995         (define-obsolete-variable-alias): Ditto.
1997         (cherry picked from commit 247c388f160581d207e41ca5926990bbf69d4a0f)
1999 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2001         Mention with-silent-modifications in the lispref manual
2003         * doc/lispref/text.texi (Changing Properties): Document
2004         with-silent-modifications (bug#21171).
2006         (cherry picked from commit fcd0d854eef6e439d51e8f07cf734d5e34e502b3)
2008 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2010         with-silent-modifications doc clarification
2012         * lisp/subr.el (with-silent-modifications): Rearrange the doc
2013         string a bit so that the most pertinent information is at the
2014         top (bug#21171).
2016         (cherry picked from commit e0e70f030e69d9696a963a86f5f7caaff4df06eb)
2018 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2020         clear-visited-file-modtime doc string fix
2022         * lisp/files.el (clear-visited-file-modtime): Fix possibly
2023         confusing doc string wording (bug#21169).
2025         (cherry picked from commit 1aaeaf1450756a71c9254a2a5b174c72084ca67a)
2027 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2029         Document mode mode line variables
2031         * doc/lispref/modes.texi (Mode Line Variables): Document
2032         `mode-line-front-space, `mode-line-misc-info',
2033         `mode-line-end-spaces' (bug#21014).
2035         (cherry picked from commit bf7a630b0a5d3900f2afb0e7a881ce62e2b9f935)
2037 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2039         Add a cross ref to Optional Mode Line
2041         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
2042         reference to the Emacs mode line node that explains things
2043         like `display-time-string' (bug#21002).
2045         (cherry picked from commit a3151a28789f413af73b14fbba557b2a587fca53)
2047 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2049         Add a doc string to display-time-string
2051         * lisp/time.el: Add a doc string to `display-time-string',
2052         because it's referred to in the manual, and is too mysterious
2053         otherwise (bug#21002).
2055         (cherry picked from commit 45559c584e5a4ddeed1539b028b50b95baa372f8)
2057 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2059         custom-buffer-style doc fix
2061         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
2062         value (bug#20724).
2064         (cherry picked from commit bcf0291d0cd02095b0809b1eb91f1e5c5c2ac5e3)
2066 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2068         Rearrange the doc of query-replace slightly
2070         * lisp/replace.el (query-replace): Move the mention of the
2071         interactive prefix arg earlier so that users can find it
2072         (bug#20654).
2074         (cherry picked from commit bcc10761c3b968fa4534718116a0a601ed7da389)
2076 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2078         apropos-print doc fix
2080         * lisp/apropos.el (apropos-print): Document the undocumented
2081         parameters (bug#20520).
2083         (cherry picked from commit 0714d7387812a151f59993ac77c7321724ef79b1)
2085 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2087         completion-table-with-predicate doc string fix
2089         * lisp/minibuffer.el (completion-table-with-predicate): t ->
2090         non-nil in the doc string (bug#20460).
2092         (cherry picked from commit b6a4d162208f239bc7804696d611ae52c686f138)
2094 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2096         Fill the completion-table-with-predicate doc string
2098         * lisp/minibuffer.el (completion-table-with-predicate): Fill
2099         the doc string (bug#20460).
2101         (cherry picked from commit 207a31432c1ed8b548003a3e4af32c49aa3441e9)
2103 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2105         replace-match-maybe-edit doc clarification
2107         * lisp/replace.el (replace-match-maybe-edit): Say what
2108         MATCH-DATA is (bug#20304).
2110         (cherry picked from commit 139874ba53c2e2de9868f8e5234d6ea2bcb97af8)
2112 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2114         add-timeout doc fix
2116         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
2117         value (bug#20181).
2119         (cherry picked from commit 921b40476f597c84d7c34aa289cd43caeb389c4a)
2121 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2123         Extremely minor doc fix in Choosing Window
2125         * doc/lispref/windows.texi (Choosing Window): There's only one
2126         action alist, I think (bug#20158).
2128         (cherry picked from commit 6c7e7f421d02d9290d6d1d85320737371160aef7)
2130 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2132         Transform mentions of `eval-after-load' to `with-eval-after-load'
2134         * doc/lispref/loading.texi (Hooks for Loading): Update text to
2135         not mention `eval-after-load' (bug#20038).
2137         (cherry picked from commit 9392193be56eebdfac702a0bbb5e954088371c7a)
2139 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2141         cursor-type doc fix
2143         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
2144         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
2146         (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
2148 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2150         Add a link from Tool Bar to Images
2152         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
2153         Images node (bug#19722).
2155         (cherry picked from commit da5d0786163a91400eced4fddba4a92b652458d1)
2157 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2159         (default-mode-line-format): More explicit obsolete info
2161         * lisp/subr.el (default-mode-line-format): Be more explicit in
2162         how default values are now handled (bug#19424).
2164         (cherry picked from commit 9dc5f6d830e72420dc4d41c8f6ca1ca6b28609c0)
2166 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2168         Fcompare_buffer_substrings doc string clarification
2170         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
2171         doc string clarification (bug#19255).
2173         (cherry picked from commit aa692acbb598a1cc8219ed7a87dde25fd7626ba5)
2175 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2177         insert-file-contents-literally doc fix
2179         * lisp/files.el (insert-file-contents-literally): Say that the
2180         parameters are explained in the other function (bug#18317).
2182         (cherry picked from commit b6481b19bc9592492b1f70dfecb4de6256f537fe)
2184 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2186         Fix custom types for cursor-in-non-selected-windows
2188         * lisp/cus-start.el (standard): Use the same custom types for
2189         cursor-in-non-selected-windows as for cursor-type (bug#19214).
2191         (cherry picked from commit b66bc0cced786e0320e1c3b0758bd3c434d4e8b5)
2193 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2195         Doc clarification to mwheel-scroll
2197         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
2198         does not apply to Windows (bug#19209).
2200         (cherry picked from commit 696052b5fdfbc5c25dff3c6b081aebe70f6d06c7)
2202 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2204         Clarify the doc of eval-expression-print-format
2206         * lisp/simple.el (eval-expression-print-format): Doc
2207         clarification (bug#19114).
2209         (cherry picked from commit cd193a871f5a8e1c81ba86fc398ac382fa814383)
2211 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2213         Explictly explain that package-initialize loads the packages
2215         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
2216         in saying that `package-initialize' obviates adjusting the
2217         path or requiring the packages, as this is a question that
2218         apparently comes up now and then (bug#18829).
2220         (cherry picked from commit 619e0aedb2f3dbfe6821ac34e2d25b4e5c181117)
2222 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2224         Have the doc strings of `load-path' and `require' mention each other
2226         * src/fns.c (Frequire): Mention `load-path' and fill the doc
2227         string (bug#18829).
2229         * src/lread.c (syms_of_lread): Mention that `require' uses
2230         `load-path'.
2232         (cherry picked from commit 3eca9a03816f95da0030665223c0b5262f223ba7)
2234 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2236         Doc fix for insert-pair-alist
2238         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
2239         COMMAND-CHAR is (bug#18809).
2241         (cherry picked from commit 2824c587e9749a8f350f1d3dddd65176b4561dcb)
2243 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2245         Move doc of backup-directory-alist to the Backup node
2247         * doc/emacs/files.texi (Backup): Move the documentation of
2248         `backup-directory-alist' here from the "Single or Numbered
2249         Backups" node, because it doesn't seem to have much to do with
2250         numbering (bug#18692).
2252         (cherry picked from commit e77b8d84b4161f2cf8720dec2bf44a3e50134398)
2254 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2256         Tiny doc clarification for create-fontset-from-fontset-spec
2258         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
2259         Clarify what the optional part is (bug#18686).
2261         (cherry picked from commit c05d186455ce9907eeb6b21ea4227e453996c681)
2263 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2265         Fill the doc string of font-lock-keywords
2267         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
2268         reorganise some explanations (bug#21427).
2270         (cherry picked from commit c05716d3a26ea7518b89eacfccaf70c9d0731df7)
2272 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2274         Doc fix for font-lock-remove-keywords
2276         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
2277         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
2279         (cherry picked from commit bc00dcf12983cd399127d0eea39647f29778eb02)
2281 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2283         Clarify whitespace-style doc string
2285         * lisp/whitespace.el (whitespace-style): Doc clarification
2286         (bug#18296).
2288         (cherry picked from commit d96c720d0cca7c9ffbb4c712ad315bb707d6625c)
2290 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2292         Doc fixed for next-error-buffer-p
2294         * lisp/simple.el (next-error-buffer-p): Clarify doc string
2295         (bug#18202).
2297         (cherry picked from commit a10eb168cc96db9f0dab2d75550cbd8f08be2363)
2299 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2301         Tiny doc fix
2303         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
2304         (and fill) (bug#18201).
2306         (cherry picked from commit 2ef0040e2363a669d9b93df935d31c98fa130132)
2308 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2310         Doc fix
2312         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
2313         slightly (bug#18092).
2315         (cherry picked from commit 6b769c81d024f7eeb90b167e7df6f87d859614d4)
2317 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2319         delsel doc touch ups
2321         * lisp/delsel.el (delete-selection-helper): Use non-nil
2322         instead of t and clarify function return values (bug#18089).
2324         (cherry picked from commit d7a5b5be9a5869bcd233434ec3103dd1976d7df7)
2326 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2328         Doc fixes for menu-bar.el
2330         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
2331         REGION parameter (bug#18028).
2332         (clipboard-kill-region): Ditto.
2334         (cherry picked from commit 33d2c67bff0992ecbc0fe38556683242b9d1a4ae)
2336 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2338         Doc fix
2340         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
2342         (cherry picked from commit 6baca4911ec901579749dbf7596011d90fea3781)
2344 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2346         Minor doc clarification
2348         * lisp/subr.el (y-or-n-p): Document the return value from "n"
2349         (bug#18024).
2351         (cherry picked from commit 5d1f3192d484edee92caa46cd7d699da3e920259)
2353 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2355         Fill font-lock-mode doc string
2357         * lisp/font-core.el (font-lock-mode): Fill the text to make it
2358         narrower (bug#18008).
2360         (cherry picked from commit 27abf372836532c57be2e9e3ed23413729cc07fc)
2362 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2364         Wrap the auto-generated doc string
2366         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
2367         string to make it less likely that we get overlong lines
2368         (bug#17999).
2370         (cherry picked from commit 323b69664914d687fd4b48593479cea223dfbcb4)
2372 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2374         Clarify hi-lock-find-patterns
2376         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
2377         (bug#17989).
2379         (cherry picked from commit 552e90ce7dff3a7107243fdf71c4de3af443e13a)
2381 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2383         Add a doc string to `winner-mode'
2385         * lisp/winner.el (winner-mode): Add a doc string based on the
2386         comments in the file (bug#17716).
2388         (cherry picked from commit 2c3ab9b6e39a3d600e7d82deacc24effaec051bb)
2390 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2392         Doc fix for align-newline-and-indent
2394         * lisp/align.el (align-newline-and-indent): Mention that
2395         alignment is done by `align' (bug#17707).
2397         (cherry picked from commit 340a224ec3e01706112a07164da9a9f3f369a5aa)
2399 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2401         Doc fix for `kbd'
2403         * lisp/subr.el (kbd): Describe more fully the format of the
2404         parameter (bug#17039).
2406         (cherry picked from commit 3a33afe25d8518f194fa4706eaccdb2a786a0348)
2408 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2410         Doc tweak
2412         * lisp/simple.el (use-empty-active-region): Doc tweak.
2413         There's only one region (bug#16513).
2415         (cherry picked from commit 35fb7897f161d5e5a87e039dc1e427094640b0c8)
2417 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2419         Link from (emacs)Exiting to (lisp)Killing Emacs
2421         * doc/emacs/entering.texi (Exiting): Link to the lispref
2422         manual for further customisations (bug#15445).
2424         (cherry picked from commit bc5f27aa099cdde02ca66e71501b89300685ab28)
2426 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2428         find-lisp doc touchups
2430         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
2431         string (bug#15047).
2432         (find-lisp-find-files): Clarify doc.
2434         (cherry picked from commit e4c7657b0d1a31d64ca24bc64b5480cd7687e332)
2436 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2438         Don't have the manual claim that it lists all CL incompatibilities
2440         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
2441         incompatibilities isn't exhaustive, so don't say that it is
2442         (bug#15171).
2444         (cherry picked from commit fb685bc91a72508c97ce7e30f970d4157677f371)
2446 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2448         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
2450         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
2451         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
2452         (bug#14554).
2454         (cherry picked from commit e4c26271f2c2fe08f8490e25c63a436ab2a804ca)
2456 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2458         Doc string change to enable-recursive-minibuffers
2460         * src/minibuf.c (syms_of_minibuf): Mention
2461         minibuffer-depth-indicator-mode in the doc string to
2462         enable-recursive-minibuffers (bug#14147).
2464         (cherry picked from commit 23ba488a5e8290c4de91e0ff4161641efa364c0d)
2466 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2468         Clarify the `interactive' doc string slightly
2470         * src/callint.c (Finteractive): Clarify the doc string slightly
2471           (bug#14577).
2473         (cherry picked from commit cd993be60da2d12db0d390001373d486c1091c47)
2475 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2477         Clarify some doc strings
2479         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
2480         Clarify doc string (bug#8693).
2481         (syntax-propertize): Clarify doc string.
2483         (cherry picked from commit ad3ef417f3c40f086de9c547d6272e5685595e42)
2485 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2487         Add some concept index entries for custom types
2489         * doc/lispref/customize.texi (Composite Types): Add concept
2490         index entries for restricted-sexp, radio and choice (bug#7385).
2492         (cherry picked from commit 388bb723fa078158d3148de05e942f9c01e95dd8)
2494 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2496         Mention `lisp-indent-function' in the lispref manual
2498         * doc/lispref/macros.texi (Indenting Macros): Mention
2499         `lisp-indent-function' (bug#3393).
2501         (cherry picked from commit a1627691a896b2afaa264f93534178bc763564c9)
2503 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2505         Clarify doc string of internal compilation function
2507         * lisp/progmodes/compile.el (compilation-get-file-structure):
2508         Clarify doc string (bug#3137).
2510         (cherry picked from commit 123191decb7428db3b32a6c01631fa755088393a)
2512 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
2514         Use ‘T *restrict’ proto, not ‘T[restrict]’
2516         * src/fns.c (sort_vector_copy): Use a different way to attempt to
2517         work around GCC 3.0-and-earlier incompatibility with C99, one that
2518         does not have problems with modern non-GCC compilers.
2520 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
2522         Fix documentation of 'url-retrieve-synchronously'
2524         * doc/misc/url.texi (Retrieving URLs): Update argument list of
2525         'url-retrieve-synchronously'.  (Bug#23411)
2527 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
2529         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
2531 2016-04-30  Leo Liu  <sdl.web@gmail.com>
2533         Fix last change to isearch-update (bug#23406)
2535         * lisp/isearch.el (isearch-update): Remove (setq cursor-sensor-inhibit
2536           nil) ie remove the original (unless (boundp 'cursor-sensor-inhibit)
2537           ...) form.
2539 2016-04-30  Leo Liu  <sdl.web@gmail.com>
2541         Autoload cursor-sensor-inhibit (bug#23406)
2543         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-inhibit): Autoload.
2544         * lisp/isearch.el (isearch-update): Remove boundp check.
2546 2016-04-30  Phillip Lord  <phillip.lord@newcastle.ac.uk>
2548         org-map-entries: Fix org-agenda-prepare-buffers call
2550         * lisp/org/org.el (org-map-entries): Check that buffer-file-name is non-nil
2551           before passing to org-agenda-prepare-buffers.
2553         This is a backport of commit 44c8cd7136e3fcd1e6bfa08895cac437b7a691fa
2554         from upstream org-mode. Addresses bug #23365.
2556 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
2558         Followup for last commit in the user manual
2560         * doc/emacs/basic.texi (Moving Point): Clarify that
2561         set-goal-column has buffer-local effect.  (Bug#23405)
2563 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
2565         Improve doc string of 'set-goal-column'
2567         * lisp/simple.el (set-goal-column): Doc fix.  (Bug#23405)
2569 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
2571         Fix the MSDOS build
2573         * config.bat:
2574         * msdos/sedlisp.inp:
2575         * msdos/sedlibmk.inp:
2576         * msdos/sedleim.inp:
2577         * msdos/sedadmin.inp:
2578         * msdos/sed6.inp:
2579         * msdos/sed3v2.inp:
2580         * msdos/sed2v2.inp:
2581         * msdos/sed1v2.inp: Adapt to Emacs 25.
2583         * src/process.c (remove_slash_colon): Move out of "#ifdef
2584         subprocesses" block, as it its called unconditionally.  Move
2585         ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
2586         reference variables only defined in that block.
2587         * src/msdos.h: Provide prototypes for IT_set_frame_parameters,
2588         faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
2589         dos_keysns, dos_keyread, run_msdos_command, and
2590         syms_of_win16select, to avoid compiler warnings.
2591         * src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
2592         'environ', depending on the DJGPP version.
2593         Remove declarations of externally-visible Lisp objects, like
2594         Qbackground_color and Qreverse.
2595         (run_msdos_command): First argument is not signed, not unsigned.
2596         Use SYS_ENVIRON.
2597         (sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
2598         the latter doesn't work when 'time_t' is an unsigned data type.
2599         This caused idle timers to behave incorrectly: they only fired
2600         after a keyboard input event.
2601         * src/frame.c (adjust_frame_size) [MSDOS]: Account for
2602         FRAME_TOP_MARGIN that isn't counted in the frame's number of
2603         lines, but dos_set_window_size needs it to be added.
2604         * src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
2605         * src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
2606         that works around compilation errors with older GCC versions.
2607         * src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
2608         Objects.
2609         * src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
2610         no-op implementations for 'lock_file' and 'unlock_file'.
2611         (Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
2612         ifdefs in all users of filelock.c functionality.
2613         * src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
2614         * src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
2615         warnings.
2616         * src/dosfns.h: Provide prototypes for dos_cleanup,
2617         syms_of_dosfns, and init_dosfns.
2618         * src/deps.mk (atimer.o): Depend on msdos.h.
2619         (emacs.o): Depend on dosfns.h.
2620         * src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
2621         warnings.
2623         * lisp/window.el (window--adjust-process-windows): Skip the body
2624         if 'process-list' is not available.  This avoids failure to start
2625         up on MS-DOS.
2626         * lisp/vc/diff.el (diff-no-select): Test 'make-process', not
2627         'start-process', as the latter is now available on all platforms.
2628         * lisp/textmodes/ispell.el (ispell-async-processp): Replace
2629         'start-process' with 'make-process' in a comment.
2630         * lisp/term/internal.el (IT-unicode-translations): Modify and add
2631         a few translations to display Info files with Unicode markup.  Fix
2632         an ancient off-by-one mismatch error with Unicode codepoints.
2633         * lisp/progmodes/compile.el (compilation-start): Test
2634         'make-process', not 'start-process', as the latter is now
2635         available on all platforms.
2636         * lisp/man.el (Man-build-man-command, Man-getpage-in-background):
2637         Test 'make-process', not 'start-process', as the latter is now
2638         available on all platforms.
2639         * lisp/international/mule-cmds.el (set-coding-system-map): Test
2640         'make-process', not 'start-process', as the latter is now
2641         available on all platforms.
2642         * lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
2643         fix.
2644         (eshell-execute-pipeline): Test 'make-process', not
2645         'start-process', as the latter is now available on all platforms.
2647 2016-04-30  Andreas Schwab  <schwab@linux-m68k.org>
2649         Remove \= from format string (bug#18190)
2651         * lisp/emacs-lisp/eieio.el (defclass): Remove \= from format
2652         string.
2654 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
2656         Fix variable-pitch font on MS-Windows
2658         * lisp/faces.el (variable-pitch) [w32]: Name a variable-pitch font
2659         explicitly, to avoid Emacs picking up a bold-italic variant on
2660         some MS-Windows systems.  See this thread for details:
2661         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00746.html.
2663 2016-04-29  Alan Mackenzie  <acm@muc.de>
2665         Restore follow-scroll-up/down to scrolling by the combined size of all windows
2667         Also rename the current follow-scroll-up/down functions to
2668         follow-scroll-up-window and follow-scroll-down-window.  These scroll by the
2669         height of the current window.
2671         This fixes bug #23347.
2673         * lisp/follow.el (follow-mode): Tweak the doc string.
2674         (follow-scroll-up-arg, follow-scroll-down-arg): new functions, extracted from
2675         follow-scroll-up/down.
2676         (follow-scroll-up-window, follow-scroll-down-window): Functions renamed from
2677         follow-scroll-up/down.
2678         (follow-scroll-up, follow-scroll-down): Restore the historic functionality.
2680 2016-04-29  Alan Mackenzie  <acm@muc.de>
2682         Revert unneeded change which harms syntactic parsing.  This fixes bug #23308.
2684         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache): User
2685         c-state-old-cpp-end as an argument to c-with-all-but-one-cpps-commented-out
2686         regardless of the value of `here'.
2688 2016-04-29  Alan Mackenzie  <acm@muc.de>
2690         Correct indentation of ids in a C++ enum after a protection keyword.
2692         Also correct the misfontification of the last enum identifier.
2694         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): setq
2695         c-last-identifier-range to nil to ensure that only types recognized by this
2696         macro are set for fontification as types.
2697         (c-backward-typed-enum-colon): Function renamed from
2698         c-backward-colon-prefixed-type.  On finding a colon in the backward search,
2699         check it is preceded by an identifier rather than a keyword.
2701 2016-04-27  Glenn Morris  <rgm@gnu.org>
2703         * lisp/window.el (window--process-window-list): No-op if no processes.
2705         This avoids an issue with save-selected-window (from walk-windows)
2706         failing if frame.el is not loaded, eg if the terminal is resized
2707         during startup of a -nw CANNOT_DUMP build.  (Bug#23369).
2709 2016-04-27  Paul Eggert  <eggert@penguin.cs.ucla.edu>
2711         Port dumping to NetBSD with PaX
2713         Problem reported by Thomas Klausner (Bug#23371).
2714         * configure.ac (PAXCTL_dumped, PAXCTL_notdumped): New vars.
2715         Set them to setfattr and/or paxctl commands appropriate for
2716         GNU/Linux and/or NetBSD; the latter prefers paxctl +a.  Search
2717         for paxctl only if setfattr is not found.
2718         * src/Makefile.in (PAXCTL_dumped, PAXCTL_notdumped):
2719         New vars, replacing PAXCTL_if_present and SETFATTR_if_present.
2720         All uses changed.
2722 2016-04-27  Dmitry Gutov  <dgutov@yandex.ru>
2724         Don't mistake `for' inside a function for a part of array comprehension
2726         * lisp/progmodes/js.el (js--indent-in-array-comp): Also check the
2727         depth in parens between the bracket and `for' (bug#23391).
2729         * test/indent/js.js: Add a corresponding example.
2731 2016-04-27  Anders Lindgren  <andlind@gmail.com>
2733         Fix bug#22891: wrong terminal width when a fringe width is zero.
2735         When either fringe width is zero, Emacs reserved one column for a
2736         continuation glyph. Terminal windows does not take this into
2737         account when the frame is resized.
2739         * lisp/window.el (window-adjust-process-window-size): Use
2740         `window-max-chars-per-line' instead of `window-body-width'.
2741         * lisp/term.el (term-window-width): Remove function. (It does the
2742         same as `window-max-chars-per-line' but without recent bug fixes.)
2743         (term-mode): Use `window-max-chars-per-line' instead of
2744         `term-window-width'.
2746         Backport
2748         (cherry picked from commit 5b5403289888efe8783ae6a405845b925f544ec1)
2750 2016-04-27  Leo Liu  <sdl.web@gmail.com>
2752         Improve last change to vc-git-mode-line-string
2754         * lisp/vc/vc-git.el (vc-git-mode-line-string): Better fix that caches
2755           the result.
2757 2016-04-27  Stephen Berman  <stephen.berman@gmx.net>
2759         Todo mode doc bug fix
2761         * lisp/calendar/todo-mode.el (todo-show): Correct obsolete and no
2762         longer correct information in doc string.
2764 2016-04-27  Leo Liu  <sdl.web@gmail.com>
2766         Fix revision calculation in vc-git-mode-line-string
2768         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use
2769           vc-git-working-revision because vc-working-revision needs to decide
2770           the backend and may return nil.
2772 2016-04-26  Jorgen Schaefer  <contact@jorgenschaefer.de>
2774         Add Python 3.5 keyword "await"
2776         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
2777         keyword.
2779 2016-04-26  Lele Gaifax  <lele@metapensiero.it>
2781         Add new keywords of Python 3.5
2783         Python 3.5, released in mid September 2015, introduced a few new
2784         keywords to better support asynchronous code, "async" and "await"
2785         in particular. See https://www.python.org/dev/peps/pep-0492/ for
2786         details. (Bug#21783)
2787         * lisp/progmodes/python.el (python-rx-constituents): Add async
2788         def/for/with as block-start and async def as defun.
2789         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
2790         def/for/with as keyword.
2791         * test/automated/python-tests.el (python-indent-after-async-block-1,
2792         python-indent-after-async-block-2, python-indent-after-async-block-3,
2793         python-nav-beginning-of-defun-3): New tests to test indentation and
2794         navigation for the async keyword.
2796 2016-04-26  Mark Oteiza  <mvoteiza@udel.edu>
2798         Partially revert previous change.
2800         This commit partially reverts 0f332848cdb2ed6d46771914a911cbca194cd51a.
2801         * lisp/rect.el (rectangle--highlight-for-redisplay): Use region face.
2802         This function is for rectangle-mark-mode, not string-rectangle.
2804 2016-04-25  Paul Eggert  <eggert@penguin.cs.ucla.edu>
2806         Say why text-quoting-style is not a user option
2808         * doc/lispref/help.texi (Keys in Documentation):
2809         * etc/NEWS: Document why text-quoting-style is not a
2810         customizable variable (Bug#23372).
2812 2016-04-25  Glenn Morris  <rgm@gnu.org>
2814         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
2815         Future-proof against non-time-values.
2817 2016-04-25  Eli Zaretskii  <eliz@gnu.org>
2819         Don't mention ~/.emacs.bmk literally in doc strings
2821         * lisp/bookmark.el (bookmark-save-flag, bookmark-load): Don't
2822         mention "~/.emacs.bmk" explicitly as the default bookmark file in
2823         the doc strings.  (Bug#23350)
2825 2016-04-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2827         * etc/NEWS: Explain why multicolor font display is disabled on OS X Cocoa.
2829 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
2831         Port to Ubuntu 16.04 --enable-gcc-warnings
2833         * src/image.c (gif_load) [HAVE_GIF]: Fix pointer signedness problem.
2835 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
2837         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
2839 2016-04-24  Tino Calancha  <f92capac@gmail.com>
2841         Don't kill ~/ if it's the top level directory
2843         * lisp/dired-aux.el (dired-kill-subdir): Don't kill ~/ if it's
2844         the top level directory (bug#23017).
2846 2016-04-23  Tino Calancha  <f92capac@gmail.com>  (tiny change)
2848         describe-char: fix insert char documentation
2850         * lisp/descr-text.el (describe-char):
2851         Only 'ucs-names' entries can be inserted by unicode name (Bug#23325).
2853 2016-04-23  Dmitry Gutov  <dgutov@yandex.ru>
2855         (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
2857         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use `substring'
2858         instead of `replace-regexp-in-string', because REV can be nil
2859         (e.g. when FILE is a directory, bug#23344), and we actually know
2860         we only need the first 4 characters.
2862 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
2864         Bump version to 25.0.93
2866         * README:
2867         * configure.ac:
2868         * msdos/sed2v2.inp: Bump Emacs version to 25.0.93.
2870 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
2872         * etc/AUTHORS: Update the AUTHORS file
2874         * admin/update_autogen: Use #!/usr/bin/env bash
2876         * admin/authors.el (authors-ignored-files): Additions.
2878 2016-04-22  Martin Rudalics  <rudalics@gmx.at>
2880         In x_set_window_size restore do_pending_window_change calls
2882         * src/xterm.c (x_set_window_size):
2883         * src/w32term.c (x_set_window_size): Restore
2884         do_pending_window_change calls after their stupid removal on
2885         2015-08-31.
2887 2016-04-21  Ilya Zakharevich  <ilya@math.berkeley.edu>
2889         Fix Alt-modified keys on some European MS-Windows keyboards
2891         * src/w32fns.c (deliver_wm_chars): If the reported character is
2892         ASCII, AND Meta modifier is a candidate, behave as if Meta is
2893         present, i.e. fall back to the legacy code.  (Bug#23251)
2895 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2897         Document 'help-go-forward'
2899         * doc/emacs/help.texi (Help Mode): Document and index
2900         'help-go-forward'.  (Bug#23323)
2902 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2904         Revert "Allow to customize names of executables used by grep.el"
2906         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
2908 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2910         Revert "Don't use 'find-program'"
2912         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
2914 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2916         Revert "Use 'grep-find-program' in check-declare.el"
2918         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
2920 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2922         Clarify documentation of 'dired-mark-files-containing-regexp'
2924         * doc/emacs/dired.texi (Marks vs Flags): Clarify that for files
2925         visited in buffers, 'dired-mark-files-containing-regexp' searches
2926         the buffer rather than the file on disk.  (Bug#22694)
2928         * lisp/dired.el (dired-mark-files-containing-regexp): Clarify that
2929         for files visited in buffers, 'dired-mark-files-containing-regexp'
2930         searches the buffer rather than the file on disk.  (Bug#22694)
2932 2016-04-19  Eli Zaretskii  <eliz@gnu.org>
2934         Make tmm-menubar work in correct order again
2936         * lisp/tmm.el (tmm-prompt): Don't reverse 'tmm-km-list' right at the
2937         beginning; instead, pass a reversed copy to 'tmm--completion-table'.
2938         (Bug#23309)
2939         (tmm-menubar): Fix an off-by-one error in determining the menu
2940         item when the function is called with a non-nil 'x-position'
2941         argument.
2943 2016-04-18  Dmitry Gutov  <dgutov@yandex.ru>
2945         Remove the Meta-CVS VC backend
2947         * lisp/obsolete/vc-mcvs.el: Remove the file (bug#20475).
2949         * lisp/vc/log-view.el (log-view-extract-comment): Remove the MCVS
2950         reference.
2952         * doc/misc/efaq-w32.texi (Version control): Same.
2954 2016-04-18  Michael Albinus  <michael.albinus@gmx.de>
2956         Fix Bug#23276
2958         * lisp/autorevert.el (auto-revert-handler): Ignore errors
2959         coming from `revert-buffer'.  (Bug#23276)
2961 2016-04-17  Reto Zimmermann  <reto@gnu.org>
2963         Sync with upstream vhdl mode v3.38.1.
2965         * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
2966         (vhdl-mode): No longer set comment-padding.
2967         (vhdl-begin-p): Handle missing space between keyword and parenthesis.
2968         (vhdl-beginning-of-statement-1): Fix indentation for "else generate".
2969         (vhdl-template-else, vhdl-template-elsif): Support generate statement.
2970         (vhdl-re-search-forward, vhdl-re-search-backward): Save match data.
2972 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
2974         Tweak configure.ac syntax in recent module patch
2976         * configure.ac: Use proper Autoconf parenthesization in
2977         recent HAVE_MODULES patch.  Although this doesn’t fix any bugs,
2978         the previous syntax was confusing.
2980 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
2982         Port to GCC 5.3.1 20160406 (Red Hat 5.3.1-6)
2984         * src/indent.c (Fvertical_motion): Pacify --enable-gcc-warnings
2985         when using the April 6 Fedora patch to GCC.
2987 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
2989         Make sh-electric-here-document-mode accessible in sh-mode-hook. (Bug#3226)
2991         * lisp/progmodes/sh-script.el (sh-mode-hook): Add
2992         sh-electric-here-document-mode as an option and the default value.
2993         (sh-mode): Mention sh-mode-hook in docstring.
2994         (sh-mode): Remove sh-electric-here-document-mode invocation.
2996 2016-04-16  Glenn Morris  <rgm@gnu.org>
2998         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
3000 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
3002         Make use of rectangle-preview custom variable.
3004         lisp/rect.el (rectangle--string-preview): Only create a preview if
3005         rectangle-preview is non-nil (Bug#23248).
3007 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
3009         Make use of rectangle-preview face.
3011         * lisp/rect.el (rectangle--string-preview):
3012         (rectangle--highlight-for-redisplay): Replace 'region with
3013         'rectangle-preview (Bug#23248).
3015 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
3017         Use 'grep-find-program' in check-declare.el
3019         * lisp/emacs-lisp/check-declare.el (check-declare-directory): Use
3020         'grep-find-program', not 'find-program'.
3022 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
3024         Improve "C-h S" for cl-lib symbols
3026         * lisp/info-look.el: Add cl.info lookup to emacs-lisp-mode related
3027         manuals.  (Bug#23289)
3029 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
3031         Fix minor issues with removing left or right fringes
3033         * lisp/window.el (window-max-chars-per-line): Account for
3034         'left-fringe-width' and 'right-fringe-width' variables.
3036         * doc/lispref/windows.texi (Window Sizes): Document the effect on
3037         window text width when setting the width of one or both fringes to
3038         zero.
3039         * doc/emacs/display.texi (Fringes): Document the effect on window
3040         text width when setting the width of one or both fringes to zero.
3041         (Bug#22891)
3043 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
3045         Speed up redisplay in ansi-term mode
3047         * lisp/term.el (ansi-term): Force L2R 'bidi-paragraph-direction'.
3048         (Bug#20611)
3050 2016-04-16  Philipp Stephani  <phst@google.com>
3052         Simplify 8-bit character handling by terminal for 'raw-text'
3054         * lisp/international/mule.el (set-keyboard-coding-system): Treat
3055         'raw-text' as another coding type that requires 8-bit characters.
3056         * lisp/xt-mouse.el (xterm-mouse--read-coordinate): Use 'no-conversion'
3057         instead of 'latin-1'.
3059 2016-04-15  Glenn Morris  <rgm@gnu.org>
3061         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
3063 2016-04-15  Eli Zaretskii  <eliz@gnu.org>
3065         Fix w32 memory-management problem when extending buffer text
3067         * src/w32heap.c (mmap_realloc): Only attempt extending a region if
3068         the following region has the same allocation base.  Also, use the
3069         original allocation base and enlarged size to commit reserved
3070         memory, to ensure that the allocation base stays at its original
3071         value.  This fixes several hard-to-debug problems whereby part of
3072         buffer text was overwritten with binary nulls, because
3073         mmap_realloc copied only part of buffer text when extending it.
3074         See
3075         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00325.html
3076         and http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#55 for two
3077         examples of the related problems.
3079 2016-04-14  Michael Albinus  <michael.albinus@gmx.de>
3081         Fix Bug#20637.  Do not merge to master
3083         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
3084         Use `vc-backend' instead of `vc-responsible-backend'.  (Bug#20637)
3086         * test/automated/vc-tests.el (vc-test--state)
3087         (vc-test--working-revision): Deactivate now failing checks.
3089 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
3091         substitute-command-keys keeps quotes’ text props
3093         Problem reported by Clément Pit--Claudel (Bug#23254).
3094         * src/doc.c: Include intervals.h.
3095         (Fsubstitute_command_keys): If the only substitutions are for
3096         quotes, copy the source string’s text properties too, since no
3097         substring lengths have changed.
3099 2016-04-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3101         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
3103 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
3105         Add semantic-symref-filepattern-alist entry for lisp-interaction-mode
3107         * lisp/cedet/semantic/symref/grep.el
3108         (semantic-symref-filepattern-alist):
3109         Add entry for lisp-interaction-mode
3110         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#47)
3112 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
3114         Perform xref searches without visiting unopened files
3116         * lisp/progmodes/xref.el (xref-collect-references): Instead of
3117         calling `semantic-symref-find-references-by-name', use
3118         `semantic-symref-instantiate' and `semantic-symref-perform-search'
3119         directly.  Ask for `line-and-text' results (bug#23223).
3120         (xref-collect-matches): Include the line text in the "hit"
3121         structure.
3122         (xref--convert-hits): New function, split off from
3123         `xref-collect-references' and `xref-collect-matches', to convert
3124         "hits" to xref instance list.  Create a temporary buffer here, to
3125         use it for post-processing all hit lines.
3126         (xref--collect-matches): Use a different approach for non-visited
3127         files.  Insert the line text into the temp buffer, apply the
3128         file's major mode the best we can without reading its whole
3129         contents, syntax-propertize, and search in the result.
3130         (xref--collect-matches-1): Extract, to handle the common logic
3131         between two cases.
3132         (xref--find-buffer-visiting): New function, a wrapper around
3133         `find-buffer-visiting' to amortize its cost.
3135         * lisp/cedet/semantic/symref/idutils.el
3136         (semantic-symref-idutils--line-re): New constant.
3137         (semantic-symref-parse-tool-output-one-line): Support result type
3138         `line-and-text'.
3140         * lisp/cedet/semantic/symref/grep.el
3141         (semantic-symref-grep--line-re)
3142         (semantic-symref-parse-tool-output-one-line): Same.
3144         * lisp/cedet/semantic/symref/cscope.el
3145         (semantic-symref-cscope--line-re)
3146         (semantic-symref-parse-tool-output-one-line): Same.
3148         * lisp/cedet/semantic/symref/global.el
3149         (semantic-symref-global--line-re)
3150         (semantic-symref-parse-tool-output-one-line): Same.
3152 2016-04-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
3154         Revert "Prevent bootstrap autoload backup files"
3156         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
3158 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
3160         Improve time zone documentation
3162         * doc/lispref/os.texi (Time Zone Rules):
3163         New section, mostly with material moved here from other sections.
3164         * doc/emacs/cmdargs.texi (General Variables):
3165         * doc/lispref/os.texi (Time Conversion, Time Parsing):
3166         Xref new section.
3167         * etc/NEWS, etc/PROBLEMS:
3168         * lisp/org/org.el (org-timestamp-format):
3169         * src/editfns.c (Fformat_time_string, Fdecode_time)
3170         (Fencode_time, Fcurrent_time_string, Fcurrent_time_zone)
3171         (Fset_time_zone_rule):
3172         When documenting time zone rule strings, mention the TZ
3173         environment variable in preference to mentioning the
3174         sort-of-internal function set-time-zone-rule.
3176 2016-04-12  Phillip Lord  <phillip.lord@russet.org.uk>
3178         Prevent bootstrap autoload backup files
3180          * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
3181            backups in newly created file.
3183           (autoload-ensure-default-file): Function split into two.
3184           (autoload-ensure-file-writeable): New function from split.
3186           (Bug#23203)
3188 2016-04-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3190         Disable multicolor fonts on OS X since they are not supported on free systems
3192         * src/macfont.m (macfont_list): Don't use color bitmap fonts.
3194 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
3196         Capitalize “Universal Time” in documentation
3198         It’s a proper noun.
3199         * lisp/vc/add-log.el (add-log-time-zone-rule): Also, fix typo by
3200         mentioning ‘format-time-string’ instead of ‘set-time-zone-rule’.
3202 2016-04-11  Eli Zaretskii  <eliz@gnu.org>
3204         Don't use 'find-program'
3206         * lisp/progmodes/project.el (project-file-completion-table): Use
3207         'grep-find-program', rather than the obsolete 'find-program'.
3209 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
3211         Sync with gnulib
3213         This is for picky compilers whose stdint.h fails our C11 tests.
3214         Problem reported for clang by Philipp Stephani (Bug#23261).
3215         This incorporates:
3216         2016-04-11 stdint: port to strict C11 left shift
3217         * doc/misc/texinfo.tex, lib/stdint.in.h: Copy from gnulib.
3219 2016-04-11  Leo Liu  <sdl.web@gmail.com>
3221         Fix last change on 2016-01-02
3223         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Move
3224           `cl-errs-re' before `lisp--el-match-keyword'; don't use `prepend'
3225           which highlights `cl-errs-re' even in comments or strings.
3227 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
3229         Port run-prolog EMACS to SWI-Prolog 7.2.3
3231         * lisp/progmodes/prolog.el (prolog-ensure-process):
3232         Work around incompatibility of SWI-Prolog 7.2.3 and earlier
3233         with the new way of dealing with the EMACS and INSIDE_EMACS
3234         environment variables.
3236 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
3238         Avoid crashes due to unreasonably large or small text scaling
3240         * lisp/face-remap.el (text-scale-min-amount)
3241         (text-scale-max-amount): New functions.
3242         (text-scale-set, text-scale-increase): Use them to limit the text
3243         scaling to a reasonable range of values.  (Bug#23259)
3245 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
3247         Improve documentation of 'with-eval-after-load'
3249         * lisp/subr.el (with-eval-after-load): Doc fix.  (Bug#23258)
3251 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
3253         Improve handling of non-ASCII characters in Git log messages
3255         * lisp/vc/vc-git.el (vc-git-commits-coding-system): Now a defcustom.
3256         (vc-git-log-output-coding-system): New defcustom.
3257         (vc-git-print-log, vc-git-command, vc-git--call): Use
3258         'vc-git-log-output-coding-system' for reading stuff from Git.
3259         Don't override values of 'coding-system-for-read/write' if they
3260         are bound by caller -- this allows the user to force an encoding
3261         via "C-x RET c".
3262         (vc-git-checkin): On MS-Windows, pass the log message via a
3263         temporary file, to work around the limitations on passing
3264         non-ASCII characters via command-line arguments.  Force using the
3265         'locale-coding-system' for Git command-line arguments.  This fixes
3266         problems with non-ASCII commit log messages on MS-Windows.
3267         (Bug#23076)
3269         * etc/NEWS: Mention the new vc-git related defcustoms.
3271 2016-04-09  Philipp Stephani  <phst@google.com>
3273         Remove undefined behavior in OS X dumper.
3275         Found by Address Sanitizer.
3277         * src/unexmacosx.c (unexec_write): Use Mach virtual memory API to
3278         avoid undefined behavior when reading arbitrary memory.
3280 2016-04-09  Joakim Verona  <joakim@verona.se>
3282         Fix clipping of xwidgets
3284         * src/xwidget.c (x_draw_xwidget_glyph_string): Use window_box
3285         instead of calculating the clipping borders manually.  Suggested
3286         by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
3288 2016-04-09  Eli Zaretskii  <eliz@gnu.org>
3290         Improve Lisp-level documentation of tooltips
3292         * doc/lispref/display.texi (Tooltips): New section.  (Bug#23246)
3293         (Display): Update the chapter menu.
3294         * doc/lispref/text.texi (Special Properties): Make the "tooltip"
3295         index entry more concrete.  Change the cross-reference to point to
3296         "Tooltips" in the ELisp manual.
3297         * doc/lispref/elisp.texi (Top): Update the master menu.
3298         * doc/emacs/frames.texi (Tooltips): Include more customization
3299         variables.  Add a cross-reference to the ELisp manual.
3301 2016-04-08  Glenn Morris  <rgm@gnu.org>
3303         Faces names should not end in "-face".
3305         * lisp/rect.el (rectangle-preview): Rename from rectangle-preview-face.
3306         * lisp/vc/vc-hooks.el (vc-state-base): Rename from vc-state-base-face.
3308 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
3310         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
3312 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
3314         Comint and compile no longer set EMACS
3316         This mostly restores the change that I reverted on March 23,
3317         fixing most of Bug#20202.  The only part of the change that is
3318         still reverted is the change to M-x term, where compatibility with
3319         current Bash constrains us from moving too quickly (Bug#20484).
3320         Problem reported by Phillip Lord in: http://bugs.gnu.org/20484#108
3321         * etc/NEWS: Document this.
3322         * lisp/comint.el (comint-exec-1):
3323         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
3324         * lisp/progmodes/compile.el (compilation-start):
3325         Don’t set EMACS=t in the subsidiary process.
3327 2016-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
3329         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
3331 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
3333         Allow to customize names of executables used by grep.el
3335         * lisp/progmodes/grep.el (grep-find-program): Renamed from
3336         'find-program', which was a variable.  All uses changed.
3337         (grep-xargs-program): Renamed from 'xargs-program', which was a
3338         variable.  All uses changed.
3339         (grep-program): Now a defcustom rather than a simple variable.
3340         (Bug#23219)
3342 2016-04-08  Alan Third  <alan@idiocy.org>
3344         Set locale encoding to UTF-8 when run from OS X GUI.
3346         * src/nsterm.m (ns_init_locale): Append .UTF-8 when setting LANG.
3348 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
3350         Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
3352         * lisp/ffap.el (ffap-guess-file-name-at-point): Ignore errors
3353         while 'ffap-guesser' runs.  (Bug#23218)
3355 2016-04-08  Marcin Borkowski  <mbork@mbork.pl>
3357         Avoid infinite loop in 'studlify-word'
3359         * lisp/play/studly.el (studlify-region): Call
3360         'forward-word-strictly' and 'backward-word-strictly' instead of
3361         'forward-word' and 'backward-word'.  (Bug#19940)
3363 2016-04-07  Paul Eggert  <eggert@cs.ucla.edu>
3365         Don’t recommend obsolete EMACS env var
3367         * doc/misc/efaq.texi (Escape sequences in shell output):
3368         Remove long-obsolete (and now-confusing) notes about
3369         the EMACS environment variable in Emacs 21.1 and earlier.
3370         * doc/misc/efaq.texi (^M in the shell buffer):
3371         * etc/PROBLEMS:
3372         Remove obsolescent recommendation to consult the EMACS environment
3373         variable.
3375 2016-04-07  Glenn Morris  <rgm@gnu.org>
3377         * lisp/emacs-lisp/package.el: Change from a few days ago needs seq.
3379         * lisp/emacs-lisp/seq.el: Load cl-lib, not cl-extra.
3381 2016-04-07  Leo Liu  <sdl.web@gmail.com>
3383         Fix "Beginning of buffer" error in forward-page
3385         * lisp/textmodes/page.el (forward-page): Check before move to prevent
3386           "Beginning of buffer" error.
3388 2016-04-06  Dmitry Gutov  <dgutov@yandex.ru>
3390         Add a `transient' project type
3392         * lisp/progmodes/project.el (project-roots): Implement for the
3393         `transient' project type (bug#23224).
3394         (project-current): Instead of signaling an error, return a
3395         transient project instance rooted in the chosen directory.
3397 2016-04-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3399         Revert "Backport HTTPS proxy fix"
3401         This reverts commit 2d1a6054b161bd1055d4feb11c8c5ac95543f5db.
3403         It's too late in the Emacs 25 release cycle to add things like this to
3404         Emacs 25.1.  It's border line new feature.
3406 2016-04-06  Tao Fang  <fangtao0901@gmail.com>
3408         Backport HTTPS proxy fix
3410         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
3412         Backport:
3414 2016-04-06  Paul Eggert  <eggert@cs.ucla.edu>
3416         Fix stability confusion in sort-tests
3418         Problem reported by Philipp Stephani (Bug#23205).
3419         * test/automated/sort-tests.el:
3420         (sort-tests--insert-words-sort-and-compare):
3421         Don’t assume that reversing a sorted list is the same
3422         as sorting with the reverse predicate.  This is not true
3423         for stable sorts when items compare equal.
3425 2016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
3427         Avoid describe-key error with lambdas
3429         Problem reported by Sho Takemori (Bug#22716).
3430         * lisp/cedet/mode-local.el (describe-mode-local-overload)
3431         (xref-mode-local-overload): Use function-overload-p instead
3432         of assuming the argument is a symbol.
3434 2016-04-04  Artur Malabarba  <bruce.connor.am@gmail.com>
3436         * lisp/emacs-lisp/package.el (package-install-selected-packages):
3438         Skip unavailable packages.
3440 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
3442         Sync with gnulib
3444         This incorporates:
3445         2016-04-03 stdint: detect good enough pre-C++11 stdint.h in C++ mode
3446         2016-04-01 stddef: support configuring with g++
3447         * doc/misc/texinfo.tex, lib/stddef.in.h, m4/stdint.m4:
3448         Copy from gnulib.
3450 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
3452         Fix doc for Universal Time
3454         * doc/lispref/os.texi (Time of Day, Time Conversion):
3455         Be more careful about distinguishing UTC (which is not valid for
3456         pre-1961 time stamps) and UT (which is).
3457         (Time Parsing): Remove stray obsolete paragraph about a
3458         UNIVERSAL argument for ‘format-time-string’.
3460 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
3462         Handle Bug#23186
3464         * lisp/net/tramp.el (tramp-encoding-command-switch)
3465         (tramp-encoding-command-interactive):
3466         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
3467         `tramp-encoding-shell' could be nil.  (Bug#23186)
3469 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
3471         More format-time-string change fixups
3473         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
3474         * lisp/org/org.el (org-timestamp-format):
3475         Fix doc to match new format-time-string behavior.
3476         * lisp/org/ox-icalendar.el (org-icalendar-convert-timestamp):
3477         Use (not (not X)) to treat non-nil values of utc arg as UTC.
3479 2016-04-02  Paul Eggert  <eggert@cs.ucla.edu>
3481         make-xwidget unused arg cleanup
3483         * doc/lispref/display.texi (Xwidgets): Remove stray refs.
3484         * src/xwidget.c (syms_of_xwidget): Qwebkit, not Qwebkit_osr.
3486 2016-04-02  Joakim Verona  <joakim@verona.se>
3488         Remove unused arguments from make-xwidget
3490         The arguments BEG and END were unused, and are now removed.
3492         * doc/emacs/display.texi (Xwidgets): Document the change
3493         * lisp/xwidget.el (make-xwidget, xwidget-insert)
3494         (xwidget-webkit-new-session): Reflect changed arguments
3495         * src/xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments
3497 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
3499         Document incompatible changes in 'format-time-string'
3501         * etc/NEWS: Mention the incompatible change in the interpretation
3502         of the 3rd argument to 'format-time-string'.  (Bug#21943)
3504 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
3506         Improve documentation of byte-code objects
3508         * doc/lispref/compile.texi (Byte-Code Objects): Document the
3509         integer format of the argument descriptor.  (Bug#23061)
3511 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
3513         Adapt calls to 'format-time-string' to changes in Emacs 25
3515         * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): Use t as the
3516         last argument to format-time-string.  (Bug#23128)
3517         * lisp/gnus/gmm-utils.el (gmm-format-time-string): Use t as the
3518         last argument to format-time-string, when the TZ argument is not a
3519         number, per the doc string.
3521 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
3523         Improve vc-diff with Git backend
3525         * lisp/vc/vc-git.el (vc-git-command): Don't override
3526         coding-system-for-read/write if they are already bound.
3527         Suggested by joaotavora@gmail.com (João Távora).  (Bug#20892)
3528         (vc-git-print-log): Don't override coding-system-for-read if it's
3529         already bound.
3531 2016-04-01  Dmitry Gutov  <dgutov@yandex.ru>
3533         (js--continued-expression-p): Special-case unary plus and minus
3535         * lisp/progmodes/js.el (js--continued-expression-p): Make an
3536         effort to recognize unary plus and minus, in the contexts where
3537         they make sense (https://github.com/mooz/js2-mode/issues/322).
3539 2016-04-01  Alan Mackenzie  <acm@muc.de>
3541         Prevent C++ Mode wrongly fontifying some identifiers near templates as types
3543         This fixes debbugs #7917.
3545         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): Accept 'maybe
3546         (from c-forward-type) as sufficient to record an id.  Record type id as well
3547         as ref ids.
3548         (c-forward-name): Bind c-last-identifier-range around the call to
3549         c-forward-<>-arglist to prevent it getting corrupted.  Don't automatically
3550         assume an identifier is a type when a template ">" is followed by a "(".
3551         (c-forward-type): Don't automatically assume an identifier is a type when a
3552         template ">" is followed by a "(".
3554         * lisp/progmodes/cc-fonts.el (c-font-lock-<>-arglists): Don't fontify an
3555         identifier as a type when its associated ">" is followed by a "(".
3557 2016-04-01  Eli Zaretskii  <eliz@gnu.org>
3559         Avoid crashes due to insanely large columns in tabulated-list-format
3561         * src/xdisp.c (append_stretch_glyph, produce_xwidget_glyph)
3562         (produce_image_glyph): Limit the pixel width of the produced glyph
3563         to SHRT_MAX.  (Bug#23178)
3564         (append_composite_glyph, append_glyph, append_glyphless_glyph):
3565         Add assertions to verify that the pixel width of the glyph will
3566         never overflow a 'short'.
3567         * src/term.c (append_composite_glyph): Add assertion to verify
3568         that the pixel width of the glyph will never overflow a 'short'.
3570 2016-03-31  Mark Oteiza  <mvoteiza@udel.edu>
3572         Teach M-x disassemble a default argument.
3574         Adopts default argument in the same way as `describe-function'.
3575         * lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
3576         if any.
3578 2016-03-31  Eli Zaretskii  <eliz@gnu.org>
3580         Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
3582         * lisp/vc/vc-annotate.el (vc-annotate): Force DOS EOL decoding on
3583         MS-Windows and MS-DOS, when processing the output of "svn annotate".
3585 2016-03-31  Michael Albinus  <michael.albinus@gmx.de>
3587         Fix OS X specific settings in tramp-tests
3589         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
3591         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
3593         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
3594         (tramp--test-utf8): Improve settings of coding systems.
3595         Do not use `tramp--test-darwin-p' anymore.  (Bug#22145)
3597 2016-03-30  Alan Mackenzie  <acm@muc.de>
3599         Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
3601         * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
3602         superfluous invocations of c-self-bind-state-cache.
3604         * lisp/progmodes/cc-defs.el: (c-self-bind-state-cache): Copy and terminate
3605         markers correctly.
3607         * lisp/progmodes/cc-engine.el (c-record-parse-state-state): Terminate stale
3608         markers.
3610 2016-03-30  Alan Mackenzie  <acm@muc.de>
3612         Merge branch 'emacs-25' of /home/acm/emacs/emacs.git/emacs-25 into emacs-25
3614 2016-03-29  Xue Fuqiao  <xfq.free@gmail.com>
3616         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
3618         The example was removed by Chong Yidong on Mar 5, 2012.
3620 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
3622         * doc/man/emacsclient.1: Document +line:column option.
3624 2016-03-29  Eli Zaretskii  <eliz@gnu.org>
3626         Fix rare problems with echo-area display and multiple frames
3628         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
3629         around the call to x_consider_frame_title, to prevent
3630         resize_mini_window from undoing echo-area display.  (Bug#23124)
3632 2016-03-29  Alan Mackenzie  <acm@muc.de>
3634         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
3636         This would happen when that variable already has a buffer local binding.  Such
3637         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
3639         * lisp/replace.el (query-replace-read-from): Move the binding of
3640         text-property-default-nonsticky to inside of a new with-current-buffer buffer
3641         form with the minibuffer as argument.
3643 2016-03-27  Dmitry Gutov  <dgutov@yandex.ru>
3645         Remove prog-indentation-context
3647         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
3648         (prog-first-column, prog-widen): Remove, as discussed in
3649         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
3651         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
3652         to them.
3654         * etc/NEWS: Ditto.
3656         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
3657         Remove the compatibility aliases and all uses.
3659         Do not merge to master.
3661 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
3663         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
3665 2016-03-27  Eli Zaretskii  <eliz@gnu.org>
3667         Don't start the 'midnight' timer twice
3669         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
3670         timer twice when activating the mode the first time.  (Bug#23123)
3672 2016-03-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3674         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
3676 2016-03-26  Stephen Berman  <stephen.berman@gmx.net>
3678         Fix todo-mode category movement
3680         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
3681         category's existing categories sexp instead of invoking
3682         todo-update-categories-sexp in file moved to, in order to take
3683         archived items into account.  If the moved category has archived
3684         items, handle the source archive buffer properly.  Remove
3685         superfluous code.
3687 2016-03-26  Glenn Morris  <rgm@gnu.org>
3689         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
3691 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
3693         Ignore non-nil. non-cons values of unread-command-events
3695         * src/keyboard.c (requeued_events_pending_p, read_char)
3696         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
3697         unread command events to be processed.  (Bug#22976)
3699 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
3701         Improve documentatuon of 'truncate-partial-width-windows'
3703         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
3704         Clarify in the doc string how the width of partial-width windows
3705         is computed for the purposes of truncation decision.  (Bug#4338)
3707         * doc/emacs/windows.texi (Split Window): Clarify how the width of
3708         windows is calculated for the purposes of truncation decision.
3709         * doc/emacs/display.texi (Line Truncation): Remove a redundant
3710         index entry.
3712 2016-03-25  Paul Eggert  <eggert@cs.ucla.edu>
3714         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
3716 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3718         Fix 'dired-goto-file' in Dired buffers produced by find-dired
3720         * lisp/dired.el (dired-goto-file): Try looking for the file as a
3721         relative name with leading sub-directories, before looking for the
3722         basename alone.  (Bug#23089)
3724 2016-03-25  Nicolas Petton  <nicolas@petton.fr>
3726         Fix map-put and map-delete for alists (Bug#23105)
3728         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
3729         expression to a new symbol.
3730         * test/automated/map-tests.el: Add a regression test.
3732 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3734         Minor copyedits of documentation for temporary displays
3736         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
3737         Minor changes in wording.
3738         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
3739         index entries for 'display-buffer'.
3741         * etc/NEWS: Minor rewording of the entry about temporary displays.
3743 2016-03-25  Philipp Stephani  <phst@google.com>
3745         Add customization option for using UTF-8 coordinates in xt-mouse
3747         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
3748         (xterm-mouse--read-coordinate): New function to replace
3749         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
3750         (xterm-mouse--read-number-from-terminal): Adapt to new name.
3751         (xterm-mouse-tracking-enable-sequence)
3752         (xterm-mouse-tracking-disable-sequence): Replace constants with
3753         functions, mark constants as obsolete.
3754         (xterm-mouse--tracking-sequence): New helper function.
3755         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
3756         enable UTF-8 only if customization option says so; store UTF-8
3757         flag in terminal parameter.  (Bug#23009)
3759         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
3761 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3763         Minor doc string fixes in replace.el
3765         * lisp/replace.el (query-replace, query-replace-regexp)
3766         (query-replace-regexp-eval, map-query-replace-regexp)
3767         (replace-string, replace-regexp): Clarify in doc strings that
3768         these commands operate from point to the end of the buffer's
3769         accessible portion.  (Bug#23067)
3771 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3773         Fix scrolling upwards with 'xwidget-webkit-browse-url'
3775         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
3776         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
3777         (Bug#22918)
3779 2016-03-25  K. Handa  <handa@gnu.org>
3781         Fix display of Indic scripts
3783         * src/ftfont.c (ftfont_shape_by_flt): For combining characters out
3784         of the range U+300...U+36F, use the "combining" FLT only with
3785         non-OTF fonts.
3787 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3789         Fix splash screen display at startup
3791         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
3792         window displayed by "emacs -q" has enough space to show the whole
3793         text even if it includes 2 lines talking about recovering crashes
3794         sessions.  (Bug#23074)
3796         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
3797         error when computing the window-height from frame-height.
3799         * etc/NEWS: Mention the change.
3801 2016-03-25  Martin Rudalics  <rudalics@gmx.at>
3803         Describe temporary displays in Emacs manual
3805         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
3806         * doc/emacs/windows.texi (Window Choice): Minor fixes.
3807         (Temporary Displays): New subsubsection describing display of
3808         temporary buffers and `temp-buffer-resize-mode'.
3810 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
3812         Avoid stray As next to IDLW icons
3814         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
3815         Use "" for empty labels, not "a", as the latter now displays stray
3816         "A"s (Bug#18997).
3818 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
3820         Avoid GTK 3 crash with icons and masks
3822         Problem reported by Mosè Giordano (Bug#18997).
3823         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
3824         (xg_get_pixbuf_from_pix_and_mask): Do not use
3825         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
3826         invoke XGetPixel directly.  This is slow but speed is not
3827         important here.  Also, fail for unusual situations (not TrueColor,
3828         or images that are not 8 bits per sample) instead of displaying
3829         junk or crashing.
3831 2016-03-24  Juri Linkov  <juri@linkov.net>
3833         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
3835         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
3837 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
3839         Define make_save_ptr_ptr unconditionally
3841         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
3842         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
3843         Philipp Stephani <phst@google.com>.  (Bug#23101)
3845 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
3847         Preserve current buffer when popping up TTY menus
3849         * src/term.c (tty_menu_show): Be sure to save and restore the
3850         current buffer around TTY menu pop-ups.  (Bug#23101)
3852 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
3854         Improve font selection by family on MS-Windows
3856         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
3857         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
3858         This avoids rejecting many font families whose members are shown
3859         by 'font-family-list', in particular 'courier' requested by
3860         info.el.  Without this change, many values of ':family' attribute
3861         of a face have no effect on MS-Windows, because they are rejected
3862         due to bogus mismatch of the charset.
3864 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
3866         Comint, term, and compile now set EMACS
3868         This fixes directory tracking in ansi-term, at the expense of
3869         breaking some usages of 'configure'.  Setting EMACS is meant to be
3870         a somewhat temporary measure, until Bash 4.4 comes out and is
3871         common.  (Bug#20484).
3872         * etc/NEWS: Document this.
3873         * lisp/comint.el (comint-exec-1):
3874         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
3875         * lisp/progmodes/compile.el (compilation-start):
3876         * lisp/term.el (term-exec-1):
3877         Go back to setting the EMACS environment variable, for backward
3878         compatibility to Bash 4.3 and earlier.
3880 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
3882         Ignore more merges when generating ChangeLog
3884         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
3885         not merely those from master and emacs-NN.  The ChangeLog entries
3886         they generate are not that useful.
3888 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
3890         Sync with gnulib
3892         This incorporates:
3893         2016-03-22 gitlog-to-changelog: suppress ignored chatter
3894         2016-03-21 sys_select: port to new Cygwin
3895         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
3896         * lib/sys_select.in.h: Copy from gnulib.
3898 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
3900         Resurrect GNUS-NEWS autogeneration
3902         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
3903         GNUS-NEWS section to match current file locations and procedure.
3904         * etc/GNUS-NEWS: Regenerate by using new procedure.
3905         * lisp/Makefile.in (update-gnus-news): New rule, containing a
3906         procedure for building GNUS-NEWS.  The old procedure got lost
3907         somehow when Gnus was merged into Emacs.
3909 2016-03-22  Anders Lindgren  <andlind@gmail.com>
3911         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
3913         * src/nsterm.m (ns_screen_margins): New function.
3914         (ns_screen_margins_ignoring_hidden_dock): New function.
3915         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
3916         ([EmacsWindow zoom:]): Take all screen margins (except those
3917         originating from a hidden dock) into account.
3919 2016-03-22  Eli Zaretskii  <eliz@gnu.org>
3921         Fix bug in displaying header line with a box face
3923         * src/xdisp.c (get_next_display_element): Handle the case when a
3924         display string acquires the box face from an underlying string,
3925         not from the buffer.  (Bug#23091)
3927 2016-03-21  Kaushal Modi  <kaushal.modi@gmail.com>
3929         Fix an Isearch var to be a string (Bug#23038)
3931         * lisp/isearch.el (isearch--describe-regexp-mode): The `description' var
3932           needs to always be a string.  Add the missing default case for the
3933           cond form that ensures that.
3935         Before this bug fix, for the events when `regexp-function' and
3936         `search-default-mode' both were nil, `description' also stayed nil.  So
3937         when `space-before' was non-nil, the "non-string" `description'
3938         (with a value of nil) got passed as an argument to
3939         `replace-regexp-in-string' (where a string was expected).  That caused
3940         the error described in Bug#23038.
3942 2016-03-21  Leo Liu  <sdl.web@gmail.com>
3944         Fix (args-out-of-range 1) error in cursor-sensor--detect
3946         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
3947           hard-code (point-min) as 1 which fails in narrowed buffers.
3949 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3951         Render empty <ul><li><ul> correctly
3953         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
3954         correctly (bug#22964).
3955         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
3957         Backport:
3959 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3961         Ignore invalid base64 encoded embedded images
3963         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
3964         encoded embedded images (bug#22928).
3965         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
3967         Backport:
3969 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3971         Fix <p> and <div> newlines with or without <li> in shr
3973         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
3974         a <li>, if we are, and don't insert newlines there.
3975         (shr-ensure-paragraph): When mixing newlines and paragraph
3976         ensurements, don't insert too many blank lines.
3977         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
3978         new line.
3979         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
3981         Backport:
3983 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
3985         Avoid errors in 'newline'
3987         * lisp/simple.el (newline): Don't barf if invoked with
3988         non-positive argument in the middle of a line.  (Bug#22490)
3990 2016-03-19  Michael Albinus  <michael.albinus@gmx.de>
3992         Fix Bug#23032
3994         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
3995         remote file names.  (Bug#23032)
3997 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
3999         Adjudicate review comments in abbrevs.texi
4001         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
4002         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
4003         default values of variables.  Suggested by Steve Byrne
4004         <sbb@penguinis.org>.  (Bug#23016)
4006         * admin/release-process (Check manuals): Mark files reviewed by
4007         Steve Byrne.
4009 2016-03-18  Dmitry Gutov  <dgutov@yandex.ru>
4011         Fixup the "normal" matcher; highlight global var symbols, too
4013         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
4014         operator name symbols with the "normal" matcher (it actually
4015         needed updating).  Highlight global variable symbols, too.
4017 2016-03-18  Marcin Borkowski  <mbork@mbork.pl>
4019         Honor prefix arg in doc-view-next-line-or-next-page
4021         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
4022         prefix argument into consideration when continuous scrolling is
4023         not in effect (i.e., by default) (bug#19559).
4025 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
4027         Port to strict C99 offsetof
4029         * src/bidi.c (bidi_copy_it):
4030         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
4031         Use only a single identifier as the second argument of offsetof.
4032         Found by using clang -pedantic.
4034 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
4036         Port to GTK with strict C11 compiler
4038         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
4039         Cast from function type to void * where the C standard requires this.
4040         This works around a problem in the prototypes for
4041         g_signal_handler_find and g_signal_handlers_block_by_func, which
4042         use gpointer instead of GCallback.  Found by using gcc -pedantic.
4044 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
4046         Port to GTK with strict C99 compiler
4048         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
4049         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
4050         * src/emacsgtkfixed.c (EmacsFixedPrivate):
4051         * src/emacsgtkfixed.h (EmacsFixedClass):
4052         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
4054 2016-03-17  Anders Lindgren  <andlind@gmail.com>
4056         Avoid screen artifacts with new OS X visible bell after scrolling
4058         * src/nsterm.m (EmacsBell): Save NSView when displaying the
4059         visible bell and set `needsDisplay' when removed.
4060         (hide_bell): Trace.
4061         (ns_copy_bits): Trace.
4063 2016-03-17  Michael Albinus  <michael.albinus@gmx.de>
4065         Suppress some Tramp tests for OSX, do not merge with master
4067         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
4068         (tramp--test-utf8): Use it.  (Bug#22145)
4070 2016-03-17  Glenn Morris  <rgm@gnu.org>
4072         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
4073         Move definitions before use.
4075         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
4077         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
4079 2016-03-17  Glenn Morris  <rgm@gnu.org>
4081         Address compilation warnings due to 2016-01-03 mml refactoring.
4083         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
4084         (message-options-get): Autoload.
4085         (message-options-set): Declare.
4086         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
4087         Simplify default value.
4088         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
4089         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
4090         No longer a need for password-cache.
4092 2016-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
4094         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
4096         (bug#22960).
4098 2016-03-16  Glenn Morris  <rgm@gnu.org>
4100         * lisp/dired-x.el (dired-omit-here-always): Correct error message
4101         for 2016-01-25 change.
4103         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
4104         removed 2016-01-30.
4106         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
4108 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
4110         Avoid segfaults due to frame image cache being absent
4112         * src/image.c (cache_image): If the frame doesn't have an image
4113         cache, create it.  (Bug#23028)
4115 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
4117         Improve documentation of glyphless-character display
4119         * doc/emacs/display.texi (Text Display): Document and index the
4120         'glyphless-char' face.
4122 2016-03-16  Dmitry Gutov  <dgutov@yandex.ru>
4124         Support safe navigation operator in non-SMIE indentation code
4126         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
4127         Support safe navigation operator in non-SMIE indentation code.
4128         Cherry-picked from
4129         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
4131 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
4133         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
4135         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
4136         assume xsd:base64Binary values are UTF-8 strings.
4137         (soap-decode-xs-basic-type): Likewise.
4138         (soap-invoke): Document xsd:base64Binary handling.
4140 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
4142         Fix Ruby's operator precedence
4144         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
4145         Rearrange the smie-precs->prec2 form.
4147 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
4149         (ruby-interpolation-inside-another-interpolation): New failing test
4151         * test/automated/ruby-mode-tests.el
4152         (ruby-interpolation-inside-another-interpolation):
4153         New failing test.
4155 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
4157         Port to clang 3.7.0 on x86-64
4159         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
4160         not done conditionally.  This helps clang, which needs
4161         -Wunknown-warning-option later when configured with warnings.
4162         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
4163         smart enough to figure this out on its own if warnings are enabled.
4164         (lisp_time_struct): Redo for clarity, and to pacify clang.
4165         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
4166         uninitialized locals.  This avoids undefined behavior and pacifies
4167         clang.
4169 2016-03-15  Glenn Morris  <rgm@gnu.org>
4171         * test/automated/package-test.el (package-test-signed): Tweak skip
4172         condition, for hydra.
4174 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
4176         Sync with gnulib
4178         This incorporates:
4179         2016-03-15 time_rz: port to clang -Wunused-const-variable
4180         2016-03-15 select: port more to Intel 2016.1.150 compiler
4181         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
4183 2016-03-15  Eli Zaretskii  <eliz@gnu.org>
4185         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
4187         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
4188         nil.
4190         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
4191         loading window.el.  (Bug#22975)
4193 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
4195         Do not tokenize a comment before continuation as ';'
4197         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
4198         Account for a comment right after point.
4200 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
4202         Don't misindent arguments of a method call inside continuation
4204         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
4205         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
4206         Simplify the traversal loop.
4208 2016-03-14  Stefan Monnier  <monnier@iro.umontreal.ca>
4210         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
4212         (read_key_sequence): Test it here, as before.
4213         (bug#22825).
4215 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
4217         ASCII-only etc/NEWS etc.
4219         * etc/NEWS, nextstep/README: Revert the recently-added curved
4220         quotes, and stick to ASCII.  This typically involves replacing
4221         curved with straight quotes.  Since etc/NEWS is viewed so often by
4222         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
4223         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
4225 2016-03-14  Alan Mackenzie  <acm@muc.de>
4227         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
4229         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
4231         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
4232         rather than just using the cache variable c-state-cache.
4233         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
4234         to c-parse-state from other uses of the parse state cache.
4236         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
4237         c-self-bind-state-cache around the processing, replacing flawed bindings of
4238         c-state-cache.
4240 2016-03-14  Alan Mackenzie  <acm@muc.de>
4242         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
4244         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
4246         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
4247         rather than just using the cache variable c-state-cache.
4248         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
4249         to c-parse-state from other uses of the parse state cache.
4251         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
4252         c-self-bind-state-cache around the processing, replacing flawed bindings of
4253         c-state-cache.
4255 2016-03-14  Kaushal Modi  <kaushal.modi@gmail.com>
4257         Fix Isearch prompt when invoked with an argument
4259         * lisp/isearch.el (isearch--describe-regexp-mode): With
4260         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
4261         now displays "Regexp I-search: " again.  But if the user has set
4262         `search-default-mode' to t, and then does C-s, the minibuffer now
4263         displays "I-search: " because the default search mode is now regexp
4264         mode.  Comments have been added to explain the priority of conditions
4265         in the `cond' form.  (Bug#22991)
4267 2016-03-14  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
4269         Fix a typo in the Emacs manual
4271         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
4272         in a command name.
4274 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
4276         Curved quotes in etc/NEWS etc.
4278         * etc/NEWS, nextstep/README: Prefer curved quotes in the
4279         recently-changed text documentation.  See:
4280         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00860.html
4282 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
4284         Fix some single quotes in documentation
4286         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
4287         when documenting quoting styles.
4288         * etc/NEWS, nextstep/README: In these plain text files, quote
4289         'like this' consistently, rather than also (sometimes) ‘like this’
4290         or (more often) `like this'.
4292 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
4294         Make lisp-completion-at-point's argument optional
4296         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
4297         the argument optional, like it was before the rename.
4299 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
4301         Tweak the left precedence of '=>'
4303         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
4304         precedence of '=>', to improve indentation and sexp navigation.
4306 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
4308         Indent '.' relative to the first sibling expression
4310         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
4311         Indent '.' relative to the first sibling expression, instead of the
4312         parent token (bug#17213).
4314 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
4316         Make '.' associative, for easier sexp navigation
4318         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
4319         Make '.' associative, for easier sexp navigation.
4321 2016-03-13  Phillip Lord  <phillip.lord@russet.org.uk>
4323         Revert "Simplify "Visit New File" to "New File""
4325         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
4327 2016-03-12  Phillip Lord  <phillip.lord@russet.org.uk>
4329         Simplify "Visit New File" to "New File"
4331         * doc/emacs/files.texi, lisp/menu-bar.el (menu-bar-file-menu),
4332           lisp/startup.el(normal-mouse-start-screen,
4333           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
4334           File".
4336 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4338         Update Unicode notes for importing a new Unicode version
4340         * admin/notes/unicode: Mention the need to update otf-script-alist
4341         in fontset.el when importing data files from a new Unicode
4342         version.
4344 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4346         Import new data files from Unicode 9.0.0beta
4348         * admin/unidata/UnicodeData.txt:
4349         * admin/unidata/Blocks.txt:
4350         * admin/unidata/BidiMirroring.txt:
4351         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
4352         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
4353         'coding-system-for-read' to 'utf-8, as various Unicode data files
4354         now actually use non-ASCII characters.
4355         (unidata-setup-list, unidata-get-name): Support the new Tangut
4356         Ideographs block.
4358         * lisp/international/characters.el (standard-case-table): Add new
4359         characters from Unicode 9.0.0.
4360         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
4361         Cyrillic Extended-C block.
4362         (char-width-table): Update ranges per Unicode 9.0.0.
4363         * lisp/international/fontset.el (script-representative-chars): Add
4364         new scripts defined by Unicode 9.0.0.
4365         (otf-script-alist): Add new OTF script tags.
4366         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
4367         Unicode 9.0.0 additions.
4369 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4371         Avoid errors in forms-mode when default major mode is text
4373         * lisp/forms.el (forms-mode): Bind
4374         change-major-mode-with-file-name to nil when calling
4375         set-visited-file-name.  (Bug#22982)
4377 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4379         Avoid crashes at startup on systems that CANNOT_DUMP
4381         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
4382         boolean variable.
4383         (init_iterator, reseat_to_string)
4384         (Fcurrent_bidi_paragraph_direction)
4385         (Fbidi_find_overridden_directionality): Use
4386         redisplay--inhibit-bidi instead of purify-flag, to determine when
4387         it's safe to reorder bidirectional text.
4389         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
4390         beginning of the file.  Reset to nil when charprop.el is
4391         successfully loaded, or when we are going to dump, whichever
4392         happens last.  (Bug#22975)
4394 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4396         Fix documentation of seq.el functions
4398         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
4399         cross-references.  Fix formatting.  (Bug#22992)
4401 2016-03-11  Dmitry Gutov  <dgutov@yandex.ru>
4403         Support Ruby 2.3.0's safe navigation operator
4405         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
4406         (ruby-smie--backward-token): Tokenize '&.' as '.'.
4407         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
4409         * test/indent/ruby.rb: Add an example using safe navigation
4410         operator.  Fix a syntax error in existing example.
4412 2016-03-11  John Wiegley  <johnw@newartisans.com>
4414         Update Emacs manual section related to character folding
4416         * doc/emacs/search.texi: Character folding is not on by default.
4418 2016-03-11  Eli Zaretskii  <eliz@gnu.org>
4420         Update admin/notes/unicode
4422         * admin/notes/unicode: Update the list of files from the UCD we
4423         are using.  Mention the possible need to change 'ucs-names' when
4424         importing a new version of the Unicode Standard.
4426 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
4428         Add symref-filepattern entries for c?perl-mode
4430         * lisp/cedet/semantic/symref/grep.el
4431         (semantic-symref-filepattern-alist): Add entries for perl-mode and
4432         cperl-mode.
4434 2016-03-10  Ken Raeburn  <raeburn@raeburn.org>
4436         Don't use XRANDR 1.3 extensions if the server doesn't support them.
4438         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
4439         version number.
4440         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
4441         after querying the X server.
4442         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
4443         XRRGetScreenResourcesCurrent if the server doesn't support at least
4444         RANDR version 1.3.  Conditionalize the code blocks on compiling
4445         against library version 1.3 or better, rather than feature tests for
4446         each function.
4447         * configure.ac: Stop testing for those two functions.
4449 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
4451         Sync with gnulib
4453         This incorporates:
4454         2016-03-08 intprops: make .h file license match module
4455         2016-03-08 acl: fix missing return on Cygwin
4456         2016-03-05 extern-inline: port to PGI CC
4457         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
4458         * m4/extern-inline.m4:
4459         Copy from gnulib.
4461 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
4463         Rework C source files to avoid ^(
4465         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
4466         at the start of a line unless it starts a function.  This change
4467         is a short-term hack; in the longer run we plan to fix cc-mode’s
4468         performance for C files that have ‘(’ at the start of a line in a
4469         comment or string.
4471 2016-03-10  Eli Zaretskii  <eliz@gnu.org>
4473         By default, etags produces unqualified Perl tag names
4475         * lib-src/etags.c (Perl_functions): Produce unqualified names,
4476         unless -Q was specified.
4477         (print_help): Update the description of -Q.
4479         * doc/man/etags.1: Update the documentation of -Q.
4481         * test/etags/ETAGS.good_1:
4482         * test/etags/ETAGS.good_2:
4483         * test/etags/ETAGS.good_3:
4484         * test/etags/ETAGS.good_4:
4485         * test/etags/ETAGS.good_5:
4486         * test/etags/CTAGS.good: Adapt the expected test results to the
4487         changed Perl functionality.
4489 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
4491         Indent methods with keyword names correctly
4493         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
4494         Rename to ruby-smie--before-method-name.  Now also check if we're
4495         after a 'def' keyword.  Update both callers.
4497 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
4499         Propertize character literals and special global variables differently
4501         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
4502         character literals and global variables with special names with
4503         prefix and symbol syntax classes, for SMIE to tokenize them
4504         together automatically.
4505         (ruby-font-lock-keywords): Fix an old regression in highlighting
4506         character literals.
4508 2016-03-09  John Wiegley  <johnw@newartisans.com>
4510         Change how /etc/NEWS presents character folding
4512         * NEWS: Note that character folding is no longer the default.
4514 2016-03-09  John Wiegley  <johnw@newartisans.com>
4516         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
4518         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
4520 2016-03-09  Andreas Schwab  <schwab@linux-m68k.org>
4522         Properly handle lambda as read function (bug 22961)
4524         * src/lread.c (readchar): Be more strict about checking for
4525         string in cons for read_vector.
4526         (unreadchar): Likewise.
4528 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
4530         Propertize operator symbol names with symbol syntax class
4532         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
4533         Do it here.
4534         (ruby-font-lock-keywords): Instead of handling them here.  Leave
4535         highlighting them to the "normal" matcher, because now we can.
4536         (ruby-smie--forward-token, ruby-smie--backward-token):
4537         Likewise, don't special-case operator symbols anymore.
4538         (ruby-smie--args-separator-p): Simplify the regexp, match operator
4539         names with \s_.
4540         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
4541         at EOL the same way: check if the character has been assigned the
4542         symbol syntax class by syntax-propertize.
4544 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
4546         Stop recognizing :#{} as symbol in ruby-mode
4548         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
4549         the weird part that recognized colon followed by interpolation
4550         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
4551         syntax error in any modern version of Ruby.  Fix nearby bug reference.
4553 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
4555         Allow using the left shift operator without spaces on both sides
4557         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
4558         ruby-verify-heredoc, reverse the meaning of the return value, and
4559         short-circuit if preceded by a symbol not separated by whitespace.
4561         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
4562         (ruby-no-heredoc-class-self): New tests.
4564 2016-03-08  Andreas Schwab  <schwab@linux-m68k.org>
4566         Properly handle unquoting in wdired (bug 22938)
4568         The recorded old names are not quoted, don't unquote them.
4570         * lisp/wdired.el (wdired-normalize-filename): Add argument
4571         unquotep, only unquote if non-nil.
4572         (wdired-get-filename): Don't unquote the old file name.
4573         (wdired-get-previous-link): Always unquote.
4575 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
4577         Allow splat operator before percent literal
4579         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
4580         Allow splat operator before percent literal.
4582 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
4584         Don't apply the return value of goto-char as syntax class
4586         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
4587         apply the return value of goto-char as syntax class.
4589 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
4591         Guard against nested percent literals
4593         * lisp/progmodes/ruby-mode.el
4594         (ruby-syntax-propertize-percent-literal):
4595         Don't check the syntax status.
4596         (ruby-syntax-propertize): Check it here.  And also guard against
4597         being in a larger percent literal.
4599         * test/automated/ruby-mode-tests.el
4600         (ruby-no-nested-percent-literals): New test.
4602 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
4604         Recognize iuwu-mod after an escaped newline
4606         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
4607         newline is escaped.
4608         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
4609         correctly.
4611 2016-03-06  Andreas Schwab  <schwab@linux-m68k.org>
4613         Fix symbolic mode string conversion for s and t
4615         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
4616         ?t.
4617         (file-modes-symbolic-to-number): Default to a for ts permissions.
4619 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
4621         Update 'ucs-names' database
4623         * lisp/international/mule-cmds.el (ucs-names): Update used and
4624         unused ranges from the latest UnicodeData.txt.
4626 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
4628         Improve doc string of 'shell-command'
4630         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
4631         for.  (Bug#22926)
4633 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
4635         Make the code in movemail_strftime more general
4637         * lib-src/movemail.c (movemail_strftime): Transform the format
4638         string passed by the caller instead of using a separate format
4639         string.
4641 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
4643         Speed up redisplay of binary files with long series of nulls
4645         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
4646         for a character needed for resolving the type of a series of BN
4647         and ET characters, as required by rule W5 of UAX#9, if the results
4648         of the resolution are known in advance, because we are at level
4649         zero, and the previous strong character was L.
4650         (bidi_resolve_neutral): Partially resurrect the optimization for a
4651         long series of control characters in an otherwise strictly L2R
4652         text.
4653         (bidi_level_of_next_char): Don't enter the loop that searches for
4654         a paragraph separator if the current character is already at base
4655         embedding level.  (Bug#22739)
4657 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
4659         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
4661         Remove the highlighting support for quoting 'like this' inside
4662         Lisp docstrings.  This part of
4663         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
4664         unintentional, considering substitute-command-keys gives wrong
4665         output for such usage.
4666         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
4667         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
4668         straight quotes as symbol.
4670 2016-03-05  Paul Eggert  <eggert@cs.ucla.edu>
4672         Restore leading space in movemail pop output
4674         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
4675         (strftime) [WINDOWSNT]: New macro.
4676         (mbx_delimit_begin): Go back to previous version of this code,
4677         now that there’s a special-purpose WINDOWSNT implementation
4678         that should do the right thing.  That way, the output continues
4679         to use leading space rather than leading zero for day of month.
4681 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
4683         Fix bidi-paragraph-direction in Rmail view buffer
4685         * lisp/mail/rmail.el (rmail-show-message-1): Reset
4686         bidi-paragraph-direction to nil before formatting the message for
4687         display.
4689 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
4691         Don't misindent computed property generator methods
4693         * lisp/progmodes/js.el (js--looking-at-operator-p):
4694         Don't misindent computed property generator methods
4695         (https://github.com/mooz/js2-mode/issues/317).
4697 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
4699         Fix mbox files produced by movemail on MS-Windows
4701         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
4702         format specifiers, as at least the MS-Windows version of strftime
4703         doesn't support %e and %T.
4705 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
4707         doc string file descriptor exhaustion fix
4709         * src/doc.c (get_doc_string): Move newly-added check to a better
4710         location (Bug#22814).
4712 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4714         Fix Bug#22814
4716         * src/doc.c (get_doc_string): Raise an error in case too many
4717         files are open.  (Bug#22814)
4719 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4721         Fix insertion of edited servers in the dribble file
4723         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
4724         insert explicit newlines, because they're quoted (bug#22903).
4726         Backport:
4728         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
4730 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
4732         Fix previous fix of enlarge-/shrink-window
4734         * lisp/window.el (enlarge-window, shrink-window): Consistently
4735         signal user-error instead of error.  Resize minibuffer window by
4736         delta lines instead of pixels.  When a window cannot be resized,
4737         signal an error only when this function was invoked by a command
4738         in the enlarge-/shrink-window group (this restores the behavior
4739         before the fix of bug#22723 for the non-interactive case).
4741 2016-03-03  Artur Malabarba  <bruce.connor.am@gmail.com>
4743         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
4745 2016-03-03  Mark Oteiza  <mvoteiza@udel.edu>
4747         Complete temperature units in calc-convert-temperature
4749         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
4750         temperature units in math-standard-units.
4752 2016-03-02  Dmitry Gutov  <dgutov@yandex.ru>
4754         Make sure to use case-sensitive search
4756         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
4757         use case-sensitive search.
4759 2016-03-02  Ulf Jasper  <ulf.jasper@web.de>
4761         Prevent infinite loop on not-well-formed xml. (Bug#16344)
4763         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
4764         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
4765           test cases for Bug#16344.
4767 2016-03-02  Alan Third  <alan@idiocy.org>
4769         Add the missing test case for the previous patch
4771         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
4772         any processing.
4773         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
4774         DABBREV--SUBSTITUTE-EXPANSION.
4775         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
4777 2016-03-02  Alan Third  <alan@idiocy.org>
4779         Use the correct dabbrev expansion
4781         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
4782         any processing.
4783         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
4784         DABBREV--SUBSTITUTE-EXPANSION.
4785         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
4787 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
4789         Bump version to 25.0.92
4791         * README:
4792         * configure.ac:
4793         * msdos/sed2v2.inp: Bump version to 25.0.92.
4795 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
4797         * etc/AUTHORS: Update the AUTHORS file
4799 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
4801         authors.el updates
4803         * admin/authors.el (authors-ignored-files): Addition.
4805 2016-03-02  Michael Albinus  <michael.albinus@gmx.de>
4807         Fix Bug#22859
4809         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
4810         event in case of kqueue and file1 is nil.  (Bug#22859)
4812 2016-03-01  Eli Zaretskii  <eliz@gnu.org>
4814         Fix reordering of bidi text in an isolate inside an override
4816         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
4817         of FSI with either LRI or RLI, as determined by the first strong
4818         directional character in the isolate.  This prevents failure to
4819         isolate when the FSI...PDI text is inside a directional override.
4820         (Bug#22786)
4822 2016-03-01  Alan Mackenzie  <acm@muc.de>
4824         Document c-guess-basic-syntax in the CC Mode manual.
4826         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
4827         pxrefs to Custom Line-Up and Other Indentation.
4828         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
4829         Syntactic Analysis.
4831 2016-03-01  Michael Albinus  <michael.albinus@gmx.de>
4833         Fix targets in test/automated/Makefile.in
4835         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
4836         empty target and target all.
4838 2016-03-01  Leo Liu  <sdl.web@gmail.com>
4840         Comment on last change to define-derived-mode
4842         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
4844 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
4846         Allow binding `url-mime-accept-string'
4848         * lisp/url/url-http.el (url-http): Allow binding
4849         `url-mime-accept-string' (bug#22855).
4851         Backport:
4853         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
4855 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
4857         Also allow setting the paragraph direction to nil
4859         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
4860         setting the paragraph direction to nil ("auto").
4862 2016-02-29  Anders Lindgren  <andlind@gmail.com>
4864         Made the new OS X visible bell more visible.
4866         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
4867           "caution" image five times, as the image in its original size
4868           was hard to see.
4870 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
4872         Use the correct background color when filling nested <divs>
4874         * lisp/net/shr.el (shr-face-background): Return the first
4875         background, because that's the one that's visible (bug#22680).
4877         Backport:
4879         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
4881 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
4883         Make <div> in <li> not insert extra newlines
4885         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
4886         extra newlines (bug#19587).
4888         Backport:
4890         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
4892 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
4894         Uncomment the next-error-function integration in xref
4896         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
4897         Uncomment the next-error-function integration
4898         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
4900 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
4902         Remove the word "valid", to avoid ambiguity
4904         * doc/emacs/maintaining.texi (Identifier Search)
4905         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
4907 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
4909         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
4911 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
4913         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
4915         * etc/NEWS:
4916         * etc/PROBLEMS: Mention this.
4918         * lisp/autorevert.el (global-auto-revert-mode): Set
4919         `auto-revert-use-notify' to nil.  (Bug#22814)
4921 2016-02-28  Paul Eggert  <eggert@cs.ucla.edu>
4923         * etc/TODO: Minor quoting and grammar fixes.
4925 2016-02-28  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
4927         Fix ModelSim error parsing
4929         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
4930         ModelSim error parsing (bug#5768).
4932 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
4934         Make parse-time-string-chars faster
4936         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
4937         up the code (backport:).
4939 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
4941         Add a eww command to toggle paragraph direction
4943         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
4944         command and keystroke.
4946         * doc/misc/eww.texi (Advanced): Mention the `D' command.
4948 2016-02-27  Glenn Morris  <rgm@gnu.org>
4950         * nextstep/WISHLIST: Merge into etc/TODO and remove.
4952         * etc/TODO: Merge in items from nextstep/WISHLIST.
4953         * nextstep/README: Update for this change.
4955 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
4957         Fix char signedness issue in bidi code
4959         * src/dispextern.h (struct bidi_t): Change type of resolved_level
4960         and isolate_level to signed char.  (Bug#22830)
4962 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
4964         * lib-src/pop.c (socket_connection): Fix format string.
4966 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
4968         Avoid inflooping in thing-at-point-looking-at
4970         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
4971         with regular expressions whose matching doesn't move point.
4972         (Bug#22756)
4973         Describe the argument DISTANCE in the doc string.
4975 2016-02-27  Leo Liu  <sdl.web@gmail.com>
4977         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
4979 2016-02-26  Michael Albinus  <michael.albinus@gmx.de>
4981         etc/PROBLEMS: Mention problems with using file descriptors
4983         * etc/PROBLEMS: Mention problems with using file descriptors
4984         of kqueue file notification library.
4986 2016-02-26  Kaushal Modi  <kaushal.modi@gmail.com>
4988         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
4990 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
4992         Remove unneeded workaround in xftfont.c
4994         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
4995         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
4996         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
4998 2016-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
5000         * lisp/saveplace.el (save-place-local-mode): New minor mode
5002         (toggle-save-place): Define as obsolete alias.
5003         (save-place--setup-hooks): New function.
5004         (save-place-mode): Use it.
5006 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
5008         Fix redisplay on a TTY after 'make-frame'
5010         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
5011         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
5013 2016-02-25  Alan Mackenzie  <acm@muc.de>
5015         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
5017         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
5018         `syntax-after' to ensure syntax-table text properties are respected.
5020 2016-02-25  Magnus Henoch  <magnus.henoch@gmail.com>
5022         Input method polish-slash should not use keyboard translation
5024         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
5025         polish-slash should not use keyboard translation (bug#19081).
5027 2016-02-25  Chris Feng  <chris.w.feng@gmail.com>
5029         Fix an assertion
5031         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
5032         implies start == 0) separately.
5034 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
5036         Fix 'toggle-save-place'
5038         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
5039         support save-place in the buffer.  Autoload the command.
5041 2016-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
5043         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
5045         * src/keyboard.c (read_key_sequence): Don't inadvertently set
5046         immediate_echo when we don't want any echo-keystrokes.
5047         (echo_keystrokes_p): Move earlier.
5049 2016-02-24  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
5051         Minor fixes in calculator.el
5053         * lisp/calculator.el (calculator-mode-map): Bind `E' for
5054         `calculator-exp'.
5055         (calculator-last-input): Fix a bug with pressing F1.
5056         (Bug#20764)
5058 2016-02-24  Anders Lindgren  <andlind@gmail.com>
5060         Update HISTORY section in readme for the NextStep interface.
5062         * nextstep/README: Update HISTORY after suggestion
5063         from former maintainer Adrian Robert.
5065 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
5067         Improve documentation of 'save-place-mode'
5069         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
5070         turning on 'save-place-mode' globally.
5072         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
5073         on the mode in all buffers.
5075 2016-02-24  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
5077         Allocate glyph matrices for the initial frame
5079         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
5081         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
5083 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
5085         Fix white space in last checkin
5087 2016-02-24  Dima Kogan  <gnuplot@dima.secretsauce.net>
5089         Make `insert-pair' always leave the cursor where documented
5091         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
5092         insert-pair states that after insertion, the point ends up
5093         after the opening character. This was not true if the pair was
5094         inserted to surround a region (bug#16949).
5096 2016-02-24  Kaushal Modi  <kaushal.modi@gmail.com>
5098         etc/NEWS: Mention the new second parameter to `package-install'
5100         * etc/NEWS: Mention the new second parameter to
5101         `package-install' (bug#22784).
5103 2016-02-24  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
5105         Highlight assignments in Makefiles more correctly
5107         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
5108         Highlight assignments preceded by a TAB character correctly
5109         (bug#20787).
5112         Backport:
5114         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
5116 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
5118         Improve documentation of focus-related hooks
5120         * doc/lispref/commands.texi (Focus Events): Mention focus-related
5121         hooks.  (Bug#21728)
5123 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
5125         Further improve doc string of 'disable-point-adjustment'
5127         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
5128         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
5130 2016-02-23  Michael Albinus  <michael.albinus@gmx.de>
5132         Further adaptions in file-notify-tests.el for w32notify
5134         * test/automated/file-notify-tests.el
5135         (file-notify--test-read-event-timeout, file-notify--test-timeout):
5136         Decrease values.
5137         (file-notify-test03-autorevert)
5138         (file-notify-test04-file-validity)
5139         (file-notify-test05-dir-validity): Run tests also for w32notify.
5140         (file-notify-test08-watched-file-in-watched-dir):
5141         Adapt expected events for w32notify.
5143 2016-02-23  Jan Tatarik  <jan.tatarik@gmail.com>
5145         Don't bug out on localised dates in gnus-icalendar
5147         * lisp/gnus/gnus-icalendar.el
5148         (gnus-icalendar-event:org-timestamp): Don't bug out on
5149         localised dates.
5151 2016-02-23  Drew Adams  <drew.adams@oracle.com>
5153         (ls-lisp-insert-directory): Make -B work
5155         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
5156         (bug#20776).
5158         Backport:
5160         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
5162 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
5164         Make buttons in header lines work
5166         * lisp/help-mode.el (help-button-action): `help-xref-button' in
5167         header line doesn't work (bug#21024).
5169         Backport:
5171         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
5173 2016-02-23  Christopher Wellons  <wellons@nullprogram.com>
5175         Make setf for frame-height/width work again
5177         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
5178         frame-height/width work again (bug#21979).
5180 2016-02-23  Łukasz Stelmach  <stlman@poczta.fm>
5182         Encode header strings before printing
5184         * lisp/ps-print.el (ps-generate-header-line): Encode the
5185         header strings to avoid problems with non-ASCII headers
5186         (bug#22611).
5188         Backport:
5190         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
5192 2016-02-23  Nicolas Richard  <youngfrog@members.fsf.org>
5194         (cl-union): Do not ignore :test argument when lists are equal.
5196         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
5198         * test/automated/cl-seq-tests.el: New file (bug#22729).
5200 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
5202         Add `isearch' to `basic-faces'
5204         * doc/lispref/display.texi (Basic Faces): Mention the isearch
5205         and lazy-highlight faces.
5207         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
5208         group, too (bug#22760).
5210 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
5212         Make $, : and @ "prefix characters" in ruby-mode
5214         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
5215         syntax classes of $, : and @ to "prefix character"
5216         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
5217         (ruby-syntax-propertize): Undo that specifically for colons
5218         followed by an opening paren or bracket.
5219         (ruby-font-lock-keyword-beg-re): Include colon character.
5220         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
5221         not being a symbol constituent anymore.
5223 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
5225         Make find-tag-default-bounds more strict
5227         * lisp/subr.el (find-tag-default-bounds): Delegate to
5228         bounds-of-thing-at-point (bug#22692).
5230 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
5232         Minor fixes in filenotify.el
5234         * lisp/filenotify.el (top): Require 'cl-lib.
5235         (file-notify--rm-descriptor)
5236         (file-notify--event-watched-file): Use cl-caadr.
5237         (file-notify-callback): Handle also `ignore' events from inotify.
5239 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
5241         Additional fixes for file notification
5243         * lisp/filenotify.el (top): Require 'cl when compiling.
5244         (file-notify--event-watched-file): New defun.
5245         (file-notify--rm-descriptor, file-notify-callback):
5246         Handle case of several monitors running in parallel.
5248         * test/automated/file-notify-tests.el
5249         (file-notify--test-event-test): Simplify test.
5250         (file-notify--test-with-events): Get rid of outer definition.
5251         Check also results of tests performed in callbacks.
5252         (file-notify-test02-events): No wrapping when calling
5253         `file-notify-rm-watch'.  No special checking for callback tests.
5254         (file-notify-test07-backup): Adapt expected events for gfilenotify.
5255         (file-notify-test08-watched-file-in-watched-dir): Improve.
5257 2016-02-22  Eli Zaretskii  <eliz@gnu.org>
5259         Fix documentation of 'global-disable-point-adjustment'
5261         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
5262         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
5264 2016-02-22  Daiki Ueno  <ueno@gnu.org>
5266         Set file modes of pinentry socket for extra safety
5268         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
5269         (pinentry-start): Change the file modes of the socket file to 0700.
5270         This is just for extra safety since the parent directory is already
5271         protected with `server-ensure-safe-dir'.
5273 2016-02-22  Daiki Ueno  <ueno@gnu.org>
5275         Clarify GnuPG version compatibility chapter
5277         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
5278         description a bit clearer.
5280 2016-02-22  Daiki Ueno  <ueno@gnu.org>
5282         Revert "Change the default socket location for pinentry"
5284         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
5285         It turned out that the address is fixed in Pinentry itself.
5287 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
5289         Kill off xref--display-history
5291         Now that the core workflow keeps the xref window visible, there's
5292         less value in storing this history.  And it never was
5293         comprehensive enough to undo scrolling changes.
5294         * lisp/progmodes/xref.el (xref--display-history)
5295         (xref--save-to-history, xref-quit): Remove.
5296         (xref--show-pos-in-buf): Update accordingly.
5297         (xref--xref-buffer-mode-map): Remove xref-quit binding.
5299 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
5301         Keep the xref buffer visible until the user quits it explicitly
5303         * lisp/progmodes/xref.el (xref--pop-to-location):
5304         Rename WINDOW argument to ACTION.
5305         (xref--with-dedicated-window): New macro.
5306         (xref--show-pos-in-buf): Rename from `xref--display-position'.
5307         Add and handle new argument, SELECTED.  Use the above macro.
5308         (xref--show-location): Add SELECTED argument.
5309         (xref-show-location-at-point): Make an effort to avoid the
5310         original window when showing the location.
5311         (xref-goto-xref): Don't quit the xref window (bug#20487 and
5312         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
5313         (xref--query-replace-1): Use xref--with-dedicated-window as well.
5314         (xref--next-error-function): Call xref--show-location instead of
5315         xref--pop-to-location.
5316         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
5317         Only pass that value to xref--pop-to-location.  Pass the current
5318         selected window to xref-show-xrefs-function as the `window'
5319         property.
5320         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
5321         to DISPLAY-ACTION as well.
5323 2016-02-21  Daiki Ueno  <ueno@gnu.org>
5325         Change the default socket location for pinentry
5327         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
5328         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
5329         ~/.emacs.d/pinentry.
5330         (pinentry-start): Change the file modes of the socket file to 0700.
5331         This is just for extra safety since the parent directory is already
5332         protected with `server-ensure-safe-dir'.
5334 2016-02-21  Daiki Ueno  <ueno@gnu.org>
5336         Mention how to enable pinentry feature
5338         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
5339         * lisp/net/pinentry.el: Likewise.
5341 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
5343         Sync with gnulib
5345         This incorporates:
5346         2016-02-10 stdalign: port to older HP and IBM cc
5347         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
5349 2016-02-21  David Engster  <deng@randomsample.de>
5351         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
5353         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
5354           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
5355           not an idle hook, so it's not appropriate to call it there. It will
5356           already be called in the `semantic-idle-work-core-handler', which
5357           runs when Emacs is actually idle.
5359 2016-02-21  David Engster  <deng@randomsample.de>
5361         Restore point when writing semantic table to disk
5363         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
5364           `semantic-fetch-tags' in `save-excursion', since it might move point
5365           in current buffer. (Bug #22287)
5367 2016-02-21  Daiki Ueno  <ueno@gnu.org>
5369         Mention pinentry.el in epa manual
5371         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
5372         describing the differences between three GnuPG branches, and how
5373         to enable pinentry.el.
5374         (Caching Passphrases): Add xref to the compatibility chapter.
5376 2016-02-21  Michael Albinus  <michael.albinus@gmx.de>
5378         Fix Bug#22736
5380         * lisp/filenotify.el (file-notify-callback): Use the proper
5381         descriptor when calling the callback.  (Bug#22736)
5383         * test/automated/file-notify-tests.el
5384         (file-notify--test-event-handler): Deactivate trace.
5385         (file-notify-test08-watched-file-in-watched-dir): Bind
5386         `file-notify--test-tmpfile' temporarily in `dir-callback'.
5388 2016-02-21  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
5390         Grammar fix in doc string
5392         * lisp/custom.el (defgroup): Grammar fix in doc string.
5394 2016-02-20  Daiki Ueno  <ueno@gnu.org>
5396         Naming fix for consistency
5398         * lisp/epg-config.el (epg-find-configuration): Rename from
5399         `epg-configuration-find' to be consistent with other epg-* functions.
5400         Change all callers.
5402 2016-02-20  Daiki Ueno  <ueno@gnu.org>
5404         Prefer customized value for GnuPG executable
5406         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
5407         configuration if it is already set with custom.  (Bug#22747)
5409 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
5411         Fix memory reservation on MS-Windows
5413         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
5414         units.  This avoids leaving gaps in reserved memory regions that
5415         no one can use, since memory reservation must produce 64KB-aligned
5416         addresses.  (Bug#22526)
5418 2016-02-20  Anders Lindgren  <andlind@gmail.com>
5420         Update NextStep readme and add wish list.
5422         * nextstep/README: Rewritten from scratch. New sections on
5423         "History", "Overview of Cocoa and Objective-C", "Guidelines",
5424         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
5425         * nextstep/WISHLIST: New file containing list of issues and ideas
5426         associated with the NS port of Emacs.
5428 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
5430         Report also result in `file-notify--test-event-handler'
5432 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
5434         Improve file-notify-test08-watched-file-in-watched-dir
5436         * test/automated/file-notify-tests.el (file-notify--test-desc2):
5437         New variable.
5438         (file-notify--test-cleanup): Use it.
5439         (file-notify--test-event-handler): Enable trace.
5440         (file-notify-test08-watched-file-in-watched-dir): Tag it as
5441         :expensive-test.  Rewrite callbacks to use
5442         `file-notify--test-event-handler'.  Read events in loop.  Check
5443         `file-notify--test-results'.
5444         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
5446 2016-02-20  Stephen Berman  <stephen.berman@gmx.net>
5448         Fix todo-mode item date editing bugs
5450         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
5451         range error by making sure the value of the numerical month date
5452         component cannot be nil.  Prevent wrong type error on trying to edit
5453         day number in February by making sure numerical instead of string
5454         value of the year component is passed to todo-read-date.
5455         (todo-read-date): When using the numerical month date component make
5456         sure to use `*' for an arbitrary month instead of its numerical value.
5458 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
5460         Fix "[:upper:]" for non-ASCII characters
5462         * src/regex.c (re_match_2_internal): Support [:upper:] and
5463         [:lower:] for non-ASCII characters.  (Bug#18150)
5465 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
5467         Allow customising the article mode cursor behavior
5469         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
5471         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
5472         (gnus-article-mode): Use it.
5474 2016-02-20  Ari Roponen  <ari.roponen@gmail.com>
5476         Use pop-to-buffer-same-window in woman.el
5478         * lisp/woman.el (woman-really-find-file): Work around going to
5479         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
5480         (WoMan-find-buffer): Ditto.
5482 2016-02-20  Tassilo Horn  <tsdh@gnu.org>
5484         New filenotify test for bug#22736
5486         * test/automated/file-notify-tests.el
5487         (file-notify-test08-watched-file-in-watched-dir):
5488         (file-notify--test-desc1): New filenotify test for bug#22736
5490 2016-02-20  Marcin Borkowski  <mbork@mbork.pl>
5492         Report critical battery errors
5494         * lisp/battery.el (battery-pmset): Report critical battery
5495         errors (bug#18157).
5497 2016-02-19  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
5499         Make eww message toggling message clearer
5501         * lisp/net/eww.el (eww-toggle-fonts): Make the message
5502         clearer.
5504 2016-02-19  Mark Oteiza  <mvoteiza@udel.edu>
5506         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
5508 2016-02-18  Martin Rudalics  <rudalics@gmx.at>
5510         Fix bugs in window resizing code
5512         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
5513         parenthesis.
5514         (shrink-window, enlarge-window): Fix bug#22723 where windows
5515         with preserved size would not get resized.  Also now signal an
5516         error when the window cannot be shrunk or enlarged as requested.
5518 2016-02-17  Eli Zaretskii  <eliz@gnu.org>
5520         Fix decoding DOS EOL in a unibyte buffer
5522         * src/coding.c (decode_eol): Loop over bytes, not characters.
5523         (Bug#5251)
5525 2016-02-17  Alan Mackenzie  <acm@muc.de>
5527         Correct c-parse-state cache manipulation error.
5529         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
5530         comparison bound.  Amend comments.
5532 2016-02-17  Daiki Ueno  <ueno@gnu.org>
5534         Take advantage of new GnuPG version check function
5536         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
5537         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
5538         is usable.
5540 2016-02-17  Daiki Ueno  <ueno@gnu.org>
5542         Make GnuPG version check robuster
5544         We changed the default gpg program to "gpg2" from "gpg" in the commit
5545         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
5546         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
5547         series.  Check the actual version of "gpg2" at run time, and properly
5548         divert to "gpg" if necessary.
5549         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
5550         (epg-config--program-alist): New variable.
5551         (epg--configurations): New variable.
5552         (epg-configuration-find): New function.
5553         (epg-config--make-gpg-configuration): New function.
5554         (epg-config--make-gpgsm-configuration): New function.
5555         (epg-configuration): Mark as obsolete.
5556         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
5558 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
5560         Fix x-load-color-file pointer signedness
5562         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
5563         For sscanf and int *, use %d, not %u.
5564         Problem found on Ubuntu 15.10 x32, which lacks X support.
5566 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
5568         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
5570 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
5572         Follow convention for greek letter constants.
5574         * lisp/calc/calc-units.el (math-standard-units):
5575         Add "sigma" and alias σ to it.
5577 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
5579         Add Stefan-Boltzmann constant to calc units table.
5581         * lisp/calc/calc-units.el (math-standard-units):
5582         Add Stefan-Boltzmann constant.
5584 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
5586         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
5588 2016-02-16  Glenn Morris  <rgm@gnu.org>
5590         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
5592         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
5593         Prefill with relevant elements for term/xterm.
5595 2016-02-16  Tassilo Horn  <tsdh@gnu.org>
5597         Fix soffice UserInstallation-URL for Windows
5599         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
5600         UserInstallation-URL when calling soffice on Windows.
5602 2016-02-16  Lars Ingebrigtsen  <larsi@gnus.org>
5604         Fix display of <pre> elements
5606         * lisp/net/eww.el (eww-display-html): Remove CRLF before
5607         parsing so that <pre> elements don't render with ^M at the end
5608         of the lines.
5610 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5612         Minor fixes in global-auto-composition-mode
5614         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
5615         Produce prettier names of globalized minor modes.
5616         * lisp/composite.el (global-auto-composition-mode): Make it a
5617         globalized mode.  (Bug#22682)
5619 2016-02-15  Alan Mackenzie  <acm@muc.de>
5621         Allow arithmetic operators inside C++ template constructs.
5623         Fixes debbugs #22486.  This corrects the previous patch with this message
5624         which was empty.
5626         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
5627         variable.
5628         (c-<>-notable-chars-re): New language variable.
5630         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
5631         c-<>-notable-chars-re in place of the former fixed string in searching for
5632         places to stop and examine.
5633         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
5634         multichar operator in place of the former c->-op-without->-cont-regexp.
5635         Add code to skip forwards over a balanced parenthesized expression.
5637 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5639         Avoid crashes in semi-malformed 'condition-case'
5641         * src/eval.c (internal_lisp_condition_case): Treat a handler
5642         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
5644 2016-02-15  Alan Mackenzie  <acm@muc.de>
5646         Allow arithmetic operators inside C++ template constructs.
5648         Fixes debbugs #22486.
5650         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
5651         variable.
5652         (c-<>-notable-chars-re): New language variable.
5654         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
5655         c-<>-notable-chars-re in place of the former fixed string in searching for
5656         places to stop and examine.
5657         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
5658         multichar operator in place of the former c->-op-without->-cont-regexp.
5659         Add code to skip forwards over a balanced parenthesized expression.
5661 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5663         Fix regression with 'recent-keys' and keyboard macros
5665         * src/keyboard.c (record_char): Don't record in 'recent_keys'
5666         events that come from executing keyboard macros.  (Bug#22674)
5668 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5670         Fix wording in a doc-view.el comment
5672         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
5673         "illegal" for something that is not against the law.
5675 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5677         CONTRIBUTE cleanups and updates
5679         * CONTRIBUTE: Mention URLs and info nodes more consistently,
5680         avoiding possibly-confusing punctuation adjacent to a URL, and
5681         giving full shell commands for 'info'.  Start with a brief but
5682         complete how-to, for people who want to get started right away.
5683         Then briefly discuss how to join the development process in the
5684         typical order.  Omit needless words.  Update some of the
5685         now-obsolete file names, info node names, and quoting styles.
5686         Better document emacs-NN branches and how they are merged.
5687         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
5688         and trunk to master.  This file still needs work.
5690 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
5692         Port USE_STACK_LISP_OBJECTS fix to Clang
5694         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
5695         Recent versions of Clang claim to be GCC 4.2.1 but do not have
5696         the GCC bug.
5698 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
5700         Port to x86 GCC 4.3.1 and earlier
5702         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
5703         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
5704         for GCC 4.3.1 and earlier.
5706 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
5708         Fix point movement under 'scroll-conservatively'
5710         * src/xdisp.c (redisplay_window): Correct a typo in computing the
5711         effective number of text lines in a window.  (Bug#22637)
5713 2016-02-14  Thomas Plass  <thomas.plass@arcor.de>
5715         Replace colon in file name (not legal on Windows)
5717         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
5718         name (not legal on Windows). [tiny change]
5720 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
5722         Fix a typo in edt.texi
5724         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
5725         "Herbert J. Skuhra" <herbert@mailbox.org>.
5727 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
5729         Make 'mmap_realloc' on MS-Windows more reliable
5731         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
5732         committing fails, return NULL.  Don't call GetLastError twice for
5733         the same API error.
5734         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
5735         before calling VirtualQuery, to avoid using garbled values if the
5736         call fails.  If committing more pages from the same block fails,
5737         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
5738         if the call to VirtualAlloc to commit more pages fails.
5739         (Bug#22526)
5741 2016-02-14  Oscar Fuentes  <ofv@wanadoo.es>
5743         Grep alias `all' shall not match parent directory
5745         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
5746           directory for `all'. Fixes bug#22577
5748 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
5750         Bump version to 25.0.91
5752         * README:
5753         * configure.ac:
5754         * msdos/sed2v2.inp: Bump version to 25.0.91.
5756 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
5758         * etc/AUTHORS: Update the AUTHORS file
5760 2016-02-13  Glenn Morris  <rgm@gnu.org>
5762         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
5764 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
5766         Index tilde characters in names of backup files
5768         * doc/emacs/files.texi (Backup Names): Improve indexing.
5769         (Bug#22625)
5771 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
5773         Document deprecation of hi-lock-mode's 'C-x w' bindings
5775         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
5776         "C-x w" bindings of hi-lock-mode.
5778         * etc/NEWS: Mark the deprecation entry as documented.
5780 2016-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
5782         Announce that the `C-x w' bindings are deprecated
5784 2016-02-13  Paul Eggert  <eggert@cs.ucla.edu>
5786         Suppress GNUstep hardening
5788         Fedora 23 normally hardens GNUstep applications, which causes
5789         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
5790         Fix this by eliding the hardening options (Bug#22518).
5791         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
5792         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
5793         (GNU_OBJC_CFLAGS): Omit options like
5794         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
5796 2016-02-12  Eli Zaretskii  <eliz@gnu.org>
5798         Fix redisplay after a large insertion
5800         * src/xdisp.c (redisplay_internal): Don't accept the results of
5801         "optimization 3" if the cursor ends up in a partially visible
5802         glyph row.  (Bug22637)
5804 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
5806         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
5808         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
5810                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
5811                 change.  (Bug#22634)
5813 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
5815         * lib-src/make-docfile.c: Include stdarg.h.
5817 2016-02-11  Alan Mackenzie  <acm@muc.de>
5819         Extend gpm-mouse-mode's doc string and doc to point out limitations.
5821         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
5822         inability to transfer text between Emacs and other programs which use GPM.
5824         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
5825         between Emacs and other progrmas which use GPM.
5827 2016-02-11  Eli Zaretskii  <eliz@gnu.org>
5829         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
5831         * lisp/isearch.el: Turn char-folding back oon by default.
5833         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
5835 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5837         Revert "Support integer image rotation and respect EXIF rotations"
5839         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
5841         This change does not work on Fedora.
5843 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5845         Revert "Document EXIF image rotation"
5847         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
5849         This change does not work on Fedora, for instance.
5851 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
5853         Document OS X LANG default
5855         * doc/emacs/cmdargs.texi (General Variables):
5856         Document OS X Language and Region system preference.
5857         Suggested by Alan Third.
5859 2016-02-11  Alan Third  <alan@idiocy.org>
5861         Set locale when run from OS X GUI
5863         * src/emacs.c (main): Call ns_init_locale.
5864         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
5865         * src/nsterm.h: Include ns_init_locale.
5867 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
5869         make-docfile cleanup for I/O, etc.
5871         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
5872         (num_globals_allocated, globals): Now static.
5873         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
5874         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
5875         Use bool for boolean.
5876         (verror): New function.
5877         (fatal, error): Use it.  API is now like printf.  All callers changed.
5878         (main): Remove err_count local that was always 0.
5879         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
5880         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
5881         Return void, not 0.
5882         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
5883         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
5884         (close_emacs_globals): Use ptrdiff_t for index, not int.
5885         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
5886         opened, rather than diagnosing but exiting with status 0.
5887         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
5888         portable now.
5890 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
5892         Memory-management cleanup in make-docfile
5894         I compiled it with -fsanitize=address and fixed the leaks it detected.
5895         Also, I changed it to prefer signed to unsigned integer types,
5896         and to check for integer overflow.
5897         * lib-src/make-docfile.c:
5898         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
5899         (memory_exhausted): New function.
5900         (xmalloc, xrealloc): Use it.
5901         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
5902         (uncompiled, scan_lisp_file):
5903         Prefer signed integer types to unsigned.
5904         (xstrdup): Remove.  All uses removed.
5905         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
5906         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
5907         (add_global): Use const to pacify --enable-gcc-warnings.
5908         Make a copy here, rather than relying on strdup calls later.
5909         (add_global, write_globals, scan_c_stream):
5910         Avoid integer overflow when calculating sizes.
5911         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
5912         (scan_c_stream): Check for add_global failure.
5914 2016-02-10  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
5916         Kevin Gallagher has new email address
5918         * lisp/emulation/edt.el:
5919         * lisp/emulation/edt-lk201.el:
5920         * lisp/emulation/edt-mapper.el:
5921         * lisp/emulation/edt-pc.el:
5922         * lisp/emulation/edt-vt100.el:
5923         * etc/edt-user.el:
5924         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
5926 2016-02-10  Eli Zaretskii  <eliz@gnu.org>
5928         Improve doc strings of 'forward/backward-word-strictly'
5930         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
5931         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
5932         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
5933         Mention 'subword-mode' in the doc strings.
5935         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
5936         in the doc string.  (Bug#22560)
5938 2016-02-10  Michael Albinus  <michael.albinus@gmx.de>
5940         Describe Makefile test targets in test/README
5942         * CONTRIBUTE: Move Makefile test targets to test/README.
5944         * Makefile.in:
5945         * test/README: Describe Makefile test targets.
5947 2016-02-10  Artur Malabarba  <bruce.connor.am@gmail.com>
5949         Backport: * lisp/isearch.el: Turn char-folding off by default
5951         (search-default-mode): Set default value to nil.
5953 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
5955         Document EXIF image rotation
5957         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
5959 2016-02-10  Dima Kogan  <dima@secretsauce.net>
5961         Support integer image rotation and respect EXIF rotations
5963         * src/image.c (imagemagick_load_image): Allow integer rotations in
5964         addition to floating point rotations (bug#22591).
5965         * src/image.c (imagemagick_load_image): Images that have an
5966         orientation given in EXIF and have no explicit :rotation tag are now
5967         pre-rotated.  All information such as width/height is reported for the
5968         rotated image.
5970 2016-02-10  Matthew Carter  <m@ahungry.com>
5972         Quote table names for postgres listings (sql-mode)
5974         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
5975           unquoted table names to the completion list.
5977 2016-02-10  Juri Linkov  <juri@linkov.net>
5979         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
5981         Doc fix.
5982         (replace-search, replace-highlight): Make arg `backward' optional.
5983         (Bug#18388)
5985 2016-02-10  Juri Linkov  <juri@linkov.net>
5987         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
5989         (previous-line-or-history-element): Reset temporary-goal-column.
5990         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
5992 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
5994         Suppress ACL ops if configured with --disable-acl
5996         Without this patch, some ACL operations were suppressed, but not all.
5997         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
5998         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
6000 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
6002         Mention web bugs
6004         * doc/misc/emacs-mime.texi (Display Customization):
6005         Mention web bugs in the mm-html-blocked-images section.
6007 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
6009         Make mm-html-blocked-images default to "" again
6011         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
6012         Default to "" that blocks all external images.
6014         * doc/misc/emacs-mime.texi (Display Customization):
6015         Mention that mm-html-blocked-images defaults to "".
6017 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6019         Minor alignas cleanup
6021         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
6022         over from the old way of doing things, before Bug#20862 was fixed.
6024 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6026         Add lmalloc commentary and tweak laligned
6028         * src/alloc.c (laligned): Help compiler in a tiny way by putting
6029         the more-commonly-failing disjunct first.
6031 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
6033         Clarify documentation of key binding conventions
6035         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
6036         "punctuation characters" are reserved after "C-c".  (Bug#22604)
6038 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
6040         * etc/NEWS: mention the `vc-faces' customization group
6042 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6044         Sync with gnulib
6046         This incorporates:
6047         2016-02-09 stdalign: port to clang 3.7.0
6048         2016-02-06 misc: port better to gcc -fsanitize=address
6049         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
6050         Copy from gnulib.
6052 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
6054         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
6056 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
6058         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
6060         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
6061         (mm-html-blocked-images): Default to nil.
6063         * doc/misc/emacs-mime.texi (Display Customization): Mention that
6064         mm-html-inhibit-images and mm-html-blocked-images default to nil.
6066         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
6067         mm-html-blocked-images.
6069 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6071         Increase success rate of fallback lmalloc
6073         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
6074         larger and larger sizes, to increase the probability that
6075         the allocator will return a Lisp-aligned pointer.
6077 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6079         Make backgrounds extend to the end of the lines in shr
6081         * lisp/net/shr.el (shr-face-background): Faces can also be on
6082         the form `(:background "#fff)' (bug#22547).
6084 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6086         Make the `R' command get the correct relative <img>s
6088         * lisp/net/eww.el (eww-readable): Preserve the base URL so
6089         that image expansions are fetched from the right place (bug#22605).
6091         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
6093         Backport:
6095 2016-02-09  Mike Kupfer  <m.kupfer@acm.org>
6097         Fix typos in emacs-mime.texi and gnus.texi
6099         * doc/misc/emacs-mime.texi (Display Customization):
6100         * doc/misc/gnus.texi (HTML): Fix typo.
6102 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
6104         * doc/misc/emacs-mime.texi (Display Customization):
6105         Doc fix for mm-html-inhibit-images.
6107 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6109         Fix message-cross-post-followup-to group names
6111         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
6112         insert group names like "nntp+foo:zot", because those aren't valid.
6114 2016-02-09  David Edmondson  <dme@dme.org>
6116         Compare recipient and keys case-insensitively
6118         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
6119         recipient address with that from a key, do so in a case insensitive
6120         manner (bug#22603).
6122 2016-02-08  Glenn Morris  <rgm@gnu.org>
6124         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
6126 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
6128         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
6130         * doc/misc/emacs-mime.texi (Display Customization):
6131         Remove mm-inline-text-html-with-images; add documentations for
6132         mm-html-inhibit-images and mm-html-blocked-images.
6134         * lisp/gnus/gnus-art.el (gnus-article-show-images):
6135         No need to bind mm-inline-text-html-with-images.
6136         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
6137         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
6138         bind mm-html-inhibit-images and mm-html-blocked-images.
6139         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
6140         (gnus-mm-display-part, gnus-mime-display-single)
6141         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
6143         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
6144         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
6145         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
6146         mm-html-inhibit-images and mm-html-blocked-images respectively
6147         instead of gnus-inhibit-images and gnus-blocked-images.
6149         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
6150         instead of mm-inline-text-html-with-images.
6152 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
6154         Port to FreeBSD 11-CURRENT i386
6156         Problem reported by Herbert J. Skuhra in:
6157         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
6158         Instead of trying
6159         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
6160         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
6161         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
6162         (MALLOC_IS_GC_ALIGNED): New macro.
6163         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
6164         No longer needed now that alloc.c uses lmalloc and lrealloc.
6166 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
6168         Some fixes in file-notify-tests.el
6170         * test/automated/file-notify-tests.el
6171         (file-notify--test-with-events-check)
6172         (file-notify--test-with-events-explainer): New defuns.
6173         (file-notify--test-with-events): Use it.
6174         (file-notify-test07-backup): Fix docstring.  Some of the
6175         backends fire two `changed' events.  Backup by rename doesn't
6176         work for kqueue.
6178 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
6180         Fix Bug#22557
6182         * lisp/filenotify.el (file-notify-callback): Do not send a
6183         `stopped' event in case of backup by renaming.  (Bug#22557)
6185         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
6186         all targets but check and check-maybe.
6188         * test/automated/file-notify-tests.el
6189         (file-notify--test-read-event-timeout): New defconst.
6190         (file-notify--deftest-remote, file-notify--wait-for-events)
6191         (file-notify-test02-events)
6192         (file-notify-test04-file-validity)
6193         (file-notify-test06-many-events): Use it.
6194         (file-notify--test-cleanup): Make it more robust.  Delete also
6195         backup file.
6196         (file-notify-test07-backup): New test.
6198 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
6200         Fix test for dladdr
6202         Problem reported by Andreas Schwab in:
6203         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
6204         * configure.ac (dladdr): Link with LIBMODULES when checking for
6205         this function.
6207 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
6209         Fix gnus-group-get-new-news-this-group on group with closed server
6211         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
6212         method and pass to nnimap-open-server.
6214 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
6216         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
6218         While tabs in code are mostly fine because the Emacs sources have a
6219         .dir-locals file specifying tab-width, the same is not true of tabs in
6220         code examples inside docstrings.  The docstring is printed on a *Help*
6221         buffer, which can be created on any directory and won't necessarily have
6222         the same tab-width set.
6224 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
6226         Don't inloop gnus-uu-mark-thread on the last thread
6228         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
6229         final thread in the summary buffer (bug#16666).
6231 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
6233         Display non-ASCII group names better in prompts
6235         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
6236         group name, we have to do that before we remove the prefix.
6238 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
6240         Default to gpg2 instead of gpg
6242         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
6243         it exists.  This fixes many problems with using the GPG
6244         authentication agent.
6246 2016-02-06  David Edmondson  <dme@dme.org>
6248         src/process.c Correctly convert AF_INET6 addresses
6250         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
6251         converted to a list of 16 bit quantities by
6252         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
6253         same scheme rather than expecting a (longer) list of 8 bit
6254         quantities.
6256         Backport:
6258         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
6260 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6262         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
6264 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6266         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
6268         (menu-bar-search-options-menu): New variable
6270 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6272         * lisp/isearch.el (search-default-mode)
6274         (isearch-regexp-function): Improve docstrings.
6276 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6278         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
6280         (search-default-mode): New variable.
6281         (isearch-mode, isearch-define-mode-toggle)
6282         (isearch--describe-regexp-mode): Update accordingly.
6283         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
6284         * etc/NEWS: Update accordingly.
6285         * doc/emacs/search.texi: Update accordingly.
6287 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
6289         Use monitor's resolution for positioning tooltips
6291         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
6292           the mouse pointer is to avoid placing the tooltip over the border of
6293           the monitor on multi-head displays. Fixes bug#22549.
6295 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
6297         Fix file-notify-test on MS-Windows
6299         * test/automated/file-notify-tests.el (file-notify--test-timeout):
6300         Reduce w32notify timeout to 10 sec.
6301         (file-notify-test06-many-events): Call read-event after each
6302         rename, to keep the w32notify backend happy in batch mode.
6303         (Bug#22534)
6305 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
6307         Fix issues found by auditing w32notify code
6309         * src/w32inevt.c (handle_file_notifications): Count the number of
6310         events to be returned.
6311         * src/w32notify.c (send_notifications): Don't copy to the file
6312         notification buffer more than it can hold.  (Bug#22534)
6314 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
6316         Extend etags Ruby support for accessors
6318         * lib-src/etags.c (Ruby_functions): Support accessors defined with
6319         parentheses.  (Bug#22563)
6321         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
6322         defined with parentheses.
6323         * test/etags/ETAGS.good_1:
6324         * test/etags/ETAGS.good_2:
6325         * test/etags/ETAGS.good_3:
6326         * test/etags/ETAGS.good_4:
6327         * test/etags/ETAGS.good_5:
6328         * test/etags/ETAGS.good_6:
6329         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
6331 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
6333         Update publicsuffix.txt.
6335         * etc/publicsuffix.txt: Updated from
6336         https://publicsuffix.org/list/public_suffix_list.dat.
6338 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
6340         Ensure that Gnus dribble handling allows removing entries
6342         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
6343         entry is on a single line.
6345 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
6347         Be consistent when using encoded strings in nnimap data
6349         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
6350         (nnimap-request-list): Use it.
6351         (nnimap-request-newgroups): Ditto.
6353 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
6355         Display the decoded Gnus group name
6357         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
6358         decoded group name in the message.
6360 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
6362         Use completion-ignore-case instead of defining command
6364         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
6365         that we get case-insensitive completion.
6366         (erc-completion-at-point): Remove.
6368 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
6370         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
6372 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
6374         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
6376         Reduce the number of iterations to 250 in case of w32notify.
6378 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
6380         Fix problems caused by new implementation of sub-word mode
6382         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
6383         New functions.
6384         (word-move-empty-char-table): New variable.
6386         * etc/NEWS: Mention 'forward-word-strictly' and
6387         'backward-word-strictly'.
6389         * doc/lispref/positions.texi (Word Motion): Document
6390         'find-word-boundary-function-table', 'forward-word-strictly', and
6391         'backward-word-strictly'.  (Bug#22560)
6393         * src/syntax.c (syms_of_syntax)
6394         <find-word-boundary-function-table>: Doc fix.
6396         * lisp/wdired.el (wdired-xcase-word):
6397         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
6398         (texinfo-copy-section-title, texinfo-start-menu-description)
6399         (texinfo-copy-menu-title, texinfo-specific-section-type)
6400         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
6401         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
6402         (texinfo-insert-@end):
6403         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
6404         (texinfo-anchor, texinfo-multitable-widths)
6405         (texinfo-multitable-item):
6406         * lisp/textmodes/tex-mode.el (latex-env-before-change):
6407         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
6408         * lisp/skeleton.el (skeleton-insert):
6409         * lisp/simple.el (count-words):
6410         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
6411         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
6412         (vhdl-update-sensitivity-list, vhdl-template-block)
6413         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
6414         (vhdl-template-default-indent, vhdl-template-for-loop)
6415         (vhdl-template-if-then-use, vhdl-template-bare-loop)
6416         (vhdl-template-nature, vhdl-template-procedural)
6417         (vhdl-template-process, vhdl-template-selected-signal-asst)
6418         (vhdl-template-type, vhdl-template-variable)
6419         (vhdl-template-while-loop, vhdl-beginning-of-block)
6420         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
6421         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
6422         (verilog-forward-sexp, verilog-beg-of-statement)
6423         (verilog-set-auto-endcomments, verilog-backward-token)
6424         (verilog-do-indent):
6425         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
6426         (vera-indent-block-closing):
6427         * lisp/progmodes/simula.el (simula-context)
6428         (simula-backward-up-level, simula-forward-down-level)
6429         (simula-previous-statement, simula-next-statement)
6430         (simula-skip-comment-backward, simula-calculate-indent)
6431         (simula-find-if, simula-electric-keyword):
6432         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
6433         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
6434         (ruby-smie--forward-token, ruby-smie--backward-token)
6435         (ruby-singleton-class-p, ruby-calculate-indent)
6436         (ruby-forward-sexp, ruby-backward-sexp):
6437         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
6438         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
6439         (perl-syntax-propertize-special-constructs)
6440         (perl-backward-to-start-of-continued-exp):
6441         * lisp/progmodes/pascal.el (pascal-indent-declaration):
6442         * lisp/progmodes/octave.el (octave-function-file-p):
6443         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
6444         * lisp/progmodes/js.el (js--forward-function-decl):
6445         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
6446         (idlwave-beginning-of-block, idlwave-end-of-block)
6447         (idlwave-block-jump-out, idlwave-determine-class):
6448         * lisp/progmodes/icon.el (icon-is-continuation-line)
6449         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
6450         * lisp/progmodes/hideif.el (hide-ifdef-define):
6451         * lisp/progmodes/f90.el (f90-change-keywords):
6452         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
6453         (cperl-linefeed, cperl-electric-terminator)
6454         (cperl-find-pods-heres, cperl-fix-line-spacing)
6455         (cperl-invert-if-unless):
6456         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
6457         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
6458         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
6459         (ada-adjust-case-skeleton, ada-create-case-exception)
6460         (ada-create-case-exception-substring)
6461         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
6462         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
6463         (ada-get-indent-if, ada-get-indent-block-start)
6464         (ada-get-indent-loop, ada-get-indent-type)
6465         (ada-search-prev-end-stmt, ada-check-defun-name)
6466         (ada-goto-decl-start, ada-goto-matching-start)
6467         (ada-goto-matching-end, ada-looking-at-semi-or)
6468         (ada-looking-at-semi-private, ada-in-paramlist-p)
6469         (ada-search-ignore-complex-boolean, ada-move-to-start)
6470         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
6471         * lisp/net/quickurl.el (quickurl-grab-url):
6472         * lisp/mail/sendmail.el (mail-do-fcc):
6473         * lisp/mail/rmail.el (rmail-resend):
6474         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
6475         * lisp/mail/mail-extr.el (mail-extract-address-components):
6476         * lisp/json.el (json-read-keyword):
6477         * lisp/files.el (insert-directory):
6478         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
6479         * lisp/completion.el (symbol-under-point, symbol-before-point)
6480         (symbol-before-point-for-complete, next-cdabbrev)
6481         (add-completions-from-c-buffer):
6482         * lisp/cedet/semantic/texi.el (semantic-up-context)
6483         (semantic-beginning-of-context):
6484         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
6485         use 'forward-word-strictly' and 'backward-word-strictly' instead
6486         of 'forward-word' and 'backward-word'.
6488 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
6490         Fix doc string of tls-program
6492         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
6494 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
6496         Restore window conf in nsm
6498         * lisp/net/nsm.el (nsm-query-user): Restore the window configuration.
6500         Backport:
6502 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
6504         * etc/NEWS: Document new mpc.el features
6506 2016-02-04  Leo Liu  <sdl.web@gmail.com>
6508         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
6510 2016-02-04  Alan Mackenzie  <acm@muc.de>
6512         Correctly fontify C++ initializations which "look like" functions.
6514         Fixes bug#7579.
6516         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
6517         parameter to enable handling of "anonymous" declarators in declarations.
6519         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
6520         whether a "(" opens a parameter list of a function, or an initialization of a
6521         variable.
6523 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
6525         Improve newsticker-treeview-selection-face
6527         * lisp/net/newst-treeview.el (newsticker-treeview-selection-face): Improve
6528         readability for dark background.
6530 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
6532         Minor fix in tagging Ruby accessors by etags
6534         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
6535         names are not literal symbols.  (Bug#22241)
6537 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
6539         Spelling fixes
6541 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
6543         Remove 'def X' from the example
6545         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
6546         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
6547         * test/etags/CTAGS.good:
6548         * test/etags/ETAGS.good_1:
6549         * test/etags/ETAGS.good_2:
6550         * test/etags/ETAGS.good_3:
6551         * test/etags/ETAGS.good_4:
6552         * test/etags/ETAGS.good_5:
6553         * test/etags/ETAGS.good_6: Adjust accordingly.
6555 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
6557         Allow sending empty hidden values in eww
6559         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
6560         values (bug#22388).
6562         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
6564         Backport:
6566 2016-02-04  David Edmondson  <dme@dme.org>
6568         Make erc work better when encountering unknown prefix chars
6570         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
6571         instead of erroring out on unknown prefix chars (bug#22380).
6573 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
6575         Make erc completion case-insensitive again
6577         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
6578         case-insensitive again (bug#11360).
6580 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
6582         Make complection in erc use consistent casing
6584         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
6585         case in the complection consistent (bug#18509).
6587 2016-02-04  Francis Litterio  <flitterio@gmail.com>
6589         Make /QUIT in erc more robust
6591         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
6592         issuing /QUIT to disconnected servers (bug#22099).
6594 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
6596         Make tracking faces in Emacs work more reliably
6598         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
6599         faces to avoid later ambiguity (bug#22424).
6601 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
6603         Make shr not bug out on images on non-graphical displays
6605         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
6606         images on non-graphical displays (bug#22327).
6608 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
6610         Fix bookmark display widths
6612         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
6613         preparing it so that the widths are computed correctly (bug#22328).
6615 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
6617         Fix typo in eww-make-unique-file-name
6619         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
6620         actually work.
6622 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
6624         Make it possible to TAB to input fields
6626         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
6627         input fields (bug#22540).
6629 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
6631         Insert complete alt texts when images are disabled
6633         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
6634         the complete alt/title string (bug#22293).
6636 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
6638         Allow eww text fields to grow
6640         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
6641         grow when typing in stuff that's longer than the original width.
6643 2016-02-03  Dima Kogan  <dima@secretsauce.net>
6645         Make erc work when subword-mode is switched on
6647         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
6648         (erc-bounds-of-word-at-point): New functions to do word-based
6649         things when subword-mode is switched on.
6651         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
6652         (bug#17558).
6654 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
6656         Fix IMAP doc example
6658         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
6660 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
6662         Quoting fixes in doc strings and diagnostics
6664         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
6665         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
6666         (mml-smime-get-ldap-cert):
6667         Follow user style preference when quoting diagnostics.
6669 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
6671         Fix warning message in hack-local-variables
6673         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
6674         the original buffer name in the warning message.  (Bug#21681)
6676 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
6678         Etags: yet another improvement in Ruby tags
6680         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
6681         Ruby accessor definitions.  (Bug#22241)
6683         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
6684         accessors and multiline definitions.
6685         * test/etags/ETAGS.good_1:
6686         * test/etags/ETAGS.good_2:
6687         * test/etags/ETAGS.good_3:
6688         * test/etags/ETAGS.good_4:
6689         * test/etags/ETAGS.good_5:
6690         * test/etags/ETAGS.good_6:
6691         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
6693 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
6695         Fix x-popup-menu on TTYs without a mouse
6697         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
6698         for the TTY case without a mouse.  (Bug#22538)
6700 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
6702         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
6704 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
6706         Use pop-to-buffer-same-window in eww
6708         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
6709         switch-to-buffer (bug#22244).
6711 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
6713         * autogen.sh: Revert all recent changes.
6715 2016-02-02  Glenn Morris  <rgm@gnu.org>
6717         * make-dist: Updates related to nt/.
6719         * make-dist: Add modules/.
6721         * make-dist: Update for super-special file that can't live in etc/.
6723 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6725         Fix failure to compile ns-win.el in parallel builds
6727         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
6728         dependency on $(lispsource)/international/charprop.el.
6729         (Bug#22501)
6731 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6733         Fix names of tags generated for Ruby accessors
6735         * lib-src/etags.c (Ruby_functions): Don't include the leading
6736         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
6738         * test/etags/ETAGS.good_1:
6739         * test/etags/ETAGS.good_2:
6740         * test/etags/ETAGS.good_3:
6741         * test/etags/ETAGS.good_4:
6742         * test/etags/ETAGS.good_5:
6743         * test/etags/ETAGS.good_6:
6744         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
6746 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6748         Fix file-name recognition in 'etags'
6750         * lib-src/etags.c (get_language_from_filename): If FILE includes a
6751         leading directory, compare only its basename to the known file
6752         names in lang_names[].
6754         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
6755         renaming.
6756         * test/etags/ETAGS.good_1:
6757         * test/etags/ETAGS.good_2:
6758         * test/etags/ETAGS.good_3:
6759         * test/etags/ETAGS.good_4:
6760         * test/etags/ETAGS.good_5:
6761         * test/etags/ETAGS.good_6:
6762         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
6763         to the results in Makefile due to the above etags.c fix.
6765 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6767         Change Ruby file names and extensions recognized by 'etags'
6769         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
6770         of Ruby files.
6771         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
6772         <lang_names>: Add Ruby_filenames to the Ruby entry.
6773         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
6774         (Bug#22241)
6776 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6778         More improvements for Ruby support in 'etags'
6780         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
6781         alias_method.  Identify constants even if the assignment is not
6782         followed by whitespace.  (Bug#22241)
6784         * test/etags/ruby-src/test1.ru: Add tests for constants,
6785         accessors, and alias_method.
6786         * test/etags/ETAGS.good_1:
6787         * test/etags/ETAGS.good_2:
6788         * test/etags/ETAGS.good_3:
6789         * test/etags/ETAGS.good_4:
6790         * test/etags/ETAGS.good_5:
6791         * test/etags/ETAGS.good_6:
6792         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
6794 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
6796         Add --git-config option to autogen.sh
6798         * autogen.sh: New options --git-config, --help.
6799         (git_config): New shell var.  Alter function to respect this var.
6801 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
6803         Fix editing undo changes in eww fields
6805         * eww.el (eww-tag-form): Don't overwrite initial form data in text
6806         fields.
6807         (eww-process-text-input): Make `M-t' at the end of text fields work
6808         better (bug#19085).
6810 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
6812         Allow the user more control of popping up the eww window
6814         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
6815         Michael Heerdegen) (bug#22244).
6817 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
6819         Make eww-browse-url with new-window parameter work again
6821         * eww.el (eww-browse-url): Stay in the same buffer if we're
6822         already in a eww mode buffer so that eww-browse-url with a
6823         new-window parameter works (bug#22244).
6825 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
6827         Clean up eww code slightly
6829         * eww.el (eww-browse-url): Clean up code slightly.
6831 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
6833         Don't insert nil faces in shr
6835         * shr.el (shr-insert-table): Don't add nil faces, because that
6836         will show up in *Messages* as "Invalid face reference: nil [32
6837         times]".
6839 2016-02-01  Glenn Morris  <rgm@gnu.org>
6841         Improve the custom type of some user options.
6843         * lisp/autoinsert.el (auto-insert-alist):
6844         * lisp/replace.el (query-replace-from-to-separator):
6845         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
6846         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
6847         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
6848         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
6849         (prolog-mode-specificators, prolog-determinism-specificators)
6850         (prolog-directives, prolog-program-name, prolog-program-switches)
6851         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
6852         (prolog-prompt-regexp): Improve custom type.
6854 2016-02-01  Glenn Morris  <rgm@gnu.org>
6856         Mark some risky calendar variables.
6858         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
6859         Remove risky setting for deleted obsolete alias.
6860         (calendar-chinese-standard-time-zone-name)
6861         (calendar-chinese-daylight-saving-start)
6862         (calendar-chinese-daylight-saving-end):
6863         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
6864         (calendar-european-date-display-form)
6865         (calendar-american-date-display-form, calendar-date-display-form):
6866         * lisp/calendar/diary-lib.el (diary-remind-message)
6867         (diary-header-line-format):
6868         * lisp/calendar/solar.el (calendar-time-display-form)
6869         (calendar-location-name): Mark as risky.
6871 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
6873         Highlight two additional SCSS keywords
6875         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
6876         identifiers on the form !foo.
6877         (scss-bang-ids): New defconst holding SCSS identifiers on the form
6878         !foo.
6879         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
6880         `font-lock-builtin-face'.
6882         * test/indent/css-mode.css: Add bang rule test case.
6884         * test/indent/scss-mode.scss: Add test cases for the introduced bang
6885         rules.
6887 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
6889         Recommend enabling integrity-checking in git
6891         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
6893         This is related to the autogen.sh changes made by Paul Eggert in
6894         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
6895         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
6896         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
6897         "Recommend these .gitconfig settings for git integrity." at
6898         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
6900 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
6902         Some corrections in Elisp manual
6904         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
6905         argument POSITION.
6906         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
6907         is an option.
6908         * doc/lispref/display.texi (Refresh Screen): Describe optional
6909         argument FRAME of `redraw-frame'.
6910         (Attribute Functions): Describe optional argument CHARACTER of
6911         `face-font'.
6912         (Defining Images): `image-load-path' is an option.
6913         (Beeping): `ring-bell-function' is an option.
6914         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
6915         argument of `set-frame-size' is optional.
6916         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
6917         is optional.
6918         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
6919         `set-transient-map'.
6920         * doc/lispref/minibuf.texi (Text from Minibuffer):
6921         `read-regexp-defaults-function' is an option.
6922         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
6923         * doc/lispref/modes.texi (Mode Line Variables):
6924         `mode-line-position' and `mode-line-modes' are variables, not
6925         options.
6926         * doc/lispref/strings.texi (Creating Strings): The START argument
6927         of `substring' is optional.
6928         * doc/lispref/text.texi (Buffer Contents): Describe optional
6929         argument NO-PROPERTIES of `thing-at-point'.
6930         (User-Level Deletion): Both arguments of
6931         `delete-trailing-whitespace' are optional.
6932         (Margins): Use @key{RET} instead of @kbd{RET}.
6933         * doc/lispref/windows.texi (Display Action Functions): Write
6934         non-@code{nil} instead of non-nil.
6935         (Choosing Window Options): The WINDOW arg of
6936         `split-window-sensibly' is optional.
6937         (Choosing Window Options): Write non-@code{nil} instead of
6938         non-nil.
6939         (Window Start and End): Both args of `window-group-end' are
6940         optional.
6942         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
6943         to POSITION to keep consisteny with doc-string.
6945 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
6947         Chatter when autogen.sh changes Git configuration
6949         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
6951 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
6953         * lisp/org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
6955 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6957         Omit unnecessary history from Lisp intro
6959         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
6960         (Conclusion): Reword so as not to talk about earlier versions
6961         of Emacs in what should be an intro.
6963 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6965         * etc/HISTORY: Add some more history, plus git tags.
6967 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6969         Improve elisp “Security Considerations” doc
6971         * doc/lispref/os.texi (Security Considerations):
6972         Mention call-process and rename-file as opposed to shell commands.
6973         Add some more cross-references.
6975 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6977         autogen.sh now arranges for git to check hashes
6979         Suggested by Karl Fogel in:
6980         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
6981         * autogen.sh: Do "git config transfer.fsckObjects true".
6983 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6985         Fix (c & 040) typo in emergency escapes
6987         * src/keyboard.c (handle_interrupt): Fix recently-introduced
6988         typo (040 should have been ~040) that silently suppressed
6989         auto-saves after emergency escapes.  Redo comparison to avoid
6990         similar problems.
6992 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
6994         Fix display of overlay strings with 'display' and 'box' property
6996         * src/xdisp.c (get_next_display_element): Take the box face from
6997         display stack level that comes from a buffer, not an overlay
6998         string.  (Bug#22499)
7000 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
7002         Fix imap-starttls-open
7004         * lisp/net/imap.el (imap-starttls-open): Log imap process
7005         output.  Call imap-parse-greeting.  (Bug#22500)
7007 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
7009         Fix return value of imap-starttls-open
7011         * lisp/net/imap.el (imap-starttls-open): Fix return value.
7013 2016-01-31  John Wiegley  <johnw@newartisans.com>
7015         Correct reference to DARWIN_OS preprocessor symbol
7017         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
7018           not be defined.
7020 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
7022         Spelling fix
7024         Spelling fixes
7026 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
7028         Pacify GCC on C library without glibc API
7030         Without this change, with --enable-gcc-warnings GCC would complain
7031         “error: redundant redeclaration of ‘aligned_alloc’”.
7032         * configure.ac: Simplify aligned_alloc testing.
7033         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
7034         since the simplified configure.ac no longer checks for that.
7035         Don’t declare if HAVE_ALIGNED_ALLOC.
7036         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
7038 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
7040         Backport: * lisp/files.el: Remove support for extra .dir-locals file
7042         (dir-locals-file-2, dir-locals--all-files): Remove.
7043         (dir-locals-collect-variables, dir-locals-file, dir-locals-find-file)
7044         (dir-locals-read-from-file, hack-dir-local-variables): Revert changes.
7046         * lisp/files-x.el (modify-dir-local-variable): Revert changes.
7048         * lisp/help-fns.el (describe-variable): Revert changes.
7050         * doc/emacs/custom.texi (Directory Variables): Revert changes.
7052         * etc/NEWS: Revert changes.
7054 2016-01-30  Glenn Morris  <rgm@gnu.org>
7056         * lisp/net/browse-url.el (browse-url-default-browser):
7057         Lower priority of non-free Chrome.
7059 2016-01-30  Glenn Morris  <rgm@gnu.org>
7061         Improve the custom type of some user options.
7063         * lisp/desktop.el (desktop-minor-mode-table):
7064         * lisp/man.el (Man-frame-parameters):
7065         * lisp/midnight.el (midnight-delay):
7066         * lisp/speedbar.el (speedbar-select-frame-method):
7067         * lisp/tooltip.el (tooltip-frame-parameters):
7068         * lisp/tree-widget.el (tree-widget-space-width):
7069         * lisp/type-break.el (type-break-keystroke-threshold):
7070         * lisp/woman.el (woman-imenu-generic-expression):
7071         * lisp/cedet/ede.el (ede-debug-program-function):
7072         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
7073         * lisp/emulation/viper-keym.el (viper-toggle-key):
7074         * lisp/erc/erc-networks.el (erc-server-alist):
7075         * lisp/gnus/message.el (message-deletable-headers, message-signature):
7076         * lisp/mail/mailalias.el (mail-directory-stream):
7077         * lisp/play/tetris.el (tetris-x-colors):
7078         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
7080 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
7082         Highlight CSS variables with variable name face
7084         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
7085         (css--font-lock-keywords): Highlight variables in
7086         `font-lock-variable-name-face'.
7088 2016-01-30  Glenn Morris  <rgm@gnu.org>
7090         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
7092 2016-01-30  Glenn Morris  <rgm@gnu.org>
7094         Mark some user options that can get evalled as risky.
7096         * lisp/allout.el (allout-title):
7097         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
7098         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
7099         * lisp/progmodes/gud.el (gud-tooltip-display):
7100         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
7101         Mark as risky.
7103 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
7105         Disable DebPrint in sys_read on MS-Windows
7107         * src/w32.c (sys_read): Disable a debugging print that is normal
7108         when non-blocking reads are retried.
7110 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
7112         ;Fix ChangeLog entry
7114 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
7116         Fix typos in Introduction to Emacs Lisp manual
7118         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
7119         (kill-new function, Digression into C)
7120         (Complete forward-sentence, Divide and Conquer, Find a File)
7121         (lengths-list-many-files, Columns of a graph, defcustom)
7122         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
7123         <dbastos@toledo.com>.
7125 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7127         Bump version to 25.0.90
7129         * README:
7130         * configure.ac:
7131         * msdos/sed2v2.inp: Bump version to 25.0.90.
7133 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7135         * etc/AUTHORS: Update the AUTHORS file
7137 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7139         Bump version to 25.0.90
7141         * README:
7142         * configure.ac:
7143         * msdos/sed2v2.inp: Bump version to 25.0.90.
7145 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7147         * etc/AUTHORS: Update the AUTHORS file
7149 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7151         authors.el updates
7153         * admin/authors.el (authors-renamed-files-alist): Additions.
7155 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7157         Make it possible to run make change-history on emacs-25
7159         * Makefile.in: Check if the current branch is emacs-25 instead of
7160           master.
7162 2016-01-30  lu4nx  <lx@shellcodes.org>
7164         Support Go language in 'etags'
7166         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
7167         <Go_help>: New help.
7168         <Go_suffixes>: New variable.
7169         (Go_functions): New function.
7170         <lang_names>: Add entry for Go.  (Bug#22370)
7172         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
7173         * doc/man/etags.1: Mention Go support.
7175         * etc/NEWS: Mention Go support.
7177         * test/etags/go-src/test.go:
7178         * test/etags/go-src/test1.go: New test files.
7179         * test/etags/Makefile (GOSRC): New variable.
7180         (SRCS): Add $(GOSRC).
7181         * test/etags/ETAGS.good_1:
7182         * test/etags/ETAGS.good_2:
7183         * test/etags/ETAGS.good_3:
7184         * test/etags/ETAGS.good_4:
7185         * test/etags/ETAGS.good_5:
7186         * test/etags/ETAGS.good_6:
7187         * test/etags/CTAGS.good: Adapt to addition of Go tests.
7189 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
7191         Improve Ruby support in 'etags'
7193         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
7194         singleton classes.  Remove class qualifiers from tags generated
7195         for method and constant names.  (Bug#22241)
7197         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
7198         are tagged by etags in Ruby.
7200         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
7202         * test/etags/ruby-src/test1.ru: Add more tests.
7203         * test/etags/ETAGS.good_1:
7204         * test/etags/ETAGS.good_2:
7205         * test/etags/ETAGS.good_3:
7206         * test/etags/ETAGS.good_4:
7207         * test/etags/ETAGS.good_5:
7208         * test/etags/ETAGS.good_6:
7209         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
7210         tests.
7212 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
7214         Adjust etags test results to changes in copyright years
7216         * test/etags/CTAGS.good:
7217         * test/etags/ETAGS.good_1:
7218         * test/etags/ETAGS.good_2:
7219         * test/etags/ETAGS.good_3:
7220         * test/etags/ETAGS.good_4:
7221         * test/etags/ETAGS.good_5:
7222         * test/etags/ETAGS.good_6: Adjust to shift in characters and
7223         in line numbers.
7225 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
7227         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
7229         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
7231 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7233         Make it possible to run make change-history on emacs-25
7235         * Makefile.in: Check if the current branch is emacs-25 instead of
7236           master.
7238 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
7240         Don't fiddle with DEFAULT
7242         * lisp/progmodes/project.el (project--completing-read-strict):
7243         Don't change DEFAULT, whether is has any matches in
7244         COLLECTION, or not.
7246 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
7248         Document xwidget commands and functions
7250         * doc/lispref/display.texi (Xwidgets): New section, describes some
7251         of the xwidget primitives.
7252         * doc/lispref/display.texi (Display): Update the chapter menu.
7253         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
7254         * doc/emacs/emacs.texi (Top): Update the master menu to include
7255         the xwidget node.
7257 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
7259         Build fix for shr.el
7261         * shr.el (seq): Require.
7263 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
7265         Improve project-find-file yet again!
7267         * lisp/progmodes/project.el (project--completing-read-strict):
7268         New function.
7269         (project-find-file-in): Use it.
7270         (project-file-completion-table): Move the default
7271         implementation inside the cl-defgeneric form.
7272         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
7274 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
7276         Don't pass DIR to 'hg status'
7278         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
7279         Don't pass DIR to 'hg status' (bug#22481).
7281 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
7283         Fix typo in previous commits
7285         * lisp/progmodes/project.el (project-find-file-in):
7286         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
7287         commit.
7289 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
7291         Improve project-find-file
7293         * lisp/progmodes/project.el (project-file-completion-table): New.
7294         (project-find-file, project-or-external-find-file): Default to filename
7295         at point.
7296         (project-file-completion-table): New, split out from
7297         project--find-file-in.
7298         (project-find-file-in): Renamed from project--find-file-in, use
7299         project-file-completion-table.
7301         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
7302         (xref--find-ignores-arguments): Add doc string.
7304 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
7306         Implement vc-mtn-find-ignore-file, fix some doc strings
7308         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
7310         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
7312         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
7314         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
7316 2016-01-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
7318         Correct a whole bunch of bugs coming with renamed cell relocation.
7320         This is the same change as commit on master branch. See
7321         http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=badcd38aa86ed7973f2be2743c405710973a0bdd
7323         * lisp/ses.el (ses-localvars): rename variable
7324         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
7325         and adjust the comment about it.
7326         (ses-plist-delq): new defun.
7327         (ses--ses-buffer-list): new defvar.
7328         (ses--unbind-cell-name): new defun.
7329         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
7330         (ses-relocate-formula): Undo change of
7331         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
7332         preventing relocation for named cell --- now doing this is delegated
7333         to function `ses-relocate-symbol'.
7334         (ses-relocate-range): In docstring, undo change of
7335         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
7336         lower case as it is not a variable.
7337         (ses-relocate-all): Cell name relocation : 1) check that cell is a
7338         renamed cell by testing `ses-cell' property to :ses-named, rather than
7339         comparing name to corresponding standard name. Set rowcol of renamed
7340         cell into the hashmap --- `ses-cell' property must not be used for
7341         that as the same name can be used for different locations in different
7342         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
7343         `local-variable-p' to check if cell name is already in use in this
7344         sheet or needs initialization.
7345         (ses-relocate-all): Cell value relocation : 1) like for name
7346         relocation use the `ses-cell' property rather than comparing actual
7347         name to corresponding standard name. 2) Correct bug introduced in
7348         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
7349         made the other way round than the intention --- ie value relocation
7350         was disabled for standard cell, not for renamed cell as was the
7351         intention.
7352         (ses-relocate-all): Add loop for unbinding deleted renamed cells
7353         names.
7354         (ses-killbuffer-hook): new defun.
7355         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
7356         kill buffer hook, plus pushing current buffer if new in list.
7357         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
7358         into `ses--in-killing-named-cell-list'.
7359         (ses-rename-cell): Remove update of variable
7360         `ses--renamed-cell-symb-list', this variable is renamed to
7361         `ses--in-killing-named-cell-list', and its setting is done in
7362         functions `ses-delete-row' and , `ses-delete-column' now.
7363         (ses-rename-cell): Make cell new name a buffer local variable.
7364         (ses-rename-cell): Change correction of
7365         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
7366         computation of the range over which `cursor-intangible' property was
7367         to be updated. This correction was ok for non spilling cells, but not
7368         for cells spilling over following blank cells. Simply use
7369         `next-single-property-change' rather than computing the end column
7370         from column widths.
7372 2016-01-29  Andreas Schwab  <schwab@linux-m68k.org>
7374         Re-enable checks in member, memql, delete to complain about non-lists
7376         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
7378 2016-01-29  Martin Rudalics  <rudalics@gmx.at>
7380         Minor doc(-string) tweaks
7382         * lisp/window.el (window-in-direction): Fix doc-string typo.
7383         * doc/lispref/frames.texi (Frame Font): Mention canonical
7384         character width/height.
7385         * doc/lispref/windows.texi (Windows and Frames): Clarify
7386         handling of minibuffer window for `window-in-direction'.
7387         (Window Sizes): Minor tweaks in descriptions of
7388         `window-max-chars-per-line', `window-min-width' and
7389         `window-min-size'.
7390         (Deleting Windows): Minor tweak in `delete-window' description.
7391         (Selecting Windows): Clarify window use time description.
7392         (Cyclic Window Ordering): Minor tweak.
7393         (Switching Buffers): Clarify description of
7394         `switch-to-buffer-in-dedicated-window'.
7396 2016-01-29  Eli Zaretskii  <eliz@gnu.org>
7398         Minor improvements to 'pcase' documentation
7400         * doc/lispref/control.texi (Pattern matching case statement):
7401         Improve the documentation of 'pcase' per comments.  See two
7402         discussion threads on emacs-devel@gnu.org for the details:
7403         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01335.html
7404         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01336.html.
7406 2016-01-29  Glenn Morris  <rgm@gnu.org>
7408         Don't use eval to quieten prolog.el compilation.
7410         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
7411         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
7413 2016-01-29  Glenn Morris  <rgm@gnu.org>
7415         Mark some risky prolog variables.
7417         * lisp/progmodes/prolog.el (prolog-system-version)
7418         (prolog-keywords, prolog-types, prolog-mode-specificators)
7419         (prolog-determinism-specificators, prolog-directives)
7420         (prolog-program-name, prolog-program-switches)
7421         (prolog-consult-string, prolog-compile-string)
7422         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
7423         Mark anything processed by prolog-find-value-by-system as risky.
7425 2016-01-28  Glenn Morris  <rgm@gnu.org>
7427         * lisp/custom.el (defcustom): Doc fix.
7429         * doc/lispref/customize.texi (Variable Definitions):
7430         Defcustom should always have a type.
7432 2016-01-28  Glenn Morris  <rgm@gnu.org>
7434         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
7435         Fix :type.
7437         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
7439 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
7441         Fix Bug#22452
7443         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
7444         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
7445         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
7446         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
7447         Mark it as connected.
7449         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
7450         connection property "connected" is set.  (Bug#22452)
7452 2016-01-27  Glenn Morris  <rgm@gnu.org>
7454         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
7456         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
7457         if not compiled with xwidgets.
7459 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
7461         C-u C-x = example doc fix
7463         * doc/emacs/mule.texi (International Chars):
7464         Adjust example to match current behavior of C-u C-x =.
7466 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
7468         malloc.h hygiene
7470         This attempts to future-proof Emacs a bit against possible glibc
7471         changes, by having Emacs use <malloc.h> declarations rather than
7472         coding them up by hand.  Problem noted by Florian Weimer in:
7473         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
7474         Implement this mainly by moving malloc.h-related functions from
7475         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
7476         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
7477         New function.
7478         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
7479         (alloc_unexec_pre, alloc_unexec_post): New functions.
7480         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
7481         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
7482         (__malloc_initialize_hook): Use it.
7483         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
7484         Move here from ...
7485         * src/emacs.c: ... here.
7486         (malloc_get_state, malloc_set_state): Remove extern decls.
7487         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
7488         All uses changed to similarly-named new function.
7489         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
7490         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
7491         New decls.
7493 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
7495         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
7497 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
7499         Remove never-set var handle_user_signal_hook
7501         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
7502         Remove never-set var.  All uses removed.
7504 2016-01-26  K. Handa  <handa@gnu.org>
7506         Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
7508         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
7509         second glyph only when there are enough glyphs.
7511         (cherry picked from commit 9835757013569673854b692ccbb58bfb3c3ed1f7)
7513 2016-01-26  K. Handa  <handa@gnu.org>
7515         support rendering of wider range of combinging characters by ftfont backend
7517         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
7518         supports rendering of combining characters, call
7519         font-shape-gstring.
7521         * src/font.c (Ffont_get): Handle `combining-capability' property.
7522         (syms_of_font): New symbol ":combining-capability'.
7524         * src/font.h (struct font_driver): New member combining_capability.
7526         * src/ftfont.c: Include "category.h".
7527         (ftfont_driver): Initialize combining_capability to
7528         ftfont_combining_capability.
7529         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
7530         FLT in advance.
7531         (ftfont_combining_capability): New function.
7533         (cherry picked from commit 536f48e9a2251b9e654ea974bd90ff2f40218753)
7535 2016-01-26  Anders Lindgren  <andlind@gmail.com>
7537         Fixed NextStep fullscreen issue (bug#22468)
7539         When in fullscreen mode, `[screen visibleFrame]' sometimes
7540         includes, sometimes excludes the menu bar. This could cause
7541         a frame to be placed too low when in fullscreen mode.
7543         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
7544         (constrain_frame_rect): New parameter, isFullscreen, when true don't
7545         query the height of the menu bar.
7546         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
7547         `constrain_frame_rect'.
7548         ([EmacsView initFrameFromEmacs:]): Trace.
7549         ([EmacsView isFullscreen]): Trace.
7550         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
7551         state to `constrain_frame_rect'.
7553 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
7555         * lisp/files.el: Use a fixed file name for the second dir-locals file
7557         (dir-locals-file): Revert to its original fixed value.
7558         (dir-locals-file-2): New const.
7559         (dir-locals--all-files): Don't use `file-name-all-completions'.
7560         Instead, just check for the 2 dir-locals files and return a list
7561         of the ones that exit (if any).
7563         * etc/NEWS: Document the change.
7565         * doc/emacs/custom.texi (Directory Variables): Document the change.
7567         * doc/lispref/variables.texi (Directory Local Variables): Update
7568         accordingly.
7570 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
7572         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
7574         Change a variable name to be more meaningful, and reorder some of
7575         the code with no change in behaviour.
7577 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
7579         * lisp/files.el (dir-locals-find-file): Refactor return values
7581         Returning a cache remains unchanged, but the case of returning a
7582         file (or pattern) is now changed to return the contaning
7583         directory.
7585         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
7586         and make obsolete.
7587         (dir-locals-read-from-dir): Simplify accordingly.
7588         (hack-dir-local-variables): Simplify accordingly and rename a
7589         variable.
7591 2016-01-26  Glenn Morris  <rgm@gnu.org>
7593         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
7594         Declare.
7596         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
7598         * configure.ac (--with-cairo): Say it's experimental.
7600         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
7601         Rename using American spelling.  Update all uses.
7603 2016-01-26  Glenn Morris  <rgm@gnu.org>
7605         Yet more xwidget doc fixes.
7607         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
7608         (xwidget-insert, xwidget-webkit-browse-url)
7609         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
7610         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
7611         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
7612         (xwidget-webkit-show-id-element)
7613         (xwidget-webkit-show-id-or-named-element)
7614         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
7615         (xwidget-webkit-execute-script-rv)
7616         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
7617         (xwidget-put):  Doc fixes.
7618         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
7619         (xwidget-webkit-show-id-element)
7620         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
7622 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
7624         * lisp/gnus/gnus-art.el (gnus-blocked-images):
7625         Add explicit nil choice and tags.
7627 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7629         Spelling fixes
7631 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
7633         (font-lock-ensure-function): Fix bug#22399
7635         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
7636         font-lock-mode is not enabled (bug#22399).
7638 2016-01-25  Alan Mackenzie  <acm@muc.de>
7640         Expunge "allow" + infinitive from source and doc, part 2.
7642         Do the same for "permit", "enable", "prevent", and (where appropriate)
7643         "require".
7645         doc/misc/reftex.texi:
7646         doc/misc/url.texi:
7647         lib/get-permissions.c:
7648         lib/strftime.c:
7649         lisp/org/org-element.el:
7650         lisp/org/org-mobile.el:
7651         lisp/textmodes/reftex-vars.el:
7652         src/bidi.c:
7653         src/emacs.c:
7654         src/xdisp.c:
7655         test/etags/c-src/emacs/src/lisp.h:
7657         Expunge the likes of "This allows to do something" from the above files.
7659 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
7661         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
7663         `special-mode' is already read-only.
7665 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
7667         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
7669 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7671         Port "$@" to OpenIndiana ksh93
7673         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
7674         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
7675         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
7676         bug in long-dead shells, so remove the workaround.
7677         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
7678         Use plain "$@" rather than ${1+"$@"}.
7680 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7682         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
7684 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7686         Improve wording for SMB support
7688         * doc/misc/tramp.texi (External methods): Improve and modernize
7689         wording for discussion of smbclient.  There is no longer any
7690         need to mention the laundry list of old MS Windows implementations
7691         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
7693 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
7695         Merge from gnulib
7697         This incorporates:
7698         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
7699         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
7700         2016-01-15 detect utimes() correctly on OS/2 kLIBC
7701         2016-01-15 openat_proc_name: port to OS/2 kLIBC
7702         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
7703         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
7704         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
7705         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
7706         2016-01-14 sig2str: list all signals on FreeBSD >= 7
7707         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
7708         2016-01-12 mktime: rename macro to avoid glibc clash
7709         2016-01-12 Port "$@" to OpenIndiana ksh93
7710         2016-01-12 Port Universal Time settings to strict POSIX
7711         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
7712         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
7713         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
7714         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
7715         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
7716         * m4/fcntl.m4, m4/utimes.m4:
7717         Copy from gnulib.
7718         * m4/gnulib-comp.m4: Regenerate.
7720 2016-01-24  Alan Mackenzie  <acm@muc.de>
7722         Expunge "allow" + infinitive without direct object from source and doc.
7724         Do the same for "permit", "enable", and "prevent".
7726         * doc/emacs/mule.texi:
7727         * doc/lispref/control.texi:
7728         * doc/lispref/display.texi:
7729         * doc/lispref/frames.texi:
7730         * doc/lispref/functions.texi:
7731         * doc/lispref/nonascii.texi:
7732         * doc/lispref/streams.texi:
7733         * doc/lispref/windows.texi:
7734         * doc/misc/dbus.texi:
7735         * doc/misc/eww.texi:
7736         * doc/misc/flymake.texi:
7737         * doc/misc/octave-mode.texi:
7738         * doc/misc/org.texi:
7739         * doc/misc/reftex.texi:
7740         * doc/misc/tramp.texi:
7741         * doc/misc/wisent.texi:
7742         * etc/NEWS:
7743         * lisp/autorevert.el:
7744         * lisp/cedet/mode-local.el:
7745         * lisp/cedet/semantic/senator.el:
7746         * lisp/cedet/semantic/wisent.el:
7747         * lisp/dos-fns.el:
7748         * lisp/frameset.el:
7749         * lisp/gnus/gnus-agent.el:
7750         * lisp/gnus/mm-util.el:
7751         * lisp/international/characters.el:
7752         * lisp/ldefs-boot.el:
7753         * lisp/mail/mailclient.el:
7754         * lisp/man.el:
7755         * lisp/mh-e/mh-search.el:
7756         * lisp/net/tramp-cmds.el:
7757         * lisp/net/tramp-gvfs.el:
7758         * lisp/org/org-crypt.el:
7759         * lisp/org/org-element.el:
7760         * lisp/org/org-feed.el:
7761         * lisp/org/org.el:
7762         * lisp/org/ox-ascii.el:
7763         * lisp/org/ox-icalendar.el:
7764         * lisp/org/ox-publish.el:
7765         * lisp/org/ox.el:
7766         * lisp/play/gamegrid.el:
7767         * lisp/play/gomoku.el:
7768         * lisp/progmodes/antlr-mode.el:
7769         * lisp/progmodes/python.el:
7770         * lisp/progmodes/vhdl-mode.el:
7771         * lisp/strokes.el:
7772         * lisp/textmodes/ispell.el:
7773         * lisp/tree-widget.el:
7774         * lisp/vc/pcvs.el:
7775         * lisp/window.el:
7776         * src/lisp.h:
7777         * src/w32.c:
7778         * src/w32heap.c:
7779         * src/w32term.c:
7780         * src/window.c:
7781         * src/xfaces.c:
7783         Replace solecisms like "This allow to do something" with a correct
7784         alternative, such as "This allow you to do something", "This allows
7785         something to be done" or "This allows the doing of something".
7787 2016-01-24  l3thal  <kwhite@gnu.org>
7789         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
7791 2016-01-24  Kelvin White  <kwhite@gnu.org>
7793         Add NEWS entry for asynchronous reconnect in ERC
7795 2016-01-24  l3thal  <kwhite@gnu.org>
7797         Add NEWS entry for asynchronous reconnect in ERC
7799 2016-01-24  Kelvin White  <kwhite@gnu.org>
7801         browse-url.el: Add 'google-chrome' to supported browsers.
7803 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
7805         Port Tramp manual to latest Texinfo
7807         Otherwise, 'make pdf' did not work (Bug#22416).
7808         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
7809         (trampfn): Specialize to the case where METHOD is nonempty.
7810         The 2nd argument is now user@host, not 2nd user and 3rd host args.
7811         All uses changed.
7812         (trampf): New macro.
7814 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
7816         * eww.el (eww-render): Protect against empty content-types.
7818 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
7820         authors.el updates
7822         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
7823           Additions.
7825 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
7827         Rename xref-query-replace to xref-query-replace-in-results
7829         * lisp/progmodes/xref.el(xref-query-replace):
7830         Rename to xref-query-replace-in-results.
7831         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
7833         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
7834         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
7835         * doc/emacs/dired.texi (Operating on Files):
7836         * doc/emacs/maintaining.texi (Xref Commands)
7837         (Identifier Search, Identifier Search): Update accordingly.
7839 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
7841         Update cl-defgeneric and cl-defmethod docstrings
7843         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
7844         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
7845         (cl-defmethod): Mention that multiple dispatch arguments are
7846         allowed.  Document supported types.  (Bug#22336)
7848 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
7850         Comment out next-error-function integration in xref
7852         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
7853         Comment out next-error-function integration
7854         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
7856 2016-01-23  John Wiegley  <johnw@newartisans.com>
7858         Correct a use of "which" in intro.texi
7860 2016-01-23  Alan Mackenzie  <acm@muc.de>
7862         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
7864         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
7865         context of case labels (including "default") more rigorously.
7866         (c-guess-basic-syntax CASE 15): Consequential amendment.
7868         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
7870 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
7872         Don't operate on menu bar of nonexistent frame
7874         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
7875         is valid before redisplaying its menu. Fixes bug#22438.
7877 2016-01-23  Anders Lindgren  <andlind@gmail.com>
7879         Unbreak the GNUstep build.
7881         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
7882         predefined "caution" image. Add trace.
7883         (x_set_window_size): Remove unused variables `cols' and `rows'.
7884         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
7885         GNUstep is used.
7886         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
7887         ([EmacsWindow zoom:]): Remove unused variable `f'.
7889 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
7890             John Wiegley  <johnw@gnu.org>
7891             Michael Heerdegen  <michael_heerdegen@web.de>
7893         Improve documentation of 'pcase'
7895         * doc/lispref/control.texi (Pattern matching case statement):
7896         Reorganize, expand, and improve wording.
7898         * etc/NEWS: Mention that 'pcase' changes are documented.
7900 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7902         * etc/NEWS: Say that Cairo is experimental.
7904 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7906         Report error for PNG under Cairo
7908         * src/image.c (lookup_rgb_color): Signal a file error instead
7909         of dumping core when mishandling an image.
7911 2016-01-23  Arash Esbati  <esbati@gmx.de>
7913         Delete a spurious backquote (tiny change)
7915         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
7916         spurious backquote which raises an error with emacs 25.
7918 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7920         Pacify --enable-gcc-warnings --with-cairo
7922         Problem reported by Alexander Kuleshov in:
7923         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
7924         * src/gtkutil.c (xg_get_page_setup):
7925         Use switch rather than if-then-else.
7926         * src/image.c (COLOR_TABLE_SUPPORT):
7927         Define directly rather than via #define and optional later #undef.
7928         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
7929         Crash when the pixel is undefined, as there is a genuine bug
7930         here (Bug#22442).
7931         * src/image.c (tiff_load, gif_load, svg_load_image)
7932         (x_kill_gs_process) [USE_CAIRO]:
7933         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
7934         Omit unused locals, or move them to where they’re needed.
7935         (x_clear_area1): Now ATTRIBUTE_UNUSED.
7937 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
7939         Update documentation for Dired search and replace
7941         * doc/emacs/dired.texi (Operating on Files): Update descriptions
7942         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
7943         'dired-do-find-regexp-and-replace'.
7945         * etc/NEWS: Mention xref-related changes in Dired.
7947 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7949         Port recent xdisp.c fix to picky C compilers
7951         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
7952         putting #if inside the arguments to a standard function, which
7953         the C standard says has undefined behavior.
7955 2016-01-22  Alan Mackenzie  <acm@muc.de>
7957         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
7959         * lisp/progmodes/cc-engine.el (c-forward-declarator): New function.
7960         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
7961         contained in the preceding arg list.
7963         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Use the new function
7964         `c-forward-declarator' in place of inline code.
7966 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
7968         Fix the build with --enable-checking=glyphs
7970         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
7971         build without xwidget support.
7973 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
7975         Document cl-generic.el
7977         * doc/lispref/functions.texi (Generic Functions): New section.
7978         (Bug#22336)
7979         (Functions): Update the chapter menu.
7980         * doc/lispref/elisp.texi: Update the master menu.
7982 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
7984         xwidgets style cleanup
7986         Adjust the newly-added Xwidgets code so that it uses a more-typical
7987         Emacs style.  This should not affect behavior, except that in
7988         a few places it adds runtime checks that Lisp arguments are of
7989         the proper type, and in one place it uses more-precise arithmetic.
7990         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
7991         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
7992         Include xwidget.h unconditionally.
7993         * src/buffer.c (Fkill_buffer):
7994         * src/dispnew.c (update_window):
7995         * src/emacs.c (main):
7996         * src/print.c (print_object):
7997         * src/window.c (Fdelete_window_internal):
7998         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
7999         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
8000         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
8001         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
8002         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
8003         Call xwidget functions and macros without worrying about
8004         HAVE_XWIDGETS when the code is a no-op on non-xwidget
8005         platforms.
8006         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
8007         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
8008         (struct it.xwidget):
8009         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
8010         Always define.
8011         * src/emacsgtkfixed.h: Omit unnecessary comment.
8012         * src/keyboard.c: Fix spacing.
8013         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
8014         Define to be a no-op if not HAVE_XWIDGETS.
8015         * src/xwidget.c: Include xwidget.h first (after config.h)
8016         to make sure that it can stand by itself.
8017         (Fmake_xwidget, Fxwidget_webkit_execute_script):
8018         Fix typo in doc string.
8019         (Fmake_xwidget): Check type of args.
8020         (Fmake_xwidget, offscreen_damage_event)
8021         (webkit_document_load_finished_cb, webkit_download_cb)
8022         (webkit_new_window_policy_decision_requested_cb)
8023         (webkit_navigation_policy_decision_requested_cb)
8024         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
8025         (xwidget_osr_event_set_embedder, xwidget_init_view):
8026         Omit unnecessary casts.
8027         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
8028         (xwidget_show_view, xwidget_hide_view)
8029         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
8030         (xwidget_touched):
8031         * src/xwidget.h (struct xwidget.kill_without_query)
8032         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
8033         Use bool for boolean.
8034         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
8035         Simplify by using list functions.
8036         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
8037         (Fxwidget_resize): Check type of integer args
8038         before doing any work.  Check that they are nonnegative.
8039         (Fxwidget_set_adjustment): Check type of integer arg.
8040         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
8041         Simplify.  Use double, not float.
8042         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
8043         (valid_xwidget_spec_p): Simplify.
8044         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
8045         * src/xwidget.h: Include lisp.h first, so that includers do
8046         not need to worry about doing that before including this file.
8047         Make this .h file safe to include even on non-HAVE_XWIDGETS
8048         configurations, to simplify the includers.
8049         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
8050         (xwidget_end_redisplay, lookup_xwidget)
8051         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
8052         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
8053         (struct glyph_matrix, struct glyph_string, struct xwidget)
8054         (struct xwidget_view, struct window):
8055         New forward or incomplete decls, so that includers need not
8056         assume the corresponding .h files are already included, or that
8057         HAVE_XWIDGETS is defined.
8058         (struct xwidget_type, xwidget_from_id): Remove; unused.
8060 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
8062         Backport kqueue integration from master
8064         * configure.ac (--with-file-notification): Add kqueue.
8065         (top): Remove special test for "${HAVE_NS}" and
8066         ${with_file_notification}, this is handled inside gfilenotify
8067         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
8068         instead of library specific variables.  Add error message for
8069         gfile on Nextstep.
8071         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
8072         Fix some glitches in the example.
8074         * etc/NEWS: Mention kqueue.
8076         * lisp/filenotify.el (file-notify--library)
8077         (file-notify-descriptors, file-notify-callback)
8078         (file-notify-add-watch, file-notify-rm-watch)
8079         (file-notify-valid-p): Add kqueue support.
8080         (file-notify--rm-descriptor): Remove WHAT arg.
8082         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
8084         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
8086         * src/inotify.c (inotifyevent_to_event): Extract file name from
8087         watch_object if the event doesn't provide it.
8088         (Finotify_add_watch): Add file name to watch_object.
8090         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
8092         * src/kqueue.c: New file.
8094         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
8096         * test/automated/file-notify-tests.el
8097         (file-notify--test-expected-events): Remove.
8098         (file-notify--test-cleanup): Do not set that variable.
8099         (file-notify--test-timeout) Use different timeouts for
8100         different libraries.
8101         (file-notify--test-library): New defun.
8102         (file-notify--test-event-test): Make stronger checks.
8103         (file-notify--test-with-events): EVENTS can also be a list of
8104         lists.  Flush outstanding events before running the body.
8105         Make timeout heuristically depend on the number of events.
8106         (file-notify-test01-add-watch, file-notify-test02-events)
8107         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
8108         Rewrite in order to call file monitors but directory monitors.
8109         (file-notify-test02-events, file-notify-test04-file-validity): Do
8110         not skip cygwin tests.  Add additional test for file creation.
8111         Adapt expected result for different backends.
8112         (file-notify-test03-autorevert): Some of the tests don't work for
8113         w32notify.
8114         (file-notify-test06-many-events): New test.
8116 2016-01-22  John Wiegley  <johnw@newartisans.com>
8118         Further corrections to the pcase docstring
8120 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
8122         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
8124 2016-01-22  Stephen Leake  <stephen_leake@stephe-leake.org>
8126         In xref-collect-references, force backends to respect the 'dir' arg
8128         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
8129         to use `default-directory'.
8131 2016-01-22  John Wiegley  <johnw@newartisans.com>
8133         Minor correction to pcase docstring
8135 2016-01-22  John Wiegley  <johnw@newartisans.com>
8137         Write a new docstring for the pcase macro
8139         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
8141 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
8143         Avoid byte-compiler warning in todo-mode (bug#21953)
8145         * lisp/calendar/todo-mode.el (todo-convert-legacy-files): Add limit argument
8146         to looking-back to comply with advertised-calling-convention.
8148 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
8150         Fix desktop support in todo-mode and doc-view (bug#22377)
8152         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
8153         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
8155         * lisp/calendar/todo-mode.el (todo-modes-set-2):
8156         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
8158 2016-01-21  Paul Eggert  <eggert@cs.ucla.edu>
8160         No need to configure gobject-introspection
8162         It wasn’t needed for the recently-installed xwidget_mvp code; see:
8163         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
8164         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
8165         (HAVE_GIR):
8166         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
8167         Remove.  All uses removed.
8168         * configure.ac (emacs_config_features): Don’t worry about GIR.
8170 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
8172         Don’t export C symbols not used elsewhere
8174         These were recently added, mostly as part of xwidget code.
8175         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
8176         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
8177         Now static functions here, not macros in emacsgtkfixed.h.
8178         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
8179         Remove.  All uses replaced by definiens.
8180         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
8181         Remove; these are now static functions in emacsgtkfixed.c.
8182         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
8183         Remove; unused.
8184         (emacs_fixed_get_type): Remove decl; no longer extern.
8185         * src/xwidget.c (offscreen_damage_event)
8186         (webkit_mime_type_policy_typedecision_requested_cb)
8187         (webkit_new_window_policy_decision_requested_cb)
8188         (webkit_navigation_policy_decision_requested_cb)
8189         (xwidget_spec_value, xwidget_view_lookup)
8190         (xwidget_start_redisplay, xwidget_touch):
8191         Now static.
8192         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
8193         Remove decls.
8195 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
8197         Support squiggly heredocs in ruby-mode
8199         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
8200         Support squiggly heredocs added in Ruby 2.3.
8202         * test/indent/ruby.rb: Add squiggly example.
8204 2016-01-20  Glenn Morris  <rgm@gnu.org>
8206         * configure.ac (emacs_config_features): Remove WEBKIT.
8208 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
8210         Port to platforms with gtk3 but not webkitgtk3
8212         I ran into this problem on my Fedora 23 installation;
8213         Emacs configured but did not build when --with-xwidgets was specified.
8214         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
8215         (DOES_XWIDGETS_USE_GIR): New var.
8216         If --with-xwidgets is specified, report an error if not
8217         doable, to be consistent with the other --with options.
8218         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
8219         not work at all without webkitgtk3.  Simplify use of
8220         EMACS_CHECK_MODULES.  Output message about gobject
8221         introspection only if xwidgets are used.
8222         * etc/NEWS: Users need webkitgtk3, not merely webkit.
8223         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
8224         since this file is no longer compiled if webkitgtk3 is not available.
8226 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
8228         Fix doc string of 'isearch-search-fun-function'
8230         * lisp/isearch.el (isearch-search-fun-function)
8231         (isearch-search-string): Doc fixes.  (Bug#22411)
8233 2016-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
8235         * lisp/xwidget.el: Nitpicks
8237         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
8238         Use with-current-buffer rather than save-excursion + set-buffer.
8240 2016-01-20  Glenn Morris  <rgm@gnu.org>
8242         Don't hard-code 1 as point-min.
8244         * lisp/image-mode.el (image-display-size):
8245         * lisp/xwidget.el (xwidget-webkit-last-session)
8246         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
8248 2016-01-20  Glenn Morris  <rgm@gnu.org>
8250         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
8252 2016-01-20  Glenn Morris  <rgm@gnu.org>
8254         Trivial doc copyedits.
8256         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
8257         (Fxwidget_webkit_get_title, Fxwidget_resize)
8258         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
8259         (Fxwidget_info, Fxwidget_view_lookup)
8260         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
8262 2016-01-20  Glenn Morris  <rgm@gnu.org>
8264         Avoid advising image-display-size for xwidgets.
8266         * lisp/xwidget.el (xwidget-image-display-size): Remove.
8267         (image-display-size): Remove advice.
8268         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
8269         (image-display-size): Incorporate xwidget code directly.
8271 2016-01-20  Glenn Morris  <rgm@gnu.org>
8273         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
8275         * lisp/xwidget.el (window-configuration-change-hook)
8276         (kill-buffer-query-functions): Only modify these hooks if
8277         compiled with xwidget support.
8279 2016-01-20  Glenn Morris  <rgm@gnu.org>
8281         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
8283 2016-01-19  Glenn Morris  <rgm@gnu.org>
8285         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
8287         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
8289         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
8291 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
8293         * lisp/gnus/nnir.el (nnir-request-update-mark):
8294         Default to the original mark.
8295         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
8296         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
8298 2016-01-19  Glenn Morris  <rgm@gnu.org>
8300         * lisp/xwidget.el (report-xwidget-bug): Remove.
8302         (top-level): No longer require reporter.
8304 2016-01-19  Joakim Verona  <joakim@verona.se>
8305             Grégoire Jadi  <daimrod@gmail.com>
8307         Support for the new Xwidget feature.
8309         * configure.ac:
8310         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
8311         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
8312         * src/xdisp.c:
8313         (handle_display_spec, handle_single_display_spec, push_it)
8314         (pop_it, set_iterator_to_next, dump_glyph)
8315         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
8316         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
8317         (produce_xwidget_glyph, x_produce_glyphs)
8318         (get_window_cursor_type):
8319         * src/window.c (Fdelete_window_internal):
8320         * src/termhooks.h (e):
8321         * src/print.c (print_object):
8322         * src/lisp.h (ptrdiff_t):
8323         * src/keyboard.c (kbd_buffer_get_event, make_lispy_event)
8324         (syms_of_keyboard):
8325         * src/emacs.c (main):
8326         * src/dispnew.c (update_window, scrolling_window):
8327         * src/dispextern.h (g, i):
8328         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
8329         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
8330         * src/keyboard.c (kbd_buffer_get_event):
8331         * src/emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
8332         (emacs_fixed_class_init): Add case for an xwidget view.
8334         * src/xwidget.c, src/xwidget.h, lisp/xwidget.el: New files for xwidgets
8337         Various improvements to the Xwidget feature.
8338         * src/xwidget.c:
8339         * src/emacsgtkfixed.c:
8340         * lisp/xwidget.el:
8342 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
8344         Improve documentation of 'alist-get'
8346         * doc/lispref/variables.texi (Setting Generalized Variables): Add
8347         'alist-get' to the list of functions that can appear in PLACE
8348         argument of 'setf'.
8350 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
8352         Minor copyedits of doc/emacs/maintaining.texi
8354         * doc/emacs/maintaining.texi (List Identifiers): More accurate
8355         description of "C-M-i" wrt tags tables.
8356         (Tags Tables): Move the definition of "tag" to a footnote.
8358 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
8360         Unbreak the Cygwin-w32 build
8362         * src/w32fns.c (globals_of_w32fns): Move the initialization of
8363         resetstkoflw into a part that isn't compiled on Cygwin.
8364         (Bug#22403)
8366 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8368         * shr.el (shr-table-body): Allow tables to have text children.
8370 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
8372         Cope with multiple overlapping faces.
8374         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
8375           left.
8376           (hfy-face-resolve-face): Handle font specification as well as font
8377           name. Documentation update. (Bug#21990)
8379 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
8381         Fix spurious escapes in describe-input-method
8383         Problem reported by Vincent Belaïche (Bug#22309).
8384         * lisp/international/mule-cmds.el (describe-language-environment):
8385         * lisp/international/quail.el (quail-help):
8386         Apply substitute-command-keys to doc strings before displaying them.
8388 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
8390         Minor improvements to (random t) documentation
8392         * doc/lispref/numbers.texi (Random Numbers):
8393         * src/fns.c (Frandom):
8394         Omit unnecessary details about randomness fallback.
8395         Say that it is a fallback.
8397 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
8399         Rename methods in Ruby etags example file
8401         * test/etags/ruby-src/test.rb: Rename the example methods to
8402         correspond to the common terminology used in Ruby.
8403         * test/etags/CTAGS.good:
8404         * test/etags/ETAGS.good_1:
8405         * test/etags/ETAGS.good_2:
8406         * test/etags/ETAGS.good_3:
8407         * test/etags/ETAGS.good_4:
8408         * test/etags/ETAGS.good_5:
8409         * test/etags/ETAGS.good_6: Adjust accordingly.
8411 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
8413         Propertize backtick in 'def `(abc)' as symbol constituent
8415         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
8416         Propertize backtick in 'def `(abc)' as symbol constituent.
8417         (ruby-syntax-propertize-function):
8418         Rename to ruby-syntax-propertize.
8420 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
8422         Fix scrolling under scroll-preserve-screen-position on TTY
8424         * src/window.c (window_scroll_line_based): When setting point to
8425         preserve screen coordinates, don't let cursor enter either of the
8426         two scroll margins.  (Bug#22395)
8428 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8430         Fix shr table rendering of nested tables
8432         * shr.el (shr-table-body): Don't include all tbodies in nested
8433         tables in the levels above.
8435 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
8437         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
8439 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
8441         Add xref-based replacements for Dired search commands
8443         * lisp/dired-aux.el (dired-do-find-regexp)
8444         (dired-do-find-regexp-and-replace): New commands.
8445         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
8447         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
8448         `Q' to the new commands.
8450         * lisp/progmodes/xref.el (xref-query-replace)
8451         (xref-collect-matches): Add progress reporters.
8452         (xref--find-ignores-arguments): Return nil for zero ignores.
8453         (xref--show-xrefs): Add an optional argument.
8454         (xref-collect-matches): Drop the assert.  'find' accepts a
8455         regular file in place of directory argument, too.
8457 2016-01-18  Alan Mackenzie  <acm@muc.de>
8459         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
8461 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
8463         Improve user documentation of Xref
8465         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
8466         (Looking Up Identifiers, Identifier Search, List Identifiers):
8467         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
8468         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
8469         for the details.
8471 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
8473         Fix scrolling under scroll-preserve-screen-position and margins
8475         * src/window.c (window_scroll_pixel_based): When setting point to
8476         preserve screen coordinates, don't let cursor enter either of the
8477         two scroll margins.  Fix incorrect usage of
8478         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
8479         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
8481 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
8483         Unbreak the MS-Windows build
8485         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
8486         WINDOWSNT, to avoid link failure.  (Bug#22202)
8488 2016-01-18  Alan Mackenzie  <acm@muc.de>
8490         Desktop: protect users against inadvertant upgrading of desktop file.
8492         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
8494         * etc/NEWS: Add an entry about upgrading a desktop file.
8496         * lisp/desktop.el (desktop-file-version): Amend doc string.
8497         (desktop-native-file-version, desktop-io-file-version): new variables.
8498         (desktop-clear): Set desktop-io-file-version to nil.
8499         (desktop-buffer-info): make the presence of the last item on the list
8500         conditional on (>= desktop-io-file-version 208).
8501         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
8502         Amend the doc string.  Add code to determine the output file version.
8503         (desktop-create-buffer): Set desktop-io-file-version to the input file's
8504         version.
8506 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
8508         Initialize GnuTLS before calling gnutls_rnd
8510         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
8511         Don’t set gnutls_global_initialized if gnutls_global_init fails.
8512         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
8513         if 2.12 or later, which has gnutls_rnd.
8514         (emacs_gnutls_global_init, gnutls_rnd): New fallback
8515         placeholder macros if before 2.12.
8516         (init_random): Initialize gnutls globals before trying to
8517         use gnutls_rnd.
8519 2016-01-18  Andreas Schwab  <schwab@linux-m68k.org>
8521         Don't use GnuTLS before it is initialized
8523                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
8525 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
8527         Port cleanup attribute to OpenBSD
8529         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
8530         sprintf, and this messes up 'configure' when it tests for the cleanup
8531         attribute.  Work around the problem by using __has_attribute directly.
8532         Problem reported by Joakim Jalap (Bug#22385).
8533         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
8534         * m4/ax_gcc_var_attribute.m4: Remove.
8535         * src/conf_post.h (__has_attribute): Provide a substitute, for
8536         non-GCC or older GCC compilers.  All uses changed to assume
8537         the substitute.  Check for the cleanup attribute.
8538         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
8540 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
8542         Prefer GnuTLS when acquiring random seed
8544         This attempts to improve on the fix for Bug#22202.
8545         * configure.ac (HAVE_DEV_URANDOM): Remove.
8546         Check /dev/urandom existence at run time, not at build time,
8547         since the device could exist in the former but not the latter.
8548         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
8549         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
8550         (random_seed): New typedef.
8551         (set_random_seed): New static function.
8552         (seed_random): Use them.
8553         (init_random): Use random_seed instead of uintmax_t, so as to
8554         not consume more entropy than needed.  Prefer gnutls_rnd if it
8555         works; this avoids a redundant open of /dev/urandom on
8556         GNU/Linux with modern GnuTLS.
8558 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8560         Improve documentation of dynamic modules
8562         * doc/lispref/loading.texi (How Programs Do Loading): Update the
8563         description of searching for files in 'load' when Emacs was built
8564         with support for dynamic modules.
8566 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8568         * INSTALL: Document --with-modules.
8570 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8572         Document 'function-put'
8574         * doc/lispref/symbols.texi (Symbol Plists): Document
8575         'function-put'.  Update documentation of 'function-get'.
8577 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8579         Document 'funcall-interactively'
8581         * doc/lispref/commands.texi (Interactive Call): Document
8582         'funcall-interactively'.
8583         * doc/lispref/functions.texi (Calling Functions): Mention
8584         'funcall-interactively' and provide a cross-reference.
8586 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8588         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
8590         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
8592 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8594         Document renaming of selection-related functions
8596         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
8597         functions into the corresponding "gui-*" functions.  Make the
8598         description slightly less X-centric.
8600 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8602         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
8604 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8606         Document 'define-inline'
8608         * doc/lispref/functions.texi (Defining Functions): Document
8609         'define-inline' and related macros.
8611         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
8613 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
8615         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
8617         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
8619 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
8621         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
8623         instead of manually writing a dir-locals file.
8625 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
8627         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
8629         (dir-locals-file)
8630         * lisp/files-x.el (modify-dir-local-variable)
8631         * lisp/dos-fns.el (dosified-file-name)
8632         * lisp/help-fns.el (describe-variable): Change accordingly.
8634 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
8636         Fix incompatbilities with MS-Windows 2000 and older
8638         * src/w32.c <multiByteToWideCharFlags>: New global variable.
8639         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
8640         Use it instead of the literal MB_ERR_INVALID_CHARS.
8641         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
8642         appropriate for the underlying OS version.  For details, see
8643         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
8644         * src/w32.h: Declare multiByteToWideCharFlags.
8645         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
8646         (add_tray_notification): Use multiByteToWideCharFlags instead of
8647         the literal MB_ERR_INVALID_CHARS.
8648         (_resetstkoflw_proc): New typedef.
8649         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
8650         pointer, as this function is absent in msvcrt.dll shipped with W2K
8651         and older systems.
8653 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8655         Mention in PROBLEMS an issue with MS-Windows NT4
8657         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
8658         on Windows NT4.  For the details, see
8659         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
8661 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
8663         Ensure 8-byte aligned memory allocation on MS-Windows 9X
8665         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
8666         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
8667         (malloc_after_dump_9x, realloc_after_dump_9x)
8668         (free_after_dump_9x): New functions.  (Bug#22379)  See also
8669         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
8670         for more details about the original problem.
8672         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
8673         (free_after_dump_9x): Add prototypes.
8675 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8677         Fix tests for active region in hideif.el
8679         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
8680         'use-region-p' to test whether to operate on region, instead of
8681         testing 'mark-active'.
8683 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8685         Fix interactive specs in some hideif.el commands
8687         * lisp/progmodes/hideif.el (hif-evaluate-macro)
8688         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
8689         in commands that should only act on the region if it's active.
8691 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
8693         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
8695 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
8697         Enable test selector from command line
8699         * test/automated/Makefile.in: Change variable manipulation to avoid
8700           over-writing selector.
8702 2016-01-15  Alan Mackenzie  <acm@muc.de>
8704         Don't confuse "::" with ":" when trying to parse member initializers.
8706         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
8707         more robustly for ":" token when searching backwards for it.
8709         * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New language
8710         variable.
8712 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
8714         Ensure positive number of glyphs for margins of positive width
8716         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
8717         positive value when a non-zero width of the marginal area was
8718         requested.  (Bug#22356)
8720 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
8722         Fix crashes when mini-window has non-zero margins
8724         * src/window.c (resize_frame_windows): Use 'new_size' to set
8725         minibuffer window's 'total_cols' value, as 'size' might be in
8726         pixels.  (Bug#22356)
8728 2016-01-15  Alan Mackenzie  <acm@muc.de>
8730         In comment-dwim with style `extra-line', respect indent-tabs-mode.
8732         This fixes bug #22369.
8734         * lisp/newcomment.el (comment-make-bol-ws): New function.
8735         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
8737 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
8739         Make 'random' seeds cryptographically secure if possible
8741         * configure.ac: Check for "/dev/urandom".
8743         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
8744         for the seed from "/dev/urandom".
8745         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
8746         * src/fns.c (Frandom): Update the doc string to indicate that
8747         system entropy is used when available.
8748         * src/w32.c: Include wincrypt.h.
8749         (w32_init_crypt_random, w32_init_random): New functions, use the
8750         CryptGenRandom API.
8751         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
8752         * src/w32.h (w32_init_random): Add prototype.
8754         * doc/lispref/numbers.texi (Random Numbers): Document more details
8755         about 't' as the argument to 'random'.
8757         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
8758         strong seed if possible.
8760         (Bug#22202)
8762 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
8764         Unhide the --no-line-directive option to 'etags'
8766         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
8767         option.  (Bug#22306)
8769         * doc/man/etags.1: Document the --no-line-directive option.
8771 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
8773         Fix picture-mode wrt double-width characters
8775         * lisp/textmodes/picture.el (picture-insert): Check the width of
8776         the character being replaced, not just that of the replacement.
8777         (Bug#1808)
8779 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
8781         Honor docstring of gnus-group-get-new-news
8783         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
8784         but non-numeric, unconditionally consider all groups to need updating.
8786 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
8788         Disallow parenthesis in non-pseudo CSS selectors
8790         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
8791         parenthesis in selectors except for in the function notation that
8792         might appear right after a pseudo-class.
8793         * test/indent/scss-mode.scss: Add a test for it.
8795 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
8797         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
8799 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
8801         check-maybe shall run only default tests
8803         * test/automated/Makefile.in (check, check-expensive): Depend on
8804         mostlyclean.
8805         (check-maybe): Re-run only default tests.
8806         (check-doit): Use code of check-maybe.
8807         (mostlyclean): Move *.log files away.
8809 2016-01-14  Mark Oteiza  <mvoteiza@udel.edu>
8811         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
8813 2016-01-14  Dmitry Gutov  <dgutov@yandex.ru>
8815         Un-obsolete tags-loop-continue
8817         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
8818         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
8820 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8822         Document obsoletion of 'intangible' and 'point-entered/left'
8824         * doc/lispref/text.texi (Special Properties): Document the new
8825         properties 'cursor-intangible' and 'cursor-sensor-functions'.
8826         Document the obsolete status of 'intangible', 'pointer-left',
8827         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
8828         * doc/lispref/display.texi (Overlay Properties): Document that
8829         'intangible' overlay property is obsolete.
8831         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
8833 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8835         Updater documentation of 'looking-back'
8837         * doc/lispref/searching.texi (Regexp Search): Update documentation
8838         of 'looking-back'.  Fix markup.
8840 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8842         Document 'pre-redisplay-functions'
8844         * doc/lispref/hooks.texi (Standard Hooks):
8845         * doc/lispref/display.texi (Forcing Redisplay): Document
8846         'pre-redisplay-functions'.
8848 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8850         Document the new deafault value of 'load-read-function'
8852         * doc/lispref/loading.texi (How Programs Do Loading): Document the
8853         change in the default value of 'load-read-function'.
8855 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8857         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
8859         * doc/lispref/nonascii.texi (Text Representations): Document
8860         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
8862 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8864         Document the new prefix-command hooks
8866         * doc/lispref/hooks.texi (Standard Hooks): Document
8867         `prefix-command-echo-keystrokes-functions' and
8868         `prefix-command-preserve-state-hook'.
8870 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
8872         Fix one more misuse of time-stamp-time-zone
8874         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
8875         than the unportable "GMT" for time zone.
8877 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
8879         Fix NNTP NEWGROUPS off-by-a-few-hours bug
8881         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
8882         in Universal Time, since we’re telling the server “GMT”.
8884 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
8886         Update publicsuffix.txt from upstream
8888         * etc/publicsuffix.txt: Update from
8889         https://publicsuffix.org/list/effective_tld_names.dat
8890         dated 2016-01-12 11:52:01 UTC.
8892 2016-01-13  Glenn Morris  <rgm@gnu.org>
8894         Fix some declarations.
8896         * lisp/descr-text.el (internal-char-font):
8897         * lisp/cedet/mode-local.el (xref-item-location):
8898         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
8899         (epg-sub-key-capability, epg-sub-key-validity):
8900         * lisp/international/mule-util.el (internal-char-font):
8901         Fix declarations.
8903 2016-01-13  Glenn Morris  <rgm@gnu.org>
8905         Fix some custom types.
8907         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
8908         * lisp/gnus/gnus.el (gnus-valid-select-methods):
8909         * lisp/mail/rmail.el (rmail-get-coding-function):
8910         * lisp/net/newst-treeview.el (newsticker-groups-filename):
8911         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
8912         * lisp/textmodes/tildify.el (tildify-space-predicates):
8913         * lisp/url/url-tramp.el (url-tramp-protocols):
8914         Fix custom types.
8916 2016-01-13  Glenn Morris  <rgm@gnu.org>
8918         Add some missing version tags.
8920         * lisp/electric.el (electric-quote-comment)
8921         (electric-quote-string, electric-quote-paragraph):
8922         * lisp/epg-config.el (epg-gpgconf-program):
8923         * lisp/rect.el (rectangle-preview):
8924         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
8925         * lisp/emacs-lisp/package.el (package-selected-packages)
8926         (package-hidden-regexps):
8927         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
8928         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
8929         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
8930         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
8931         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
8932         (mml-smime-sign-with-sender, mml2015-always-trust)
8933         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
8934         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
8935         (browse-url-conkeror-arguments):
8936         * lisp/net/newst-reader.el (newsticker-download-logos):
8937         * lisp/progmodes/gud.el (gud-guiler-command-name):
8938         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
8939         * lisp/progmodes/project.el (project-vc):
8940         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
8941         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
8942         (python-shell-completion-native-disabled-interpreters)
8943         (python-shell-completion-native-enable)
8944         (python-shell-completion-native-output-timeout)
8945         (python-shell-completion-native-try-output-timeout):
8946         * lisp/progmodes/xref.el (xref):
8947         * lisp/term/screen.el (xterm-screen-extra-capabilities):
8948         * lisp/term/xterm.el (xterm-max-cut-length):
8949         Add missing version tags.
8951 2016-01-13  Glenn Morris  <rgm@gnu.org>
8953         * test/automated/core-elisp-tests.el
8954         (core-elisp-tests-1-defvar-in-let): Add a custom type.
8956 2016-01-13  Glenn Morris  <rgm@gnu.org>
8958         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
8960         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
8962 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
8964         Merge from gnulib
8966         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
8967         It also updates to the latest version of texinfo.tex.
8968         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
8969         * build-aux/update-copyright, doc/misc/texinfo.tex:
8970         Update from gnulib.
8972 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8974         Update documentation of 'process-running-child-p'
8976         * doc/lispref/processes.texi (Input to Processes): Document the
8977         changes in return value of 'process-running-child-p'.
8979 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8981         Update documentation of 'deactivate-mark'.
8983         * doc/lispref/markers.texi (The Mark): Document that
8984         'deactivate-mark' is now buffer-local when set.
8986 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8988         Update documentation of 'completion-table-dynamic'
8990         * doc/lispref/minibuf.texi (Programmed Completion): Document the
8991         new optional argument to 'completion-table-dynamic'.
8993 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8995         Document changes in 'read-buffer' and 'read-buffer-function'
8997         * doc/lispref/minibuf.texi (High-Level Completion): Document the
8998         4th argument to 'read-buffer' and 'read-buffer-function'.
9000 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
9002         Fix time-stamp-time-zone bugs introduced in July
9004         This fixes a bug introduced when the July changes to
9005         format-time-string installed, as the changes were not
9006         correctly handled in this module (Bug#22302).
9007         Also, document time stamp time zones.
9008         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
9009         (time-stamp--format): New private function.
9010         (time-stamp-string, time-stamp-string-preprocess)
9011         (time-stamp-do-number): Use it.
9012         * doc/emacs/files.texi (Time Stamps): Mention time zones.
9013         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
9015 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
9017         Make piping to subprocesses more robust on MS-Windows
9019         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
9020         buffer can hold.  Don't return -1 if something has been written to
9021         the pipe.  Zero out 'errno' before calling '_write', to avoid
9022         returning a stale value.  (Bug#22344)
9023         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
9024         * src/w32.c (pipe2): Use it to request a user-defined size for the
9025         pipe being created.
9027         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
9029         * doc/emacs/msdos.texi (Windows Processes): Document
9030         'w32-pipe-buffer-size'.
9032 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
9034         test/automated/vc-hg.el: Support out-of-tree build
9036         * test/automated/vc-hg.el
9037         (vc-hg-annotate-extract-revision-at-line-with-filename)
9038         (vc-hg-annotate-extract-revision-at-line-with-both):
9039         Don't refer to source-directory.
9040         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
9042 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
9044         Minor change in tramp-tests.el
9046         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
9047         Use `dired-uncache' instead of a Tramp internal function.
9049 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
9051         * etc/HELLO: Add Armenian and Mongolian greetings.
9053         (Bug#22346)
9055 2016-01-11  Alan Mackenzie  <acm@muc.de>
9057         Java Mode: Fontify identifiers in the presence of annotations.
9059         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
9060         Don't move point when the defun fails.
9061         (c-forward-decl-or-cast-1): Correct a usage of match data.
9063         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
9064         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
9065         removed variable.
9067         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
9069 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
9071         Avoid an infloop when we run out of memory
9073         * src/alloc.c (garbage_collect_1): Don't bother saving and
9074         restoring the echo-area message if we are GC'ing after running out
9075         of memory.  This avoids an infloop due to repeated attempts to
9076         allocate memory for the cons cell needed to save the message,
9077         which signals the memory-full error, which attempts to save the
9078         echo-area message, which signals memory-full again, etc.
9080 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
9082         Avoid unnecessary failures of auto-saving after fatal error
9084         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
9085         the benefit of FAT volumes if we are called as part of shutting
9086         down due to a fatal error, which probably means we are trying to
9087         auto-save the session.
9088         * src/lread.c (check_obarray): Don't bother making the obarray
9089         valid if we are shutting down due to a fatal error.  This avoids
9090         interfering with auto-saving the crashed session.
9092 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
9094         Simplify HAVE_MODULES use in mark_maybe_pointer
9096         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
9097         so that later code can use 'if' rather than '#ifdef'.
9098         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
9099         always working.
9101 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
9103         Revert attempt to use 'noexcept' in typedef
9105         This use of 'noexcept' runs afoul of the C++11 standard.
9106         Problem reported by Philipp Stephani in:
9107         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
9108         * src/emacs-module.c (emacs_finalizer_function):
9109         Move this typedef here ...
9110         * src/emacs-module.h: ... from here, and use only the C
9111         version of the typedef.  The typedef is now private since it
9112         is never used in the .h file now and anyway it seemed to be
9113         causing more confusion than it cured.
9114         (make_user_ptr, get_user_finalizer, set_user_finalizer):
9115         Open-code the type instead.
9117 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
9119         Update documentation of 'indirect-function'
9121         * doc/lispref/eval.texi (Function Indirection): Update the
9122         documentation of 'indirect-function'.
9124 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
9126         Update documentation for obsoleting 'syntax-begin-function'
9128         * doc/lispref/syntax.texi (Position Parse): Undocument
9129         'syntax-begin-function' that is now obsolete.
9131 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
9133         Document new features if Eshell
9135         * doc/misc/eshell.texi (Input/Output): Document the new
9136         '#<bufname>' syntax.
9137         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
9138         Disable "Key Index" generation, as there are no @kindex entries in
9139         this manual.
9141 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
9143         Handle too long commands in Tramp
9145         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
9146         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
9147         order to not exceed shell command line limit.
9149         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
9150         (tramp--test-utf8): Include Arabic file name, again.
9152 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
9154         * .gitattributes: *.cur and *.pif are binary files too.
9156 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
9158         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
9160 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
9162         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
9164         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
9165         within $(...).
9166         * test/indent/shell.sh: Add corresponding test.
9168 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
9170         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
9172         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
9173         cast to Lisp_Object.
9175 2016-01-10  Dmitry Gutov  <dgutov@yandex.ru>
9177         Use short date for 'hg annotate', and output the author
9179         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
9180         Change '-d' to '-dq'.  (Bug#21805)
9181         (vc-hg-annotate-switches): Default to "-u" "--follow".
9182         (vc-hg-annotate-re): Update to recognize the short date format
9183         and the optional username.
9184         (vc-hg-annotate-time)
9185         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
9187         * test/automated/vc-hg.el: New file.
9189 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
9191         Spelling fix
9193 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
9195         Document user-level functions in project.el
9197         * lisp/progmodes/project.el (project-find-file)
9198         (project-or-external-find-file): Add doc strings.
9200 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
9202         Document the user-level features of the Xref package
9204         * doc/emacs/maintaining.texi (Maintaining): Add a list of
9205         described features.
9206         (Xref): New section, made out of thoroughly rewritten "Tags"
9207         section.
9208         (Find Identifiers, Looking Up Identifiers, Xref Commands)
9209         (Identifier Search, List Identifiers): New subsections,
9210         incorporating the old tags commands and the new xref commands.
9211         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
9212         Section and subsections demoted to a lower level.
9213         * doc/emacs/search.texi (Search):
9214         * doc/emacs/windows.texi (Pop Up Window):
9215         * doc/emacs/frames.texi (Creating Frames):
9216         * doc/emacs/programs.texi (Imenu, Symbol Completion):
9217         * doc/emacs/building.texi (Grep Searching):
9218         * doc/emacs/dired.texi (Operating on Files):
9219         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
9221 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
9223         * doc/lispref/loading.texi: Add `define-type' entry for load-history
9225         * doc/lispref/loading.texi (Where Defined): Remove incorrect
9226         cl-defmethod description, and add missing define-type entry.
9228 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
9230         Improve doc strings and prompts in xref.el
9232         * lisp/progmodes/xref.el (xref-backend-functions)
9233         (xref-find-definitions): Doc fixes.
9234         (xref-query-replace): Doc fix.  Improve prompts for arguments.
9236 2016-01-09  Alan Mackenzie  <acm@muc.de>
9238         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
9240         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
9241         `font-lock-extend-regions-wholelines' from
9242         `font-lock-extend-region-functions' rather than setting the latter to
9243         nil.
9245 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
9247         Fix coding system for Tramp on OS X.
9249         * lisp/net/tramp-compat.el: Require ucs-normalize.
9251         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
9252         Set coding system to `utf-8-hfs' for Mac OS X.
9254         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
9255         Flush directory properties when needed.
9256         (tramp--test-utf8): Include Chinese file name, again.
9258 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
9260         Update 'load-history' docs
9262         * doc/lispref/loading.texi (Where Defined): Update the list of
9263         forms in 'load-history' by adding the forms created for the
9264         'cl-generic' generics.  (Bug#21422)
9266 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
9268         Fix (error ...) error
9270         Problem reported by Glenn Morris in:
9271         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
9272         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
9273         introduced in my Aug 28 change, where I got confused by the
9274         two meanings of (error ...).
9276 2016-01-08  Alan Mackenzie  <acm@muc.de>
9278         Correctly analyze brace arguments in templated C++ function declarations.
9280         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
9281         POS and LIMIT parameters, like the other c-go-list-* functions have.
9283         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
9284         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
9285         followed by template specifiers.
9287 2016-01-08  Glenn Morris  <rgm@gnu.org>
9289         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
9291         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
9293 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
9295         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
9297 2016-01-08  Alan Mackenzie  <acm@muc.de>
9299         Respect fontification region calculated by major mode.  Fixes bug #22316.
9301         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
9302         fontification region has been calculated by a function on
9303         font-lock-extend-after-change-region-function use this region rather than
9304         changing the end position to somewhere else.
9306 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
9308         Improve documentation of Delete Selection mode
9310         * lisp/delsel.el (delete-selection-mode)
9311         (delete-selection-helper): Update and expand the doc strings.
9312         (Bug#22296)
9314         * doc/emacs/mark.texi (Using Region): Document the behavior of
9315         delete commands in Delete Selection mode.  (Bug#22296)
9317         * doc/lispref/markers.texi (The Mark): Document how to add the
9318         support for Delete Selection mode to Lisp programs. (Bug#22296)
9320 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
9322         Fix two project-find-file issues
9324         * lisp/progmodes/project.el (project--value-in-dir):
9325         Temporarily set enable-local-variables to :all.
9326         (project-find-file, project-or-external-find-file):
9327         All autoloads.
9328         (project--find-file-in): Require xref.
9330 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
9332         Clarify doc string of 'dired-current-directory'
9334         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
9335         the return value might not end in a slash when called with the
9336         optional argument non-nil.  (Bug#6273)
9338 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
9340         Use the face of preceding text for displaying the ellipsis
9342         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
9343         text in it->saved_face_id for displaying the ellipsis, and ignore
9344         the face, if any, of the invisible text.  (Bug#22320)
9346 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
9348         Suppress Chinese file name test for OSX in tramp-tests.el
9350         * test/automated/tramp-tests.el (tramp--test-utf8):
9351         Remove instrumentation.  Suppress Chinese file name test for OSX.
9353 2016-01-08  Glenn Morris  <rgm@gnu.org>
9355         * admin/admin.el (set-version): Also handle the NEWS file.
9357 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
9359         apropos-library: Skip obvious duplicates; don't error on generics
9361         * lisp/apropos.el (apropos-library): Skip "was an autoload"
9362         entries, to avoid obvious duplicates.  For each cl-defmethod
9363         entry, take just its function symbol (bug#21422).
9365 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
9367         Add project-find-file and project-or-external-find-file
9369         * lisp/minibuffer.el (completion-category-defaults):
9370         Add `project-file' category.
9372         * lisp/progmodes/project.el (project-find-file)
9373         (project-or-external-find-file): New commands.
9374         (project--find-file-in): New private function.
9376         * lisp/progmodes/xref.el (xref-collect-matches): Use
9377         `expand-file-name' on DIR, to expand the tildes.
9378         (xref--find-ignores-arguments): Extract from
9379         `xref--rgrep-command'.
9381 2016-01-07  Leo Liu  <sdl.web@gmail.com>
9383         Add defvar-local to lisp-imenu-generic-expression
9385         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
9386           defvar-local.
9388 2016-01-07  Leo Liu  <sdl.web@gmail.com>
9390         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
9392         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
9393           Don't declare (indent 1).
9395 2016-01-07  Glenn Morris  <rgm@gnu.org>
9397         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
9399 2016-01-07  Glenn Morris  <rgm@gnu.org>
9401         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
9403         Avoid specifying the length of a time object (it has not been "2"
9404         for some time).
9406 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
9408         Properly encode/decode base64Binary data in SOAP
9410                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
9411                 base64Binary value as utf-8.
9412                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
9414 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
9416         Obey coding-system-for-write when writing stdout/stderr in batch
9418         * src/print.c (printchar_to_stream):
9419         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
9420         a non-nil value, use it to encode output in preference to
9421         locale-coding-system.  See the discussions in
9422         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
9423         for the details.
9425         * doc/lispref/os.texi (Terminal Output): Document how to send
9426         non-ASCII text via 'send-string-to-terminal'.
9427         (Batch Mode): Document how text written to standard streams is
9428         encoded.  Fix inaccuracy regarding which output streams are used
9429         by output functions in batch mode.
9431 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
9433         * doc/misc/efaq.texi (Packages that do not come with Emacs):
9434         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
9435         <chenggao@royau.me> in
9436         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
9438 2016-01-06  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
9440         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
9442         Fix backslash.  (Bug#22224)
9444 2016-01-06  Federico Beffa  <beffa@ieee.org>  (tiny change)
9446         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
9448         Make it actually work.  (Bug#22265)
9450 2016-01-05  Alan Mackenzie  <acm@muc.de>
9452         Remove function wrongly on AWK Mode value of context fontification hook.
9454         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
9455         swap order of entries so that awk's entry isn't superseded by the default.
9457         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
9458         to handle nil value of c-before-context-fontification-functions.
9460 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
9462         * src/buffer.c: Stick with ASCII in doc string.
9464 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
9466         Reword transient-mark-mode doc string
9468         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
9469         The value 'lambda (literally) can be interpreted as (quote lambda),
9470         which is not intended here; we want just the lambda symbol.
9472 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
9474         Update doc string of 'selective-display'
9476         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
9477         using it with the value of 't' is obsolete.  (Bug#1092)
9479 2016-01-05  Alan Mackenzie  <acm@muc.de>
9481         Make C++ buffers writeable when writing their initial text properties.
9483         This is a correction to yesterday's CC Mode patch.
9485         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
9486         c-save-buffer-state around the function rather than a mere `let'.
9488 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
9490         Additional changes for "make check-expensive"
9492         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
9493         Explain make target `check-expensive'.
9495         * etc/NEWS: Mention new make target `check-expensive'.
9497         * test/automated/Makefile.in (check-doit): New target.
9498         (check, check-expensive): Use it.
9500 2016-01-04  Alan Mackenzie  <acm@muc.de>
9502         Apply text properties for <, > in new after-change function (C++ Java Modes).
9504         These are category/syntax-table properties to give < and > paren syntax.
9505         Also apply certain `c-type' text properties to the insides of <..> constructs
9506         to ensure that identifiers contained by them get fontified.  This patch fixes
9507         bug #681.
9509         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
9510         after-change action.
9512         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
9513         change region to include <s and >s which might not be already marked as
9514         parens, rather than just when paren text properties are removed.
9515         (c-restore-<>-properties): New after-change function, which applies text
9516         properties marking < and > with paren syntax.
9518         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
9519         properties are applied to the interiors of <...> constructs, to ensure
9520         fontification of identifiers there.
9522         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
9523         c-restore-<>-properties to this list for C++ and Java.
9525         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
9526         c-before-font-lock-functions, exclude c-restore-<>-properties from the
9527         functions invoked.
9528         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
9529         to allow modification by before-change functions.
9530         (c-after-change): Amend c-new-END here, rather than initializing it and
9531         c-new-BEG.
9533 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
9535         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
9537 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
9539         Introduce check-expensive tests.
9541         * Makefile.in (check-expensive):
9542         * test/automated/Makefile.in (check-expensive): New target.
9544         * test/automated/auto-revert-tests.el
9545         (auto-revert-test01-auto-revert-several-files):
9546         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
9547         * test/automated/tramp-tests.el (tramp-test26-process-file)
9548         (tramp-test27-start-file-process, tramp-test28-shell-command)
9549         (tramp-test29-vc-registered)
9550         (tramp-test31-special-characters-with-stat)
9551         (tramp-test31-special-characters-with-perl)
9552         (tramp-test31-special-characters-with-ls)
9553         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
9554         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
9555         (tramp-test35-unload): Tag the tests as :expensive-test.
9557 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9559         shr-tag-video bug fix
9561         * shr.el (shr-tag-video): Protect against the `poster' being
9562         empty.
9564 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
9566         Minor fixes in tramp-tests.el
9568         * test/automated/tramp-tests.el (tramp-test26-process-file):
9569         Move point properly.
9570         (tramp-test29-vc-registered): Work with relative file names.
9572 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
9574         Ensure redisplay when 'truncate-lines' is set
9576         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
9577         (Bug#22303)
9579 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
9581         Fix a doc string of 'transient-mark-mode'
9583         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
9584         "lambda" in doc string from becoming a link to lambda expressions.
9586 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
9588         MS-Windows followup to latest gnulib update
9590         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
9592 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
9594         Spelling fix
9596 2016-01-04  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
9598         Do secure signed Bcc handling
9600         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
9601         (bug#18718).
9603 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
9605         Avoid stdio in SIGINT handler
9607         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
9608         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
9609         * lib/ignore-value.h: New file, from gnulib.
9610         * src/keyboard.c: Include it.
9611         (write_stdout, read_stdin): New functions.
9612         (handle_interrupt): Use them instead of printf and getchar,
9613         and avoid fflush when handling signals.
9615 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
9617         * doc/misc/texinfo.tex: Revert unwanted copyright change.
9619 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
9621         * lisp/align.el (align): Simplify a lambda
9623         * lisp/align.el (align): Fix arg order in call to `align-region'
9625 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
9627         Fix compilation next-error in buffers with selective-display
9629         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
9630         function.
9631         (compilation-internal-error-properties)
9632         (compilation-next-error-function, compilation-set-window): Use
9633         it.  (Bug#1092)
9635 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9637         * lisp/net/nsm.el (nsm-check-protocol): Fix typo in the message.
9639 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9641         Add SHA1 warnings for high network security settings
9643         * lisp/net/nsm.el (nsm-check-protocol): When using high security, warn
9644         about SHA1 certificates, which are now believed to be open to
9645         spoofing.
9647 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
9649         Refactor mml-smime.el, mml1991.el, mml2015.el
9651         (Maybe this is the last merge from Gnus git to Emacs git)
9653         Cf. discussion on ding mailing list, messages in
9654         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
9655         Common code from the three files mml-smime.el, mml1991.el, and
9656         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
9657         to gnus-util.el.
9659         The code is supported by test cases with necessary test keys.
9661         Documentation in message.texi is updated.
9663         * doc/misc/message.texi (Security, Using S/MIME):
9664         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
9665         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
9666         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
9668         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
9669         New functions.
9671         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
9672         (epa--select-keys): Autoload.
9673         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
9674         (mml-secure-openpgp-signers): New user option;
9675         make mml1991-signers and mml2015-signers obsolete aliases to it.
9676         (mml-secure-smime-signers): New user option;
9677         make mml-smime-signers an obsolete alias to it.
9678         (mml-secure-openpgp-encrypt-to-self): New user option;
9679         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
9680         aliases to it.
9681         (mml-secure-smime-encrypt-to-self): New user option;
9682         make mml-smime-encrypt-to-self an obsolete alias to it.
9683         (mml-secure-openpgp-sign-with-sender): New user option;
9684         make mml2015-sign-with-sender an obsolete alias to it.
9685         (mml-secure-smime-sign-with-sender): New user option;
9686         make mml-smime-sign-with-sender an obsolete alias to it.
9687         (mml-secure-openpgp-always-trust): New user option;
9688         make mml2015-always-trust an obsolete alias to it.
9689         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
9690         New user options.
9691         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
9692         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
9693         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
9694         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
9695         (mml-secure-passphrase-callback, mml-secure-check-user-id)
9696         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
9697         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
9698         (mml-secure-fingerprint, mml-secure-filter-keys)
9699         (mml-secure-normalize-cust-name, mml-secure-select-keys)
9700         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
9701         (mml-secure-self-recipients, mml-secure-recipients)
9702         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
9704         * lisp/gnus/mml-smime.el: Require epg;
9705         refactor declaration and autoloading of epg functions.
9706         (mml-smime-use): Doc fix.
9707         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
9708         Obsolete.
9709         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
9710         Use format instead of gnus-format-message.
9711         (mml-smime-epg-secret-key-id-list): Remove variable.
9712         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
9713         (mml-smime-epg-find-usable-secret-key): Remove functions.
9714         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
9716         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
9717         (mml1991-passphrase-cache-expiry): Obsolete.
9718         (mml1991-epg-secret-key-id-list): Remove variable.
9719         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
9720         (mml1991-epg-find-usable-secret-key): Remove functions.
9721         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
9723         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
9724         (mml2015-passphrase-cache-expiry): Obsolete.
9725         (mml2015-epg-secret-key-id-list): Remove variable.
9726         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
9727         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
9728         (mml2015-epg-find-usable-secret-key): Remove functions.
9729         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
9730         (mml2015-epg-encrypt): Refactor.
9732 2016-01-02  Glenn Morris  <rgm@gnu.org>
9734         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
9736         Explicitly ignore case.  (Bug#22262)
9738 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
9740         (semantic-symref-derive-find-filepatterns): Return a list
9742         * lisp/cedet/semantic/symref/grep.el
9743         (semantic-symref-derive-find-filepatterns): Return a list.
9744         (semantic-symref-perform-search): Quote the result here once and for all.
9746 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
9748         Fix xref-find-references on MS-Windows
9750         * lisp/cedet/semantic/symref/grep.el
9751         (semantic-symref-derive-find-filepatterns): Use
9752         'shell-quote-argument' instead of manually quoting in a way that
9753         only works with Posix shells.  (Bug#22289)
9755 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
9757         Document new features of tildify-mode
9759         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
9760         (tildify-mode): Spelling fixes in doc strings.
9762         * etc/NEWS: Reformat the tildify-mode entry.
9764 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
9766         Document new features of Whitespace mode
9768         * doc/emacs/display.texi (Useless Whitespace): Document
9769         'whitespace-toggle-options' and the new 'big-indent' style.
9770         Document 'whitespace-big-indent-regexp'.  Document the Global
9771         Whitespace mode.
9773 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
9775         Improve documentation of new Hide-IfDef features
9777         * etc/NEWS: Expand and reword Hide-IfDef section.
9779 2016-01-02  Leo Liu  <sdl.web@gmail.com>
9781         Fix regression in font-locking cl-assert and cl-check-type
9783         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
9784           el-errs-re.
9786 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
9788         Spelling and grammar fixes
9790 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
9792         Fix copyright years by hand
9794         These are dates that admin/update-copyright did not update, or
9795         updated incorrectly.
9797 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
9799         Update copyright year to 2016
9801         Run admin/update-copyright.
9803 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
9805         Merge from gnulib
9807         This mostly just updates copyright dates of gnulib files.
9808         It also updates to the latest version of texinfo.tex.
9810 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
9812         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
9814 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
9816         Port chart.el methods to cl-generic.
9818         cl-call-next-method cannot be used inside EIEIO's defmethod.
9819         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
9820         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
9821         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
9822         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
9823         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
9824         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
9826 2015-12-31  Brian Burns  <bburns.km@gmail.com>
9828         Add nt/INSTALL.W64 build instructions
9830         * nt/INSTALL.W64: New file.
9831         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
9833 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
9835         Add new input method 'programmer-dvorak'
9837         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
9838         input method.
9840         * etc/NEWS: Mention it.
9842 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
9844         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
9846         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
9847         original M-TAB binding in a buffer-local variable.
9848         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
9849         if that is recorded, when point is in a place where flyspell
9850         should not be active (e.g., because the user turned on
9851         'flyspell-prog-mode').  (Bug#18533)
9853 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
9855         Fix EWW rendering of long RTL lines
9857         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
9858         of the selected window before filling its lines.  (Bug#22250)
9860 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
9862         fix  bug#21054
9864         * lisp/ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
9866 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9868         Clean up cairo printing code
9870         * src/gtkutil.c (xg_get_page_setup): Use listn.
9871         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
9872         decode_window_system_frame and FRAME_VISIBLE_P.
9873         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
9874         of Fdisplay.
9875         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
9876         instead of Fdisplay.  Temporarily unblock_input around QUIT.
9878 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9880         Move variables to inner loop, preparing for Mac port merge
9882         * src/keyboard.c (command_loop_1): Move variables `cmd',
9883         `keybuf', and `i' to inner loop.
9885 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9887         Add handle_user_signal_hook
9889         * src/keyboard.h (handle_user_signal_hook): New declaration.
9890         * src/keyboard.c (handle_user_signal_hook): New variable.
9891         (handle_user_signal): Call it.
9893 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9895         Avoid writing to purespace
9897         * src/alloc.c (Fmake_string): Don't write to empty string contents.
9898         (allocate_vector): Don't write to empty vector size.
9899         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
9900         Don't call unnecessary XSETCAR or XSETCDR.
9901         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
9902         write to empty string size_byte.
9904 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9906         Remove unused variable
9908         * lisp/international/mule-cmds.el: Remove unused variable
9909         `mac-system-coding-system'.
9911 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9913         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
9915 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9917         Use posix_openpt instead of openpty on Darwin
9919         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
9920         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
9921         Darwin-specific definitions.  Use posix_openpt instead.
9923 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
9925         Document support for ':documentation' in Lisp mode
9927         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
9928         (lisp-string-after-doc-keyword-p)
9929         (lisp-font-lock-syntactic-face-function): Add doc strings.
9931 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
9933         Document new features of TeX mode
9935         * doc/emacs/text.texi (TeX Print): Document
9936         'tex-print-file-extension'.
9937         * doc/emacs/programs.texi (Misc for Programs): Document support
9938         for Prettify Symbols mode in TeX mode.
9940 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
9942         Clarify docs of hscroll in RTL text
9944         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
9945         meaning of a window's horizontal scroll amount for RTL paragraphs.
9947 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
9949         Fix rendering of HTML pages that use character composition
9951         * src/indent.c (Fvertical_motion): Fix the case when point starts
9952         in the middle of a composition, as in shr-vertical-motion.
9953         (Bug#22250)
9955 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
9957         Avoid some compiler warnings in w32.c
9959         * src/w32.c (codepage_for_filenames, crlf_to_lf)
9960         (ansi_encode_filename, socket_to_fd, sys_write)
9961         (check_windows_init_file): Avoid compiler warnings about
9962         differences in pointer signedness.
9964 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
9966         Undo ill-advised change
9968         * lisp/progmodes/xref.el (xref-collect-matches): Undo
9969         ill-advised change.  The hits come in the order that `find'
9970         produces them in, which isn't alphabetical.
9972 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
9974         Unbreak completion in python-mode buffers
9976         * lisp/progmodes/python.el (python-shell-completion-at-point):
9977         Unbreak in python-mode buffers.
9979 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
9981         Fix typos in CC Mode manual
9983         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
9984         typos.  (Bug#22267)
9986 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
9988         Avoid assertion violations in compact_font_cache_entry
9990         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
9991         avoid assertion violation in ASIZE.  (Bug#22263)
9993 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
9995         Fix filling text with bidirectional characters in shr.el
9997         * lisp/net/shr.el (shr-insert-document): Bind
9998         bidi-display-reordering to nil while filling lines.  This is
9999         required for when a line includes characters whose bidi
10000         directionality is opposite to the base paragraph direction,
10001         because columns are counted in the logical order.  (Bug#22250)
10003 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
10005         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
10007 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
10009         Sync with Tramp 2.2.13
10011         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
10013         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
10014         Use `tramp-compat-funcall'.
10016         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
10017         Make `split-string' call compatible with older Emacsen.
10019         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
10021 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
10023         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
10025 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
10027         Mention that tls.el is secure by default, and will fail
10029 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
10031         Make tls.el use trustfiles by default
10033         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
10034         (open-tls-stream): Insert the trustfile by looking at
10035         `gnutls-trustfiles'.
10037 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
10039         Refactor out gnutls-trustfiles
10041         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
10043 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
10045         Remove --insecure from gnutls-cli invocation
10047         * tls.el (tls-program): Default to using secure TLS
10048         connections (bug#19284).
10050 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
10052         Spelling fix
10054 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
10056         Port report-emacs-bug to deterministic builds
10058         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
10059         recent "built on" change to deterministic builds where
10060         emacs-build-system will be nil.  See:
10061         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
10063 2015-12-29  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
10065         Fix URL auth error message
10067         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
10068         message more correct (bug#20069).
10070 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
10072         shr link traversal fixup
10074         * shr.el (shr-next-link): Don't bug out on adjacent links.
10076         Backport:
10078         (cherry picked from commit 1efc5f8b09273c359683ce13be95fb5df7a84311)
10080 2015-12-28  Tom Tromey  <tom@tromey.com>
10082         set :safe on css-indent-offset
10084         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
10086 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
10088         * eww.el (eww-mode): Remove superfluous bidi reset.
10090 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
10092         Make chunked encoding trailer detection more compliant
10094         * lisp/url/url-http.el
10095         (url-http-chunked-encoding-after-change-function): Make
10096         trailer detection more compliant (bug#16345).
10098 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
10100         Fix Bug#10873 in `report-emacs-bug'
10102         * lisp/mail/emacsbug.el (report-emacs-bug): If
10103         `report-emacs-bug-no-explanations' is nil, make sure we can show
10104         mail and warnings buffer on this frame (Bug#10873).
10106 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
10108         Always reset the bidi direction
10110         * eww.el (eww-display-html): Always reset the bidi direction
10111         to `left-to-right' (bug#22257).
10113 2015-12-28  Alan Mackenzie  <acm@muc.de>
10115         Allow line comments ending with escaped NL to be continued to the next line.
10117         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
10119         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
10120         (forw-comment, back-comment): On encountering an end of comment character,
10121         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
10123         * doc/lispref/syntax.texi (Control Parsing): Describe
10124         `comment-end-can-be-escaped'.
10126         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
10128         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
10130 2015-12-28  Dmitry Gutov  <dgutov@yandex.ru>
10132         Rename project-library-roots to project-external-roots
10134         * lisp/progmodes/project.el (project-library-roots): Rename to
10135         project-external-roots.
10136         (project-library-roots-function): Rename to
10137         project-vc-external-roots-function.  Only use it in the VC
10138         backend, for now.  Update project-external-roots accordingly.
10139         (project-vc-library-roots): Remove.
10140         (project-or-libraries-find-regexp):
10141         Rename to project-or-external-find-regexp.
10143         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
10144         Rename to elisp-load-path-roots.
10146         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
10147         an anonymous function for the default value of
10148         project-vc-external-roots-function.
10150 2015-12-27  Deniz Dogan  <deniz@dogan.se>
10152         Clear erc user list upon disconnection
10154         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
10155         lists upon disconnection.  This prevents invalid channel
10156         user lists when reconnecting (bug#10947).
10158 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
10160         Don't bug out in erc after waking from sleep
10162         * lisp/erc/erc-backend.el (erc-server-send-ping): If the server has
10163         closed connection, this may already have been detected and
10164         `erc-server-last-received-time' has been set to nil (bug#13608).
10166 2015-12-27  David Edmondson  <dme@dme.org>
10168         Proxy error in erc with multiple clients
10170         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
10171         generated when multiple IRC clients talk to a single IRC proxy
10172         (bug#19034).
10174         Backport:
10176         (cherry picked from commit 507e98a54d1aa37823c64993d6b59257a82fe8f4)
10178 2015-12-27  Dima Kogan  <dima@secretsauce.net>
10180         Ensure that we don't have several timers in erc
10182         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
10183         for existing timers in the alist before adding new ones.  If a
10184         timer already exists, it is cancelled and
10185         overwritten. (bug#19292).
10187 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
10189         Fix mml-sec build warnings
10191         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
10192         (bug#18718).
10194         Backport:
10196         (cherry picked from commit 3603097f62f5f4aa5451716e9ac380161f6829e2)
10198 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
10200         Don't insert erc logs at the end
10202         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
10203         at the start of the buffer, not at the end (bug#20496).
10205 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
10207         (eww-setup-buffer): Restore left-to-right defaults
10209         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
10211         Backport:
10213         (cherry picked from commit 96c874b96b617c124d500a94de761a61f2a08685)
10215 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
10217         Don't join erc channels doubly
10219         * lisp/erc/erc-join.el (erc-autojoin-channels): Don't join channels
10220         more than once (if you have several nicks) (bug#20695).
10222 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
10224         Avoid leaving "ghost" of mouse pointer on MS-Windows
10226         * src/w32term.c (frame_set_mouse_pixel_position):
10227         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
10228         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
10229         * src/w32term.c (frame_set_mouse_pixel_position): Include
10230         w32common.h.
10232 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
10234         Fix auth source lookups from erc with port numbers
10236         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
10237         numbers (bug#20541).
10239 2015-12-27  Fran Litterio  <flitterio@gmail.com>
10241         Run erc-kill-channel-hook always on exit
10243         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
10244         when erc-kill-queries-on-quit is set (bug#21187).
10246 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
10248         Spelling fix
10250         * test/automated/url-parse-tests.el:
10251         (url-generic-parse-url/same-document-reference):
10252         Rename from url-generic-parse-url/same-decument-reference.
10254 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
10256         Reword initial *scratch* for brevity, appearance
10258         * lisp/startup.el (initial-scratch-message):
10259         Reword to avoid apostrophes, and to make it shorter.
10260         See the thread starting in:
10261         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
10263 2015-12-26  Leo Liu  <sdl.web@gmail.com>
10265         Add ert-deftest to lisp-mode.el
10267         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression,
10268           lisp-el-font-lock-keywords-1): Add ert-deftest.
10270 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
10272         Mark imap changes as not needing doc changes
10274         * lisp/net/imap.el (imap-ssl-open): Remove
10276 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
10278         Use built-in encryption in imap.el
10280         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
10281         (imap-starttls-open): Use open-network-stream instead of starttls.el.
10282         (imap-tls-open): Use open-network-stream instead of tls.el.
10284 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10286         Don't try using /bin/sh in artist.el on MS-Windows
10288         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
10289         New function.
10290         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
10291         (Bug#20167)
10293 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
10295         Always define gmalloc etc. in src/gmalloc.c
10297         This is a work-around to prevent the compiler from using semantic
10298         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
10299         with -O2 replaces most of calloc's definition by a call to calloc;
10300         see Bug#22085.
10301         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
10302         (aligned_alloc, free): Do not undef.  Instead, define these as
10303         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
10305 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10307         Fix documentation of browse-url browser-related functions
10309         * lisp/net/browse-url.el (browse-url)
10310         (browse-url-default-browser, browse-url-default-windows-browser)
10311         (browse-url-default-macosx-browser, browse-url-chromium)
10312         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
10313         and NEW-WINDOW arguments in these functions.  (Bug#19421)
10315 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
10317         Propagate Bug#14412 fix to backtrace_eval_unrewind
10319         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
10320         becomes accurate again. This shouldn’t affect behavior.
10321         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
10323 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10325         Don't produce non-ASCII characters in *scratch*
10327         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
10328         avoid producing non-ASCII characters in the *scratch* buffer's
10329         commentary.
10331 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10333         Document changes in 'compare-windows'
10335         * lisp/vc/compare-w.el (compare-windows-removed)
10336         (compare-windows-added): Doc fix.
10338         * doc/emacs/files.texi (Comparing Files): Document the changes in
10339         window selection by 'compare-windows'.
10341 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10343         Document 'vc-annotate-background-mode'
10345         * doc/emacs/maintaining.texi (Old Revisions): Document
10346         'vc-annotate-background-mode'.
10348 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10350         Document 'vc-region-history'
10352         * doc/emacs/maintaining.texi (VC Change Log): Document
10353         'vc-region-history'.
10355 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10357         Improve documentation of 'vc-push'
10359         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
10360         improve the documentation of 'vc-push'.
10362         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
10364 2015-12-26  Alain Schneble  <a.s@realize.ch>
10366         Include the tests for the URL parsing fixes
10368 2015-12-26  Alain Schneble  <a.s@realize.ch>
10370         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
10372         * test/automated/url-parse-tests.el: Add tests covering url-generic-parse-url.
10373         * test/automated/url-expand-tests.el: Add tests covering url-expand-file-name.
10374         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
10375         information in URL-struct.
10376         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
10377         path and query into nil path and query, respectively.
10378         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
10379         empty path into an absolute ("/") path.
10380         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
10381         fragment-only URIs. Do not just return them unchanged.
10382         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
10383         reference URI should not drop the last segment.
10385         Backport:
10387         (cherry picked from commit b792ecea1715e080ad8e232d3d154b8a25d2edfb)
10389 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10391         Document 'url-user-agent'.
10393         * lisp/url/url-http.el (url-user-agent): Move from here...
10394         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
10395         keep all the URL defcustoms in one place, and also have it defined
10396         whenever the URL library is loaded.
10398         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
10400 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10402         Document protocols supported by URL library via Tramp
10404         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
10405         supported via Tramp.
10406         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
10407         Tramp.
10409 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10411         Document changes in Shell-script mode
10413         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
10414         the 'sh-shell' file-local variable.
10415         (top level): Add an auto-load form to avoid byte-compiler warning
10416         about 'comint-send-string'.
10418 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10420         Fix documentation of 'ses-define-local-printer'
10422         * doc/misc/ses.texi (Printer functions): Fix whitespace between
10423         sentences and punctuation.  Add an index entry for
10424         'ses-define-local-printer'.
10426 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
10428         Document 'ert-summarize-tests-batch-and-exit'
10430         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
10431         'ert-summarize-tests-batch-and-exit'.
10433 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10435         Avoid assertion violation in unbind_to
10437         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
10438         if we get here with an object that is not a symbol.  (Bug#14412)
10440 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
10442         Don't treat /foo/bar:mumble as ange-ftp address
10444                 * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
10445                 only in the first component.  (bug#5362)
10447 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10449         Follow <meta> redirects in eww
10451         Merge conflict, but I think I resolved it.
10453             Follow meta refresh tags in eww
10455             * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
10457         Backport:
10459 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10461         Allow http://user:pass@foo/ URLs again
10463         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
10464         user/passwords in URLs (bug#19046).
10466         Backport:
10468         (cherry picked from commit b563715a2db265517d5a77f165a42afa1e233fdd)
10470 2015-12-25  Samer Masterson  <samer@samertm.com>
10472         Autoload url-insert-buffer-contents
10474         * lisp/url/url-handlers.el: Add autoload cookie so that
10475         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
10477         Backport:
10479         (cherry picked from commit 7a7b5b492ff9929eecd90c4564db6fbf3b192323)
10481 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
10483         Make sure *scratch* etc. use forward slashes in its default-directory
10485         * lisp/startup.el (normal-top-level): On MS-Windows, convert
10486         backslashes to forward slashes while decoding default-directory
10487         of the initially-created buffers.
10489 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10491         More eww file name coding fixes
10493         * eww.el (eww-decode-url-file-name): Use the base coding
10494         system to check for encodability.
10496         Backport:
10498         (cherry picked from commit a8627008abe4ab339df19b417776da28b3ce0fc7)
10500 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10502         Always save eww history
10504         * eww.el (eww-setup-buffer): Always save history, even when
10505         called from outside the eww buffer (bug#19638).
10507         Backport:
10509         (cherry picked from commit 2a0f18d9b6ce0ccce3d9c4a4a3b5743bae71b41e)
10511 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10513         Default web pages to right-to-left
10515         * eww.el (eww-mode): Most web pages are left-to-right, so make
10516         that the default (bug#19801).
10518         * shr.el (shr-tag-html): Respect "dir" attributes
10519         (left-to-right, right-to-left).
10521         Backport:
10523         (cherry picked from commit 9e089ec8a380ec3758fcf1564c5f86dc92c68c2a)
10525 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10527         Make toggling checkboxes work again
10529         * eww.el (eww-update-field): Make toggling checkboxes work
10530         again (bug#21881).
10532         Backport:
10534         (cherry picked from commit 5e56f606952e5e81b4d3a93ea70e791b74b33041)
10536 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10538         Don't store cookies with empty names
10540         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
10541         cookies with empty names (bug#21936).
10543         Backport:
10545         (cherry picked from commit 9f0fd7cb1aec3eb9e2e0f7b8854c30870286d96c)
10547 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10549         Stop rendering HTML before specdlr exhaustion
10551         Fixes: 22117
10553         * shr.el (shr-descend): Stop rendering before we run out of
10554         specpdl room (bug#22117).
10556         Backport:
10558         (cherry picked from commit 248da292fe46224b0b5a79b632c89cf4de2c2081)
10560 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10562         Use cl-reduce, not reduce.
10564         Backport:
10566         (cherry picked from commit fe4606f93b91ff3d046aee0cf21ecc277af7a786)
10568 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10570         Allow several <tbody> tags in shr
10572         * shr.el (shr-table-body): New function to find the real body
10573         of a table.
10574         (shr-tag-table): Use it to render several <tbody> tags in a
10575         table (bug#22170).
10577         Backport:
10579         (cherry picked from commit cdaf33029d6620073833876d76056045ecfbc7c4)
10581 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10583         Make prettier unique file names in eww
10585         (eww-make-unique-file-name): Make unique file names by making
10586         files like foo(2).jpg instead of foo(1)(2).jpg.
10588         Backport:
10590         (cherry picked from commit edfdd0a6cbdfa9e5e4bd0553e2b489401ca39266)
10592 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10594         Decode hex-encoded URLs before using them as file names
10596         * eww.el (eww-decode-url-file-name): New function.
10597         (eww-download-callback): Use it to decode file names before
10598         saving them.
10600         Backport:
10602         (cherry picked from commit af22a010d87516c2a646572fb27512c03057784f)
10604 2015-12-25  Ashish SHUKLA  <ashish.is@lostca.se>
10606         Add FreeBSD cert bundle
10608         * doc/misc/emacs-gnutls.texi (Help For Users): Document
10609         FreeBSD bundle.
10611         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
10613         Backport:
10615         (cherry picked from commit 60c0f1a18ad88d6dc1a8f4ee5d9d18940eaeb6f7)
10617 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10619         Ignore invalid SVG images
10621         * shr.el (shr-tag-svg): Ignore SVG images that have no width
10622         or height, because these can't be displayed by ImageMagick,
10623         anyway.
10625         Backport:
10627         (cherry picked from commit 821107d53c2e390240d25c036b99ebbf9b4a93b6)
10629 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10631         shr table rendering fix
10633         * shr.el (shr-tag-table): Allow rendering body-less tables
10634         that have headers.
10636         Backport:
10638         (cherry picked from commit b05471e42c17e02c56c87d7599ada0c124a5fe09)
10640 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
10642         Restore info about the build host in bug reports
10644         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
10645         which Emacs was built.  This is important information for
10646         investigating bug reports reported by users who don't build their
10647         Emacs.
10649 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
10651         Fix bootstrap broken by changes related to OS X file-name encoding
10653         * lisp/international/ucs-normalize.el (eval-when-compile): Make
10654         sure char-code-property-alist includes elements that allow access
10655         to 'decomposition' and 'canonical-combining-class' Unicode
10656         properties, as compiling ucs-normalize.el requires that.
10657         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
10658         only of charprop.el was already loaded.
10660         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
10661         New order-only dependency.
10663 2015-12-25  Leo Liu  <sdl.web@gmail.com>
10665         * lisp/ido.el (ido-add-virtual-buffers-to-list): Use bookmark-get-filename.
10667 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
10669         Make tramp-test29-vc-registered more robust
10671         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
10672         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
10673         Remove instrumentation.
10675 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10677         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
10679 2015-12-24  Katsumi Yamaoka  <yamaoka@jpl.org>
10681         Fix `gnus-union' so as to behave like `cl-union'
10683         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
10684         Make gnus-union use `equal' to compare items in lists.
10686         * lisp/gnus/gnus-util.el (gnus-union):
10687         Make it behave like cl-union partially.
10689 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
10691         Fix dired.c typo with ptrdiff_t vs Lisp_Object
10693         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
10694         an integer type, fixing a problem introduced in the recent fix for
10695         Bug#22169.
10697 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
10699         Document default process sentinel more prominently
10701         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
10702         defaults for process filter and sentinel.  Provide cross-references.
10703         (Process Information): Provide cross-references to where filters
10704         and sentinels are described.
10705         (Filter Functions): Add an index entry for "default filter".
10706         (Sentinels): Add a few status messages not documented previously.
10707         Resolve the "killed" confusion.  Document and describe the default
10708         sentinel.  (Bug#22220)
10710 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
10712         Fix file-name completion on OS X
10714         * src/dired.c (file_name_completion): Reject false matches due to
10715         file-name-coding-systems that decompose characters when encoding
10716         file names, by comparing decoded file names as well.  (Bug#22169)
10717         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
10719         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
10720         non-nil 'decomposed-characters' property.
10722 2015-12-23  Anders Lindgren  <andlind@gmail.com>
10724         File-name completion of non-ASCII characters on OS X (bug#22169)
10726         The coding system `utf-8-nfd', locally defined in ns-win.el,
10727         didn't provide a :pre-write-conversion method, causing file name
10728         completion of non-ASCII characters to fail.  Solved by using the
10729         `utf-8-hfs' coding system provided by `ucs-normalize'.
10731         * lisp/loadup.el: Load international/ucs-normalize (when building
10732         for ns).
10734         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
10735         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
10736         as the file name coding system.
10738         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
10740 2015-12-23  Tom Tromey  <tom@tromey.com>
10742         Fix bug #18588 by making bug-reference-bug-regexp more lenient
10744         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
10745         "bug NNNN".  (Bug #18588)
10747 2015-12-23  Tom Tromey  <tom@tromey.com>
10749         add some cl-* aliases to lisp-mode imenu
10751         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
10752         cl-defgeneric, and cl-defmethod.
10754 2015-12-22  Tom Tromey  <tom@tromey.com>
10756         Make a variable buffer-local
10758         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
10759         font-lock-syntax-table buffer-local.  (Bug #21627)
10761 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
10763         Fix decoding of text in URLs retrieved by EWW
10765         * lisp/net/eww.el (eww-render): Pass 'charset' to
10766         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
10767         non-nil, to set 'buffer-file-coding-system' of the buffer where we
10768         show the URL.
10769         (eww-display-html, eww-display-raw): Decode the text correctly,
10770         using the charset found in the headers, and defaulting to UTF-8.
10771         If the user told us to use a specific encoding, override the
10772         charset from the headers.  (Bug#22222)
10774 2015-12-22  Alan Mackenzie  <acm@muc.de>
10776         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
10778         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
10779         variable `tmp'.
10780         After a failed search for a matching ">", restore point before continuing.
10782 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
10784         Instrument Tramp tests
10786         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
10787         (tramp--test-utf8): Instrument tests.
10789 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
10791         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
10793         * lisp/simple.el (display-message-or-buffer): Call
10794         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
10795         (Bug#22221).
10797 2015-12-22  Juri Linkov  <juri@linkov.net>
10799         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
10801         (save-places-to-alist, save-place-dired-hook):
10802         Check for dired-subdir-alist.  (Bug#19851)
10804 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10806         Add FIXME comment re stack overflow and modules
10808 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10810         Revert some recent emacs-module commentary
10812         Most of the recently-added commentary was incorrect, due to the
10813         possibility of stack overflow.
10815 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10817         Spelling fix: prefer "cooperate" to "co-operate"
10819 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10821         Port undo fixes to -fno-common
10823         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
10824         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
10825         (buffer_before_last_command_or_undo):
10826         Declare in keyboard.h, and define in keyboard.c,
10827         instead of assuming the traditional Unix relaxed ref-def linkage.
10829 2015-12-20  Philipp Stephani  <phst@google.com>
10831         Improve commentary for emacs-module.c
10833         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
10834         * src/emacs-module.c (module_non_local_exit_get): Document that we
10835         cannot use the current implementation.
10836         (module_is_not_nil, module_eq): Document assumptions about EQ and
10837         NILP.
10839 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
10841         Suppress test on Mac OS X
10843         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
10844         (tramp--test-utf8): Use it.
10846 2015-12-20  Alan Mackenzie  <acm@muc.de>
10848         Merge branch 'scratch/follow' into emacs-25
10850         This allows Isearch, etc., to work well when Follow Mode is active.
10852 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
10854         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option): Improve check.
10856 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10858         Fix last commit
10860         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
10861         with numeric argument.
10863 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10865         Document new features of Rmail
10867         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
10868         Document new behavior of 'd' and 'C-d' with numeric argument.
10869         (Rmail Display): Document the rendering of HTML MIME parts.
10871 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10873         Improve documentation of new cl-lib functions
10875         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
10876         Fix wording.
10878 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10880         Document the new feature of 'minibuffer-with-setup-hook'
10882         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
10883         added to `minibuffer-setup-hook'.
10885 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10887         Document new features of Font Lock
10889         * doc/lispref/modes.texi (Other Font Lock Variables): Document
10890         'font-lock-flush-function' and 'font-lock-ensure-function'.
10891         (Font Lock Basics): Document the basic fontification functions
10892         referenced in "Other Font Lock Variables".
10894         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
10896 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10898         Document new features of Rectangle mode
10900         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
10901         rectangle-mark-mode.
10903 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10905         Manual followup to last change
10907         * doc/lispref/display.texi (Displaying Messages): Sync with the
10908         doc string.  (Bug#22210)
10910 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10912         Clarify doc string of 'display-message-or-buffer'
10914         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
10915         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
10917 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10919         * doc/emacs/emacs.texi (Top): Update top-level menus.
10921         * doc/lispref/elisp.texi (Top): Update top-level menus.
10923 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10925         Document how to avoid file-local variables that aren't
10927         * doc/emacs/custom.texi (Specifying File Variables): Describe how
10928         to prevent Emacs from interpreting unrelated text as file-local
10929         variables.  (Bug#22166)
10931 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
10933         Fix a typo in eterm-color's termcap entry
10935         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
10936         entry.  (Bug#22184)
10938 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10940         Allow 'browse-url-emacs' visit non-existent URLs
10942         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
10943         signal an error if VISIT is non-nil, to more faithfully emulate
10944         the behavior of 'insert-file-contents'.  (Bug#22160)
10946 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
10948         Remove SunOS 4.x cruft
10950         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
10951         * lib-src/pop.c [sun]: Remove no-longer-needed include.
10952         * lwlib/xlwmenu.c (SUNSO41): Remove.
10954 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
10956         Merge from gnulib
10958         This mostly commentary fixes.
10959         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
10960         * lib/gnulib.mk: Regenerate with new gnulib-tool.
10962 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
10964         Minor fixes in Tramp
10966         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
10967         Reorder ls arguments.
10969         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
10971 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
10973         Make tramp a built-in package
10975         * lisp/finder.el (finder-compile-keywords): Update
10976         `package--builtins' also when Version: keyword is available.
10978         * lisp/net/trampver.el: Add Version: keyword.
10979         (tramp-version): Change it to "2.2.13.25.1", in order to be
10980         compatible with `version-to-list'.
10982 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
10984         * etc/tutorials/TUTORIAL.it: Update and fix typos.
10986 2015-12-18  Alan Mackenzie  <acm@muc.de>
10988         Rename `recenter-group' to `recenter-window-group'
10990         * doc/lispref/windows.texi (Textual Scrolling)
10991         * lisp/window.el (top level, recenter-group)
10992         * lisp/follow.el (follow-mode)
10993         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
10994         `recenter-window-group' and `recenter-group-function' to
10995         `recenter-window-group-function'.
10997 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
10999         Fix vertical-motion in tabulated-list mode
11001         * src/indent.c (Fvertical_motion): When moving from line beginning
11002         to point under line truncation, assume overshoot by one line only
11003         if point actually lies beyond the window's right margin.
11004         (Bug#22194)
11006 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
11008         Don't have help functions call x-display-pixel-width/-height on ttys
11010         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
11011         Don't call x-display-pixel-width/-height on ttys.
11013 2015-12-18  Dmitry Gutov  <dgutov@yandex.ru>
11015         Use 'hg id' in vc-hg-previous-revision
11017         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
11018         Use 'hg id' to retrieve it (bug#22032).
11020 2015-12-17  Alan Mackenzie  <acm@muc.de>
11022         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
11024 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
11026         Fix a typo in the Emacs manual
11028         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
11029         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
11031 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
11033         Fix parsing netrc entries with ports
11035         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
11036         make a list out of 't'.  (Bug#22188)
11038         * test/automated/auth-source-tests.el
11039         (auth-source-test-netrc-parse-entry): New test.
11041 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
11043         Fix typo in Doug Lea malloc configure log
11045         * configure.ac (emacs_cv_var_doug_lea_malloc):
11046         Fix typo that confused the log output of 'configure'.
11048 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
11050         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
11052 2015-12-16  Alan Mackenzie  <acm@muc.de>
11054         * etc/NEWS: Move entry on pcase to correct section
11056         (Accidentally omitted from previous commit)
11058 2015-12-16  Alan Mackenzie  <acm@muc.de>
11060         Add documentation for changes to Show Paren mode.
11062         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
11064         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
11065         options, including the new show-paren-when-point-inside-paren and
11066         show-paren-when-point-in-periphery.
11068         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
11069         Move an entry on pcase to the Lisp Changes section.
11071 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
11073         Document Eldoc changes
11075         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
11077 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
11079         Fix invocation of Python and Guile interpreters from gdb-mi
11081         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
11082         commands for interactive Python and Guile interpreters.
11083         (gdb-send): Recognize various ways of exiting from Python and
11084         Guile interpreters and returning to GDB.  For details, see
11085         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
11086         and http://stackoverflow.com/questions/31514741.
11088 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
11090         Remove attempt to use C11 threads
11092         C11 threads are not needed for Emacs now, and their use is causing
11093         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
11094         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
11095         * configure.ac: Do not check for C11 threads. Remove unnecessary
11096         fiddling with CPPFLAGS when configuring pthreads.
11097         * src/emacs-module.c (main_thread, check_main_thread)
11098         (module_init): Do not worry about C11 threads.
11100 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
11102         Set utf8 encoding with stty in Tramp
11104         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11105         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
11106         encoding with stty.
11108 2015-12-15  Alan Mackenzie  <acm@muc.de>
11110         Tidy up documentation associated with window groups.
11112         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
11113         Groups".  Correct example function to `window-group-start'.
11114         (Window Start and End, Textual scrolling): Point to the new anchor.  State
11115         that (most of) the args in window group functions have the same meaning as for
11116         the corresponding window primitives.
11118         * doc/lispref/positions.texi (Screen Lines).  Same as above.
11120 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
11122         Complete last commit
11124         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11125         Move uname check up.  Handle Mac OS X eol encoding.
11127 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
11129         Handle Mac OS X eol encoding in Tramp
11131         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11132         Handle Mac OS X eol encoding.
11134 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11136         Fix variable name typo in compute_tip_xy
11138         * src/w32fns.c (compute_tip_xy):
11139         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
11140         when `right' is integer.
11142 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>
11144         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
11146 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
11148         Revert "Fix rx matcher overflow without limiting"
11150         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
11152 2015-12-14  Alan Mackenzie  <acm@muc.de>
11154         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
11156         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
11157         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
11159 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
11161         Fix rx matcher overflow without limiting
11163         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
11164         change to the regexp without imposing a limit on the length of the
11165         options.
11167 2015-12-14  Alan Mackenzie  <acm@muc.de>
11169         Enhance ispell-skip-region-alist by generating part of it at runtime.
11171         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
11172         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
11173         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
11174         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
11175         Include the result of ispell--make-filename-or-URL-re in regexps.
11177 2015-12-14  Glenn Morris  <rgm@gnu.org>
11179         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
11181 2015-12-14  Alan Mackenzie  <acm@muc.de>
11183         Replace GROUP argument in six window primitives by new functions.
11185         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
11186         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
11187         from description of six window functions.  Add in description of new functions
11188         window-group-start, window-group-end, set-window-group-start,
11189         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
11190         together with the six variables indirecting to the pertinent group
11191         functions.
11193         * src/window.c
11194         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
11195         applies to these two files, which added the GROUP argument to six window
11196         primitives.
11198         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
11199         functions.
11201         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
11202         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
11203         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
11204         to window primitives (e.g. window-start) with a GROUP argument by calls to
11205         new functions (e.g. window-group-start).
11207         * lisp/ispell.el (ispell-command-loop): Replace call to
11208         pos-visible-in-window-p with pos-visible-in-window-group-p.
11210         * lisp/window.el (window-group-start, window-group-end)
11211         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
11212         (selected-window-group, move-to-window-group-line): New functions.
11213         (window-group-start-function, window-group-end-function)
11214         (set-window-group-start-function, recenter-group-function)
11215         (pos-visible-in-window-group-p-function, selected-window-group-function)
11216         (move-to-window-group-line-function): New variables.
11218 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
11220         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
11222 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
11224         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
11226 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
11228         Improve regex to not trigger stack overflow
11230         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
11231         order not to trigger a stack overflow in regex matcher with unbalanced
11232         brackets (bug#22146).
11234 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
11236         Fix visiting files with raw-text
11238         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
11239         when some stuff was actually read.  (Bug#22162)
11241 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
11243         Fix regex matching keyval labels
11245         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
11246         matching keyval labels.
11248 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
11250         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
11252         ... in case of Tramp.  (Bug#20821)
11254 2015-12-13  Paul Eggert  <eggert@cs.ucla.edu>
11256         Fix performance regression with gcc -O0
11258         This fixes the smaller performance hit that I noted in:
11259         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
11260         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
11261         * src/puresize.h (puresize_h_PURE_P)
11262         (puresize_h_CHECK_IMPURE):
11263         New macros, with the old contents of the functions.
11264         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
11265         * src/puresize.h (PURE_P, CHECK_IMPURE):
11266         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
11267         * src/conf_post.h (ATTRIBUTE_UNUSED):
11268         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
11270 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
11272         * lisp/emacs-lisp/package.el (package-unpack): Security check
11274         Check that we received the package we were offered.
11276 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
11278         * lisp/emacs-lisp/package.el (package--compile): Don't activate
11280         `package-unpack' takes care of all activations now (other than
11281         `package-initialize).  `package--compile' now only compiles.
11283 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11285         Document the new bindings of <UP> and <DOWN> in the minibuffer
11287         * doc/emacs/mini.texi (Minibuffer History): Describe the new
11288         bindings of <UP> and <DOWN> in the minibuffer.
11290 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11292         Document new features of Ido
11294         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
11296 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
11298         Fix frame height calculations with added menu bar on Windows (Bug#22105)
11300         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
11301         when simultaneously specifying multiple parameters for
11302         `modify-frame-parameters' that all may change the frame's size.
11303         * src/w32fns.c (x_set_menu_bar_lines): Don't set
11304         windows_or_buffers_changed here.
11305         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
11306         with third argument false.
11307         * src/w32menu.c (set_frame_menubar): Set
11308         windows_or_buffers_changed here.
11309         * src/w32term.c (x_set_window_size): Determine third argument of
11310         AdjustWindowRect from whether the frame has a menu bar and not
11311         from whether it wants one.
11313 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11315         Document the change in interactive shell mode
11317         * doc/emacs/misc.texi (Interactive Shell): Document that the
11318         '*shell*' buffer by default displays in a new window.
11320 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11322         Document new features of package.el
11324         * doc/emacs/package.texi (Package Menu): Document the 'external'
11325         status and the new menu commands.
11326         (Package Installation): Document archive priorities.
11328         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
11329         (package-menu-hide-low-priority): Doc fix.
11331 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11333         Update and document new features of xterm support
11335         * doc/emacs/frames.texi (Text-Only Mouse): Document that
11336         track-mouse is supported by newer xterm versions.
11338 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11340         Document new features of Prettify Mode
11342         * doc/emacs/programs.texi (Misc for Programs): Document
11343         'prettify-symbols-compose-predicate' and
11344         'prettify-symbols-unprettify-at-point'.
11346         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
11347         (prettify-symbols-default-compose-p)
11348         (prettify-symbols-compose-predicate)
11349         (prettify-symbols--compose-symbol): Doc fixes.
11351 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11353         Document multi-mode indentation facilities
11355         * doc/lispref/text.texi (Mode-Specific Indent): Document
11356         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
11358         * lisp/progmodes/prog-mode.el (prog-indentation-context)
11359         (prog-widen): Doc fixes.
11361 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11363         Document 'vc-refresh-state'
11365         * doc/emacs/maintaining.texi (Version Control): Document
11366         'vc-refresh-state'.
11368         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
11370 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11372         Fix echo for "C-u"
11374         * src/keyboard.c (command_loop_1): Undo last change.  It caused
11375         duplicate echo of C-u.  (Bug#22107)
11377 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11379         Avoid errors when creating files under SVN in new directory
11381         * lisp/vc/vc-svn.el (vc-svn-registered): Use
11382         file-accessible-directory-p, to avoid cd'ing to a non-existing
11383         directory, which signals an error on some systems.  (Bug#21984)
11384         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
11385         Use declare-function to avoid byte-compiler warnings.
11387 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11389         Improve Lua support in etags
11391         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
11392         "function".
11394         * etc/NEWS: Mention improved Lua support by 'etags'.
11396         * test/etags/lua-src/test.lua (test): Add tests for indented
11397         function definitions.
11398         * test/etags/ETAGS.good_1:
11399         * test/etags/ETAGS.good_2:
11400         * test/etags/ETAGS.good_3:
11401         * test/etags/ETAGS.good_4:
11402         * test/etags/ETAGS.good_5:
11403         * test/etags/ETAGS.good_6:
11404         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
11406 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11408         Fix 'this-command-keys' wrt prefix argument
11410         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
11411         was part of this-command-keys, but not of this-single-command-keys.
11412         (Bug#22107)
11414         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
11415         commentary about the function's return value.
11417 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11419         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
11421 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11423         Improve and document Ruby support in 'etags'
11425         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
11426         (Ruby_functions): Support "module" and overloaded operators.
11427         (Ruby_help): Mention "module".
11429         * test/etags/ruby-src/test.rb:
11430         * test/etags/ruby-src/test1.ru: New files.
11431         * test/etags/Makefile (RBSRC): New tests.
11432         (SRCS): Add ${RBSRC}.
11433         * test/etags/ETAGS.good_1:
11434         * test/etags/ETAGS.good_2:
11435         * test/etags/ETAGS.good_3:
11436         * test/etags/ETAGS.good_4:
11437         * test/etags/ETAGS.good_5:
11438         * test/etags/ETAGS.good_6:
11439         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
11441         * doc/man/etags.1: Mention Ruby support.
11442         * etc/NEWS: Mention Ruby support.
11444 2015-12-11  Xi Lu  <lx@shellcodes.org>
11446         Initial support for Ruby in 'etags'
11448         * lib-src/etags.c <Ruby_suffixes>: New variable.
11449         (lang_names): Add an entry for Ruby.
11450         (Ruby_functions): New function.  (Bug#22116)
11452 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11454         Clarify documentation of 'modify-frame-parameters'
11456         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
11457         PARMs" mean for 'modify-frame-parameters'.
11459         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
11460         PARMs" mean for this function.  (Bug#22104)
11462 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11464         Fix setting buffer unibyte when reading from a device
11466         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
11467         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
11469 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11471         Clarify documentation of 'values'
11473         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
11474         updated by any evaluation commands in 'lisp-interaction-mode'.
11475         (Bug#22056)
11477 2015-12-11  Anders Lindgren  <andlind@gmail.com>
11479         Fixed subversion vc error when opening file in new directory (bug#21984).
11481         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
11483 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
11485         Yet another fix for when point ends up in invisible text
11487         * src/xdisp.c (redisplay_window): When someone forced
11488         window-start, and honoring that failed to show the cursor, try
11489         moving out of invisible text, before falling back to the middle of
11490         the window.  (Bug#22098)
11492 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
11494         Fix error in Tramp perl script for cygwin
11496         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
11497         error if file doesn't exist.
11499 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11501         Remove font workaround for limited outdated versions
11503         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
11504         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
11506 2015-12-09  Anders Lindgren  <andlind@gmail.com>
11508         Don't add "." to load path (bug#21104)
11510         When configured with --enable-locallisppath=no, which is the
11511         default for OS X, the load-path incorrectly was populated with ".".
11513         * src/lread.c (init_lread): Don't call `decode_env_path' when
11514         PATH_SITELOADSEARCH is empty.
11516 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
11518         * lisp/emacs-lisp/package.el (package--with-response-buffer):
11520         Search for the blank-line in the right buffer.
11522 2015-12-08  Glenn Morris  <rgm@gnu.org>
11524         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
11525         for recent change.
11527 2015-12-08  Glenn Morris  <rgm@gnu.org>
11529         Fix some display-warning usage.
11531         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
11532         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
11533         * lisp/calendar/holidays.el (calendar-holiday-list):
11534         * lisp/mail/rmailout.el (rmail-output-read-file-name):
11535         Fix display-warning usage.
11537 2015-12-08  Glenn Morris  <rgm@gnu.org>
11539         * lisp/calendar/cal-html.el: Require diary-lib.
11541         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
11543 2015-12-08  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11545         Add Obsolete-since header to eudcb-ph.el
11547         * lisp/obsolete/eudcb-ph.el: Add Obsolete-since header.
11549 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
11551         Spelling fixes
11553         * doc/misc/calc.texi (Predefined Units): Use the bland modern
11554         scientific style for spelling the units “ampere” and
11555         “angstrom” rather than the older style “Ampere” and
11556         “Ångstrom”.  The latter spelling was wrong anyway (it should
11557         have been “Ångström”).
11558         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
11559         Fix misspelling of ‘atom’ in code.
11561 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
11563         Improve documentation of kill commands
11565         * lisp/simple.el (region-extract-function, delete-backward-char)
11566         (delete-forward-char, kill-region, copy-region-as-kill)
11567         (kill-ring-save): Better document the optional argument REGION in
11568         the doc strings.  Mention in the doc strings that text put in the
11569         kill-ring can be filtered by 'filter-buffer-substring'.
11571         * doc/lispref/text.texi (Kill Functions): Mention that functions
11572         described in this subsection can filter text they put in the
11573         kill-ring.  Add a cross-reference to "Buffer Contents" and an
11574         index entry.  Document the optional argument 'region' and its
11575         effect.
11576         (Bug#21315)
11578 2015-12-07  Alan Mackenzie  <acm@muc.de>
11580         Further progress making Isearch, Ispell, Replace work with Follow Mode.
11582         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
11583         no longer exists.  Add follow-post-command-hook to  three special purpose
11584         hooks at setup, and remove them at tear down.
11586         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
11587         isearch-lazy-highlight-new-loop.
11588         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
11589         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
11590         it.
11591         (isearch-lazy-highlight-maybe-new-loop): function removed.
11593         * lisp/replace.el: (replace-update-post-hook): New hook variable.
11594         (perform-replace): Add second (nil) argument to looking-back.  Invoke
11595         replace-update-post-hook before calling replace-highlight.
11597         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
11598         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
11599         call of pos-visible-in-window-p.
11600         (ispell-display-buffer): Place *Choices* window at the top of the last window
11601         in a window group.
11603 2015-12-07  Alan Mackenzie  <acm@muc.de>
11605         Amend doc of `mapconcat': it can take sequences, not merely strings.
11607         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
11608         to say that SEPARATOR and the results from FUNCTION may be any character
11609         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
11611 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
11613         Fix an utf8 problem for Tramp on BSD
11615         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11616         Make lax check for utf8.
11617         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
11619 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11621         Make eudcb-ph.el obsolete
11623         * doc/misc/eudc.texi: Bump version to 1.40.0.
11624         Remove PH/QI sections and mentions.
11625         * lisp/obsolete/eudcb-ph.el: Make obsolete.
11626         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
11627         (eudc-ph-bbdb-conversion-alist): Make obsolete.
11628         * etc/NEWS: Mention this.  (Bug#21191)
11630 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
11632         Remove overenthusiastic eassert
11634         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
11635         previous change.  It breaks on MS-Windows --with-wide-int.
11636         Problem reported by Eli Zaretskii in:
11637         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
11639 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11641         Pacify gcc -Wparentheses
11643         * src/xdisp.c (row_containing_pos): Reparenthesize.
11645 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11647         Port mod-test to 32-bit Emacs --without-wide-int
11649         * modules/mod-test/test.el (mod-test-sum-test):
11650         Bring back the 2**29 tests, but port them to 32-bit Emacs
11651         --without-wide-int.
11653 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
11655         Fix minor Tramp problems found on BSD
11657         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
11658         trailing slash.  Quote apostrophes.
11659         (tramp-sh-handle-file-truename): Do not append trailing slash in
11660         the "ls" case.
11661         (tramp-get-ls-command-with-w-option): New defun.
11662         (tramp-do-file-attributes-with-ls)
11663         (tramp-do-directory-files-and-attributes-with-stat): Use it.
11665         * test/automated/tramp-tests.el
11666         (tramp-test31-special-characters-with-perl)
11667         (tramp-test31-special-characters-with-ls)
11668         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
11669         Suppress also readlink.
11671 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
11673         Fix cursor display when invisible text is at line beginning
11675         * src/xdisp.c (redisplay_window): When scrolling fails to show
11676         point, prefer using the desired matrix if possible for finding the
11677         fallback glyph row for displaying the cursor.  (Bug#22098)
11678         (row_containing_pos): Exit the loop as soon as we hit the first
11679         disabled glyph row.  Otherwise we risk accessing garbled data and
11680         departing to the no-no land.
11682 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11684         Improve module interface when WIDE_EMACS_INT
11686         * src/emacs-module.c (plain_values): New constant.
11687         (module_nil): Now a constant.
11688         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
11689         (syms_of_module): Use if, not #ifdef, so that both sides are
11690         checked at compile-time, and so that GCC doesn’t complain
11691         about an unused var in the typical case.  Also, depend on
11692         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
11693         that WIDE_EMACS_INT implies !USE_LSB_TAG.
11694         (value_to_lisp_bits, lisp_to_value_bits): New functions.
11695         Sign-extend integers rather than zero-extending them, as small
11696         negative integers are more likely.
11697         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
11698         functions.
11699         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
11700         (mark_modules): Remove.  All uses removed.
11701         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
11702         to GCALIGNMENT.
11703         (syms_of_module): Check that module_nil converts to Qnil.
11704         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
11705         we prefer signed to unsigned when either will do.
11706         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
11707         a bit better for emacs-module.c.
11709 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11711         Port mod-test to x86-64 GNU/Linux running 32-bit
11713         * modules/mod-test/test.el (mod-test-sum-test):
11714         Don’t attempt to match descriptions to operating systems.
11715         It didn’t work on Fedora x86-64 running a 32-bit executable,
11716         and it’s not worth the trouble anyway.
11717         Port to 32-bit platforms by removing an assumption about
11718         fixnum widths.
11720 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
11722         Fix auto-revert-tests.el when filenotify isn't used
11724         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
11725         Make it working also when filenotify isn't used.
11727 2015-12-06  Juri Linkov  <juri@linkov.net>
11729         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
11731         Let-bind isearch-regexp-function to nil.  (Bug#22097)
11733 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
11735         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
11737         (package--with-response-buffer): NOERROR and ERROR-FORM only
11738         handle connection errors.
11739         (bad-signature): New error type.
11740         (package--check-signature-content): Use it.
11741         (package--check-signature): Properly distinguish connection errors
11742         from bad-signature errors.  Do the check for
11743         `package-check-signature' `allow-unsigned' here instead of forcing
11744         the callbacks to do it.  Add a new argument, UNWIND.
11745         (package--download-one-archive, package-install-from-archive):
11746         Update usage of `package--check-signature'.
11748 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
11750         Fix Bug#22092.
11752         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
11753           Clean up inconsistent line endings. (Bug#22092)
11754           (icalendar--clean-up-line-endings): New.
11755         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
11756           for Bug#22092.
11758 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11760         Document 'bookmark-set-no-overwrite'
11762         * doc/emacs/regs.texi (Bookmarks): Document the new command
11763         'bookmark-set-no-overwrite' and its keybinding.
11765 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11767         Document new binding of 'mouse-buffer-menu'
11769         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
11770         now also on C-F10.
11772 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11774         Initial documentation of dynamic modules
11776         * doc/lispref/loading.texi (Dynamic Modules): New section with
11777         initial documentation for dynamic modules.
11778         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
11779         detailed menu
11781         * etc/NEWS: Fix typos in dynamic modules' entry.
11783 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
11785         Remove copyright statements from trivial test files
11787 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11789         Add "Preliminaries" section to etc/DEBUG
11791         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
11792         Most of the content was suggested by Phillip Lord
11793         <phillip.lord@russet.org.uk>.  Remove the section about debugging
11794         with the Visual Studio, as building Emacs with the Microsoft
11795         compilers is no longer supported.  Minor fixes in some other
11796         sections.
11798 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
11800         Improve parsing of version strings
11802         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
11803         (version-to-list): More helpful error messages.
11804         (version-to-list): ".5" is valid (update docstring).  Make
11805         "22.8X3" invalid, as the doc string says.
11807         * test/automated/subr-tests.el (ert-test-version-parsing): New
11808         tests for version string processing.
11810 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11812         Fix documentation of 'undo' changes
11814         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
11815         English conventions for spelling and whitespace between sentences.
11817         * etc/NEWS: Fix wording and spelling of undo-related entries.
11818         Mark them as documented.
11820 2015-12-05  Glenn Morris  <rgm@gnu.org>
11822         * lisp/net/net-utils.el: Small improvements.
11824         (net-utils--executable-find-sbin): New function.
11825         (ifconfig-program): Check sbin directories.
11826         Fallback to "ip".  (Bug#22091)
11827         (ifconfig-program-options): Check the actual program in use.
11828         (arp-program): Check sbin directories.
11830 2015-12-04  (tiny change) Arash Esbati  <esbati@gmx.de>  (tiny change)
11832         Fix wrong-type-argument integer-or-marker-p nil error
11834         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
11835         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
11837 2015-12-04  Alan Mackenzie  <acm@muc.de>
11839         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
11841         Merge necessitated by a rebase operation.
11843 2015-12-04  Alan Mackenzie  <acm@muc.de>
11845         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
11847 2015-12-04  Alan Mackenzie  <acm@muc.de>
11849         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
11851         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
11852         Windows" and new @defun selected-window-group.
11853         (Window Start and End): Describe new &optional parameter GROUP and
11854         ...-group-function for window-start, window-end, set-window-start, and
11855         pos-visible-in-window-p.
11856         (Textual Scrolling) Describe the same for recenter.
11857         doc/lispref/positions.texi (Screen Lines): Describe the same for
11858         move-to-window-line.
11860         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
11861         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
11862         new optional parameter "group".  At the beginning of each, check whether the
11863         corresponding ...-group-function is set to a function, and if so execute this
11864         function in place of the normal processing.
11865         (syms_of_window): Define symbols for the six new variables below.
11866         (window-start-group-function, window-end-group-function)
11867         (set-window-start-group-function, recenter-group-function)
11868         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
11869         New permanent local buffer local variables.
11870         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
11871         Fpos_visible_in_window_p.
11873         lisp/window.el (selected-window-group-function): New permanent local buffer
11874         local variable.
11875         (selected-window-group): New function.
11877         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
11878         enable, kill them at mode disable.  Add/remove follow-after-change to/from
11879         after-change-functions.
11880         (follow-start-end-invalid): New variable.
11881         (follow-redisplay): Manipulate follow-start-end-invalid.
11882         (follow-after-change, follow-window-start, follow-window-end)
11883         (follow-set-window-start, follow-pos-visible-in-window-p)
11884         (follow-move-to-window-line, follow-sit-for): New functions.
11886         lisp/isearch.el (isearch-call-message): New macro.
11887         (isearch-update, with-isearch-suspended, isearch-del-char)
11888         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
11889         (with-isearch-suspended): Rearrange code such that isearch-call-message is
11890         invoked before point is moved.
11891         (isearch-message): Add comment about where point must be at function call.
11892         (isearch-search): Remove call to isearch-message.
11893         (isearch-lazy-highlight-window-group): New variable.
11894         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
11895         the battery of tests to ...
11896         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
11897         Note: (sit-for 0) is still called.
11898         (isearch-lazy-highlight-update): Check membership of
11899         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
11900         property.
11901         (isearch-update, isearch-done, isearch-string-out-of-window)
11902         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
11903         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
11904         (isearch-lazy-highlight-update): Call the six amended primitives (see
11905         src/window.c above) with the new `group' argument set to t, to cooperate
11906         with Follow Mode.
11908 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
11910         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
11912         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
11913         (ert--explain-format-atom, ert--explain-equal-rec)
11914         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
11915         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
11917 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
11919         * lisp/character-fold.el: Remove special case-folding support
11921         (character-fold-to-regexp): Remove special code for
11922         case-folding.  Char-fold search still respects the
11923         `case-fold-search' variable (i.e., f matches F).  This only
11924         removes the code that was added to ensure that f also matched
11925         all chars that F matched.  For instance, after this commit, f
11926         no longer matches 𝔽.
11928         This was necessary because the logic created a regexp with
11929         2^(length of the string) redundant paths.  So, when a very
11930         long string "almost" matched, Emacs took a very long time to
11931         figure out that it didn't.  This became particularly relevant
11932         because isearch's lazy-highlight does a search bounded by (1-
11933         match-end) (which, in most circumstances, is a search that
11934         almost matches).  A recipe for this can be found in bug#22090.
11936 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
11938         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
11940         Fixes (bug#21701)
11942 2015-12-04  Daiki Ueno  <ueno@gnu.org>
11944         lisp/gnus/qp.el: Don't replace "from " at bol
11946         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
11947         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
11949 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
11951         Externalize some symbols in undo-auto
11953          * doc/lispref/text.texi: Update symbols.
11954          * lisp/simple.el (undo-auto--amalgamate,
11955            undo-auto--current-boundary-timer): Make symbols public.
11956          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
11957            updated symbol.
11959 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
11961         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
11963 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
11965         Some error message improvements in tramp-sh.el
11967         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11968         Suppress error messages for "mesg" and "biff" calls.
11969         (tramp-get-remote-path): Ignore errors when expanding
11970         `tramp-own-remote-path'.  Raise a warning instead.
11972 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11974         Document 'nacl' value for 'system-type'
11976         * doc/lispref/os.texi (System Environment): Document the 'nacl'
11977         value of 'system-type'.
11979 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11981         Document 'window-max-chars-per-line'
11983         * doc/lispref/windows.texi (Window Sizes): Document
11984         'window-max-chars-per-line'.
11986 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11988         Fix some file headers for the purpose of `package--builtins'
11990         * lisp/emacs-lisp/cl-preloaded.el
11991         * lisp/emacs-lisp/eieio-compat.el
11992         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
11994         * lisp/ielm.el: Fix summary line.
11996 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11998         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
12000         Reload any previously loaded package files before compiling
12001         the package (also reload the same files after compiling).
12002         This ensures that we have the most recent definitions during
12003         compilation, and avoids generating bad elc files when a macro
12004         changes and it is used in a different file from the one it's
12005         defined in.
12007 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
12009         * lisp/emacs-lisp/package.el: Refactor package activation code
12011         (package-activate): Move code that activates dependencies into
12012         package-activate-1.
12013         (package--load-files-for-activation): New function.
12014         (package-activate-1): Add code for (optionally) activating
12015         dependencies, and move file-loading code into
12016         `package--load-files-for-activation'.
12018 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
12020         Document new font-related functionality
12022         * doc/lispref/display.texi (Low-Level Font): Document
12023         'default-font-width', 'default-font-height', 'window-font-width',
12024         and 'window-font-height'.
12026         * etc/NEWS: Move entries for 'default-font-width',
12027         'default-font-height', 'window-font-width', and 'window-font-height'
12028         to their place and mark them documented.
12030 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
12032         Fix documentation and implementation of 'directory-name-p'
12034         * lisp/files.el (directory-name-p): Modify to recognize
12035         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
12036         accordingly.  Use '=', not char-equal, for comparison, as
12037         letter-case cannot possibly be an issue here.
12039         * doc/lispref/files.texi (Directory Names): Move the documentation
12040         of directory-name-p here from "Relative File Names".  Update the
12041         description per the changes in implementation.
12043         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
12044         place and mark it documented.
12046 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
12048         Minor copyedit in Emacs manual
12050         * doc/emacs/search.texi (Lax Search): Make wording about character
12051         folding by default less definitive.  (Bug#22043)
12053 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
12055         More emacs-module.c fixes for wide ints
12057         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
12058         unsigned data types to manipulate pointers, to avoid sign
12059         extension coming after us with a vengeance.
12061         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
12062         Emacs with wide ints that verify integer values near the critical
12063         value that requires us to switch to a cons cell.
12065 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
12067         Fix bug#22069 in cl-generic.el
12069         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
12070         not run thru `format'.
12072 2015-12-02  Dmitry Gutov  <dgutov@yandex.ru>
12074         APPEND etags--xref-backend to xref-backend-functions
12076         * lisp/progmodes/xref.el (xref-backend-functions):
12077         Use APPEND when adding the default element
12078         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
12080 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
12082         More accurate documentation of lax whitespace matching
12084         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
12085         (word-search-backward, word-search-forward)
12086         (word-search-backward-lax, word-search-forward-lax): Mention in
12087         doc strings that toggling lax whitespace matching has no effect on
12088         these commands.
12090         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
12091         lax whitespace matching has no effect on these commands.
12093 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
12095         Fix emacs-module.c for wide ints
12097         * src/emacs-module.c (lisp_to_value): Compare the produced value
12098         with the original Lisp object, not with the one potentially
12099         converted into a Lisp_Cons.  Fixes assertion violations when
12100         working with integers larger than fit into a 32-bit value.
12102         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
12103         large integers, to test --with-wide-int.
12105 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
12107         Document 'directory-files-recursively'
12109         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
12110         the argument MATCH to REGEXP, to be more explicit about its form.
12112         * doc/lispref/files.texi (Contents of Directories): Improve the
12113         documentation of 'directory-files-recursively'.  Add
12114         cross-references.
12116         * etc/NEWS: Move the entry for 'directory-files-recursively' to
12117         its place and mark it documented.
12119 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
12121         Document 'inhibit-read-only' property
12123         * doc/lispref/text.texi (Special Properties): Describe the new
12124         'inhibit-read-only' text property.  Add cross-reference to where
12125         read-only buffers are described.
12126         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
12127         'inhibit-read-only' property exempts text from being read-only.
12128         Add cross-reference to "Special Properties".
12130         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
12131         its place and mark it documented.
12133 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
12135         * lisp/emacs-lisp/package.el: Update header comments
12137 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
12139         * lisp/character-fold.el: Add back multi-char matching
12141         (character-fold-to-regexp): Uncomment recently commented code
12142         and make the algorithm "dummer" by not checking every possible
12143         combination.  This will miss some possible matches, but it
12144         greatly reduces regexp size.
12146         * test/automated/character-fold-tests.el
12147         (character-fold--test-fold-to-regexp): Comment out test of
12148         functionality no longer supported.
12150 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
12152         * doc/emacs/ack.texi (Acknowledgments): Update.
12154 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
12156         Check `file-remote-p' over absolute files names in files.el
12158         * lisp/files.el (directory-files-recursively)
12159         (get-free-disk-space): Check `file-remote-p' over absolute files names.
12161 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
12163                 * src/lread.c (syms_of_lread): Doc fix.
12165 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
12167         Don't mistake certain JS method calls for keywords
12169         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
12170         Braceless keyword can't come after a period (bug#22063).
12172 2015-12-01  David Reitter  <david.reitter@gmail.com>
12174         Read frame_title_format from buffer-local variable for NS port
12176         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
12177         icon-title-format variables from buffer in appropriate window.
12178         (Bug#22048)
12180 2015-12-01  Juri Linkov  <juri@linkov.net>
12182         * lisp/replace.el (occur-engine): Count matches in empty lines.
12184         (Bug#22062)
12186 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
12188         * src/emacs-module.h: Fix finalizer typedef for C++11
12190         C++11 standard doesn't allow exception-specification in typedef.
12191         The workaround is to declare a dummy function prototype and use
12192         decltype on it.
12194 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
12196         Fix last change
12198         * src/emacs-module.c (lisp_to_value, value_to_lisp)
12199         [WIDE_EMACS_INT]: Avoid compiler warnings.
12201 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
12203         Rely on conservative stack scanning to find "emacs_value"s
12205         * src/emacs-module.c (struct emacs_value_tag)
12206         (struct emacs_value_frame, struct emacs_value_storage): Remove.
12207         (value_frame_size): Remove constant.
12208         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
12209         (lisp_to_value): Remove first arg.
12210         (module_nil): New constant.
12211         Use it instead of NULL when returning an emacs_value.
12212         (module_make_function): Adjust to new calling convention of
12213         Qinternal_module_call.
12214         (DEFUN): Receive args in an array rather than a list.
12215         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
12216         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
12217         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
12218         Adjust to new type of non_local_exit info.
12219         (ltv_mark) [WIDE_EMACS_INT]: New constant.
12220         (value_to_lisp, lisp_to_value): Rewrite.
12221         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
12222         (allocate_emacs_value): Remove function.
12223         (mark_modules): Gut it.
12224         (initialize_environment): Don't initialize storage any more.
12225         Keep the actual env object on Vmodule_environments.
12226         (finalize_environment): Don't finalize storage any more.
12227         (syms_of_module): Initialize ltv_mark and module_nil.
12229         * src/emacs-module.h (emacs_value): Make it more clear that this type
12230         is really opaque, including the fact that NULL may not be valid.
12232         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
12233         Don't assume that NULL is a valid emacs_value.
12235 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
12237         Yet another doc improvement for search commands
12239         * doc/emacs/search.texi (Word Search, Symbol Search)
12240         (Regexp Search): Document commands that don't support lax
12241         whitespace matching or character folding.
12242         (Nonincremental Search): Mention the search commands that can be
12243         invoked from the menu bar.
12245         * lisp/isearch.el (isearch-define-mode-toggle-word)
12246         (isearch-define-mode-toggle-symbol)
12247         (isearch-define-mode-toggle-character-fold): Note in the doc
12248         string that turning these on exits the regexp mode.
12249         (isearch-forward-regexp, isearch-forward-word)
12250         (isearch-forward-symbol, isearch-backward-regexp)
12251         (word-search-backward, word-search-forward)
12252         (word-search-backward-lax, word-search-forward-lax): State in the
12253         doc string which commands don't support character folding and/or
12254         lax-whitespace matching.
12256 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
12258         Run `window-size-change-functions' also when reading from minibuffer
12260         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
12261         also when reading from minibuffer.
12263 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
12265         Fix scrambling of html-rendered item buffers
12267         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
12268           scrambling of contents by wrapping call to html-renderer in
12269           save-selected-window.
12271 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
12273         Fix font typo in previous doc fix.
12275 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
12277         A bit more security doc, esp. file local vars
12279         * doc/emacs/emacs.texi (Top):
12280         * doc/emacs/misc.texi (Miscellaneous Commands):
12281         Refer to new Host Security section.
12282         (Host Security): New section.
12283         * doc/lispref/os.texi (Security Considerations):
12284         Mention file local variables.
12286 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12288         * lisp/character-fold.el: Comment out branching code
12290         (character-fold-to-regexp): Comment out code that uses multi-char
12291         table.  The branching caused by this induces absurdly long regexps,
12292         up to 10k chars for as little as 25 input characters.
12294 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
12296         Spelling and grammar fixes
12298 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
12300         Make lisp-completion-at-point a wrapper instead of an alias
12302         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
12303         Turn into an obsolete wrapper around elisp-completion-at-point
12304         (bug#20455).
12306 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12308         * lisp/isearch.el (isearch-search-fun-default): Nicer error
12310         message when the search fails.
12312 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
12314         Update menu-bar-goto-uses-etags-p for the current xref API
12316         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
12317         xref-backend-functions, instead of now-nonexistent
12318         xref-find-function.
12320 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12322         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
12324 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12326         * lisp/menu-bar.el: Use folding in searches
12328         (nonincremental-search-forward): Use `isearch-search-fun-default'
12329         to determine the search function.
12330         (nonincremental-search-backward)
12331         (nonincremental-repeat-search-forward)
12332         (nonincremental-repeat-search-backward): Use it.
12334 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12336         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
12338 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12340         * lisp/character-fold.el (character-fold-to-regexp): Be careful
12342         not to return huge regexps.
12344 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
12346         Improve documentation of string-collate-* functions
12348         * doc/lispref/strings.texi (Text Comparison): Improve wording and
12349         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
12351         * etc/NEWS: Move the entry of 'string-collate-equalp' and
12352         'string-collate-lessp' to "Lisp Changes" section and mark it as
12353         documented.
12355 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
12357         Document truncate-string-ellipsis
12359         * doc/lispref/display.texi (Size of Displayed Text): Document
12360         'truncate-string-ellipsis'.
12362         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
12363         (truncate-string-to-width): Mention in the doc string that the
12364         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
12366         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
12367         Changes" section.
12369 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
12371         Fix confusion wrt character folding in the Emacs manual
12373         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
12374         Document that invoking search-forward/backward and
12375         re-search-forward/backward supports only case folding, but not the
12376         rest of the lax-search features.  Reported by Mike Kupfer
12377         <m.kupfer@acm.org>.
12379 2015-11-29  Ken Brown  <kbrown@cornell.edu>
12381         Update mod-test-sum-test
12383         * modules/mod-test/test.el (mod-test-sum-test): Update to
12384         accommodate the lack of dladdr on Cygwin.
12386 2015-11-29  Alan Mackenzie  <acm@muc.de>
12388         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
12390         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
12391         to `funcall', (i) Output an error message; (ii) Generate code to signal a
12392         `wrong-number-of-arguments' error.
12394 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
12396         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
12398 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12400         * lisp/character-fold.el (character-fold-to-regexp)
12402         Warn about using long strings.
12404         * test/automated/character-fold-tests.el
12405         (character-fold--test-lax-whitespace)
12406         (character-fold--test-consistency): Reduce string size for tests.
12408 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12410         Document renaming of x-select-enable-* variables
12412         * doc/emacs/killing.texi (Clipboard): Rename
12413         x-select-enable-clipboard to select-enable-clipboard and
12414         x-select-enable-primary to select-enable-primary.  Update index
12415         entries.
12417         * etc/NEWS: Mark entry as documented.
12419 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12421         Document the shorthand hints displayed by M-x
12423         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
12424         suggest-key-bindings.  Document the shorthand hints for commands
12425         that have no key bindings.  Document that M-x completion ignores
12426         obsolete commands.
12428         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
12429         documented.
12431 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12433         Update docs of character folding
12435         * doc/emacs/search.texi (Lax Search): Update the description of
12436         character folding for the latest changes.
12438 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12440         * lisp/character-fold.el: Also play nice with case-folding
12442         (character-fold-to-regexp): Take `case-fold-search' into account.
12444 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12446         * lisp/character-fold.el: Add support for multi-char matches
12448         (character-fold-table): Now has an extra-slot. This is a second
12449         char-table that holds multi-character matches.  See docstring for
12450         details.
12451         (character-fold-to-regexp): Can build branching regexps when a
12452         character's entry the extra slot of `character-fold-table' matches the
12453         characters that succeed it.
12455 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12457         * lisp/character-fold.el: Code simplifications
12459         (character-fold-table): Reduce the scope of a variable.
12460         (character-fold-to-regexp): Change logic to work directly on the
12461         input string.  It's a little easier to understand, probably
12462         faster, and sets us up for implementing multi-char matches.
12464         * test/automated/character-fold-tests.el
12465         (character-fold--test-fold-to-regexp): New test.
12467 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12469         Document changes in "C-h l"
12471         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
12473         * etc/NEWS: mark "C-h l" changes as documented.
12475 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12477         Finalize documentation of 'custom-prompt-customize-unsaved-options'
12479         * doc/emacs/custom.texi (Saving Customizations): Index the new
12480         function 'custom-prompt-customize-unsaved-options'.
12482         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
12483         is useful.
12485 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12487         Document 'comment-line'
12489         * doc/emacs/programs.texi (Comment Commands): Document
12490         'comment-line'.
12492         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
12494 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12496         Document new checkdoc features
12498         * doc/lispref/tips.texi (Tips, Library Headers): Document the
12499         keyword-checking features of checkdoc and the commands
12500         'checkdoc-file' and 'checkdoc-current-buffer'.
12502         * etc/NEWS: Move the checkdoc-related entries to their own
12503         section.
12505 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
12507         Simplify the prologue of emacs-module.c functions
12509         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
12510         (module_make_global_ref)
12511         (module_free_global_ref, module_make_function, module_funcall)
12512         (module_intern, module_type_of, module_extract_integer)
12513         (module_make_integer, module_extract_float, module_make_float)
12514         (module_copy_string_contents, module_make_string)
12515         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
12516         (module_get_user_finalizer, module_set_user_finalizer)
12517         (module_vec_set, module_vec_get, module_vec_size): Use new helper
12518         macro MODULE_FUNCTION_BEGIN.
12520 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12522         Don't reject module calls with no arguments
12524         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
12526 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
12528         Make module-call be visible from Lisp
12530         * src/emacs-module.c (module_make_function): Use internal--module-call.
12531         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
12532         checks.
12533         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
12534         defsubr internal--module-call.
12536 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12538         Add etags tests for the recent Lua-related bugfix
12540         * test/etags/lua-src/test.lua: New file, tests the issues raised
12541         by bug#21934.
12542         * test/etags/Makefile (LUASRC): Add test.lua.
12543         * test/etags/ETAGS.good_1:
12544         * test/etags/ETAGS.good_2:
12545         * test/etags/ETAGS.good_3:
12546         * test/etags/ETAGS.good_4:
12547         * test/etags/ETAGS.good_5:
12548         * test/etags/ETAGS.good_6:
12549         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
12550         regression fix, resolved around 25 May 2015, required changes to
12551         the "good" ETAGS files.
12553 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12555         Fix Lua tags when a function name includes '.' or ':'
12557         * lib-src/etags.c (Lua_functions): Add a tag for the last element
12558         of a function name after a dot or a colon.  (Bug#21934)
12560 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12562         Improve documentation of search and replace commands
12564         * doc/emacs/search.texi (Replacement and Lax Matches): Document
12565         which commands are affected by 'replace-character-fold'.
12566         (Lax Search): Add a cross reference to "Replacement and Lax
12567         Matches".  Improve wording.  Fix lost extra whitespace.
12568         (Search Customizations): Improve wording.  (Bug#22036)
12569         See also comments in
12570         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
12572         * lisp/replace.el (query-replace, query-replace-regexp)
12573         (query-replace-regexp-eval, replace-string, replace-regexp):
12574         Mention 'replace-character-fold' in the doc strings.
12576 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
12578         Fix minor problems found by static checking
12580         * src/undo.c (prepare_record): Add proper prototype for C.
12582 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12584         * src/emacs-module.c (struct env_storage): Delete
12586         (struct emacs_runtime_private): Keep an emacs_env instead.
12587         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
12588         (initialize_environment): Split the arg in two.  Adjust all callers.
12589         Only store the private part in Vmodule_environments.
12590         (finalize_environment): Change the arg to only be the private env.
12591         Adjust all callers.
12593 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12595         Improve documentation of 'replace-character-fold'
12597         * lisp/replace.el (replace-character-fold): Clarify which commands
12598         are affected by this variable.
12600 2015-11-27  Mark Oteiza  <mvoteiza@udel.edu>
12602         Backport: Add interactive seek command.
12604         * lisp/mpc.el (mpc-cmd-seekcur): New function.
12605         (mpc-seek-current): New command.
12606         (mpc-mode-menu): Add entry for mpc-seek-current
12607         (mpc-mode-map): Bind mpc-seek-current to "g"
12609 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
12611         Autoload etags when using its xref backend
12613         * lisp/progmodes/xref.el (xref--etags-backend):
12614         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
12615         (Bug#22026)
12617 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
12619         * lisp/character-fold.el: Allow complex chars to match their decomposition
12621         (character-fold-table): When a character's decomposition does not
12622         involve a formatting tag (i.e., if it has an "exact" description via
12623         other characters), then this character is allowed to match the
12624         decomposition.
12626 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
12628         * lisp/character-fold.el: More descriptive variable names
12630         (character-fold-table): Rename a lot of the lexical variables to
12631         make the code easier to read.
12633 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
12635         * lisp/isearch.el: Ensure we still support `isearch-new-word'
12637         (isearch-new-regexp-function): Define variable.
12638         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
12640 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12642         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
12644 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
12646         * test/automated/abbrev-tests.el: Define more tests
12648         (abbrev-table-name-test, kill-all-abbrevs-test)
12649         (clear-abbrev-table-test): New tests.
12651 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12653         Add module tests for wrong-type-argument
12655         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
12656         wrong-type-argument.
12658 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12660         Improve handling of signals and 'throw' in modules
12662         * src/emacs-module.c: Add commentary explaining how to write
12663         functions in this file.
12664         (module_make_global_ref, module_free_global_ref)
12665         (module_non_local_exit_signal, module_non_local_exit_throw)
12666         (module_make_function, module_funcall, module_intern)
12667         (module_type_of, module_is_not_nil, module_eq)
12668         (module_extract_integer, module_make_integer)
12669         (module_extract_float, module_make_float)
12670         (module_copy_string_contents, module_make_string)
12671         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
12672         (module_get_user_finalizer, module_set_user_finalizer)
12673         (module_vec_set, module_vec_get, module_vec_size)
12674         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
12675         Do nothing and return with failure indication immediately, if some
12676         previous module call signaled an error or wants to throw.  See
12677         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
12678         for the relevant discussions.
12680 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12682         Add ':version' tag to 'checkdoc-package-keywords-flag'
12684         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
12685         Add a ':version' tag.
12687 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12689         Improve documentation of 'eval-buffer' and 'eval-region'
12691         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
12693         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
12694         "accessible portion of buffer".
12696 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12698         Unbreak the Cygwin w32 build
12700         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
12701         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
12703 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12705         Improve commentary in character-fold.el
12707         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
12708         description from commit log message to comments.  (Bug#22019)
12710 2015-11-26  Alan Mackenzie  <acm@muc.de>
12712         Byte Compiler: generate code to adjust stack count after call to `signal'.
12714         Corrects change from earlier today.
12716         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
12717         `byte-compile--for-effect' as argument to `byte-compile-form'.
12719 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
12721         Improve commentary of prepare_to_modify_buffer_1
12723         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
12724         that this function runs Lisp.  Suggested by Richard Stallman
12725         <rms@gnu.org>.
12727 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
12729         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
12731 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
12733         Fix regression after merge.
12735          * src/undo.c (prepare_record): Remove call to run_undoable_change.
12737 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
12739         After delete, record point location in undo.
12741         Addresses Bug #21968.
12743                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
12744                 better support intercalating calls.
12745                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
12746                 point and current buffer before each command.
12747                 * src/undo.c (record_point): Now only record the point.
12748                 * src/undo.c (prepare_record): Functionality removed form
12749                 record_point.
12750                 * src/undo.c (record_delete): Check if point needs recording.
12751                 * src/undo.c (undo-boundary): Record value of point before each
12752                 boundary.
12753                 * test/automated/simple-test.el: New tests.
12755         Conflicts:
12756                 src/undo.c
12758 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
12760         Fix compiler warnings in w32.c
12762         * src/w32.c (sys_socket): In case of error, use -1 as return
12763         value, not INVALID_SOCKET, which causes compiler warnings.
12764         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
12765         to the appropriate function signature, to avoid compiler errors.
12766         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
12768 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
12770         Check if the file exists on disk before producing the revert diff
12772         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
12773         exists on disk (bug#20558).
12775 2015-11-26  Alan Mackenzie  <acm@muc.de>
12777         Byte compiler: on setq with an odd number of arguments, generate a `signal'
12779         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
12780         it has an odd number of arguments, to allow bytecomp to handle the error.
12782         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
12783         odd number of arguments, generate a `signal' instead of the normal code.
12785 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
12787         Use find-tag-default for xref-backend-identifier-at-point
12789         * lisp/progmodes/etags.el (find-tag-tag)
12790         (tags-completion-at-point-function): Extract common code as
12791         find-tag--default.
12792         (xref-backend-identifier-at-point): Define in terms of the new
12793         function.
12795 2015-11-26  Paul Eggert  <eggert@cs.ucla.edu>
12797         * src/undo.c (record_property_change): Remove now-unused local.
12799 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
12801         run_undoable_changes now called from insdel.
12803         The original calls from inside undo.c are not always at a safe position
12804         to call lisp, as they originate in varied positions within insdel.c.
12805         Calling them directly from prepare_to_modify_buffer_1 ensures that they
12806         are always run at the same point.
12808          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
12809          and symbol used.
12810          * src/insdel.c (run_undoable_changes): Add function and symbol.
12812 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
12814         Improve and update documentation of search commands
12816         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
12817         all references changed.  Move the description of lax-whitespace
12818         here.  Add description of the new character folding features and
12819         additional customizable options.
12820         (Isearch Yank): Move before "Error in Search".
12821         (Basic Isearch): Improve wording.  Add index entries.  Add short
12822         description of how to abandon search, making this subsection a
12823         complete introduction to search basics.
12824         (Repeat Isearch): Add index entries.  Describe additional
12825         customizable options.  Describe mouse clicks.
12826         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
12827         area.  Describe more customizable options.
12828         (Error in Isearch): Add index entries.
12829         (Special Isearch): Move actual description of some isearch
12830         commands to other sections, leaving here just the summary of the
12831         commands.  Add command that toggles character folding.  Describe
12832         commands, like "C-h C-h", that were previously omitted for some
12833         reason.
12834         (Not Exiting Isearch): Describe search-exit-option.  Add index
12835         entries.
12836         (Word Search): Describe eww-search-word and eww-search-prefix.
12837         (Symbol Search): Add index entries.
12838         (Regexp Search): Describe regexp-search-ring-max.
12839         (Replacement and Lax Matches): Renamed from "Replacement and
12840         Case"; all references changed.  Describe lax-whitespace matching
12841         in replace commands and related options.  Describe character
12842         folding in replace commands and related options.
12843         (Query Replace): Describe query-replace-from-to-separator and the
12844         new history features.  Add index entries for highlighted text.
12845         Describe query-replace-skip-read-only.  Describe more keys
12846         accepted by query-replace.
12847         (Other Repeating Search): More index entries for Occur.  Describe
12848         list-matching-lines-default-context-lines.
12849         (Search Customizations): New section, documents customizable
12850         options that were not documented until now.
12851         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
12852         "Character Folding".
12854         * etc/NEWS: Move search- and replace-related entries to a single
12855         parent section.
12857         * lisp/replace.el (query-replace-show-replacement): Doc fix.
12858         * lisp/isearch.el (search-nonincremental-instead)
12859         (isearch-hide-immediately): Doc fixes.
12861 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
12863         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
12865         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
12866         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
12867         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
12869 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
12871         Fix module_format_fun_env when dynlib_addr fails
12873         * src/emacs-module.c (module_format_fun_env):
12874         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
12875         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
12877 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
12879         Disambiguate variable help a bit better
12881         * lisp/help-fns.el (describe-variable): Quote the
12882         variable’s value if it is a symbol other than t or nil.
12883         See: T.V Raman in:
12884         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
12886 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
12888         Pass SVN commit message through log-edit-extract-headers
12890         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
12891         log-edit-extract-headers (bug#18954).
12893 2015-11-24  Alan Mackenzie  <acm@muc.de>
12895         CC Mode: Eliminate compiler warning messages.
12897         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
12898         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
12899         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
12900         (c-awk-set-syntax-table-properties): Clarify comments about
12901         `font-lock-syntactic-keywords'.
12903         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
12904         of this before the real (interpreted) one, to satisfy the byte compiler.
12906 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
12908         Extend the test suite for json.el
12910         * lisp/json.el (json-plist-p): Clarify docstring.
12912         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
12913         macro.
12914         (test-json-join, test-json-alist-p)
12915         (test-json-plist-p, test-json-advance, test-json-peek)
12916         (test-json-pop, test-json-skip-whitespace)
12917         (test-json-read-keyword, test-json-encode-keyword)
12918         (test-json-read-number, test-json-encode-number)
12919         (test-json-read-escaped-char, test-json-read-string)
12920         (test-json-encode-string, test-json-encode-key)
12921         (test-json-new-object, test-json-add-to-object)
12922         (test-json-read-object, test-json-encode-list)
12923         (test-json-read-array, test-json-encode-array)
12924         (test-json-read, test-json-read-from-string)
12925         (test-json-encode): New tests.
12926         (json-read-simple-alist): Merged into `test-json-read-object'.
12927         (json-encode-string-with-special-chars): Merged into
12928         `test-json-encode-string'.
12929         (json-read-string-with-special-chars): Split into
12930         `test-json-encode-string' and `test-json-read-from-string'.
12932 2015-11-24  Anders Lindgren  <andlind@gmail.com>
12934         Fixed bug#18283: Enable applescript in NextStep.
12936         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
12938 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12940         Allow completion on dynamic module files in load-library
12942         * lisp/files.el (load-library): Bind completion-ignored-extensions
12943         to nil, to allow completion on dynamic modules typed as file
12944         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
12946 2015-11-24  Alan Mackenzie  <acm@muc.de>
12948         CC Mode: eliminate almost all byte compilation warnings
12950         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
12951         (cc-require): Remove the crude hack that saved and restored
12952         byte-compile-noruntime-functions.
12953         (cc-conditional-require, cc-conditional-require-after-load): New macros.
12955         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
12956         cc-fix.el using the new macros in cc-bytecomp.el.
12958         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
12959         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
12960         forms to remove the superflous quotes.
12962 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12964         Add one more mod-test test
12966         * modules/mod-test/test.el (mod-test-sum-test): Test the error
12967         signaled when the function is invoked with a wrong number of
12968         arguments.
12970 2015-11-24  Philipp Stephani  <phst@google.com>
12972         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
12974 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12976         Implement dynlib_addr for MS-Windows
12978         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
12979         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
12980         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
12981         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
12982         if undefined.
12983         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
12984         zero.
12985         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
12986         the full file name of the module for a given address.
12988 2015-11-24  Alan Mackenzie  <acm@muc.de>
12990         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
12992 2015-11-24  Alan Mackenzie  <acm@muc.de>
12994         Squashed commit of the following:
12996         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
12997         Author: Alan Mackenzie <acm@muc.de>
12998         Date:   Tue Nov 24 16:50:09 2015 +0000
13000             Byte compile: minor amendments.
13002             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
13003             add a comment to explain the binding of variables around a subsidiary
13004             compilation.
13005             (byte-compile-new-defuns): Amend the doc string.
13007         commit c537bfed1dda1593d218956ff00c6105a3ff0316
13008         Author: Alan Mackenzie <acm@muc.de>
13009         Date:   Sat Nov 21 18:43:57 2015 +0000
13011             Byte compiler: fix spurious warnings "might not be defined at runtime".
13013             Also initialize byte-compile-noruntime-functions between runs.
13015             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
13016             (byte-compile-initial-macro-environment): For eval-when-compile: bind
13017             byte-compile-unresolved-functions and byte-compile-new-defuns around
13018             byte-compile-top-level, to prevent spurious entries being made.
13019             (byte-compile-warn-about-unresolved-functions): Check whether function is
13020             in byte-compile-new-defuns before emitting a warning about it.
13021             (byte-compile-from-buffer): Initialize new variable and
13022             byte-compile-noruntime-functions to nil.
13023             (byte-compile-file-form-require): record all new functions defined by a
13024             `require' in byte-compile-new-defuns.
13025             (byte-compile-file-form-defmumble): record the new alias in
13026             byte-compile-new-defuns.
13028 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
13030         Fix crash at startup related to GC of font entities
13032         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
13033         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
13034         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
13035         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
13036         Don't ifdef away font cache compaction on NT_GUI, as the problems
13037         which led to that seem to have been solved.
13038         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
13039         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
13040         cousins.  (Bug#21999)
13042 2015-11-24  Alan Mackenzie  <acm@muc.de>
13044         Byte compile: Output an error, not a warning, for odd number of args to setq
13046         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
13048 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
13050         Fix kbd_buffer iteration loop in readable_events
13052         * src/keyboard.c (readable_events): Wrap the event pointer back to the
13053         start of the kbd_buffer array inside the top of the loop instead of
13054         right before checking the loop condition, since kbd_fetch_ptr and
13055         kbd_store_ptr point past the end of the array to mean that element 0
13056         is next. (bug#21935)
13058 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
13060         Improve text-quoting-style doc again
13062         * doc/lispref/help.texi (Keys in Documentation):
13063         Omit overkill discussion of ‘setq’.  Mention Emacs versions
13064         where ‘grave’ style was standard.
13066 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
13068         Improve text-quoting-style doc
13070 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
13072         Simplify module_make_function
13074         * src/emacs-module.c (module_make_function):
13075         Simplify by calling build_unibyte_string.
13077 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
13079         Port better to FreeBSD’s dlfunc vs dlsym
13081         This avoids warnings when converting between void * and
13082         function pointers, which strict C11 does not allow.
13083         * configure.ac (dlfunc): Check for existence.
13084         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
13085         (dynlib_func): New function.
13086         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
13087         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
13088         dynlib_sym, for function pointers.
13090 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
13092         Simplify use of emacs_finalizer_function type
13094         * src/emacs-module.h (emacs_finalizer_function):
13095         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
13096         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
13098 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
13100         module_format_fun_env fixes
13102         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
13103         * src/emacs-module.c (module_format_fun_env):
13104         Convert path and sym to UTF-8.
13105         Don’t use VLAs, as the C11 standard says they’re optional,
13106         and anyway they can cause core dumps with large allocations.
13107         Use exprintf rather than snprintf, as exprintf handles arbitrarily
13108         long strings.  Simplify the code a bit.
13110 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
13112         Don't use package-user-dir in elisp-library-roots if it's not bound
13114         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
13115         use package-user-dir if it's not bound (bug#19759).
13117 2015-11-23  Anders Lindgren  <andlind@gmail.com>
13119         New visible-bell for NextStep (OS X El Capitan compatible).
13121         Instead of inverting a rectangle in the middle of the frame, use
13122         the standard NextStep image "caution", represented using an
13123         warning sign with an exclamation mark.  (Bug#21662)
13125         Implemented based on a suggestion drafted by Mustafa Kocaturk.
13127         * src/nsterm.m (EmacsBell): New class for managing the caution
13128         image.  Support multiple active bells, the image is removed once
13129         all bells have timed out.
13130         (ns_timeout): Removed, no longer used.
13131         (ns_ring_bell): Reimplemented to use EmacsBell.
13133 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
13135         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
13137         (remove-function): Ditto. (Bug#20376)
13139 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
13141         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
13143 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
13145         Improve how non-ASCII strings are accepted from modules
13147         * src/emacs-module.c (module_make_function, module_make_string):
13148         Build a unibyte Lisp string and then decode it by UTF-8, instead
13149         of building a multibyte string without decoding.  This is more
13150         tolerant to deviations from UTF-8.
13152 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
13154         Port recent module changes to pickier compilers
13156         * src/emacs-module.c (module_make_function)
13157         (module_make_string): Add casts to fix pointer signedness issues.
13159 2015-11-23  Philipp Stephani  <phst@google.com>
13161         Fix how strings are accepted from modules
13163         * src/emacs-module.c (module_make_function, module_make_string): Use
13164         make_multibyte_string.
13165         (module_copy_string_contents): Encode before reading the byte
13166         size.  Return false if and only if an error occurred.
13168 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
13170         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
13172 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
13174         Add the tamil-dvorak input method
13176         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
13178         * etc/NEWS: Mention the new input method.
13180 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
13182         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
13184         * src/frame.c (adjust_frame_size): Don't set
13185         FRAME_WINDOW_SIZES_CHANGED here ...
13186         * src/window.c (resize_frame_windows): ... but here, as suggested
13187         by Stefan Monnier.  Also remove some dead code along the way.
13189 2015-11-23  Alan Mackenzie  <acm@muc.de>
13191         * etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
13193 2015-11-23  Alan Mackenzie  <acm@muc.de>
13195         Signal an error when `setf' gets an odd number of arguments.
13197         * lisp/emacs-lisp/gv.el (setf): Amend.
13199 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
13201         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
13203 2015-11-23  Alan Mackenzie  <acm@muc.de>
13205         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
13207 2015-11-23  Alan Mackenzie  <acm@muc.de>
13209         Expunge occurrences of `setq' with an odd number of arguments.
13211         * lisp/apropos.el (apropos-documentation):
13212         * lisp/obsolete/complete.el (PC-include-file-all-completions):
13213         * lisp/progmodes/compile.el (compilation-goto-locus):
13214         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
13215         Insert missing nil at end of `setq' forms.
13217         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
13218         erroneous trailing variable name from a setq, thus allowing a compilation
13219         properly to track functions not defined at runtime.
13221 2015-11-23  John Wiegley  <johnw@newartisans.com>
13223         Add a note about a questionable use of bool in xdisp.c
13225 2015-11-23  Alan Mackenzie  <acm@muc.de>
13227         Issue a warning from the byte compiler on a malformed `setq' form.
13229         Partly fixes bug#20241.
13230         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
13231         `setq' form with an odd number of arguments is compiled.
13233 2015-11-23  Alan Mackenzie  <acm@muc.de>
13235         Don't let cconv_convert insert a nil argument into a `setq' form.
13237         Fixes bug#21983.
13238         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
13239         argument into a `setq' when there're an odd number of args.  This enables the
13240         byte compiler to issue a message in this case.
13242 2015-11-23  Alan Mackenzie  <acm@muc.de>
13244         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
13246         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
13247         (syms_of_eval): Add a DEFSYM for Qsetq.
13249 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
13251         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
13253         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
13255 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13257         Add EUDC BBDB 3 entry in NEWS
13259         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
13261 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13263         Improve EUDC to BBDB 3 export
13265         * lisp/net/eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
13266         entry to single item.  Add company conversion.
13267         * lisp/net/eudc-export.el (eudc-bbdbify-company): New function.
13268         (bbdb-parse-phone): Declare function.
13269         (eudc-bbdbify-phone): Add BBDB 3 support.
13270         (Bug#21971)
13272 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13274         Add BBDB 3 support for EUDC export
13276         * lisp/net/eudc.el: Add bbdb-version defvar.
13277         (eudc--using-bbdb-3-or-newer-p): New function.
13278         * lisp/net/eudc-export.el (eudc-create-bbdb-record): Add support for
13279         bbdb-create-internal argument list changes introduced in BBDB 3.
13280         * lisp/net/eudcb-bbdb.el: Remove bbdb-version defvar.
13281         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
13282         (Bug#21971)
13284 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
13286         Allow loading modules by 'load-file'
13288         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
13289         2nd arg, to avoid the "binding stack not balanced" error.
13290         (syms_of_lread) <module-file-suffix>: New Lisp variable.
13292         * lisp/files.el (module-file-suffix): Declare.
13293         (load-file): Remove 'module-file-suffix' from
13294         'completion-ignored-extensions', to allow completion on modules.
13296         * etc/NEWS: Mention 'module-file-suffix'.
13298 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
13300         Fix unoptimized builds
13302         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
13303         builds.
13305 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
13307         Work around the asynchronous-empty-diff problem
13309         * lisp/vc/vc-rcs.el (vc-rcs-diff):
13310         * lisp/vc/vc-mtn.el (vc-mtn-diff):
13311         * lisp/vc/vc-hg.el (vc-hg-diff):
13312         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
13313         do a synchronous process call (bug#21969).
13315 2015-11-22  Karl Fogel  <kfogel@red-bean.com>
13317         Finish excising electric indent from `open-line'
13319         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
13321         * test/automated/simple-test.el (open-line-indent, open-line-hook):
13322           Adjust accordingly.
13324         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
13325         (git commit c59353896) started.  It turns out that having INTERACTIVE
13326         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
13327         still had the electric indent behavior, as `post-self-insert-hook'
13328         normally contains `electric-indent-post-self-insert-function' ever
13329         since `electric-indent-mode' has been on by default.  Tracing the code
13330         change in `open-line' is mildly twisty, because Artur Malabarba's
13331         earliest two commits of 24 Oct 2015 first removed the `interactive'
13332         form entirely (git commit 6939896e2) and then restored it with the new
13333         extra "p" already added (git commit bd4f04f86), such that there is no
13334         single-commit diff in which one sees the second "p" appear.  Thus this
13335         change is effectively a reversion of parts of each of those commits.
13337         This could close bug#21884, at least until further discussion.
13339 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
13341         Adhere closer to the "implicit tag name" definition
13343         * lisp/progmodes/etags.el (etags-tags-completion-table):
13344         Adhere closer to the "implicit tag name" definition.  Simplify
13345         the regexp.  Search for the explicit tag name first, and when
13346         not found, search locally for the implicit one.  (Bug#21934)
13348 2015-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
13350         Unrevert most of regexp reentrancy abort patch
13352         The problem was in:
13353           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
13354         which is hence not unreverted.
13355         The rest is:
13356         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
13357         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
13358         All callers in regex.c changed back to the _FAST versions.
13360         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
13361         propertization in backward-sexp.
13363 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
13365         Revert regexp reentrancy abort patch
13367         Although the patch does fix Bug#21688 and prevents a core dump,
13368         it also makes the message-mode-propertize test fail; see:
13369         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
13370         Perhaps someone else can come up with a better fix some day.
13371         * src/syntax.c (update_syntax_table_forward):
13372         Propertize even when truncated.
13373         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
13374         (UPDATE_SYNTAX_TABLE_FAST): Remove.
13375         All callers changed back to the non-_FAST versions.
13377 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
13379         Add a few safety checks when ENABLE_CHECKING
13381         This was motivated by the recent addition of module code,
13382         which added some ENABLE_CHECKING-enabled checks that are
13383         useful elsewhere too.
13384         * src/alloc.c (compact_font_cache_entry):
13385         * src/fns.c (sweep_weak_table):
13386         * src/lread.c (oblookup):
13387         Use gc_asize rather than doing it by hand.
13388         * src/emacs-module.c (module_make_global_ref)
13389         (module_free_global_ref, module_vec_size):
13390         Omit assertions that lisp.h now checks.
13391         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
13392         check that the result is nonnegative.  Use eassume, as this
13393         info can help a bit when optimizing production code.
13394         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
13395         to be consistent with the USE_LSB_TAG case.
13396         (gc_asize): New function, when ASIZE is needed in the gc.
13397         (gc_aset): Use it.
13398         (HASH_TABLE_P): Move definition up, so that it can be used ...
13399         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
13401 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
13403         Simplify recording of main thread's ID on MS-Windows
13405         * src/w32term.c (w32_initialize):
13406         * src/w32console.c (initialize_w32_display):
13407         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
13408         ID independently for each type of session (GUI, TTY, batch).
13409         * src/w32term.c (w32_init_main_thread): New function, records the
13410         main thread's thread ID.
13411         * src/w32term.h: Add prototype for w32_init_main_thread.
13412         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
13414         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
13415         main_thread, for consistency with other threading libraries.  All
13416         users changed.  Include w32term.h.
13417         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
13418         make sure the main thread is alive, as we hold a handle on it
13419         opened by w32_init_main_thread.
13420         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
13421         w32_init_main_thread, instead of calling the requisite APIs once
13422         more.
13424 2015-11-21  Mark Oteiza  <mvoteiza@udel.edu>
13426         Backport: Fix issue where a new tempfile was created every refresh
13428         * lisp/mpc.el (mpc-format): Leave dir as relative path
13430 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
13432         Call 'window-size-change-functions' for mini-windows
13434         * src/window.c (grow_mini_window, shrink_mini_window): Set the
13435         frame's 'window_sizes_changed' flag.
13436         * src/xdisp.c (redisplay_internal): Call the hooks on
13437         'window-size-change-functions' if the call to 'echo_area_display'
13438         sets the frame's 'window_sizes_changed' flag.
13439         (syms_of_xdisp) <window-size-change-functions>:
13440         Update doc string to indicate the mini-window resizes trigger a
13441         call to the hooks, and don't promise that will happen "before
13442         redisplay".  (Bug#19576, Bug#21333)
13444         * doc/lispref/windows.texi (Window Hooks): Update the description
13445         of 'window-size-change-functions'.
13447 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
13449         Improve documentation of dynamic modules
13451         * src/fns.c (Frequire): Doc fix to include the dynamic module
13452         support.
13453         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
13454         dynamic module support.
13455         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
13456         wrt the MUST-SUFFIX argument.
13458         * etc/NEWS: Expand documentation of dynamically loaded modules.
13460 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
13462         Initial documentation for dynamic modules
13464         * etc/NEWS: Mention the new support for dynamically loaded modules.
13466 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
13468         Add xref--etags-backend to xref-backing-functions using add-hook
13470         * lisp/progmodes/xref.el (xref-backend-functions): Move the
13471         default value into a separate `add-hook' call (bug#21964).
13473         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
13474         Don't declare the xref-backend-functions variable.
13475         It doesn't make any difference.
13477 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13479         Fix double-decrement bug when freeing global refs
13481         * src/emacs-module.c (module_free_global_ref): Add a FIXME
13482         comment about error reporting.  Fix a recently-introduced typo
13483         that double-decremented the refcount.
13485 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13487         Declare emacs_module_init in the module API
13489         * src/emacs-module.h (emacs_module_init): New decl.
13490         Without it, GCC might complain about a module that defines
13491         emacs_module_init without using it.  This also checks the
13492         API better.
13494 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13496         Fix module test to use ptrdiff_t nargs too
13498         * modules/mod-test/mod-test.c (Fmod_test_return_t)
13499         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
13500         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
13501         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
13502         (Fmod_test_userptr_get, Fmod_test_vector_fill)
13503         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
13504         (finalizer): Remove; no longer used.
13506 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13508         Fix reindent-introduced typo in module code
13510         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
13511         introduced while reindenting the code earlier, and add a
13512         comment explaining the unusual use of do-while here.
13514 2015-11-20  Anders Lindgren  <andlind@gmail.com>
13516         Fixed bug#19576: `write-file' saves wrong buffer.
13518         If a function on the hook `window-size-change-functions' doesn't
13519         restore the current buffer, functions that save and restore the
13520         current window configuration (like `y-or-no-p') could silently
13521         change the current buffer.  When `write-file' asked the user
13522         confirmation to overwrite a file, `y-or-no-p' changed the current
13523         buffer, and the wrong buffer was saved to the file.
13525         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
13526         using the `norecord' parameter.
13527         (follow-window-size-change): Restore current buffer. Call
13528         `select-frame' using the `norecord' parameter. Cleanup.
13530 2015-11-20  John Wiegley  <johnw@newartisans.com>
13532         Correct a documentation error in frames.texi
13534 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
13536         * lisp/cedet/mode-local.el: Delete obsolete comment
13538 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13540         Module function arg counts are ptrdiff_t, not int
13542         * src/emacs-module.c (struct module_fun_env)
13543         (module_make_function, module_funcall, Fmodule_call):
13544         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
13545         Use ptrdiff_t, not int, for arg counts.
13546         * src/emacs-module.c (module_make_function): Don’t bother
13547         checking arity against MOST_POSITIVE_FIXNUM, as that’s
13548         unnecessary here.  Make the checking clearer by negating it.
13549         (module_make_function, Fmodule_call): No need to use xzalloc
13550         since the storage doesn’t need to be cleared.
13551         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
13552         for it, and many implementations are buggy with large VLAs anyway.
13553         Use SAFE_ALLOCA_LISP instead.
13554         (module_vec_set): Don’t crash if i < 0.
13555         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
13556         (module_vec_set, module_vec_get): Do fixnum checks only when
13557         i is out of array bounds, for efficiency in the usual case.
13558         (Fmodule_load): Simplify fixnum range check.
13559         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
13560         integer overflow in array allocation size.
13562 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
13564         Minor improvements in module test
13566         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
13567         about missing prototype of malloc.
13568         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
13569         compiler warnings.
13571 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
13573         Improve MS-Windows implementation in dynlib.c
13575         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
13576         No need to include windows.h, as w32.h already does that.
13577         <dynlib_last_err>: New static variable.
13578         (dynlib_reset_last_error): New function.
13579         (dynlib_open): Convert forward slashes to backslashes.  Convert
13580         file names from UTF-8 to either UTF-16 or the current ANSI
13581         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
13582         argument is NULL, return a handle to the main module, like
13583         'dlopen' does.  Record the error, if any, for use by dynlib_error.
13584         (dynlib_sym): Check the handle for validity. Record the error, if
13585         any, for use by dynlib_error.
13586         (dynlib_error): Call w32_strerror to produce the error string, and
13587         zero out the last error code, like dlerror does.
13588         (dynlib_close): Check the handle for validity.  Record the error,
13589         if any, for use by dynlib_error.  Don't call FreeLibrary with a
13590         handle for the main module.
13591         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
13593 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13595         Include-file tweaks for modules
13597         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
13598         * src/dynlib.h: Do not include config.h.
13599         It’s every .c file’s responsibility to include config.h first.
13600         * src/emacs-module.c: Include emacs-module.h immediately after
13601         config.h, to test that emacs-module.h doesn’t depend on
13602         include files other than config.h.
13604 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13606         Simplify push_handler and profile its malloc
13608         * src/lisp.h (PUSH_HANDLER): Remove.
13609         All callers changed to use push_handler directly.
13610         * src/eval.c (internal_condition_case)
13611         (internal_condition_case_1, internal_condition_case_2)
13612         (internal_condition_case_n):
13613         Use same pattern as for other invokers of push_handler.
13614         (push_handler, push_handler_nosignal): Use call-by-value
13615         instead of call-by-reference.  All uses changed.
13616         (push_handler): Simplify by rewriting in terms of
13617         push_handler_nosignal.
13618         (push_handler_nosignal): Profile any newly allocated memory.
13620 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13622         * src/emacs-module.h: Include stddef.h, not stdlib.h.
13624 2015-11-20  Juanma Barranquero  <lekktu@gmail.com>
13626         Discover repository version in linked worktrees (bug#21930)
13628         * lisp/version.el (emacs-repository--version-git-1): Do not assume
13629         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
13630         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
13631         is nil too.
13633 2015-11-20  Juri Linkov  <juri@linkov.net>
13635         * lisp/replace.el (occur-regexp-descr): New function.
13636         (occur-1, occur-engine): Use it.
13638         * lisp/isearch.el (isearch-occur): Propertize regexp with
13639         isearch-string and isearch-regexp-function-descr for
13640         occur-regexp-descr to display the correct description
13641         message in the header (bug#21176, bug#21180).
13643 2015-11-20  Karl Fogel  <kfogel@red-bean.com>
13645         Revert `open-line' electric-indent sensitivity
13647         * lisp/simple.el (open-line): Remove electric indent code.
13648           (electric-indent-just-newline): Don't declare.
13650         * test/automated/simple-test.el (open-line-indent): Adjust test.
13652         This partly reverts Artur Malabarba's change that added electric
13653         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
13654         commit bd4f04f86), and adjusts a new test he added right afterwards
13655         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
13656         However, the new INTERACTIVE argument to `open-line', which he also
13657         added in the first commit, is not reverted here.
13659         See the thread "Questioning the new behavior of `open-line'." on the
13660         Emacs Devel mailing list, and in particular this message:
13662           From: Artur Malabarba
13663           Subject: Re: Questioning the new behavior of `open-line'.
13664           To: Karl Fogel
13665           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
13666           Date: Wed, 18 Nov 2015 21:03:58 +0000
13667           Message-ID: \
13668             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
13670           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
13672 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13674         Omit unnecessary clear in Fmodule_load
13676         * src/emacs-module.c (Fmodule_load):
13677         Simplify and avoid unnecessary initialization of priv member to 0.
13679         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
13681 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13683         Prefer signed integer types in module code
13685         Generally speaking, at the C level the Emacs source code prefers
13686         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
13687         partly to avoid the usual signedness confusion when comparing values.
13688         Change the module API to follow this convention.
13689         Use ‘int’ for small values that can’t exceed INT_MAX.
13690         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
13691         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
13692         (Fmod_test_vector_eq):
13693         * src/emacs-module.c (struct emacs_value_frame)
13694         (module_make_global_ref, module_free_global_ref)
13695         (module_copy_string_contents, module_make_string)
13696         (module_vec_set, module_vec_get, module_vec_size):
13697         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
13698         * src/lread.c (suffix_p):
13699         Prefer signed to unsigned integer types.
13701 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13703         Omit ‘const’ on locals
13705         Remove ‘const’ qualifier from locals that were newly added.
13706         We don’t normally bother declaring locals with ‘const’ even
13707         though they are not modified, for the same reason we don’t
13708         bother declaring them with ‘register’ even though their
13709         addresses are not taken; the advantage in compile-time
13710         checking isn’t worth the loss of readability.
13711         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
13712         (Fmod_test_vector_fill, Fmod_test_vector_eq):
13713         * src/emacs-module.c (MODULE_SETJMP_1)
13714         (module_make_global_ref, module_free_global_ref)
13715         (module_non_local_exit_get, module_make_function)
13716         (module_extract_integer, module_extract_float)
13717         (module_get_user_ptr, module_set_user_ptr)
13718         (module_get_user_finalizer, module_set_user_finalizer)
13719         (module_vec_get, Fmodule_call)
13720         (module_non_local_exit_signal_1)
13721         (module_non_local_exit_throw_1, lisp_to_value)
13722         (finalize_storage, allocate_emacs_value, mark_modules)
13723         (module_handle_signal, module_handle_throw)
13724         (module_format_fun_env):
13725         * src/eval.c (push_handler, push_handler_nosignal)
13726         (init_handler):
13727         * src/lread.c (suffix_p):
13728         Omit unnecessary ‘const’.
13730 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13732         Prefer intmax_t to int64_t in module code
13734         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
13735         * src/emacs-module.c (module_extract_integer)
13736         (module_make_integer):
13737         * src/emacs-module.h (struct emacs_env_25):
13738         Prefer intmax_t to int64_t.  This doesn’t change the generated
13739         code on any of the machines Emacs currently ports to, but it’s
13740         at least in theory more future-proof as C99 doesn’t guarantee
13741         that int64_t exists.
13743 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13745         Rename module.c to emacs-module.c, etc.
13747         * src/emacs-module.c: Rename from src/module.c.
13748         * src/emacs-module.h: Rename from src/module.h.
13749         All uses changed.
13751 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13753         Fix minor module problems found by static checking
13755         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
13756         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
13757         * src/emacs-module.c (Fmodule_load): Fix pointer signedness bug.
13758         (Fmodule_call): Tell GCC that the default case is unreachable.
13760 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13762         Style fixes for indenting etc. in module code
13764         This is mostly indenting and spacing changes.  Also, remove
13765         some unnecessary static decls instead of bothering to reindent them.
13766         * src/emacs-module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
13767         as most other Emacs files do for this sort of thing.
13769 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
13771         Minor improvements in modules testing Makefile
13773         * modules/mod-test/Makefile (EMACS, SO): New variables.
13774         (CFLAGS): When SO = dll, don't use -fPIC.
13775         (check): New target, runs the test.
13777 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
13779         * .gitignore: Add "*.dll".
13781 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13783         Migrate modules/.gitignore into .gitignore
13785         * .gitignore: Add former contents of modules/.gitignore.
13786         * modules/.gitignore: Remove.
13788 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13790         Add copyright notices to module code
13792         Put them in the usual format for GNU Emacs copyright notices.
13794 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13796         Rename emacs_module.h to module.h
13798         * src/module.h: Rename from src/emacs_module.h.
13799         All uses changed.
13801 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
13803         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
13805         * src/lread.c (Fload): Remove unused variable `size'
13807 2015-11-19  Alan Mackenzie  <acm@muc.de>
13809         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
13811 2015-11-19  Dmitry Gutov  <dgutov@yandex.ru>
13813         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
13815         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
13816         vc-parent-buffer over log-view-mode fallback (bug#21955).
13818 2015-11-18  Alan Mackenzie  <acm@muc.de>
13820         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
13822 2015-11-18  Ken Brown  <kbrown@cornell.edu>
13824         * configure.ac (LIBMODULES): Don’t define on Cygwin
13826 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
13828         Fix MS-Windows build --with-modules
13830         * src/module.c: Reformat copyright commentary.
13831         (module_vec_get): Use explicit cast to size_t to avoid compiler
13832         warning in 32-bit builds.
13833         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
13834         Compare thread IDs directly, as GetThreadId is not available
13835         before Windows Vista.
13836         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
13837         without using APIs and constants not available on XP and older
13838         systems.  Obtain and store the thread ID as well.
13840 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13841             Philipp Stephani  <phst@google.com>
13843         Add dynamic module test and helper script
13845         Add 'modhelp.py' script (python2) to automate module testing and
13846         module generation.
13848         To build and test all modules in the modules/ dir
13849           $ ./modhelp.py test
13851         To generate a module from template code (good starting point)
13852           $ ./modhelp init mynewtestmodule
13854         See the script -h option for more documentation.
13856         * modules/modhelp.py: New module helper script.
13857         * modules/mod-test/Makefile: New file. Makefile for the test module.
13858         * modules/mod-test/mod-test.c: New file. Test module source file.
13859         * modules/mod-test/test.el: New file. ert test suite for the test module.
13860         * modules/.gitignore: New file. Local .gitignore file.
13862 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13864         Make 'Fload' look for modules
13866         'Fload' can now load dynamic modules. This also makes 'require' work.
13868         * src/lread.c:
13869           (suffix_p): New function.
13870           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
13871           with a module suffix.
13872           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
13874 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13875             Philipp Stephani  <phst@google.com>
13877         Add dynamic module module support
13879         * configure.ac: Add '--with-modules' option.  Conditionally add
13880           dynlib.o and module.o to the list of objects.  Add any system
13881           specific flags to the linker flags to support dynamic libraries.
13882         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
13883           attributes.
13884         * src/Makefile.in: Conditionally add module objects and linker flags.
13885         * src/alloc.c (garbage_collect_1): protect module local values from
13886           GC.
13887         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
13888         * src/emacs-module.h: New header file included by modules.  Public
13889           module API.
13890         * src/emacs-module.c: New module implementation file.
13892 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13894         Add new User Pointer (User_Ptr) type
13896         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
13897         (XUSER_PTR): New User_Ptr accessor.
13898         * src/alloc.c (make_user_ptr): New function.
13899         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
13900         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
13901         (Fuser-ptrp): New user pointer type predicate function.
13902         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
13903         subr.
13904         * src/print.c (print_object): Add printer for User_Ptr type.
13906 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13907             Philipp Stephani  <phst@google.com>
13909         Add portable layer for dynamic loading
13911         * src/dynlib.h: New file.
13912         * src/dynlib.c: New file.
13914 2015-11-18  Philipp Stephani  <phst@google.com>
13916         Add catch-all & no-signal version of PUSH_HANDLER
13918         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
13919         a new "catch-all" handler type.
13921         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
13922           functions.
13923         * src/fns.c (hash_remove_from_table): Expose function public.
13924         * src/lisp.h: New handler type, define macro to push_handler call.
13926 2015-11-18  Ken Brown  <kbrown@cornell.edu>
13928         Silence byte-compiler warning
13930         * lisp/server.el (server-process-filter): Silence byte-compiler
13931         warning.
13933 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
13935         Quote symbols in docstrings using `'
13937         Be more systematic about quoting symbols `like-this' rather than
13938         `like-this or 'like-this' in docstrings.  This follows up Artur
13939         Malabarba's email in:
13940         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
13942 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
13944         Fix savegames in dunnet
13946         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
13947           of separate implementation.
13949 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
13951         * lisp/emacs-lisp/package.el (package--with-response-buffer):
13953         Ensure we're at the start of the buffer before searching for
13954         the end of headers.
13956 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13958         * admin/release-process: Improve wording.
13960 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13962         Backport: * CONTRIBUTE: Remove information about feature freeze.
13964         (cherry picked from commit ae0653b5ab9ee223751ec389b87011963e1cbbef)
13966 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13968         Backport: Document the release process
13970         * admin/notes/versioning: Add information about RC releases.
13971         * admin/release-process: Document the release process.
13972         * admin/authors.el (authors-ignored-files):
13973         * admin/README: Change FOR-RELEASE to release-process.
13974         * CONTRIBUTE:
13975         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
13977         (cherry picked from commit 9a4aa0f5945a03611ae29c516025dbd353bd26ab)
13979 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13981         Backport: * admin/release-process: Rename from admin/FOR-RELEASE.
13983         (cherry picked from commit f8cc14b59700e51a4e31139c0a65c8154995e055)
13985 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13987         Backport: Mention CONTRIBUTE in README
13989         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
13990         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
13991         * README: Mention CONTRIBUTE.
13993         (cherry picked from commit ed2e7e20ae0945288c98091f308f5460c3453873)
13995 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
13997         Fix docstring quoting problems with ‘ '’
13999         Problem reported by Artur Malabarba in:
14000         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
14001         Most of these fixes are to documentation; many involve fixing
14002         longstanding quoting glitches that are independent of the
14003         recent substitute-command-keys changes.  The changes to code are:
14004         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
14005         (describe-mode-local-overload):
14006         Substitute docstrings before displaying them.
14007         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
14008         Quote the generated docstring for later substitution.
14010 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
14012         Improve configure --help text for wide ints
14014         * configure.ac (wide-int): Clarify user-level advantages and
14015         disadvantages.
14017 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
14019         Improve doc string
14021         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
14023 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
14025         eval_sub followed dangling pointer when debugging
14027         Problem reported by Pip Cet (Bug#21245).
14028         This bug could occur in eval_sub if the C compiler reused
14029         storage associated with the ‘argvals’ local after ‘argvals’
14030         went out of scope, and if the Elisp debugger stopped on Elisp
14031         function exit and accessed ‘argvals’.  It could also occur if
14032         a variadic function was called with so many arguments (over
14033         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
14034         SAFE_FREE freed the arguments, then the memory manager used
14035         the storage for other purposes, then the debugger accessed the
14036         arguments.
14037         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
14038         function body.  Simplify local decls.
14039         When allocating args via SAFE_ALLOCA, call
14040         debugger before invoking SAFE_FREE, as the debugger needs
14041         access to the args.
14042         (eval_sub, apply_lambda): Rework to avoid need for
14043         set_backtrace_debug_on_exit hack.  This is cleaner,
14044         and should work better with buggy custom debuggers.
14046 2015-11-17  Daiki Ueno  <ueno@gnu.org>
14048         * lisp/image-mode.el: Support encrypted file
14050         (image-toggle-display-image): Read content from the buffer instead
14051         of the file, if the buffer holds a decrypted data.  (Bug#21870)
14053 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
14055         ELF unexec: align section header
14057         This ports the recent unexelf.c changes to Fedora x86-64
14058         when configured with GCC’s -fsanitize=undefined option.
14059         * src/unexelf.c (unexec): Align new_data2_size to a multiple
14060         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
14061         pointer aligned appropriately for its type.
14063 2015-11-17  Andreas Schwab  <schwab@linux-m68k.org>
14065         Do more checks on bytecode objects (Bug#21929)
14067         * src/eval.c (funcall_lambda): Check size of compiled function
14068         object.
14069         (Ffetch_bytecode): Likewise.
14071 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
14073         pcase.el: Fix edebugging of backquoted cons patterns
14075         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
14076         cons patterns. (Bug#21920)
14078 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
14080         Improve fix for regex reentrancy abort
14082         Suggested by Stefan Monnier (Bug#21688).
14083         * src/syntax.c (update_syntax_table_forward):
14084         Remove recently-added PROPERTIZE arg, and assume it is true.
14085         All callers changed.
14086         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
14087         Invoke update_syntax_table directly.
14089 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
14091         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
14093         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
14095         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
14097 2015-11-16  Vasily Korytov  <vasily.korytov@yahoo.com>
14099         Recognize .rbw and .pyw files (bug#18753)
14101         * lisp/progmodes/python.el (auto-mode-alist):
14102         Recognize .pyw files.
14104         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
14105         Recognize .rbw files.
14107 2015-11-16  Dmitry Gutov  <dgutov@yandex.ru>
14109         Fix ruby-mode auto-mode-alist entry
14111         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
14112         around the extensions (bug#21257).
14114 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
14116         Fix etags completion near eob
14118         * lisp/progmodes/etags.el (tags-completion-at-point-function):
14119         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
14121 2015-11-15  Alan Mackenzie  <acm@muc.de>
14123         De-pessimize detection of C++ member initialization lists.
14125         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
14126         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
14127         is only called when a construct "looks right" rather than continually.
14128         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
14130 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
14132         Backport: * lisp/emacs-lisp/package.el: Fix a decoding issue.
14134         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
14135         `url-insert-buffer-contents'.
14136         (url-insert-buffer-contents): New function
14138         (package--with-response-buffer): Use `url-insert-buffer-contents'.
14139         The previous code had some issues with decoding. Refactoring that
14140         function allows us to use the decoding from url-handlers while still
14141         treating both sync and async requests the same.
14143 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
14145         Improve a few doc strings, comments
14147         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
14148         * lisp/cedet/ede/locate.el (ede-locate-base):
14149         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
14150         * src/fns.c (Fdelq): Improve doc string.
14152         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
14154 2015-11-15  Anders Lindgren  <andlind@gmail.com>
14156         Enhance NSTRACE (trace output for NextStep).
14158         Trace can be disabled for groups of functions. By default, event
14159         functions and functions that generate lots of output are disabled.
14161         Trace output of Objective-C functions now use the "[ClassName
14162         parameter:]" form.
14164         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
14165         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
14166         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
14167         controlling in which function groups trace should be active.
14168         (NSTRACE_WHEN): Support for silencing a function, this also
14169         silencing all called functions.
14170         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
14171         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
14172         print the full screen state in NSTRACE functions.
14174         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
14175         can be accessed from multiple threads.
14176         (nstrace_enabled_global): New variable, when FALSE, trace is
14177         silenced.
14178         (nstrace_restore_global_trace_state): New function, used to
14179         restore `nstrace_enabled_global' at end of block.
14180         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
14181         ([EmacsWindow setFrame:display:animation:])
14182         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
14183         and call corresponding super function.
14184         (Many functions): Add or enhance trace output.
14186         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
14188         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
14190         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
14191         and call corresponding super function.
14193 2015-11-15  Anders Lindgren  <andlind@gmail.com>
14195         Fixed a toolbar related issue on OS X.
14197         Earlier, when toggling the tool-bar in a maximized frame, the
14198         frame size didn't match the number of text lines, leaving an
14199         unused area at the bottom of the frame.
14201         * src/nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
14202         fullscreen modes when tool bar is disabled.
14204 2015-11-15  Anders Lindgren  <andlind@gmail.com>
14206         Fixed OS X 10.6.8 build issue (bug#21862).
14208         * src/nsterm.h (EmacsView): Add missing declarations.
14209         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
14210         the standard method but without the notification parameter.
14211         Intended to be used for direct calls.
14212         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
14213         version of `windowDidBecomeKey'. Made the notification method call
14214         the non-notification method instead of the vice versa.
14215         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
14216         needed.
14218 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
14220         * lisp/faces.el (faces--attribute-at-point): Fix an issue
14222         Previous code would signal an error when the face at point was
14223         a manually built list of attributes such as '(:foregroud "white").
14225         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
14227 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
14229         Fix regex abort when it tries to reenter itself
14231         Problem reported by Ken Raeburn.
14232         Solution suggested by Stefan Monnier (Bug#21688).
14233         * src/regex.c (re_match_2_internal):
14234         Use new _FAST functions to avoid regex code reentering itself.
14235         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
14236         All callers changed.
14237         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
14238         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
14240 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
14242         Improve Ruby 1.9-style keyword keys highlighting
14244         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
14245         Handle required keyword arguments (bug#21367).
14246         And highlight the colon together with the name.
14248 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
14250         Unify the absolutely equal xref-backend-references implementations
14252         * lisp/progmodes/elisp-mode.el (xref-backend-references):
14253         Remove.
14255         * lisp/progmodes/etags.el (xref-backend-references):
14256         Remove.
14258         * lisp/progmodes/xref.el (xref-backend-references):
14259         Define the default implementation.
14261 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
14263         Update project-find-regexp for the new xref API
14265         * lisp/progmodes/project.el (project--read-regexp):
14266         Update to use the new xref API methods.
14268         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
14270 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
14272         Fix replacing a match with a shorter string
14274         In effect, partially reverting fe973fc.
14276         * lisp/progmodes/xref.el (xref-query-replace): Store the end
14277         of each match as a marker again, instead of length.
14278         (xref--query-replace-1): Update accordingly.
14280 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
14282         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
14284         Signal user-errors instead.
14286 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
14288         Document 'describe-symbol'
14290         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
14291         (Name Help): Document "C-h o" and describe-symbol.
14293         * lisp/help-fns.el (describe-symbol): Doc fix.
14295 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
14297         Change test name to avoid spellcheck issue.
14299 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
14301         Avoid signaling an error in 'describe-symbol'
14303         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
14304         exists as a function/variable/face/etc., but is undocumented.
14306         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
14307         test.
14309 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
14311         * INSTALL (--with-cairo): Document this new configure option.
14313 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
14315         Document that GNU Make >= 3.81 is required to build Emacs
14317         * doc/lispref/internals.texi (Building Emacs): Document that GNU
14318         Make 3.81 or later is now required.
14320 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
14322         Backport: * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async.
14324         (package--with-work-buffer-async): Reimplement as
14325         `package--with-response-buffer'.
14326         (package--with-work-buffer): Mark obsolete.
14327         (package--with-response-buffer): New macro. This is a more self
14328         contained and less contrived version of
14329         `package--with-work-buffer-async'.  It uses keyword arguments,
14330         doesn't have async on the name, doesn't fallback on
14331         `package--with-work-buffer', and has _much_ simpler error
14332         handling.  On master, this macro will soon be part of another
14333         library (either standalone or inside url.el), which is why this
14334         commit is not to be merged back.
14336         (package--check-signature, package--download-one-archive)
14337         (package-install-from-archive, describe-package-1): Use it.
14339         (package--download-and-read-archives): Let
14340         `package--download-one-archive' take care of calling
14341         `package--update-downloads-in-progress'.
14343 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
14345         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
14347 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
14349         Merge branch 'master' into emacs-25
14351 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
14353         Use generic dispatch for xref backends
14355         * lisp/progmodes/xref.el (xref-backend-functions):
14356         New variable.
14357         (xref-find-function): Remove.
14358         (xref-find-backend)
14359         (xref--etags-backend): New functions.
14360         (xref-identifier-at-point-function)
14361         (xref-identifier-completion-table-function): Remove.
14362         (xref-backend-definitions, xref-backend-references)
14363         (xref-backend-apropos, xref-backend-identifier-at-point)
14364         (xref-backend-identifier-completion-table):
14365         New generic functions.
14367         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
14368         Add `elisp--xref-backend' to the beginning of
14369         `xref-backend-functions', locally.  Delete references to
14370         removed functions and vars.
14371         (elisp-xref-find): Remove.
14372         (elisp--xref-backend): New function.
14373         (elisp--xref-find-references, elisp--xref-find-apropos)
14374         (elisp--xref-identifier-completion-table):
14375         Turn into appropriately named generic methods.
14377         * lisp/progmodes/etags.el (etags-xref-find): Remove.
14378         (xref-backend-identifier-completion-table)
14379         (xref-backend-references, xref-backend-definitions)
14380         (xref-backend-apropos): New generic methods.
14382 2015-11-14  Juri Linkov  <juri@linkov.net>
14384         Support rectangular regions for more commands
14386         * lisp/simple.el (region-extract-function): Handle the arg
14387         value ‘bounds’.
14388         (region-insert-function): New function.
14389         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
14390         If non-nil, operate on multiple chunks.
14391         (region-noncontiguous-p): New function.
14393         * lisp/rect.el: Add function rectangle--insert-region
14394         around region-insert-function.
14395         (extract-rectangle-bounds): New function.
14396         (rectangle--extract-region): Handle the arg value ‘bounds’.
14397         (rectangle--insert-region): New function.
14399         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
14400         around region-insert-function.
14401         (cua--extract-rectangle-bounds): New function.
14402         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
14404         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
14405         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
14406         (query-replace-regexp-eval, map-query-replace-regexp)
14407         (replace-string, replace-regexp): Use ‘use-region-p’.
14408         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
14409         (perform-replace): Add arg ‘region-noncontiguous-p’.
14410         If non-nil, operate on multiple chunks.
14412         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
14413         If non-nil, operate on multiple chunks.  (Bug#19829)
14415 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
14417         Handle multiple matches on the same line; add highlighting
14419         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
14420         column value in characters.
14421         (xref--collect-matches): Rename from `xref--collect-match'.
14422         Search for all matches in the hit line.  Add `highlight' face to
14423         the matched region in the summary.  Update both callers.
14425 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
14427         Replace xref-match-bounds with xref-match-length
14429         Relying on xref-location-marker to point to the beginning of the match
14431         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
14432         (xref-match-length): Add.
14433         (xref-make-match): Change the arguments.
14434         (xref--match-buffer-bounds): Remove.
14435         (xref-match-item): Store length, instead of end-column.
14436         (xref-pulse-momentarily)
14437         (xref--collect-match)
14438         (xref--query-replace-1): Update accordingly.
14439         (xref-query-replace): Ditto.  And check that the search results
14440         are up-to-date.
14442 2015-11-13  John Wiegley  <johnw@newartisans.com>
14444         Merge remote-tracking branch 'origin/master' into emacs-25
14446 2015-11-13  l3thal  <kwhite@gnu.org>
14448         Merge branch 'erc-async-reconnect' into emacs-25
14450         Reconnect asynchronously.
14452 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14454         Merge from gnulib
14456         This incorporates:
14457         2015-11-13 xalloc-oversized: improve performance with GCC 5
14458         * lib/xalloc-oversized.h: Copy from gnulib.
14460 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14462         Spruce up ftfont.c memory allocation
14464         * src/ftfont.c (setup_otf_gstring):
14465         Avoid O(N**2) behavior when reallocating.
14466         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
14467         reallocating buffers; this simplifies the code.  Do not trust
14468         mflt_run to leave the output areas unchanged on failure, as
14469         this isn’t part of its interface spec.
14471 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14473         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
14475 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14477         Port recent XCB changes to 64-bit ‘long int’
14479         For historical reasons, libX11 represents 32-bit values like Atoms as
14480         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
14481         do that, so adapt the recent XCB code to behave properly on 64-bit
14482         platforms.  Also, fix what appears to be a bug in the interpretation
14483         of xcb_get_property_value_length, at least on my Fedora platform
14484         which is running libxcb-1.11-5.fc21.
14485         * src/xfns.c (x_real_pos_and_offsets):
14486         * src/xterm.c (get_current_wm_state):
14487         xcb_get_property_value_length returns a byte count, not a word count.
14488         For 32-bit quantities, xcb_get_property_value returns a vector
14489         of 32-bit words, not of (possibly 64-bit) long int.
14491         Backport.
14493 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14495         * src/undo.c (run_undoable_change): Now static.
14497         Backport.
14499 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14501         Remove support for ':timeout' from w32 tray notifications
14503         * src/w32fns.c (Fw32_notification_notify): Delete the code that
14504         supports ':timeout'.
14505         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
14506         with dbusbind.c when D-Bus is compiled in.
14508         * doc/lispref/os.texi (Desktop Notifications): Don't mention
14509         ':timeout'.
14511         Backport.
14513 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14515         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
14517         (simple-test--transpositions): New macro.
14518         (simple-transpose-subr): New test.
14520         Backport.
14522 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14524         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
14526         Backport.
14528 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14530         * src/undo.c: Small fixes for previous change
14532         (run_undoable_change): Mark void argument list.
14533         (record_property_change): Remove unused variable `boundary'.
14535         Backport.
14537 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14539         Add a few more variables to redisplay--variables
14541         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
14542         and bidi-display-reordering to the list.
14544         Backport.
14546 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14548         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
14550         Backport.
14552 2015-11-13  Eli Barzilay  <eli@barzilay.org>
14554         Fix point positioning after transposing with negative arg
14556         * lisp/simple.el (transpose-subr): When invoked with a negative
14557         argument, move point to after the transposed text, like we do
14558         when invoked with a positive argument.  (Bug#21885)
14560         Backport.
14562 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14564         Fix last change in shr.el
14566         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
14567         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
14569         Backport.
14571 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14573         Fix last change
14575         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
14576         Don't DEFSYM tray notification symbols if D-Bus is being used.
14578         Backport.
14580 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14582         Another fix for MinGW64 and Cygwin builds due to notifications
14584         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
14585         being compiled into Emacs.
14586         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
14587         Sw32_notification_notify and Sw32_notification_close if the code
14588         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14590         Backport.
14592 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14594         Remove intern calls and XXX comments from Fx_export_frames
14596         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
14597         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
14598         for consistency with image types.  Remove XXX comments.
14599         (syms_of_xfns) <Qpdf>: DEFSYM it.
14601         Backport.
14603 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14605         Port recent XCB changes to 64-bit ‘long int’
14607         For historical reasons, libX11 represents 32-bit values like Atoms as
14608         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
14609         do that, so adapt the recent XCB code to behave properly on 64-bit
14610         platforms.  Also, fix what appears to be a bug in the interpretation
14611         of xcb_get_property_value_length, at least on my Fedora platform
14612         which is running libxcb-1.11-5.fc21.
14613         * src/xfns.c (x_real_pos_and_offsets):
14614         * src/xterm.c (get_current_wm_state):
14615         xcb_get_property_value_length returns a byte count, not a word count.
14616         For 32-bit quantities, xcb_get_property_value returns a vector
14617         of 32-bit words, not of (possibly 64-bit) long int.
14619 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14621         * src/undo.c (run_undoable_change): Now static.
14623 2015-11-13  Michael Albinus  <michael.albinus@gmx.de>
14625         Adapt Tramp version, do not merge with master
14627         * doc/misc/trampver.texi (trampver):
14628         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
14630 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14632         Remove support for ':timeout' from w32 tray notifications
14634         * src/w32fns.c (Fw32_notification_notify): Delete the code that
14635         supports ':timeout'.
14636         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
14637         with dbusbind.c when D-Bus is compiled in.
14639         * doc/lispref/os.texi (Desktop Notifications): Don't mention
14640         ':timeout'.
14642 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14644         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
14645         (simple-test--transpositions): New macro.
14646         (simple-transpose-subr): New test.
14648 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14650         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
14652 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14654         * src/undo.c: Small fixes for previous change
14655         (run_undoable_change): Mark void argument list.
14656         (record_property_change): Remove unused variable `boundary'.
14658 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14660         Add a few more variables to redisplay--variables
14662         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
14663         and bidi-display-reordering to the list.
14665 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14667         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
14669 2015-11-13  Eli Barzilay  <eli@barzilay.org>
14671         Fix point positioning after transposing with negative arg
14673         * lisp/simple.el (transpose-subr): When invoked with a negative
14674         argument, move point to after the transposed text, like we do
14675         when invoked with a positive argument.  (Bug#21885)
14677 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14679         Fix last change in shr.el
14681         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
14682         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
14684 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14686         Fix last change
14688         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
14689         Don't DEFSYM tray notification symbols if D-Bus is being used.
14691 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14693         Another fix for MinGW64 and Cygwin builds due to notifications
14695         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
14696         being compiled into Emacs.
14697         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
14698         Sw32_notification_notify and Sw32_notification_close if the code
14699         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14701 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14703         Remove intern calls and XXX comments from Fx_export_frames
14705         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
14706         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
14707         for consistency with image types.  Remove XXX comments.
14708         (syms_of_xfns) <Qpdf>: DEFSYM it.
14710 2015-11-13  Eric Hanchrow  <eric.hanchrow@gmail.com>
14712         shr: don't invoke unbound function (Bug#21895)
14714         * lisp/net/shr.el (have-fringes-p): New function.
14715         (shr-insert-document, shr-fill-text): Use it.
14717 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
14719         * test/automated/keymap-tests.el: Fix test to make it repeatable
14721         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
14722         entry to its initial value to make the test repeatable in interactive
14723         sessions (assuming it doesn't fail and crashes Emacs, of course).
14725 2015-11-13  Artur Malabarba  <bruce.connor.am@gmail.com>
14727         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
14729 2015-11-12  Phillip Lord  <phillip.lord@russet.org.uk>
14731         : Tests for undo-auto functionality.
14733 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
14735         The heuristic that Emacs uses to add an `undo-boundary' has been
14736         reworked, as it interacts poorly with functions on `post-command-hook'
14737         or `after-change-functions'.
14739         * lisp/simple.el: New section added.
14740         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
14741         (self_insert_command): Calls simple.el to amalgamate.
14742         (delete_char): Calls simple.el to amalgamate.
14743         * src/keyboard.c (last_undo_boundary): Removed.
14744         * src/undo.c (run_undoable_change): New function.
14746 2015-11-12  Juri Linkov  <juri@linkov.net>
14748         Bind [?\S-\ ] to previous line command in Dired-like modes.
14750         * lisp/arc-mode.el (archive-mode-map):
14751         * lisp/dired.el (dired-mode-map):
14752         * lisp/proced.el (proced-mode-map):
14753         * lisp/vc/vc-dir.el (vc-dir-mode-map):
14754         Bind [?\S-\ ] to previous line command.
14755         (Bug#20790)
14757 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
14759         Fix the MinGW64 and Cygwin-w32 builds
14761         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
14762         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
14763         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
14764         which cause trouble with MinGW42 headers.  Ifdef away tray
14765         notifications code for Cygwin.  Reported by Andy Moreton
14766         <andrewjmoreton@gmail.com>.
14768 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
14770         Enable sorting of JSON object keys when encoding
14772         * lisp/json.el (json-encoding-object-sort-predicate): New variable
14773         for specifying a sorting predicate for JSON objects during encoding.
14774         (json--plist-to-alist): New utility function.
14775         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
14776         are to be sorted.
14777         (json-encode-alist): Sort output by
14778         `json-encoding-object-sort-predicate, when set.
14779         (json-encode-plist): Re-use `json-encode-alist' when object keys are
14780         to be sorted.
14781         (json-pretty-print-buffer-ordered): New command to pretty print the
14782         buffer with object keys sorted alphabetically.
14783         (json-pretty-print-ordered): New command to pretty print the region
14784         with object keys sorted alphabetically.
14786         * test/automated/json-tests.el (test-json-plist-to-alist)
14787         (test-json-encode-plist, test-json-encode-hash-table)
14788         (test-json-encode-alist-with-sort-predicate)
14789         (test-json-encode-plist-with-sort-predicate): New tests.
14791         * etc/NEWS: Add an entry for the new commands.
14793 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
14795         * test/automated/keymap-tests.el: New test file.
14797 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14799         Speed up x_real_pos_and_offsets using XCB
14801         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
14802         all X calls, and pipeline requests when possible, collecting results
14803         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
14805 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14807         Enable use of XCB for checking window manager state
14809         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
14810         of XGetWindowProperty plus error-catching, since we can explicitly
14811         check for errors in the XCB version.  This eliminates 3 XSync calls on
14812         top of the round-trip actually fetching the information.
14814 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14816         Detect XCB and save a connection handle
14818         * configure.ac: If using X11, check for XCB libraries and header.
14819         * src/Makefile.in (XCB_LIBS): Define.
14820         (LIBX_EXTRA): Include it.
14822         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
14823         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
14824         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
14826 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14828         Reduce some data dependencies between X calls
14830         Gains nothing in the traditional-Xlib code, but more closely aligns
14831         with how the XCB version will work.
14833         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
14834         send coordinates (0,0) to the X server and add in the real coordinates
14835         after getting the response.  Move XGetGeometry for outer window inside
14836         error-trapping block.  Use DPY variable more, since it's available.
14838 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14840         Use color cache for creating bitmap
14842         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
14843         Set attributes to use the caching color allocator.  Initialize and
14844         free the cache.
14846 2015-11-12  Eli Barzilay  <eli@barzilay.org>
14848         Add "^" to the interactive specs of `dired-next/previous-line'
14850         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
14851         to bind these commands to the arrow keys, and that means that they work
14852         better with a "^" in the `interactive' declaration so selection works
14853         as expected.
14855 2015-11-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14857         Sync with soap-client repository, version 3.0.2
14859         * lisp/net/soap-client.el: Bump version to 3.0.2.
14861         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
14863         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
14864         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
14866         * lisp/net/soap-client.el: Support Emacs versions that do not have
14867         define-error.
14869         * lisp/net/soap-inspect.el: Remove version header.
14871         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
14872         format.
14874 2015-11-11  Alan Mackenzie  <acm@muc.de>
14876         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
14878         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
14879         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
14880         (c-guess-basic-syntax):
14881         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
14882         (c-get-fallback-scan-pos): "New" function (existed several years ago).
14883         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
14884         c-get-fallback-scan-pos.
14885         (c-parse-state-1): Handle 'BOD strategy.
14887         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
14888         (c-font-lock-fontify-region): Remove bindings of
14889         open-paren-in-column-0-is-defun-start to nil.
14891         * doc/misc/cc-mode.texi (Performance Issues)
14892         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
14894 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
14896         * lisp/obarray.el: Fix shadowed variables.
14897         (obarray-map, obarray-remove, obarray-put, obarray-get):
14898         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
14900 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
14902         Avoid error in submitting a form with EWW
14904         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
14905         CHUNK to be nil.  (Bug#21881)
14907 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
14909         Rename seq-p and map-p to seqp and mapp
14911         * lisp/emacs-lisp/seq.el (seqp): New name.
14912         * lisp/emacs-lisp/map.el (mapp): New name.
14913         * doc/lispref/sequences.texi: Update the documentation for seqp.
14914         * test/automated/map-tests.el: Update the tests for mapp.
14916 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
14918         Rename obarray-p to obarrayp
14920         * lisp/obarray.el (obarrayp): New name.
14921         * test/automated/obarray-tests.el: Update the tests.
14923 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
14925         Rename obarray-foreach to obarray-map
14927         * lisp/obarray.el (obarray-map): New name.
14928         * test/automated/obarray-tests.el: Update the corresponding tests.
14930 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
14932         New file with obarray functions.
14934         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
14935         * test/automated/obarray-tests.el: New file.
14937 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
14939         Implement tray notifications for MS-Windows
14941         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
14942         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
14943         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
14944         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
14945         (EMACS_NOTIFICATION_MSG): New macros.
14946         (NI_Severity): New enumeration.
14947         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
14948         (delete_tray_notification, Fw32_notification_notify)
14949         (Fw32_notification_close): New functions.
14950         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
14951         keywords used by w32-notification-notify.
14953         * doc/lispref/os.texi (Desktop Notifications): Describe the native
14954         w32 tray notifications.
14956 2015-11-11  Alan Mackenzie  <acm@muc.de>
14958         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
14960         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
14961         Windows" and new @defun selected-window-group.
14962         (Window Start and End): Describe new &optional parameter GROUP and
14963         ...-group-function for window-start, window-end, set-window-start, and
14964         pos-visible-in-window-p.
14965         (Textual Scrolling) Describe the same for recenter.
14966         doc/lispref/positions.texi (Screen Lines): Describe the same for
14967         move-to-window-line.
14969         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
14970         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
14971         new optional parameter "group".  At the beginning of each, check whether the
14972         corresponding ...-group-function is set to a function, and if so execute this
14973         function in place of the normal processing.
14974         (syms_of_window): Define symbols for the six new variables below.
14975         (window-start-group-function, window-end-group-function)
14976         (set-window-start-group-function, recenter-group-function)
14977         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
14978         New permanent local buffer local variables.
14979         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
14980         Fpos_visible_in_window_p.
14982         lisp/window.el (selected-window-group-function): New permanent local buffer
14983         local variable.
14984         (selected-window-group): New function.
14986         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
14987         enable, kill them at mode disable.  Add/remove follow-after-change to/from
14988         after-change-functions.
14989         (follow-start-end-invalid): New variable.
14990         (follow-redisplay): Manipulate follow-start-end-invalid.
14991         (follow-after-change, follow-window-start, follow-window-end)
14992         (follow-set-window-start, follow-pos-visible-in-window-p)
14993         (follow-move-to-window-line, follow-sit-for): New functions.
14995         lisp/isearch.el (isearch-call-message): New macro.
14996         (isearch-update, with-isearch-suspended, isearch-del-char)
14997         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
14998         (with-isearch-suspended): Rearrange code such that isearch-call-message is
14999         invoked before point is moved.
15000         (isearch-message): Add comment about where point must be at function call.
15001         (isearch-search): Remove call to isearch-message.
15002         (isearch-lazy-highlight-window-group): New variable.
15003         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
15004         the battery of tests to ...
15005         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
15006         Note: (sit-for 0) is still called.
15007         (isearch-lazy-highlight-update): Check membership of
15008         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
15009         property.
15010         (isearch-update, isearch-done, isearch-string-out-of-window)
15011         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
15012         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
15013         (isearch-lazy-highlight-update): Call the six amended primitives (see
15014         src/window.c above) with the new `group' argument set to t, to cooperate
15015         with Follow Mode.
15017 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
15019         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
15021         * lisp/net/tramp.el (tramp-handle-file-equal-p)
15022         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
15023         Harvey Chapman <hchapman@3gfp.com>.
15025         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
15026         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
15027         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
15028         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
15030 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
15032         * CONTRIBUTE: Encourage adding tests.
15034         Based on this post from John Wiegley:
15036           From: "John Wiegley" <johnw@newartisans.com>
15037           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
15038           To: Juanma Barranquero <lekktu@gmail.com>
15039           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
15040               emacs-devel <emacs-devel@gnu.org>
15041           Date: Wed, 28 Oct 2015 18:45:29 -0700
15042           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
15044           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
15046 2015-11-10  David Reitter  <david.reitter@gmail.com>
15048         Avoid creating notification objects when possible
15050         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
15051         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
15052         functions that do not require a notification object.  When needed,
15053         define NSWindowDidEnterFullScreenNotification to allow for compilation
15054         on OS X 10.6.8.
15056 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
15058         Move INTEGER_TO_CONS body out of .h file
15060         * src/data.c (INTBIG_TO_LISP): New macro, with most
15061         of the contents of the old INTEGER_TO_CONS.
15062         (intbig_to_lisp, uintbig_to_lisp): New functions.
15063         * src/lisp.h (INTEGER_TO_CONS):
15064         Simplify by using EXPR_SIGNED and the new functions.
15065         This shrinks code size a bit, and makes it easier to
15066         put a breakpoint on handling of large integers.
15068 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
15070         Merge from gnulib
15072         This incorporates:
15073         2015-11-10 intprops: new public macro EXPR_SIGNED
15074         2015-11-10 intprops: fix typo in clang port
15075         * lib/intprops.h: Copy from gnulib.
15077 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
15079         Spelling fixes
15081         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
15082         Fix misspelling in output.
15084 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
15086         * doc/lispref/variables.texi (Directory Local Variables):
15087         Document dir-locals wildcards.
15089         * lisp/files.el (dir-locals-file): Point to Info node.
15091         * doc/emacs/custom.texi (Directory Variables):
15092         Document dir-locals wildcards.
15094         * etc/NEWS: Document new functionality.
15096 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
15098         * lisp/files.el: Don't allow customization of dir-locals sorting.
15099         In retrospect, this is not a good idea for the same reason that
15100         `dir-locals-file' is a defconst, because it is important that this
15101         behaviour be "uniform across different environments and users".
15102         Sure, the user can still change the sorting with a hack, but we
15103         shouldn't encourage them to change it.
15104         (dir-locals--all-files): Return list in the order returned by
15105         `file-expand-wildcards'.
15106         (file-expand-wildcards): Document the sorting predicate used.
15107         (dir-locals-sort-predicate): Delete variable.
15109 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
15111         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
15113         * lisp/isearch.el (search-default-regexp-mode): Change default value.
15115 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
15117         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
15118         `locate-dominating-file' will now keep looking if the files it finds in
15119         a given directory are unreadable (or not files).
15121 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
15123         * lisp/files.el (dir-locals-file): Allow wildcards.
15124         (dir-locals-find-file, dir-locals-collect-variables)
15125         (dir-locals-read-from-file): Update accordingly.
15126         (hack-dir-local-variables): Rename a local variable.
15128         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
15130         * lisp/help-fns.el (describe-variable): Update accordingly.
15132         * .gitignore: Add .dir-locals?.el.
15134 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
15136         * lisp/emacs-lisp/map.el (map-merge-with): New function.
15138         * test/automated/map-tests.el (test-map-merge-with): New test.
15140 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
15142         Fix some recently-perturbed bookmark autoloads
15144         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
15145         (bookmark-set): Restore autoload.
15146         (bookmark-set-no-overwrite): Add autoload.
15148         Thanks to Juanma Barranquero for noticing the autoload problems
15149         introduced by my recent commit adding/changing the above functions
15150         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
15152 2015-11-09  Noah Friedman  <friedman@splode.com>
15154         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
15155         the start of buffer.  I don't recall if older versions of gdb were
15156         less strict but you cannot dump a 0-length range in gdb 7.9.1.
15158 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
15160         * lisp/progmodes/project.el: Update Commentary.
15162         Merge branch 'project-next'
15164 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
15166         Fold `project-ask-user' into `project-current'
15168         * lisp/progmodes/project.el (project-find-functions): Remove
15169         `project-ask-user'.
15170         (project-ask-user): Remove function and the corresponding
15171         `project-roots' implementation.
15172         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
15173         user in case there's no project in the current directory.  Update
15174         all callers.
15176 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
15178         When VC detects a conflict, specify which file
15180         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
15181         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
15182         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
15183         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
15184         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
15185           to display a standard message that specifies the conflicted file.
15187         Before this change, the message VC used for indicating a conflicted
15188         file was just "There are unresolved conflicts in this file" without
15189         naming the file (and this language was duplicated in several places).
15190         After this change, it's "There are unresolved conflicts in file FOO"
15191         (and this language is now centralized in one function in vc.el).
15193         Justification: It's important for the message to name the conflicted
15194         file because the moment when VC realizes a file is conflicted does not
15195         always come interactively.  For example, some people automatically
15196         find a set of Org Mode files on startup, and may keep those .org files
15197         under version control.  If any of the files are conflicted, the user
15198         just sees some messages fly by, and might later check the "*Messages*"
15199         buffer to find out what files were conflicted.  I'm not saying this
15200         happened to me or anything; it's a purely hypothetical example.
15202 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
15204         Fix assertion violation in define-key
15206         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
15207         objects.  Reported by Drew Adams <drew.adams@oracle.com>
15208         and Juanma Barranquero <lekktu@gmail.com>.
15210 2015-11-09  Dima Kogan  <dima@secretsauce.net>
15212         Fix a memory leak in GC of font cache
15214         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
15215         entities if some of the fonts it references are marked.  This
15216         plugs a memory leak.  (Bug#21556)
15218 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
15220         Use INT_ADD_WRAPV etc. to check integer overflow
15222         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
15223         * src/buffer.c (record_overlay_string, overlay_strings):
15224         * src/casefiddle.c (casify_object):
15225         * src/ccl.c (Fccl_execute_on_string):
15226         * src/character.c (char_width, c_string_width, lisp_string_width)
15227         (count_size_as_multibyte, string_escape_byte8):
15228         * src/coding.c (coding_alloc_by_realloc, produce_chars):
15229         * src/data.c (arith_driver):
15230         * src/dispnew.c (realloc_glyph_pool, init_display):
15231         * src/editfns.c (styled_format):
15232         * src/fns.c (Ffillarray):
15233         * src/ftfont.c (ftfont_shape_by_flt):
15234         * src/gnutls.c (gnutls_hex_string):
15235         * src/gtkutil.c (get_utf8_string):
15236         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
15237         * src/keymap.c (Fkey_description):
15238         * src/lisp.h (SAFE_ALLOCA_LISP):
15239         * src/term.c (encode_terminal_code):
15240         * src/tparam.c (tparam1):
15241         * src/xselect.c (x_property_data_to_lisp):
15242         * src/xsmfns.c (smc_save_yourself_CB):
15243         * src/xterm.c (x_term_init):
15244         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
15245         more-complicated code involving division and/or
15246         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
15247         subtraction and/or INT_ADD_OVERFLOW.
15248         * src/casefiddle.c (casify_object): Simplify multibyte size check.
15249         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
15250         * src/data.c (arith_driver): Also check for division overflow,
15251         as that’s now possible given that the accumulator can now contain
15252         any Emacs integer.
15253         * src/lisp.h (lisp_word_count): Remove; no longer used.
15255 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
15257         Make sure that the ignore file exists
15259         * lisp/vc/vc.el (vc-default-ignore-completion-table):
15260         Make sure that the ignore file exists.
15262 2015-11-09  Michael Sperber  <mike@xemacs.org>
15264         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
15265         `gnus-summary-delete-article` in a way that also works on XEmacs.
15267 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
15269         Add support for retrieving paths to JSON elements
15271         Add support for retrieving the path to a JSON element. This can for
15272         instance be useful to retrieve paths in deeply nested JSON
15273         structures.
15275         * lisp/json.el (json-pre-element-read-function)
15276         (json-post-element-read-function): New variables to hold pre- and post
15277         read callback functions for `json-read-array' and `json-read-object'.
15278         (json--path): New variable used internally by `json-path-to-position'.
15279         (json--record-path, json--check-position): New functions used
15280         internally by `json-path-to-position'.
15281         (json-path-to-position): New function for retrieving the path to a
15282         JSON element at a given position.
15283         (json-read-object, json-read-array): Call
15284         `json-pre-element-read-function' and `json-post-element-read-function'
15285         when set.
15287         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
15288         (test-json-path-to-position-with-arrays)
15289         (test-json-path-to-position-no-match): New tests for
15290         `json-path-to-position'.
15292 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
15294         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
15296         This really should been part of my previous commit
15297         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
15299 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
15301         Offer non-overwrite bookmark setter (Bug#15746)
15303         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
15304         what `bookmark-set' used to do, but with more choices for overwrite
15305         vs push, and with minor changes to the interactive prompt format.
15306         (bookmark-set): Rewrite as wrapper around above.
15307         If overwriting, inform the user of that in the prompt.
15308         (bookmark-set-no-overwrite): New function, also done as wrapper.
15309         Bind to "M" in `ctl-x-r-map' autoloads.
15310         (bookmark-map): Similarly bind "M" here.
15312 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
15314         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
15316 2015-11-08  Alan Modra  <amodra@gmail.com>
15318         ELF unexec: Don't insert a new section
15320         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
15321         don't need to mess with symbol st_shndx, or section sh_link and
15322         sh_info.
15324         This does lead to eu-elflint complaints about symbols defined in .bss
15325         with a needed version, because normally it is undefined symbols that
15326         have needed versions;  Defined symbols have version definitions.
15327         The exception is symbols defined by the linker in .dynbss for
15328         variables copied from a shared library in order to avoid text
15329         relocations, with copy relocs to copy their initial values from the
15330         shared library.  These symbols are both defined and have needed
15331         versions, and eu-elflink only expects to see them in SHT_NOBITS
15332         sections.  Of course there is no real problem with having such symbols
15333         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
15335         * src/unexelf.c: Delete outdated comments.
15336         (PATCH_INDEX): Delete.
15337         (find_section): Delete.
15338         (unexec): Don't add a new section.  Instead reuse the last bss
15339         section, extending it to cover dumped data.  Make bss sections
15340         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
15341         st_shndx.  Rename bss sections.
15343 2015-11-08  Alan Modra  <amodra@gmail.com>
15345         ELF unexec: Drive from PT_LOAD header rather than sections
15347         This rewrites bss handling in the ELF unexec code.  Finding bss
15348         sections by name results in complicated code that
15349         - does not account for all names of possible bss sections,
15350         - assumes specific ordering of bss sections,
15351         - can wrongly choose a SHT_NOBITS section not in the bss segment,
15352         - incorrectly calculates bss size (no accounting for alignment gaps),
15353         - assumes .data and .bss are in the same segment.
15355         All of these problems and more are solved by finding the bss segment
15356         in PT_LOAD headers, ie. the address range included in p_memsz but not
15357         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
15358         in that address range.
15360         * src/unexelf.c: Delete old ppc comment.
15361         (OLD_PROGRAM_H): Define.
15362         (round_up): Delete.
15363         (unexec): Don't search for bss style sections by name.  Instead,
15364         use the last PT_LOAD header address range covered by p_memsz
15365         but not p_filesz and match any SHT_NOBITS section in that
15366         address range.  Simplify initialization of section header vars.
15367         Don't assume that section headers are above bss segment.  Move
15368         copying of bss area out of section loop.  Align .data2 section
15369         to 1, since it now covers the entire bss area.  For SHT_NOBITS
15370         sections in the bss segment, leave sh_addr and sh_addralign
15371         unchanged, but correct sh_offset.  Clear memory corresponding
15372         to SHT_NOBITS .plt section.  Delete comment and hacks for
15373         sections partly overlapping bss range now that the full range
15374         is properly calculated.  Delete now dead .sbss code.
15375         (Bug#20614)
15377 2015-11-08  Alan Modra  <amodra@gmail.com>
15379         ELF unexec: R_*_NONE relocs
15381         These should be ignored on all targets.
15383         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
15384         not just Alpha.  Comment on reloc size assumption.
15386 2015-11-08  Alan Modra  <amodra@gmail.com>
15388         ELF unexec: _OBJC_ symbols in bss sections
15390         This code assumed that there was only one bss section.  Rather than
15391         checking for a particular index, check the section type.  Also, handle
15392         the possibility that the section was SHT_NOBITS originally and is
15393         unchanged, in which case no clearing is needed (and sh_offset isn't
15394         necessarily valid, which can lead to a wild memset).
15396         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
15397         bss sections.
15399 2015-11-08  Alan Modra  <amodra@gmail.com>
15401         ELF unexec: Symbol table patching
15403         No st_shndx value larger than SHN_LORESERVE should be changed.
15404         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
15405         SHN_LORESERVE.  Error on SHN_XINDEX.
15407 2015-11-08  Alan Modra  <amodra@gmail.com>
15409         ELF unexec: Merge Alpha and MIPS COFF debug handling
15411         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
15412         Don't find .mdebug section index, find the section in the loop.
15413         Allow for unlikely possibility that .mdebug is located at sh_offset
15414         before bss segment, by calculating move from difference in
15415         sh_offset rather than just assuming new_data2_size.  Simplify
15416         cbLineOffset handling.
15418 2015-11-08  Alan Modra  <amodra@gmail.com>
15420         ELF unexec: Tidy code
15422         Separate out some of the more mechanical changes so following patches
15423         are smaller.
15425         * src/unexelf.c (unexec): Rearrange initialization of program
15426         header vars.  Use pointer vars in loops rather than indexing
15427         section header array via macros.  Simplify _OBJC_ sym code
15428         and reloc handling code.
15430 2015-11-08  Alan Modra  <amodra@gmail.com>
15432         ELF unexec: Correct section header index
15434         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
15435         it should have been using "NEW_SECTION_H (nn)" to find the name of the
15436         section currently being processed.  Of course, before the bss
15437         sections, n and nn have the same value, so this doesn't matter except
15438         in the case of .sbss.  For .sbss this probably meant .bss (most likely
15439         the next section) was copied from memory.  A later patch removes the
15440         bogus .sbss handling anyway.
15442         * src/unexelf.c (unexec): Use correct index to look up names.
15444 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
15446         Fix Bug#21841
15448         * lisp/filenotify.el (file-notify--rm-descriptor):
15449         Use `descriptor' instead of computing its value.
15450         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
15451         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
15452         (Bug#21841)
15454 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
15456         Remove dirs in vc project roots from the the vc project library roots
15458         * lisp/progmodes/project.el (project-library-roots):
15459         Remove directories inside the project roots from the result.
15460         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
15462 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
15464         Move and rename xref-find-regexp to the project package
15466         * lisp/progmodes/project.el (project-find-regexp)
15467         (project--read-regexp)
15468         (project--find-regexp-in): New functions.
15470         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
15471         xref--show-xrefs.  Use in existing callers in place of that
15472         function.
15473         (xref--show-xrefs): Only do the "show" part.
15474         (xref-find-regexp): Rename, more or less, to
15475         project-or-libraries-find-regexp.
15477 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
15479         Abolish temporary buffer management for xref
15481         * lisp/progmodes/xref.el (xref--temporary-buffers)
15482         (xref--current)
15483         (xref--inhibit-mark-current)
15484         (xref--mark-selected): Remove.  Remove all references.
15485         (xref--show-xrefs): Do not construct the
15486         list of the temporary buffers, nor pass it along.
15488 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
15490         Rename "search path" to "library roots"
15492         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
15493         of the elements from CL-LIST1.
15495         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
15496         Update WRT to the above change.
15498         * lisp/progmodes/project.el (project-search-path-function): Rename
15499         to project-library-roots-function, update the documentation and
15500         references.
15501         (project-search-path): Likewise, to project-library-roots.
15502         (project-roots): Clarify documentation.
15503         (project-vc-search-path): Likewise, to project-vc-library-roots.
15504         (project-library-roots): In addition to the renames, thread the
15505         results through file-name-as-directory.
15506         (project-prune-directories): Accept a variable number of
15507         arguments.  Rename to project-combine-directories.
15508         (project-subtract-directories): New function.
15510         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
15511         Append project-roots and project-library-roots together.
15513         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
15515 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
15517         Prefer xpalloc to doubling buffers by hand
15519         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
15520         (read1): Use it for simplicity.
15521         * src/macros.c (store_kbd_macro_char):
15522         * src/minibuf.c (read_minibuf_noninteractive):
15523         * src/term.c (encode_terminal_code):
15524         * src/xrdb.c (magic_db):
15525         Prefer xpalloc to growing buffers by hand.
15526         This doesn’t fix any bugs, but simplifies the code a bit.
15528 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
15530         Merge from gnulib
15532         This incorporates:
15533         2015-11-05 timespec-sub: fix overflow bug; add tests
15534         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
15535         2015-11-03 intprops: add parentheses
15536         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
15537         Copy from gnulib.
15539 2015-11-07  David Reitter  <david.reitter@gmail.com>
15541         Provide NS notification objects where required to eliminate warnings
15543         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
15544         Call notification functions with notification objects
15545         as per delegate APIs.
15547 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
15549         Add test for bug #21824
15551         * test/automated/buffer-tests.el: New file.
15552         (overlay-modification-hooks-message-other-buf): New test.
15554 2015-11-07  Kelvin White  <kwhite@gnu.org>
15556         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
15558 2015-11-07  David Reitter  <david.reitter@gmail.com>
15560         Ignore fullscreen exit notifications on NS when frame is dead
15562         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
15563         (windowDidExitFullScreen:): Return if frame is dead.
15564         These functions may be called when a fullscreen frame
15565         is closed; they are called before, not after.
15567         May address Bug#21428.
15569 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
15571         Speed up lookup in redisplay--variables
15573         * lisp/frame.el (redisplay--variables): Make it a hash-table.
15575         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
15576         as a hash-table.  This speeds up this function by an order of
15577         magnitude: where previously a setq was slowed down by 100% by
15578         introducing the maybe_set_redisplay test, it is now only 5%
15579         slower.
15580         (syms_of_xdisp) <redisplay--variables>: Doc fix.
15582 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15584         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
15586         The defsubst was being created as:
15587             (cl-defsubst name (args) ("DOC") ...)
15589         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
15590         Add test.
15592 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
15594         Update doc string of hexl-mode
15596         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
15598 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
15600         Fix error in copy-abbrev-table
15602         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
15603         property of the abbrev-table.  (Bug#21828)
15605         * test/automated/abbrev-tests.el: New file.
15607 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
15609         Add test to auto-revert-tests.el for Bug#21841
15611         * test/automated/auto-revert-tests.el
15612         (auto-revert-test01-auto-revert-several-files): New test.
15613         (auto-revert-test02-auto-revert-tail-mode)
15614         (auto-revert-test03-auto-revert-mode-dired): Rename them.
15616 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
15618         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
15620 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
15622         In x_consider_frame_title don't set title of tooltip frames
15624         * src/xdisp.c (x_consider_frame_title): Return immediately for
15625         tooltip frames to avoid displaying empty tooltips.
15627 2015-11-06  Anders Lindgren  <andlind@gmail.com>
15629         Fixed NextStep fullscreen problem (bug#21770).
15631         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
15632         fullscreen frames.
15634 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
15636         Ensure redisplay after evaluation
15638         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
15639         Revert last change.
15640         * lisp/frame.el (redisplay--variables): Populate the
15641         redisplay--variables list.
15642         * src/xdisp.c (maybe_set_redisplay): New function.
15643         (syms_of_xdisp) <redisplay--variables>: New variable.
15644         * src/window.h (maybe_set_redisplay): Declare prototype.
15645         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
15647 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
15649         * test/automated/subr-tests.el (subr-test-when): Fix again.
15651 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
15653         Don't invoke overlay modification hooks in wrong buffer
15655         * src/buffer.c (report_overlay_modification): When called with
15656         AFTER non-zero, don't invoke overlay modification hooks if the
15657         buffer recorded in last_overlay_modification_hooks is different
15658         from the current buffer.  (Bug#21824)
15660 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
15662         * admin/notes/repo: Fix a few obsolete references to Bazaar.
15664 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
15666         * test/automated/subr-tests.el (subr-test-when): Fix test.
15668 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
15670         Avoid division by zero crash observed by Yuan MEI
15672         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
15674         * src/dispnew.c (required_matrix_height, required_matrix_width):
15675         Avoid division by zero.
15676         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
15677         dpyinfo->smallest_char_width to 1.
15679 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
15681         Ensure redisplay after "C-x C-e"
15683         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
15684         redisplay happens to account for any side effects of the evaluated
15685         sexp.  (Bug#21835)
15687 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
15689         Skip some file notification tests for cygwin
15691         * test/automated/file-notify-tests.el (file-notify--test-with-events):
15692         Remove argument TIMEOUT.  Adapt all callees.
15693         (file-notify-test02-events, file-notify-test04-file-validity):
15694         Skip for cygwin.  (Bug#21804)
15696 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
15698         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
15700 2015-11-05  Daiki Ueno  <ueno@gnu.org>
15702         Suppress redundant Pinentry startup messages
15704         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
15705         * lisp/epg.el: Declare `pinentry-start'.
15706         (epg--start): Call `pinentry-start' with QUIET argument set.
15708 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
15710         * doc/emacs/ack.texi (Acknowledgments): Updates.
15712 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
15714         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
15715         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
15717 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
15719         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
15720         Add prettification support for \times.
15722 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
15724         * test/automated/process-tests.el: Skip tests when bash is unavailable.
15725         (process-test-sentinel-accept-process-output)
15726         (process-test-sentinel-sit-for): skip-unless bash executable found.
15728 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
15730         Add test for bug #21831
15732         * test/automated/process-tests.el
15733         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
15734         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
15736 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
15738         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
15740         (eieio--generic-static-object-generalizer): Fix typo.
15741         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
15742         like the underlying cause of bug#17852 was fixed in the mean time.
15744 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15746         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
15748         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
15749         It breaks bootstrapping (duh).
15751 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15753         * lisp/files.el (report-errors): Obsolete.
15755         (normal-mode, hack-local-variables, dir-locals-find-file):
15756         Use `with-demoted-errors' instead.
15758 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15760         * lisp/subr.el (when): Use `macroexp-progn'.
15762         * test/automated/subr-tests.el (subr-test-when): New test.
15764 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
15766         * lisp/progmodes/xref.el: Doc fixes.
15767         (xref-make-file-location, xref-make-buffer-location, xref-make)
15768         (xref-make-bogus-location, xref-make-match): Add cross-references.
15769         (xref--insert-xrefs): Fix typo in docstring.
15771 2015-11-04  Anders Lindgren  <andlind@gmail.com>
15773         Render fringe bitmaps correctly on NextStep (bug#21301)
15775         The fringe bitmaps were inverted, the background was not transparent,
15776         the image data was horizontally mirrored, and periodic fringe bitmaps
15777         were not supported.
15779         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
15780         When both background and foreground colors are 0, set the background
15781         alpha channel to 0 (making the background transparent).  When
15782         copying the image data, do this from the most significant bit
15783         (leftmost) to the least (rightmost), to avoid mirroring.
15784         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
15785         Add support for periodic images (e.g. the empty line indicator).
15787 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
15789         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
15791 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
15793         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
15795         * admin/MAINTAINERS: Add thunk.el.
15797 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
15799         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
15801 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
15803         Fix a stupid error in gfilenotify.c
15805         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
15806         if we've got a `deleted' signal AND the file name is the watched one.
15808 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
15810         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
15812         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
15813         Use case-insensitive string compare for file names.
15814         (emacs-test-dir): Add 'downcase' to cause case differences (at
15815         least on my system).
15817 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
15819         flymake-tests.el (warning-predicate-rx-gcc): Fix check
15821         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
15822         Also check that "make" is available, not just "gcc".
15824 2015-11-02  Ken Brown  <kbrown@cornell.edu>
15826         Document behavior of collation on Cygwin
15828         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
15829         expected failure on Cygwin.
15830         * doc/lispref/strings.texi (Text Comparison): Document that
15831         punctuation and whitespace are not ignored for sorting on Cygwin.
15833 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
15835         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
15837 2015-11-01  Glenn Morris  <rgm@gnu.org>
15839         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
15840         (Bug#21794)
15841         * test/automated/f90.el (f90-test-bug21794): New test.
15843 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
15845         Fix incompatibility with TCC in test for bug#18745
15847         * test/automated/process-tests.el (process-test-quoted-batfile):
15848         Remove spaces unrelated to the bug being tested.
15850 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
15852         Improve completion in tramp-gvfs.el
15854         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
15855         Rename from `tramp-zeroconf-parse-service-device-names'.
15856         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
15857         with `tramp-zeroconf-parse-device-names'.
15858         (tramp-gvfs-parse-device-names): New defun.
15859         (top): Use it when `tramp-zeroconf-parse-device-names' is not
15860         applicable.
15862         * lisp/net/tramp.el (tramp-set-completion-function): The argument
15863         could also be a zeroconf service type.
15865 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15867         * lisp/net/ntlm.el: Change version to 2.0.0.
15869 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
15871         Fix bug#21762
15872         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
15873         `eql' instead of `=' to accommodate the case that (syntax-after (point))
15874         returns nil.
15875         * test/automated/python-tests.el (python-indent-inside-paren-7):
15876         New test.
15878 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
15880         * test/automated/python-tests.el: Avoid warnings.
15881         (python-tests-with-temp-buffer, python-tests-with-temp-file):
15882         Bind `python-indent-guess-indent-offset' to nil.
15884 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
15886         * src/alloc.c: Silence compiler warnings.
15887         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
15889 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
15891         * etc/NEWS: Fix js-jsx-mode entry punctuation.
15893 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
15895         Add JSX indentation via js-jsx-mode  (Bug#21799)
15897         * lisp/progmodes/js.el: Add JSX indentation support.
15898         (js--jsx-end-tag-re)
15899         (js--jsx-after-tag-re): New variables.
15900         (js--jsx-find-before-tag)
15901         (js--jsx-indented-element-p)
15902         (js--as-sgml)
15903         (js--expression-in-sgml-indent-line)
15904         (js-jsx-indent-line)
15905         (js-jsx-mode): New functions.
15906         * test/indent/js-jsx.js: New file.
15907         * etc/NEWS: Add information about js-jsx-mode.
15909 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
15911         Minor fix in filenotify.el
15913         * lisp/filenotify.el (file-notify--event-file-name)
15914         (file-notify--event-file1-name): Normalize result with
15915         `directory-file-name'.
15917 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
15919         Avoid errors in redisplay--pre-redisplay-functions
15921         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
15922         use 'bobp', instead compare window-point with 1.  (Bug#21730)
15924 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
15926         Merge from gnulib
15928         This incorporates:
15929         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
15930         2015-10-25 stdalign: port to Sun C 5.9
15931         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
15932         Copy from gnulib.
15934 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
15936         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
15937         (w32_compare_strings): Adjust for the correction.
15939 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
15941         * test/automated/vc-tests.el (vc-test--state)
15942         (vc-test--working-revision, vc-test--checkout-model):
15943         Add result messages.
15945 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15947         * test/automated/faces-tests.el: Add another test
15949 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15951         * lisp/faces.el (faces--attribute-at-point): Fix bug
15952         introduced by previous commit.
15954 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15956         * test/automated/faces-tests.el: New file.
15958 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15960         * lisp/faces.el: Refactor common code and fix a bug.
15961         (faces--attribute-at-point): New function.  Fix a bug when the
15962         face at point is a list of faces and the desired attribute is not
15963         on the first one.
15964         (foreground-color-at-point, background-color-at-point): Use it.
15966 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
15968         * etc/tutorials/TUTORIAL.translators: Fix PL names.
15970 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
15972         * lisp/character-fold.el: Provide `character-fold'.
15974 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
15976         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
15977         for Gnus and ivy.
15979 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
15981         Some minor fixes for tramp-gvfs.el
15983         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
15984         An attribute returned by gvfs-info might be empty.  In case of
15985         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
15986         (tramp-zeroconf-parse-service-device-names): New defun.
15987         Derived from `tramp-zeroconf-parse-workstation-device-names'.
15988         (top): Add completion functions for "afp" and "smb" methods.
15990 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15992         * test/automated/character-fold-tests.el: New file
15994 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15996         * test/automated/sort-tests.el: New file.
15997         Tests in this file are randomly generated and then tested with
15998         regular, reverse, and case-fold sorting.
16000 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
16002         Describe known problems with pinning Emacs to taskbar
16004         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
16005         on Windows 10.  For the details, see the discussion starting at
16006         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
16008 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
16010         * lisp/isearch.el: Avoid an error that blocks isearch.
16011         (isearch-update): Don't error if `isearch--current-buffer' has
16012         been killed.
16014         * test/automated/isearch-tests.el (isearch--test-update):
16015         New file.
16017 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
16019         Fix documentation of 'beginning/end-of-buffer'
16021         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
16022         conditions under which the mark will be pushed at the previous
16023         position.  (Bug#21748)
16025 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
16027         Add RefTeX feature idea: editing RefTeX TOC buffers
16029         More face defs for ivy, swiper, ace-window, eshell
16031 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
16033         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
16034         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
16035         just VAR.
16036         (auth-source-backend-parse): Use make-instance.
16037         (auth-source-search): Remove unused key args.
16038         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
16039         (auth-source-search-backends): Use slot names rather than their initarg.
16040         (auth-source-netrc-create):
16041         (auth-source-delete):
16042         (auth-source-secrets-create, auth-source-plstore-search)
16043         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
16044         (auth-source-plstore-create, auth-source-netrc-search)
16045         (auth-source-netrc-parse): Remove unused key args.
16046         (auth-source-forget+): Simplify the arglist.
16047         (auth-source-macos-keychain-search-items)
16048         (auth-source-token-passphrase-callback-function): Mark unused args.
16049         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
16050         (pp-escape-newlines): Declare.
16051         (auto-source--symbol-keyword): New function.
16052         (auth-source-plstore-create, auth-source-netrc-create)
16053         (auth-source-netrc-normalize): Use it.
16054         (auth-source-netrc-search): Don't pass :delete to
16055         auth-source-netrc-parse since it doesn't use it.
16056         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
16057         symbol-value to index in keyword args.
16058         (auth-source-macos-keychain-result-append): Avoid setq.
16059         (auth-source-netrc-create): Remove unused vars `file' and `add'.
16060         (auth-source-user-or-password): Remove unused var `cname'.
16062 2015-10-29  Juri Linkov  <juri@linkov.net>
16064         * lisp/dired.el (dired-unmark-all-files-query): Declare.
16065         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
16066         (Bug#21746)
16068 2015-10-29  Juri Linkov  <juri@linkov.net>
16070         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
16071         to go to the beginning of text line instead of command line.
16072         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
16074 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
16076         Fix encoding of saving *Help* buffers
16078         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
16079         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
16081 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
16083         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
16084         (cl--generic-derived-specializers): New function.
16085         (cl--generic-derived-generalizer): New generalizer.
16086         (cl-generic-generalizers): New specializer (derived-mode MODE).
16087         (cl--generic-split-args): Apply the rewriter, if any.
16088         (cl-generic-define-context-rewriter): New macro.
16089         (major-mode): Use it to define a new context-rewriter, so we can write
16090         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
16092         * lisp/frame.el (window-system): New context-rewriter so we can write
16093         `(window-system VAL)' instead of (window-system (eql VAL)).
16094         (cl--generic-split-args): Apply the rewriter, if any.
16095         (frame-creation-function): Use the new syntax.
16097         * lisp/term/x-win.el (window-system-initialization)
16098         (handle-args-function, frame-creation-function)
16099         (gui-backend-set-selection, gui-backend-selection-owner-p)
16100         (gui-backend-selection-exists-p, gui-backend-get-selection):
16101         * lisp/term/w32-win.el (window-system-initialization)
16102         (handle-args-function, frame-creation-function)
16103         (gui-backend-set-selection, gui-backend-get-selection)
16104         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
16105         * lisp/term/pc-win.el (gui-backend-get-selection)
16106         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
16107         (gui-backend-set-selection, window-system-initialization)
16108         (frame-creation-function, handle-args-function):
16109         * lisp/term/ns-win.el (window-system-initialization)
16110         (handle-args-function, frame-creation-function)
16111         (gui-backend-set-selection, gui-backend-selection-exists-p)
16112         (gui-backend-get-selection):
16113         * lisp/startup.el (handle-args-function):
16114         * lisp/term/xterm.el (gui-backend-get-selection)
16115         (gui-backend-set-selection): Use the new syntax.
16117 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
16119         * test/indent/css-mode.css: Add tests for url(...) syntax.
16121 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
16123         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
16124         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
16125         (smie-prec2->grammar): Use `declare'.
16127 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
16129         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
16130         (cl--generic-generalizer): Add `name' field.
16131         (cl-generic-make-generalizer): Add corresponding `name' argument.
16132         (cl-generic-define-generalizer): New macro.
16133         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
16134         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
16135         (cl--generic-t-generalizer): Use it.
16136         (cl-generic-ensure-function): Add `noerror' argument.
16137         (cl-generic-define): Use it so we don't follow aliases.
16138         (cl-generic-define-method): Preserve pre-existing ordering of methods.
16139         (cl--generic-arg-specializer): New function.
16140         (cl--generic-cache-miss): Use it.
16141         (cl-generic-generalizers): Only fset a temporary definition
16142         during bootstrap.
16143         (cl--generic-struct-tag, cl--generic-struct-specializers):
16144         Allow extra arguments.
16146         * lisp/emacs-lisp/eieio-compat.el
16147         (eieio--generic-static-symbol-generalizer)
16148         (eieio--generic-static-object-generalizer):
16149         Use cl-generic-define-generalizer.
16150         (eieio--generic-static-symbol-specializers): Allow extra arguments.
16152         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
16153         (eieio--generic-subclass-generalizer):
16154         Use cl-generic-define-generalizer.
16155         (eieio--generic-subclass-specializers): Allow extra arguments.
16157 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
16159         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
16161 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
16163         Add "afp" method to Tramp
16165         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
16167         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
16168         (tramp-gvfs-handle-expand-file-name)
16169         (tramp-gvfs-handler-mounted-unmounted)
16170         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
16171         (tramp-gvfs-maybe-open-connection): Support also "afp".
16172         (tramp-gvfs-handle-file-attributes): Handle the case of empty
16173         "owner::user" and "owner::group" entries.
16175 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
16177         Handle negative coordinates in ‘x_calc_absolute_position’
16179         * src/w32term.c (x_calc_absolute_position): Find display origin to
16180         allow for negative coordinates.
16182 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
16184         (internal--syntax-propertize): Save match-data here (bug#21766)
16186         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
16187         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
16189 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
16191         Don't require default-directory to end with a slash
16193         * doc/lispref/files.texi (Magic File Names): Document the change
16194         in unhandled-file-name-directory.
16196         * lisp/url/url-handlers.el
16197         (url-handler-unhandled-file-name-directory): Update accordingly.
16199         * src/buffer.c (default-directory): Update the docsting.
16201         * src/fileio.c (unhandled-file-name-directory): Default to calling
16202         `file-name-as-directory'
16203         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
16205 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16207         * lisp/isearch.el: Delete some outdated comments.
16209 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
16211         Fix eshell/clear not working if the output has a small line count
16213         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
16214         number of newlines to be inserted. This fixes the issue where
16215         eshell/clear wouldn't work if the prompt was not at the bottom of the
16216         window, and the output wasn't too long.
16218 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
16220         * lisp/files.el (write-file): Use vc-refresh-state.
16222         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
16224         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
16226 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
16228         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
16229         (macroexp-unprogn): Make sure we never return an empty list.
16230         (macroexp-if): Remove unused (and unsafe) optimization.
16231         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
16232         occur occasionally.
16234 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
16236         Fix bug#21766 and add test
16237         * lisp/simple.el (delete-trailing-whitespace): Save match data when
16238         calling `skip-syntax-backward'.
16239         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
16240         New test.
16242 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16244         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
16246 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
16248         * src/dispnew.c (init_display): Simplify overflow checking.
16250 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16252         * lisp/character-fold.el (character-fold-to-regexp): Fix case
16253         where string ends in space
16255 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16257         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
16259         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
16261 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16263         * lisp/character-fold.el: Make compatible with lax-whitespace.
16264         (character-fold-to-regexp): Rework internals to play nice with
16265         lax-whitespacing.
16267         When the user types a space, we want to match the table entry for
16268         ?\s, which is generally a regexp like "[ ...]".  However, the
16269         `search-spaces-regexp' variable doesn't "see" spaces inside these
16270         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
16271         manually expose a space).
16273         Furthermore, the lax search engine acts on a bunch of spaces, not
16274         on individual spaces, so if the string contains sequential spaces
16275         like "  ", we need to keep them grouped together like this:
16276         "\\(  \\|[ ...][ ...]\\)".
16278 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16280         * lisp/isearch.el: Refactor momentary messages.
16281         (isearch--momentary-message): New function.
16282         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
16283         (isearch-toggle-invisible): Use it.
16285 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16287         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
16288         (isearch-define-mode-toggle): New macro.
16289         (isearch-toggle-invisible): Rename to
16290         `isearch-define-mode-toggle'.
16291         (isearch-toggle-case-fold, isearch-toggle-invisible)
16292         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
16293         with `isearch-define-mode-toggle'.
16295 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
16297         Avoid using `add-to-list' on a let-local var in tramp-smb.el
16299         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
16300         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
16302 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
16304         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
16305         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
16306         does not exist in XEmacs 21.4.
16308 2015-10-28  Anders Lindgren  <andlind@gmail.com>
16310         Fixed OS X startup crash
16312         Input events started to arrive before ns_term_init() was finished.
16313         Solved by blocking input.  This also seems to correct the "You
16314         can't open the application "Emacs" because it may be damaged or
16315         incomplete" error issued when double-clicking on the Emacs
16316         application.
16318         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
16319         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
16321 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16323         * src/process.c (Fget_buffer_process): Improve docstring.
16324         Document the fact that it doesn't return dead processes.
16326 2015-10-28  Anders Lindgren  <andlind@gmail.com>
16328         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
16330         * src/nsterm.h (struct ns_output): New flag, in_animation.
16331         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
16332         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
16333         in_animation flag around call to "setVisible". Set new tool bar
16334         height before call to setVisible.
16335         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
16336         andColumns:] as this fools the subsequent call to updateFrameSize
16337         from performing the real resize.
16338         (windowDidResize): Don't update anything when in_animation is
16339         non-zero.
16341         Trace output.
16343         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
16344         (EmacsToolbar):
16345         * src/nsterm.m (x_set_window_size, updateFrameSize)
16346         ([EmacsView setRows: andColumns:])
16348 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
16350         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
16352 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
16354         Prettify TeX macros not ending in a word char
16356         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
16357         Prettify macros which don't end in a word character.
16359 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
16361         Pipe Hg commit descriptions through 'tabindent'
16363         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
16364         through 'tabindent'.
16365         (vc-hg-log-view-mode): Set tab-width to 2 locally.
16366         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
16368 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16370         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
16371         (tramp-smb-handle-directory-files): Use `delete-dups'.
16373         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
16375 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16377         * lisp/international/ccl.el: Use lexical-binding.
16378         (ccl-compile-if): Remove unused var `false-ic'.
16379         (ccl-compile-write-repeat): Remove unused var `i'.
16380         (ccl-compile-map-single): Remove unused var `id'.
16381         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
16382         dynamic var `ccl-code'.
16384 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16386         * lisp/json.el (json-new-object): Optimize trivial `list' call.
16388 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16390         * lisp/help.el: Fix bug with incorrect arglist string.
16391         (help-add-fundoc-usage): Don't mistake a mis-formatted string
16392         for a list.
16394 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16396         * lisp/gnus/gnus-topic.el: Silence some warnings.
16397         (gnus-topic-prepare-topic): Remove unused var `topic'.
16398         (gnus-topic-remove-topic): Mark unused arg `hide'.
16399         (gnus-tmp-header): Declare.
16400         (gnus-topic-goto-missing-group): Remove unused var `entry'.
16401         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
16402         (gnus-topic-copy-matching): Mark unused arg `copyp'.
16403         Move initialization of `topic' into its declaration.
16405 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
16407         Minor CEDET fixes
16409         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
16410         Handle warnings from gtags about invalid options.
16411         (cedet-gnu-global-create/update-database): Do incremental update
16412         properly.
16414         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
16415         Get monotone root right.
16417 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
16419         Fall back to polling in autorevert when needed
16421         * lisp/autorevert.el (auto-revert-notify-handler): When a
16422         `stopped' event arrives from file notification, fall back to polling.
16424         * test/automated/file-notify-tests.el
16425         (file-notify-test03-autorevert): Extend test for polling when file
16426         notification ceases to work.
16428 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
16430         Show full commit messages in 'hg log' when appropriate
16432         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
16433         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
16434         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
16436 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
16438         Use a plain SVG file for the icon
16440         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
16441           format instead of the Inkscape SVG format.
16443 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
16445         Fix subtle bug in auto-revert-tests.el
16447         * test/automated/auto-revert-tests.el
16448         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
16449         buffer where it belongs to.  (Bug#21668)
16451 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
16453         * lisp/emacs-lisp/map.el: Better docstrings.
16455         * lisp/emacs-lisp/seq.el: Better docstrings.
16457         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
16459 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
16461         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
16463 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
16465         Clarify that load-path contents should be directory file names
16467         * doc/lispref/files.texi (Directory Names): Define and use "directory
16468         file name".  Recommend `expand-file-name'.
16470         * src/lread.c (load-path): Fix doc string; elements are directory file
16471         names.
16473 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
16475         Fix simple-test.el test
16477         * test/automated/simple-test.el (simple-test--dummy-buffer):
16478         Make sure indentation doesn't use TABs, otherwise the 6th test
16479         might fail.
16481 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
16483         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
16484         `substring' does not account for full width characters.
16486 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
16488         Further work on `stopped' events in filenotify.el
16490         * doc/lispref/os.texi (File Notifications): Rework examples.
16492         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
16493         (file-notify--rm-descriptor, file-notify-callback): Improve check
16494         for sending `stopped' event.
16495         (file-notify-add-watch): Check for more events for `inotify'.
16497         * test/automated/file-notify-tests.el
16498         (file-notify--test-expected-events): New defvar.
16499         (file-notify--test-with-events): Use it.
16500         (file-notify--test-cleanup): Make it more robust when deleting
16501         directories.
16502         (file-notify--test-event-test): Check also for watched directories.
16503         (file-notify--test-event-handler): Suppress temporary .#files.
16504         (file-notify-test02-events, file-notify-test04-file-validity):
16505         Rework `stopped' events.
16506         (file-notify-test05-dir-validity): Wait for events when appropriate.
16508 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
16510         * src/keyboard.c (post-command-hook): Shorten docstring.
16512 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
16514         Fix infinite loop in sh-script's SMIE code
16516         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
16517         loop (bug#21747).
16519 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16521         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
16522         Character-fold search _still_ doesn't play well with
16523         lax-whitespace.  So disable it by default (again) for now.
16525 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16527         * lisp/isearch.el: No visual feedback for default search mode.
16528         During an isearch where character-folding is the default, we don't
16529         want to take up minibuffer space just to tell the user that
16530         "Char-fold " is on.  The same goes for other modes, if the user
16531         changes the default.  In contrast, if the user toggles OFF the
16532         default mode, they should see "Literal", to distinguish it from
16533         the default mode.
16534         (isearch--describe-regexp-mode): Return "" if describing the
16535         default mode, and return "literal " if describing a plain search
16536         and it is not default.
16538 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16540         * test/automated/simple-test.el: New file.
16541         Define tests for `newline' and `open-line'.
16543 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16545         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
16546         Also run `post-self-insert-hook' when called interactively.
16548 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16550         * lisp/simple.el (open-line): Fix docstring.
16551         Also explain apparently redundant line.
16553 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16554             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
16556         Sync with soap-client repository, version 3.0.1
16558         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
16559         Bump version to 3.0.1.
16561         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
16563 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
16565         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
16567 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16569         * src/keyboard.c (post-command-hook): Extend the docstring.
16570         Mainly, explain how to use it without hanging Emacs, or giving the
16571         impression that it is hanging.  Also mention `pre-command-hook'.
16572         (pre-command-hook): Mention `post-command-hook'.
16574 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16576         * lisp/custom.el (custom-declare-variable): Shorten code again.
16577         Without using pcase this time.  We can't use pcase because it is
16578         loaded after custom in loadup.el.  Also add a comment explaining
16579         this to future dummies like me.
16581 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
16583         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
16585 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
16587         Introduce `stopped' event in file notification
16589         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
16590         (file-notify-rm-watch): Use it.
16591         (file-notify-callback): Implement `stopped' event.
16592         (file-notify-add-watch): Mention `stopped' in the docstring.
16593         Check, that upper directory exists.
16595         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
16596         Add two test cases.
16597         (file-notify-test02-events): Handle also `stopped' event.
16598         (file-notify-test04-file-validity): Add another test case.
16600 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
16602         Revert commit that broke 'make bootstrap'
16604         * lisp/custom.el (custom-declare-variable): Revert commit
16605         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
16606         even when pcase has not been defined yet, when doing bootstrapping.
16608 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
16610         Port recent inline functions fix to Standard C
16612         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
16613         All uses rewritten to define the function directly rather than to
16614         use a macro to define the function.  This conforms to Standard C,
16615         which does not allow stray semicolons at the top level.  I hope it
16616         also avoids the problems with TAGS.  Those macros, though clever,
16617         were pretty confusing anyway, and it wasn’t clear they were worth
16618         the aggravation even without the TAGS problem.
16620 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16622         * lisp/isearch.el: Make character-fold search the default again.
16624 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16626         * lisp/character-fold.el: Many improvements.
16627         (character-fold-search-forward, character-fold-search-backward):
16628         New command.
16629         (character-fold-to-regexp): Remove lax-whitespace hack.
16630         (character-fold-search): Remove variable.  Only isearch and
16631         query-replace use char-folding, and they both have their own
16632         variables to configure that.
16634 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16636         * lisp/isearch.el: Generalize definition of regexp-function toggles.
16637         (isearch-specify-regexp-function): New macro for specifying
16638         possible values of `isearch-regexp-function'.
16639         (isearch-toggle-character-fold, isearch-toggle-symbol)
16640         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
16642 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16644         * lisp/isearch.el (search-default-regexp-mode): New variable.
16645         (isearch-mode): Use it.
16647 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16649         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
16650         (search-slow-speed, search-upper-case)
16651         (search-nonincremental-instead, search-whitespace-regexp)
16652         (search-invisible, isearch-hide-immediately)
16653         (isearch-resume-in-command-history, search-ring-max)
16654         (regexp-search-ring-max, search-ring-update, search-highlight)
16655         (isearch-fail): Delete :group entries.
16657 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16659         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
16661 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16663         addpm.c: Silence some warnings.
16665         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
16666         to LPBYTE.
16667         (add_registry): Pass NULL to optional lpClass argument of
16668         RegCreateKeyEx, not an empty string.
16670 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16672         addpm.c: Do not add obsolete GTK libraries to the path.
16674         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
16675         (add_registry): Remove variables `size' and `gtk_key'.
16676         Do not add the GTK DLL directory to the library search path; it is
16677         confusing behavior (in particular, the same Emacs version with and
16678         without invoking addpm will use a different path), and the GTK image
16679         libraries are obsolete anyway.
16681 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16683         addpm.c: Replace existing registry entries, but do not create new ones
16685         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
16686         existing values from previous versions, but do not add new ones; the
16687         key could exist for other reasons unrelated to old Emacsen, like X-style
16688         resources, or to set some environment variables like HOME or LANG, and
16689         in that case we don't want to populate it with obsolete values.
16691 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16693         * nt/addpm.c (add_registry): Do not compute unused return value.
16695 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16697         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
16699         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
16700         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
16701         current behavior because REG_OPTION_NON_VOLATILE is defined to
16702         be 0L anyway, but that option is actually documented only for
16703         RegCreateKeyEx.
16705 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16707         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
16709 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16711         Update frame title when redisplay scrolls selected window
16713         * src/xdisp.c (redisplay_window): Reconsider the frame's title
16714         when the mode-line of the frame's selected window needs to be
16715         updated.
16717 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16719         Update frame title when scrolling the selected window
16721         * src/window.c (wset_update_mode_line): New function, sets either
16722         the window's update_mode_line flag or the global update_mode_lines
16723         variable.
16724         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
16725         (window_scroll_line_based): Call it instead of only setting the
16726         window's update_mode_line flag.
16728 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16730         An even better fix for bug#21739
16732         * src/window.c (set_window_buffer): If the window is the frame's
16733         selected window, set update_mode_lines, not the window's
16734         update_mode_line flag.
16735         * src/buffer.c (Fkill_buffer): Undo last change.
16736         (set_update_modelines_for_buf): Function deleted.
16738 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16739             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
16741         Sync with soap-client repository, version 3.0.0
16743         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
16744         Bump version to 3.0.0.
16746         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
16748         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
16750         * lisp/net/soap-inspect.el: Shorten first line description.
16752         * lisp/net/soap-client.el: Make a small whitespace fix.
16754         * lisp/net/soap-inspect.el: Update copyright years.
16756         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
16757         first use in soap-encode-xs-element.
16759         * lisp/net/soap-client.el (soap-type-is-array?): new defun
16760         (soap-encode-xs-element): handle array elements in this function
16761         (soap-encode-xs-complex-type): flag error if asked to encode an
16762         array type, this is handled in `soap-encode-xs-element'
16764         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
16765         Do not print type for attribute group.
16767         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
16768         New function.
16769         (soap-inspect-xs-attribute-group): Likewise.
16771         * lisp/net/soap-inspect.el
16772         (soap-resolve-references-for-xs-attribute-group): Resolve
16773         references of attributes in an attribute group.
16775         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
16776         type directly, not through soap-wsdl-get.
16778         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
16779         nil if reference attribute is nil.
16781         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
16782         Convert XML schema attributes to xsd:string.
16784         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
16785         New function.
16786         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
16787         (soap-sample-value-for-xs-complex-type): Likewise.
16788         (soap-inspect-xs-attribute): New function.
16789         (soap-inspect-xs-simple-type): Print attributes.
16790         (soap-inspect-xs-complex-type): Likewise.
16792         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
16793         Resolve references for attributes.
16794         (soap-resolve-references-for-xs-complex-type): Likewise.
16796         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
16797         Rename from soap-xml-node-first-child.
16798         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
16799         (soap-xs-parse-simple-type): Likewise.
16801         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
16803         * lisp/net/soap-client.el (soap-invoke-internal): New function.
16804         (soap-invoke-async): Call soap-invoke-internal.
16805         (soap-invoke): Likewise.
16807         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
16808         url-retrieve callback is killed.
16810         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
16811         Rename function.
16812         (soap-parse-wsdl-phase-fetch-imports): Likewise.
16813         (soap-parse-wsdl-phase-parse-schema): Likewise.
16814         (soap-parse-wsdl-phase-fetch-schema): Likewise.
16815         (soap-parse-wsdl-phase-finish-parsing): Likewise.
16816         (soap-parse-wsdl): Update calls.
16818         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
16820         * lisp/net/soap-client.el (soap-invoke-async): New function.
16821         (soap-invoke): Reimplement using soap-invoke-async.
16823         * lisp/net/soap-client.el (soap-parse-server-response):
16824         Improve docstring.
16825         (soap-invoke): Inline call to soap-parse-server-response.
16827         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16828         Prevent incorrect warning.
16830         * lisp/net/soap-client.el (soap-parse-server-response):
16831         Rename soap-process-url-response.  Destroy the mime part.
16832         (soap-invoke): Call soap-parse-server-response.
16834         * lisp/net/soap-client.el: Update copyright date.
16836         * lisp/net/soap-client.el: Fix checkdoc issues.
16838         * lisp/net/soap-client.el: Fix indentation and long lines.
16840         * lisp/net/soap-client.el (soap-time-format): Remove variable.
16841         (soap-encode-xs-basic-type): Simplify date-time format detection.
16842         (soap-decode-xs-basic-type): Remove soap-time-format support.
16844         * lisp/net/soap-client.el (soap-process-url-response): New function.
16845         (soap-fetch-xml-from-url): Call soap-process-url-response.
16846         (soap-parse-wsdl-phase-1): New function.
16847         (soap-parse-wsdl-phase-2): Likewise.
16848         (soap-parse-wsdl-phase-3): Likewise.
16849         (soap-parse-wsdl-phase-4): Likewise.
16850         (soap-parse-wsdl-phase-5): Likewise.
16851         (soap-parse-wsdl): Call phase functions.
16853         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
16854         Remove one-argument and call.
16856         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
16858         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
16859         (soap-parse-schema): Add wsdl argument.  Look up XML schema
16860         imports from wsdl.
16861         (soap-load-wsdl): Do not set soap-xmlschema-imports.
16862         (soap-parse-wsdl): Get XML schema imports from wsdl.
16864         * lisp/net/soap-client.el (soap-current-file): Remove variable.
16865         (soap-wsdl): Add current-file slot.
16866         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
16867         file from wsdl.
16868         (soap-fetch-xml-from-file): Likewise.
16869         (soap-fetch-xml): Likewise.
16870         (soap-load-wsdl): Always create wsdl object first.
16871         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
16873         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
16874         (soap-xs-parse-element): Set is-group slot.
16875         (soap-resolve-references-for-xs-element): Skip is-group elements.
16876         (soap-xs-complex-type): Add is-group slot.
16877         (soap-xs-parse-complex-type): Set is-group slot.
16878         (soap-xs-parse-sequence): Parse xsd:group elements.
16879         (soap-resolve-references-for-xs-complex-type): Inline elements
16880         from referenced xsd:group nodes.
16881         (soap-parse-schema): Parse xsd:group nodes.
16883         * lisp/net/soap-client.el (soap-invoke):
16884         Don't set url-http-version to 1.0.
16886         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16887         Allow choice nodes to accept multiple values.
16889         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
16890         for extra header values.
16892         * lisp/net/soap-client.el (soap-well-known-xmlns):
16893         Add wsa and wsaw tags.
16894         (soap-operation): Add input-action and output-action slots.
16895         (soap-parse-operation): Parse wsaw:Action nodes.
16896         (soap-encode-body): Encode service-url for WS-Addressing.
16897         (soap-create-envelope): Likewise.
16898         (soap-invoke): Update soap-create-envelope call to provide
16899         service-url argument.
16901         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16902         Support xsi:type override attribute.
16903         (soap-decode-array): Likewise.
16905         * lisp/net/soap-client.el (soap-parse-schema):
16906         Handle location attribute.
16908         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
16909         matched validation regexp.
16911         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
16912         Encode xsd:list nodes.
16913         (soap-decode-xs-simple-type): Decode xsd:list nodes.
16915         * lisp/net/soap-client.el (soap-get-candidate-elements):
16916         Fix reference handling.
16918         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
16919         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
16920         (soap-xs-add-list): New function.
16922         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
16923         expected, interpret nil as "false".
16925         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
16926         gYear, gMonthDay, gDay and gMonth.
16928         * lisp/net/soap-client.el (soap-time-format): New variable.
16929         (soap-encode-xs-basic-type): Handle dateTime, time, date,
16930         gYearMonth, gYear, gMonthDay, gDay and gMonth.
16931         (soap-decode-date-time): New function.
16932         (soap-decode-xs-basic-type): Use soap-decode-date-time.
16934         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
16935         after encoding.
16936         (soap-decode-xs-basic-type): Validate value before decoding.
16938         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
16939         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
16941         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
16942         instead of overwriting it.
16943         (soap-validate-xs-simple-type): Add union support.
16945         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
16946         to Emacs regexp using xsdre-translate.
16947         (soap-validate-xs-simple-type): Validate value against pattern.
16949         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
16950         inline simpleType nodes.
16951         (soap-decode-type): Handle union types.
16953         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
16954         attributes.
16956         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
16957         from soap-xs-attribute-group-consolidate, all callers updated
16958         (soap-get-xs-attributes): Rename from
16959         soap-xs-attributes-consolidate, all callers updated
16961         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
16962         (soap-xs-attribute-group): New type.
16963         (soap-xs-parse-attribute-group): New function.
16964         (soap-resolve-references-for-xs-attribute-group): Likewise.
16965         (soap-xs-add-extension): Handle attribute groups.
16966         (soap-resolve-references-for-xs-simple-type): Likewise.
16967         (soap-xs-parse-complex-type): Likewise.
16968         (soap-xs-parse-extension-or-restriction): Likewise.
16969         (soap-resolve-references-for-xs-complex-type): Likewise.
16970         (soap-xs-attribute-group-consolidate): New function.
16971         (soap-xs-attributes-consolidate): Handle attribute groups.
16972         (soap-parse-schema): Likewise.
16974         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
16975         Fix boolean encoding.
16977         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
16978         element names in warnings.
16980         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
16982         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16983         Eliminate invalid warnings for choice types.
16985         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
16986         Also encode base type attributes.
16988         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
16989         warning.  Print e-name in warnings, or element if e-name is nil.
16991         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
16992         (soap-xs-parse-element): Set substitution-group.
16993         (soap-resolve-references-for-xs-element): Populate alternatives slot.
16994         (soap-get-candidate-elements): New function.
16995         (soap-encode-xs-complex-type): Iterate through all candidate elements.
16996         Handle types with nil type indicator.  Fix warning logic.
16998         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
16999         earlier in the file to prevent compiler warning.
17001         * lisp/net/soap-client.el (soap-node-optional): New function.
17002         (soap-node-multiple): Likewise.
17003         (soap-xs-parse-element): Call soap-node-optional and
17004         soap-node-multiple.
17005         (soap-xs-complex-type): Add optional? and multiple? slots.
17006         (soap-xml-get-children-fq): New function.
17007         (soap-xs-element-get-fq-name): Likewise.
17008         (soap-xs-complex-type-optional-p): Likewise.
17009         (soap-xs-complex-type-multiple-p): Likewise.
17010         (soap-xs-attributes-consolidate): Likewise.
17011         (soap-decode-xs-attributes): Likewise.
17012         (soap-decode-xs-complex-type): Decode types with nil type indicator.
17013         Support children that use local namespaces.  Decode attributes.
17014         Add type considerations to optional? and multiple? warnings.
17016         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
17017         Store parsed attributes.
17018         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
17020         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
17021         Don't add the xsi:type attribute (Exchange refuses requests which have
17022         this attribute).
17024         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
17025         correct compiler warnings about unused function arguments and
17026         local variables.
17028         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
17029         type indicator.
17030         (soap-parse-envelope): Handle response headers.
17031         (soap-parse-response): Likewise.  Only return non-nil decoded values.
17033         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
17034         Return validated value.
17036         * lisp/net/soap-client.el (soap-xs-parse-element)
17037         (soap-xs-parse-simple-type)
17038         (soap-xs-parse-complex-type)
17039         (soap-parse-message)
17040         (soap-parse-operation): Add the current namespace to the element
17041         being created.
17042         (soap-resolve-references-for-xs-element)
17043         (soap-resolve-references-for-xs-simple-type)
17044         (soap-resolve-references-for-xs-complex-type)
17045         (soap-resolve-references-for-operation): Resolve the namespace to
17046         the namespace tag.
17047         (soap-make-wsdl): specify a namespace tag when creating the xsd
17048         and soapenc namespaces
17049         (soap-wsdl-resolve-references): don't update namespace tags in
17050         elements here
17051         (soap-parse-port-type): bind the urn: to soap-target-xmlns
17052         (soap-encode-body): don't add nil namespace tags to
17053         soap-encoded-namespaces
17055         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
17056         for registering the soap-inspect method.  Make debbugs tests pass.
17057         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
17058         type name, also skip string only nodes when decoding a structure.
17059         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
17060         types too.
17061         (soap-encode-body): Grab the header value from the param table.
17063         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
17064         New function.
17065         (soap-encode-xs-element): Don't encode nil value unless needed.
17067         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
17068         (soap-parse-binding): Parse the message parts required in the body.
17069         (soap-encode-body): Encode only the parts that are declared to be
17070         part of the body.
17072         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
17073         when writing out the tag.
17074         (soap-encode-body): Remove hack that inserts the xmlns in the
17075         element attributes list.
17077         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
17078         (soap-xs-parse-attribute): Default slot is set from the XML
17079         "fixed" attribute.
17080         (soap-encode-xs-complex-type-attributes): Encode any attributes
17081         that have a default value.  Also, don't put the xsi:nil attribute
17082         when the complex type has no content anyway.
17084         * lisp/net/soap-client.el (soap-well-known-xmlns):
17085         Add the xml namespace.
17086         (soap-local-xmlns): Start with the xml namespace.
17087         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
17088         (soap-make-xs-basic-types): More xsd types added.
17089         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
17090         Handle "language", "time", "date", "nonNegativeInteger".
17091         (soap-resolve-references-for-xs-element): Don't signal an error if
17092         the element does not have a type.
17093         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
17094         added stum for xsd:list.
17095         (soap-xs-add-union): Call soap-l2fq on all union members.
17096         (soap-xs-add-extension): Call soap-l2fq on the base member.
17097         (soap-resolve-references-for-xs-simple-type): Don't signal an
17098         error if the simple type has no base.
17099         (soap-resolve-references-for-xs-simple-type): Bugfix, call
17100         soap-wsdl-get on each type of the base.
17102         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
17103         Referenced type can be eiher a simple type or a basic type.
17104         (soap-xs-add-restriction)
17105         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
17106         (soap-make-xs-basic-types)
17107         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
17108         Add support for more XMLSchema basic types.
17109         (soap-current-file, soap-xmlschema-imports): New defvars.
17110         (soap-parse-schema): Add locations from xsd:import tags to
17111         `soap-xmlschema-imports'.
17112         (soap-wsdl): Make destructor private.
17113         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
17114         (soap-wsdl-add-alias): Check if we try to replace aliases.
17115         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
17116         (soap-fetch-xml): New defuns.
17117         (soap-load-wsdl): Update to load the WSDL from either a file or
17118         an url.
17119         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
17120         (soap-parse-wsdl): Process wsdl:import tags and imports from
17121         `soap-xmlschema-imports'.
17122         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
17123         symbol-name.
17124         (soap-l2fq): Make the name part always a string.
17125         (soap-name-p): New defun, used for name tests.
17127         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
17128         Supply sample values for choice types with a special tag.
17129         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
17130         Handle anonymous elements correctly.
17131         (soap-encode-value): Accept nodes that have no namespace tag.
17133         * lisp/net/soap-client.el (soap-invoke): Encode the string for
17134         `url-request-data' as UTF-8.  Fixes issue 16.
17136 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
17138         Update the new icon
17140         Move the E slightly to the right in the circle.
17142         * etc/images/icons/hicolor/128x128/apps/emacs.png:
17143         * etc/images/icons/hicolor/16x16/apps/emacs.png:
17144         * etc/images/icons/hicolor/24x24/apps/emacs.png:
17145         * etc/images/icons/hicolor/32x32/apps/emacs.png:
17146         * etc/images/icons/hicolor/48x48/apps/emacs.png:
17147         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
17148         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
17149         * nt/icons/emacs.ico: New icom update.
17151 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
17153         Avoid missing inline functions from lisp.h in TAGS
17155         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
17156         need to end each invocation with a semi-colon.
17157         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
17158         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
17159         inline functions defined immediately after each invocation, and
17160         also avoid tagging every invocation of these macros.
17162 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
17164         A better fix for bug#21739
17166         * src/buffer.c (set_update_modelines_for_buf): New function.
17167         (Fkill_buffer): Use it to set the global variable
17168         update_mode_lines if the killed buffer was displayed in some
17169         window.  Don't set windows_or_buffers_changed.  This is a better
17170         fix for bug#21739 than the previous fix, since it will cause only
17171         redisplay of mode lines, not of entire windows, but will still
17172         catch attention of x_consider_frame_title in xdisp.c, which
17173         redraws the frame title.
17175 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
17177         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
17178         tar.bz2 and tar.xz archives.
17180 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
17182         Fix infloop in redisplay introduced by a recent change
17184         * src/xdisp.c (redisplay_internal): Avoid inflooping when
17185         redisplaying the selected window sets the selected frame's
17186         redisplay flag.  (Bug#21745)
17188 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
17190         * lisp/emacs-lisp/thunk.el: Better documentation.
17192 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
17194         Replace the old icon for Windows and Mac OSX
17196         * nt/icons/emacs.ico:
17197         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
17198         Use the new icons.
17200 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
17202         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
17203         `load-path' should contain only directory names.
17205 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
17207         New library thunk.el
17209         thunk.el is extracted from stream.el in ELPA, with additional tests.
17211         * lisp/emacs-lisp/thunk.el: New file.
17212         * test/automated/thunk-tests.el: New file.
17213         * etc/NEWS: Add information about thunk.el
17215 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
17217         Fix bug#21669
17219         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
17220         calling low-level functions.
17222         * test/automated/file-notify-tests.el (file-notify--test-timeout):
17223         Decrase to 6 seconds for remote directories.
17224         (file-notify-test02-events): Expect different number of
17225         `attribute-changed' events for the local and remote cases.  Apply
17226         short delays between the operations, in order to receive all
17227         events in the remote case.  Combine `attribute-change' tests.
17228         (Bug#21669)
17230 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
17232         Decode the HTML source when displaying it in EWW
17234         * lisp/net/eww.el (eww-view-source): Decode the HTML source
17235         according to its headers.
17237 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
17239         New default icon
17241         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
17242         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
17243         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
17244         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
17245         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
17246         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
17247         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
17248         Move the old logo files to emacs23.*.
17249         * etc/images/icons/hicolor/128x128/apps/emacs.png:
17250         * etc/images/icons/hicolor/16x16/apps/emacs.png:
17251         * etc/images/icons/hicolor/24x24/apps/emacs.png:
17252         * etc/images/icons/hicolor/32x32/apps/emacs.png:
17253         * etc/images/icons/hicolor/48x48/apps/emacs.png:
17254         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
17255         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
17256         New files.
17257         * etc/images/icons/README: Update the copyright information.
17259 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
17261         Fix redisplay of frame title when current buffer is killed
17263         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
17264         non-zero value, to redisplay more than just the affected windows.
17265         (Bug#21739)
17267 2015-10-23  Anders Lindgren  <andlind@gmail.com>
17269         NextStep maximization and NSTRACE rewrite
17271         Full-height, full-width, and maximized windows now cover the
17272         entire screen (except the menu bar), including the part where the
17273         system dock is placed.  The system zoom animation is no longer
17274         used.
17276         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
17277         original size.
17279         * src/nsterm.m (ns_menu_bar_height): New function, return height of
17280         the menu bar, or 0 when it's hidden.
17281         (constrain_frame_rect): New function for constraining a frame.
17282         (ns_constrain_all_frames): Set frame size explicitly rather than
17283         relying on the system doing it for us by writing back the current
17284         frame size.
17285         (windowWillUseStandardFrame): Register non-maximized width or
17286         height as new user size.  When entering full width or height,
17287         the other size component is taken from the user size.
17288         (fullscreenState): New method for accessing the fullscreen state.
17289         (constrainFrameRect): Restrict frame to be placed under the menu bar,
17290         if present.  The old version, sometimes, restricted the height of a
17291         frame to the screen, this version never does this.
17292         (zoom): Perform zoom by setting the frame to the full size of the
17293         screen (minus the menu bar).  The default system function, with the
17294         zoom animation, is no longer used, as the final frame size doesn't
17295         cover the entire screen.
17297         Rework how to constrain resizing to the character grid.  The old
17298         system used "resizeIncrements" in NSWindows.  However, once a frame
17299         was resized so that it was not aligned to the text grid, it
17300         remained unaligned even after a resize.  In addition, it conflicted
17301         when resizing a fullheight window.
17303         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
17304         unless when pixelwise frame resizing is enabled.
17305         (updateFrameSize, initFrameFromEmacs)
17306         (toggleFullScreen, handleFS): Don't set resizeIncrements.
17308         Redesign the NS trace system.  The call structure is represented
17309         using indentations and vertical lines.  The NSTRACE macro accepts
17310         printf-style arguments.  New macros for printing various
17311         information.
17313         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
17314         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
17315         block (typically a function), accept printf-style arguments.
17316         (NSTRACE_MSG): Macro for extra information, accepts
17317         printf-style arguments.
17318         (NSTRACE_what): Macros for printing various types.
17319         (NSTRACE_FMT_what): Macro with printf format string snippets.
17320         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
17321         corresponds to NSTRACE_FMT_what.
17322         (NSTRACE_RETURN): Macro to print return value, accept
17323         printf-style arguments.
17324         (NSTRACE_RETURN_what): Macros to print return value for
17325         various types.
17327         * src/nsterm.m: Remove old NSTRACE macro
17328         * src/nsterm.m (nstrace_num): Trace counter.
17329         (nstrace_depth): Current call depth.
17330         (nstrace_leave): NSTRACE support function, called when the
17331         local variable "nstrace_enabled" goes out of scope using the
17332         "cleanup" extension.
17333         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
17334         (constrain_frame_rect, ns_constrain_all_frames)
17335         (ns_update_auto_hide_menu_bar, ns_update_begin)
17336         (ns_update_window_begin, update_window_end, ns_update_end)
17337         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
17338         (ns_frame_rehighlight, x_make_frame_visible)
17339         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
17340         (x_destroy_window, x_set_offset, x_set_window_size)
17341         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
17342         (ns_defined_color, frame_set_mouse_pixel_position)
17343         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
17344         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
17345         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
17346         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
17347         (dumpcursor, ns_draw_vertical_window_border)
17348         (ns_draw_window_divider, ns_draw_relief)
17349         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
17350         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
17351         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
17352         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
17353         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
17354         (ns_create_terminal, ns_term_init, sendEvent)
17355         (applicationDidFinishLaunching, applicationDidBecomeActive)
17356         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
17357         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
17358         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
17359         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
17360         (mouse_autoselect_window, in_window, mouseDragged)
17361         (rightMouseDragged, otherMouseDragged, windowShouldClose)
17362         (updateFrameSize, windowWillResize, windowDidResize)
17363         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
17364         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
17365         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
17366         (windowDidEnterFullScreen, windowWillExitFullScreen)
17367         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
17368         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
17369         (draggingEntered, performDragOperation, validRequestorForSendType)
17370         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
17371         (EmacsScroller_initFrame, EmacsScroller_setFrame)
17372         (EmacsScroller_dealloc, condemn, reprieve, judge)
17373         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
17374         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
17376         * src/nsfns.m: Remove old NSTRACE macro
17377         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
17378         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
17379         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
17381         * src/nsimage.m: Remove old NSTRACE macro
17382         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
17383         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
17385         * src/nsmenu.m: Remove old NSTRACE macro
17386         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
17387         Use new trace system.
17389 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
17391         No need to use eval-and-compile
17393         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
17394         autoload epg functions.
17396 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
17398         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
17400         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
17401         epg-context-set-passphrase-callback, epg-decrypt-string, and
17402         epg-encrypt-string; require epg when compiling for the setf-method
17403         for epg-context-armor. (bug#21724)
17405 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
17407         Include file cleanup for w32 files in src directory
17409         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
17410         fontset.h, blockinput.h.
17411         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
17412         charset.h, fontset.h.
17413         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
17414         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
17415         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
17416         in an ifdef-ed away block.
17417         Include fcntl.h for CYGWIN.
17418         (set_frame_param): Remove unused function.
17419         * src/w32select.c: Don't include charset.h and composite.h.
17420         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
17421         due to pointer signedness mismatches.
17422         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
17423         due to pointer signedness mismatches.
17424         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
17425         process.h, dispextern.h.
17426         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
17427         (Fw32_application_type): Avoid compiler warnings due to pointer
17428         signedness mismatches.
17429         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
17430         character.h, charset.h, dispextern.h.
17431         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
17432         to pointer signedness mismatches.
17433         * src/w32inevt.c: Don't include dispextern.h, window.h,
17434         termhooks.h, w32heap.h.
17435         * src/w32font.c: Don't include dispextern.h, character.h,
17436         charset.h, fontset.h, font.h.
17437         (intern_font_name, add_font_entity_to_list)
17438         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
17439         (list_all_matching_fonts): Avoid compiler warnings due to pointer
17440         signedness mismatches.
17441         * src/w32fns.c: Don't include character.h, intervals.h,
17442         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
17443         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
17444         (w32_color_map_lookup, add_system_logical_colors_to_map)
17445         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
17446         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
17447         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
17448         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
17449         compiler warnings, mainly due to pointer signedness mismatches.
17450         (unwind_create_frame_1): Remove unused function.
17451         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
17452         window.h, termhooks.h, dispextern.h.
17453         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
17454         signedness mismatch.
17455         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
17456         w32heap.h.
17458 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
17460         Improve doc-view wrt. auto-revert-mode
17462         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
17463         is corrupted (bug#21729).
17464         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
17466 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
17468         Describe dired-do-compress-to in the manual
17470         * etc/NEWS: Update.
17472         * lisp/dired-aux.el: Fix typo.
17474         * doc/emacs/dired.texi: Add entry.
17476 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
17478         Further fix for proper locale handling in tramp-gvfs.el
17480         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17481         Just suppress LC_MESSAGES locale category settings.
17483 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
17485         New lispref section “Security Considerations”
17487         This attempts to document some of the issues recently discussed
17488         on emacs-devel, and to indicate other such issues.  The section
17489         could be a lot longer.
17490         * doc/lispref/os.texi (Security Considerations):
17491         New node.
17492         * doc/lispref/elisp.texi (Top):
17493         * doc/lispref/processes.texi (Shell Arguments):
17494         * lisp/subr.el (shell-quote-argument):
17495         * src/callproc.c (syms_of_callproc):
17496         Reference it.
17498 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
17500         Merge from gnulib
17502         This incorporates:
17503         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
17504         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
17505         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
17506         Copy from gnulib.
17508 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
17510         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
17511         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
17513 2015-10-21  Ken Brown  <kbrown@cornell.edu>
17515         Further include-file cleanup
17517         * src/sheap.c: Include stdlib.h.
17518         * src/unexcw.c: Include string.h.
17520 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
17522         Fix logic in 'server-kill-emacs-query-function'
17524         * lisp/server.el (server-kill-emacs-query-function): Correct the
17525         logic that controls whether the user is asked for confirmation.
17526         (Bug#21723)
17528 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
17530         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
17531         (isearch--lax-regexp-function-p): New function.
17533 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
17535         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
17536         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
17537         around `isearch-regexp-function'.
17539 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
17541         * lisp/isearch.el: Rename word search to regexp-function search.
17542         `isearch-word' went well beyond its original purpose, and the name
17543         no longer makes sense.  It is now called
17544         `isearch-regexp-function', and its value should always be a function
17545         that converts a string to a regexp (though setting it to t is still
17546         supported for now).
17547         (isearch-word): Make obsolete.
17548         (isearch-regexp-function): New variable.
17549         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
17550         (with-isearch-suspended, isearch-toggle-regexp)
17551         (isearch-toggle-word, isearch-toggle-symbol)
17552         (isearch-toggle-character-fold, isearch-query-replace)
17553         (isearch-occur, isearch-highlight-regexp)
17554         (isearch-search-and-update, isearch-message-prefix)
17555         (isearch-search-fun-default, isearch-search)
17556         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
17557         Use it.
17558         (isearch-lazy-highlight-regexp-function): New var.
17559         (isearch-lazy-highlight-word): Make obsolete.
17560         (isearch--describe-regexp-mode): New function.
17561         (isearch--describe-word-mode): Make obsolete.
17563         * lisp/info.el (Info-isearch-search):
17564         * lisp/replace.el (replace-search, replace-highlight):
17565         * lisp/obsolete/longlines.el (longlines-search-function):
17566         * lisp/hexl.el (hexl-isearch-search-function):
17567         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
17568         Use the new var.
17570 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
17572         Add dired-do-compress-to command bound to "c"
17574         * lisp/dired-aux.el (dired-shell-command): Use the caller's
17575           `default-directory', return the result of `process-file'.
17576         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
17577         used by default.
17578         (dired-compress-files-alist): New defvar.
17579         (dired-do-compress-to): New command.
17581         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
17582         (dired-do-compress-to): Add an autoload entry.
17584         * etc/NEWS: Add two entries.
17586 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
17588         Make RefTeX work with LaTeX subfiles package
17590         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
17591         document class argument as master file for referencing purposes.
17593 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
17595         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
17597 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
17599         Include-file cleanup for src directory
17601         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
17602         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
17603         but does not include it directly.  As a general rule, a source
17604         file should include foo.h if it needs the interfaces that foo.h
17605         defines.
17606         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
17607         systime.h.
17608         * src/atimer.c: Don’t include blockinput.h.
17609         * src/buffer.c: Include coding.h, systime.h.  Don’t include
17610         keyboard.h, coding.h.
17611         * src/callint.c: Don’t include commands.h, keymap.h.
17612         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
17613         systty.h, termhooks.h.
17614         * src/casetab.c: Don’t include character.h.
17615         * src/category.c: Don’t include charset.h, keymap.h.
17616         * src/ccl.h: Don’t include character.h.
17617         * src/character.c: Don’t include charset.h.
17618         * src/charset.c: Don’t include disptab.h.
17619         * src/chartab.c: Don’t include ccl.h.
17620         * src/cm.c: Don’t include frame.h, termhooks.h.
17621         * src/cmds.c: Don’t include window.h, dispextern.h.
17622         * src/coding.c: Don’t include window.h, frame.h.
17623         * src/composite.c: Include composite.h.  Don’t include window.h,
17624         font.h.
17625         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
17626         * src/dbusbind.c: Don’t include frame.h.
17627         * src/decompress.c: Don’t include character.h.
17628         * src/dired.c: Don’t include character.h, commands.h, charset.h.
17629         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
17630         process.h, timespec.h.  Include systime.h.
17631         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
17632         * src/editfns.c: Include composite.h.  Don’t include frame.h.
17633         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
17634         commands.h, systty.h..
17635         * src/fileio.c: Don’t include intervals.h, dispextern.h.
17636         Include composite.h.
17637         * src/filelock.c: Don’t include character.h, systime.h.
17638         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
17639         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
17640         * src/font.c: Include termhooks.h.
17641         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
17642         struct composition_it, struct face, struct glyph_string.
17643         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
17644         intervals.h, window.h, termhooks.h.
17645         * src/frame.c: Don’t include character.h, commands.h, font.h.
17646         * src/frame.h: Don’t include dispextern.h.
17647         * src/fringe.c: Don’t include character.h.
17648         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
17649         character.h, charset.h, fontset.h.
17650         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
17651         fontset.h.
17652         * src/ftxfont.c: Don’t include dispextern.h, character.h,
17653         charset.h, fontset.h.
17654         * src/gfilenotify.c: Don’t include frame.h, process.h.
17655         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
17656         Don’t include syssignal.h, buffer.h, charset.h, font.h.
17657         * src/gtkutil.h: Don’t include frame.h.
17658         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
17659         Don’t include character.h.
17660         * src/indent.c: Don’t include keyboard.h, termchar.h.
17661         * src/inotify.c: Don’t include character.h, frame.h.
17662         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
17663         * src/intervals.c: Don’t include character.h, keyboard.h.
17664         * src/intervals.h: Don’t include dispextern.h, composite.h.
17665         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
17666         Include coding.h.
17667         * src/keyboard.h: Don’t incldue systime.h.
17668         * src/keymap.c: Don’t include charset.h, frame.h.
17669         * src/lread.c: Include dispextern.h and systime.h.
17670         Don’t include frame.h.  Include systime.h.
17671         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
17672         * src/menu.c: Include character.h, coding.h.  Don’t include
17673         dispextern.h.
17674         * src/menu.h: Don’t include systime.h.
17675         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
17676         intervals.h, termhooks.h.
17677         * src/print.c: Include coding.h.  Don’t include keyboard.h,
17678         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
17679         Add forward decl of struct terminal.
17680         * src/process.c: Don’t include termhooks.h, commands.h,
17681         dispextern.h, composite.h.
17682         * src/region-cache.c: Don’t include character.h.
17683         * src/scroll.c: Don’t include keyboard.h, window.h.
17684         * src/search.c: Don’t include category.h, commands.h.
17685         * src/sound.c: Don’t include dispextern.h.
17686         * src/syntax.c: Don’t include command.h, keymap.h.
17687         * src/sysdep.c: Don’t include window.h, dispextern.h.
17688         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
17689         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
17690         * src/terminal.c: Include character.h.
17691         Don’t include charset.h, coding.h.
17692         * src/textprop.c: Don’t include character.h.
17693         * src/undo.c: Don’t include character.h, commands.h, window.h.
17694         * src/unexsol.c: Don’t include character.h, charset.h.
17695         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
17696         window.h, dispextern.h, blockinput.h, character.h, font.h.
17697         * src/widgetprv.h: Don’t include widget.h.
17698         * src/window.c: Don’t include character.h, menu.h, intervals.h.
17699         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
17700         macros.h, process.h.
17701         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
17702         intervals.h.
17703         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
17704         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
17705         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
17706         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
17707         * src/xgselect.c: Don’t include timespec.h, frame.h.
17708         Include systime.h.
17709         * src/xgselect.h: Don’t include time.h.
17710         Use a forward decl to struct timespec instead.
17711         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
17712         dispextern.h.  Include systime.h.
17713         * src/xml.c: Don’t include character.h.
17714         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
17715         * src/xselect.c: Don’t include dispextern.h, character.h,
17716         buffer.h, process.h.
17717         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
17718         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
17719         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
17721 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
17723         (/ N) now returns the reciprocal of N
17725         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
17726         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
17727         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
17728         (color-xyz-to-srgb, color-xyz-to-lab):
17729         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
17730         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
17731         (shr-color-hsl-to-rgb-fractions):
17732         Exploit the change to simplify the code a bit.
17733         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
17734         Don’t complain about single-argument calls to ‘/’.
17735         * src/data.c (arith_driver, float_arith_driver):
17736         Implement the change.
17738 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
17740         Call vc-dir-refresh after stash operations
17742         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
17743         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
17745         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
17746         since it can be abbreviated (as returned by vc-find-root).
17748 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
17750         * lisp/vc/vc-svn.el:
17751         * lisp/vc/vc-mtn.el:
17752         * lisp/vc/vc-hg.el:
17753         * lisp/vc/vc-cvs.el:
17754         * lisp/vc/vc-git.el:
17755         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
17756         Its usages have been replaced with vc-run-delayed.
17758 2015-10-20  Dima Kogan  <dima@secretsauce.net>
17760         Fix memory leak in fontset handling
17762         * src/font.c (copy_font_spec): Make a deep copy of the input
17763         argument FONT.  (Bug#21651)
17765 2015-10-20  Michael Sperber  <mike@xemacs.org>
17767         * lisp/gnus/mailcap.el (mailcap-mime-data):
17768         Conditonalize `doc-view-mode', which does not exist on XEmacs.
17770 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
17772         Update the way directories are compressed
17774         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
17775         for *.tar.gz decompression to use a pipe.
17776         Add an entry for the default directory compression (to *.tar.g).
17777         (dired-compress-file): Update.
17779         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
17781 2015-10-20  Michael Sperber  <mike@xemacs.org>
17783         Unbreak `group' option for `mail-sources'
17785         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
17786         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
17787         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
17789 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
17791         New function seq-position
17793         * lisp/emacs-lisp/seq.el (seq-position): New function.
17794         * test/automated/seq-tests.el: New tests for seq-position.
17795         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
17797 2015-10-19  Ken Brown  <kbrown@cornell.edu>
17799         Enable --with-wide-int build on 32-bit Cygwin
17801         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
17802         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
17804 2015-10-19  Glenn Morris  <rgm@gnu.org>
17806         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
17808 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
17810         Resurrect image loading under auto-image-file-mode
17812         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
17813         'openp' specially.  This special case was lost in the changes on
17814         2015-08-18.  (Bug#21685)
17816 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
17818         Fix return value of 'set-file-extended-attributes'
17820         * lisp/files.el (set-file-extended-attributes): Return non-nil
17821         when setting either ACLs or SELinux context succeeds.  Document
17822         the return value.  (Bug#21699)
17824         * doc/lispref/files.texi (Changing Files): Document the return
17825         value of set-file-extended-attributes.
17827 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
17829         Improve documentation of functions that change files
17831         * doc/lispref/files.texi (Changing Files): Document that these
17832         functions signal an error on failure.
17834 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
17836         Fix doc string of 'shell-quote-argument'
17838         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
17840 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
17842         Some minor Tramp changes
17844         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
17846         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
17847         Expand `tramp-auto-save-directory'.
17849 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
17851         Minor edits in Tramp
17853         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
17854         Declare it.
17856         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
17857         Remove declaration.
17859 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
17861         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
17863 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
17865         Avoid crashes when redisplayng a window changes faces or fonts
17867         * src/xdisp.c (redisplay_internal): If redisplaying the selected
17868         window or one of the frames turns on the frame's 'redisplay' flag,
17869         redisplay again.  (Bug#21428)
17871         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
17873 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
17875         Solve timimg issues in file-notify-tests.el
17877         * test/automated/file-notify-tests.el (file-notify-test02-events):
17878         Rectify `attribute-change' tests.  There are timing issues with
17879         gfilenotify.  (Bug#21669)
17881 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
17883         Fix quoting of data within htmlfontify doc
17885         * doc/misc/htmlfontify.texi (Data Structures, Customization):
17886         Fix quoting of data structures.  A Lisp quote is needed only
17887         when data appears within Lisp code.
17889 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
17891         * lisp/emacs-lisp/package.el: Reload archive-contents if
17892         priorities change.
17893         (package--old-archive-priorities): New variable.
17894         (package-read-all-archive-contents, package-menu--refresh): Use it
17895         to decide when the `package-archive-contents' needs to be read
17896         again.
17898 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
17900         Make src headers idempotent and standalone
17902         Redo src/*.h so that each include file is idempotent (that is, can
17903         be included multiple times with the latter inclusions having no
17904         effect) and standalone (that is, can be included by itself,
17905         with no include file other than config.h needed as a prerequisite).
17906         This is standard practice in GNU programs nowadays.
17907         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
17908         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
17909         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
17910         * src/regex.h [emacs]:
17911         * src/syntax.h, src/systty.h, src/termhooks.h:
17912         Include lisp.h, for Lisp_Object.
17913         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
17914         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
17915         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
17916         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
17917         * src/termopts.h, src/tparam.h, src/unexec.h:
17918         Protect against multiple inclusion.
17919         * src/buffer.h: Include character.h, for STRING_CHAR.
17920         * src/emacsgtkfixed.h (struct frame):
17921         * src/fontset.h (struct face):
17922         * src/region-cache.h (struct buffer):
17923         * src/termhooks.h (struct glyph):
17924         * src/xsettings.h (struct x_display_info):
17925         Add possibly-forward decl.
17926         * src/syntax.h: Include buffer.h, for BVAR.
17927         * src/sysselect.h: Include lisp.h, for eassume.
17928         * src/termchar.h: Include <stdio.h>, for FILE.
17929         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
17930         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
17932 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
17934         Handle symlink targets containing spaces in tramp-gvfs.el
17936         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17937         Handle symlink targets containing spaces.
17939 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
17941         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
17943         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
17944         same reason that `load-path' shouldn't.  Setting it via the customize
17945         interface is a trap for the user.
17947         Installed themes commonly add themselves to this variable, which means
17948         its value is not fit for being saved (it will permanently remember dirs
17949         that don't exist anymore).
17951         This is aggravated by the fact that Emacs always applies the `user'
17952         theme on top of any theme that's loaded, since this will apply the old
17953         variable value and remove any new directories that had been recently
17954         added by themes themselves.
17956         Not to mention, we already have `custom-theme-directory', which is safe
17957         to customize.
17959 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
17961         * lisp/mpc.el: Rename the new toggling commands.
17962         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
17963         (mpc-toggle-shuffle): Add "-toggle" in the name.
17965 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17967         Improve the doc string of 'completion-boundaries'
17969         * lisp/minibuffer.el (completion-boundaries): Rename the argument
17970         TABLE to COLLECTION, for consistency with other high-level
17971         completion functions.  Document how COLLECTION is called if it
17972         is a function.  (Bug#21644)
17974 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
17976         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
17978 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
17980         Make dired-do-compress work for *.zip files
17982         * lisp/dired-aux.el (dired-check-process): Transform the top-level
17983           comment into a docstring.
17984         (dired-shell-command): New command.  This mirrors
17985         `dired-check-process', but is more user-friendly for passing
17986         arguments.
17987         (dired-compress-file-suffixes): Allow to specify the command switches
17988         along with input (%i) and output (%o) inside the PROGRAM part.
17989         Add an entry for *.zip files, and update the entry for *.tar.gz files
17990         to the new style.  Update the docstring.
17991         (dired-compress-file): When PROGRAM matches %i or %o, use the new
17992         logic.
17993         (dired-update-file-line): Avoid an error when at end of buffer.
17995         Fixes bug#21637.
17997 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17999         Minor improvement in documentation of internals
18001         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
18003 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
18005         Improve documentation of COLLECTION in completion functions
18007         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
18008         cross-reference to "Programmed Completion".
18010         * src/minibuf.c (Fcompleting_read): Improve the doc string.
18011         (Bug#21644)
18013 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
18015         Add more release info to etc/HISTORY
18017         * etc/HISTORY: Add more release information about 19.x and 20.x
18018         versions.
18020 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
18022         New file etc/HISTORY
18024         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
18025         * etc/HISTORY: New file.
18026         * etc/NEWS: Mention it.
18028 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
18030         js-mode: Don't misindent generator methods
18032         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
18033         generator methods from multiplication operator
18034         (https://github.com/mooz/js2-mode/issues/275).
18036 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
18038         Fix animation timeout delay calculation
18040         * lisp/image.el (image-animate-timeout):
18041         Don’t assume speed is floating-point.
18043 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
18045         Add commands for controlling MPD modes
18047         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
18048         (mpc-cmd-single): New functions.
18049         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
18050         (mpc-mode-menu): Add new commands as menu items.
18052 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
18054         Refer to `(elisp)Basic Completion' in completing-read docstring
18056         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
18057         Completion' in the docstring (bug#21644).
18059 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
18061         * lisp/mpc.el (mpc-format): Always push form to pred
18063 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18065         Spelling fixes
18067         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
18068         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
18069         Fix misspelling of nonexistent file name.
18071 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
18073         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
18075 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
18077         Some editing fixes in Tramp
18079         * lisp/net/tramp-gvfs.el:
18080         * doc/misc/tramp.texi: "customer option" -> "custom option".
18082         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
18084 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
18086         Use proper localization in tramp-gvfs.el
18088         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
18089         Suppress localized settings in order to proper parse gfvs output.
18091 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
18093         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
18094         Quote argument in proper order.  (Bug#21562)
18096 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
18098         Fix typos in docstrings
18100         * lisp/emacs-lisp/map.el:
18101         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
18102           macros.
18104 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
18106         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
18108 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
18110         Make dired-jump work with tar-subfile-mode
18112         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
18113           emitting an error, switch to `tar-superior-buffer'.
18115 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
18117         * .gitignore: Add build-aux/ar-lib.
18119 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
18121         Better docstrings in seq.el and map.el
18123         * lisp/emacs-lisp/map.el:
18124         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
18126 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18128         Merge from gnulib
18130         This incorporates:
18131         2015-10-13 binary-io, u64, unistd: port to strict C
18132         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
18133         2015-09-25 c-ctype: port better to z/OS EBCDIC
18134         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
18135         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
18136         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
18137         Copy from gnulib.
18139 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18141         Take XPNTR private
18143         * src/alloc.c (PURE_POINTER_P): Remove.
18144         All uses replaced with PURE_P.
18145         (XPNTR_OR_SYMBOL_OFFSET): New function.
18146         (XPNTR): Move here from lisp.h.
18147         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
18148         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
18149         Remove unnecessary cast.
18150         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
18151         to avoid an unnecessary runtime test for symbols.
18152         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
18153         Only alloc.c needs XPNTR now.
18155 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
18157         Add MPC play/pause command
18159         * lisp/mpc.el (mpc-toggle-play): New command.
18160         (mpc-mode-map): Bind it to "s".
18161         (mpc-mode-menu): Add corresponding menu item.
18163 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
18165         Add bindings and menu items for prev and next tracks
18167         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
18168         "<" to mpc-prev.
18169         (mpc-mode-menu): Add corresponding menu items
18171 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
18173         Reduce face-related consing during frame creation.
18175         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
18176         attribute list once.
18177         (face-spec-reset-face): Use it instead of building the list.
18179 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
18181         Do process ConfigureNotify events indicating size changes.
18183         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
18184         events don't have the same size, process each one.
18186 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
18188         Derive mpc-mode from special-mode
18190         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
18191         (mpc-mode): Derive from special mode.
18192         (mpc-songs-mode-map): Don't set parent keymap.
18194 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
18196         Fix error messages for when covers are not found.
18198         The last change to mpc-format let the binding to file call
18199         mpc-file-local-copy with nil argument.  Instead, employ if-let here
18200         so nil bindings don't result in needless computation and errors.
18201         * lisp/mpc.el: Require 'subr-x at compile time.
18202         * lisp/mpc.el (mpc-format): Use if-let.
18204 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
18206         Make dired-do-compress work for *.tar.gz files
18208         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
18209           "tar -zxvf" to *.tar.gz; update docstring.
18211         (dired-compress-file): Allow to specify switches after the command in
18212         `dired-compress-file-suffixes'.
18214 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
18216         Make dired-do-compress work for directories
18218         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
18219           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
18220         Also convert the top comment into a docstring.
18222 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
18224         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
18226         ... since it might come straight from the memoizing table.
18228 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
18230         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
18232 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
18234         Use special-mode in eww list modes
18236         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
18237         (eww-buffers-mode): Derive from special-mode and remove redundant
18238         setting of buffer-read-only.
18239         (eww-mode-map): Remove redundant keymap parent setting.
18240         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
18241         Remove redundant keymap suppressions and mappings.
18243 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
18245         Allow setting frame pixel sizes from frame parameters (Bug#21415)
18247         Also fix some misfeatures in frame (re-)sizing code, add more
18248         debugging information and remove some dead code.
18250         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
18251         parameter names when setting `frame-size-history'.
18252         (frame--size-history): New function.
18254         * src/frame.c (frame_inhibit_resize): If frame has not been made
18255         yet, return t if inhibit_horizontal_resize or
18256         inhibit_vertical_resize bit have been set.
18257         (adjust_frame_size): Simplify.
18258         (make_frame): Initialize inhibit_horizontal_resize,
18259         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
18260         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
18261         inhibit_vertical_resize slots.
18262         (x_set_frame_parameters): Handle `text-pixels' specification for
18263         width and height parameters.  Don't consider new_height or
18264         new_width changes.  Call adjust_frame_size instead of
18265         Fset_frame_size.
18266         (x_figure_window_size): Two new arguments x_width and y_width
18267         returning frame's figures width and height.  Calculate tool bar
18268         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
18269         Handle `text-pixels' specification for width and height
18270         parameters.
18271         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
18272         (Qx_set_window_size_1, Qx_set_window_size_2)
18273         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
18274         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
18275         (Qfree_frame_menubar_2): New symbols.
18276         * src/frame.h (structure frame): New booleans
18277         tool_bar_redisplayed, tool_bar_resized,
18278         inhibit_horizontal_resize, inhibit_vertical_resize.
18279         (x_figure_window_size): Update external declaration.
18280         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
18281         calling gtk_window_resize.
18282         (update_frame_tool_bar): Make inhibiting of frame resizing more
18283         discriminative.  Set tool_bar_resized bit.
18284         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
18285         resizing more discriminative.  Call adjust_frame_size instead of
18286         x_set_window_size.
18287         (Fx_create_frame): Handle x_width and x_height if
18288         set by x_figure_window_size.
18289         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
18290         subtract 3 from tool bar height.
18291         (x_set_window_size): Add frame_size_history_add call.
18292         (x_new_font): Call adjust_frame_size instead of
18293         x_set_window_size.
18294         * src/w32fns.c (x_change_tool_bar_height): Reset
18295         tool_bar_redisplayed and tool_bar_resized bits when adding tool
18296         bar.  Make inhibiting of frame resizing more discriminative.
18297         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
18298         (Fx_create_frame): Handle x_width and x_height if set by
18299         x_figure_window_size.  Set size hints before adjusting frame size.
18300         (x_create_tip_frame): Adjust x_figure_window_size call.
18301         * src/w32term.c (x_set_window_size): Add frame_size_history_add
18302         call.
18303         * src/widget.c (set_frame_size): Remove dead code.  Add
18304         frame_size_history_add call.  When frame_resize_pixelwise is t
18305         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
18306         pixel_width and pixel_height.
18307         (update_various_frame_slots): Remove dead code.
18308         (EmacsFrameResize): Add more information in
18309         frame_size_history_add call.
18310         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
18311         is not set.
18312         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
18313         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
18314         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
18315         tool_bar_resized bits when adding tool bar.  Make inhibiting of
18316         frame resizing more discriminative.
18317         (Fx_create_frame): Handle x_width and x_height if set by
18318         x_figure_window_size.  Set size hints before adjusting frame size.
18319         (x_create_tip_frame): Adjust x_figure_window_size call.
18320         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
18321         (set_frame_menubar): On Lucid never add core-border-width to
18322         avoid that adding XtNinternalBorderWidth adds it again.
18323         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
18324         * src/xterm.c (x_new_font): In non-toolkit case handle size
18325         change of menu bar.
18326         (x_set_window_size_1): Fix calls to frame_size_history_add.
18327         (x_wm_set_size_hint): Remove dead code.  Set
18328         size_hints.min_width and size_hints.min_height to base_width and
18329         base_height.
18331 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
18333         * test/automated/file-notify-tests.el (file-notify--test-timeout):
18334         Add docstring.  Increase to 10 seconds for remote
18335         directories.  (Bug#21669)
18337 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
18339         Unmacroize ebrowse.c and etags.c a bit
18341         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
18342         (streq, filename_eq, set_flag, has_flag): Now inline functions.
18343         (set_flag): First arg is now an address, not an lvalue.
18344         All callers changed.
18345         (filename_eq, set_flag, has_flag):
18346         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
18347         All callers changed.
18348         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
18349         Now inline functions.  Remove asserts that are unnecessary these
18350         days (and in some cases were too-generous anyway).
18352 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
18354         Use highlight for current items
18356         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
18357         Apply highlight face instead of region face.
18359 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
18361         Search for more cover image names in MPC
18363         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
18364         case insensitively
18366 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
18368         Remove or comment out unused variables
18370         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
18371         nontext_cursor, mode_cursor, hand_cursor and count.
18372         (x_change_tool_bar_height): Remove variable old_text_height.
18373         (deliver_wm_chars): Remove variable strip_Alt.
18374         (Fw32_shell_execute): Remove variable document_a.
18375         (Fw32_frame_geometry): Remove variable fullboth.
18376         * src/w32term.c (w32_setup_relief_color): Comment out variable
18377         w32_display_info.
18378         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
18379         (w32_read_socket): Comment out variables rows, columns.
18380         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
18382 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
18384         * src/w32proc.c (sys_select): Fix bitwise test.
18386 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
18388         Minor typo corrections in doc strings
18390         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
18391         Doc fixes.
18393 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
18395         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
18397 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
18399         Attempt to avoid crashes in plist-member
18401         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
18402         and a call to XCDR.  (Bug#21655)
18404 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
18406         * lisp/select.el (gui-get-primary-selection): In
18407         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
18409 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
18411         Support RTF in doc-view
18413         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
18415 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
18417         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
18419 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
18421         Replace the usage of an obsolete function in auth-source.el
18423         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
18424         Replace an usage of `epg-context-set-armor' with `setf'.
18426 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
18428         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
18430 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
18432         Have calc-yank recognize numbers in different bases.
18434         * lisp/calc/calc-yank.el (math-number-regexp): New function.
18435         (calc-yank): Use `math-number-regexp' to recognize numbers.
18437 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18439         Handle an opaque-move X11 window manager operation more efficiently
18441         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
18442         followed by more ConfigureNotify events for the same window, process
18443         only the last one.
18445 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18447         Fix cursor setting for tip frame; re-enable cursor generation
18449         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
18450         attributes sent when creating the new X window.  Don't skip setting
18451         the pointerColor parameter.
18453 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18455         Rewrite x_set_mouse_color to sync less
18457         We can track serial numbers of X requests and correlate error events
18458         with the associated requests.  This way we can identify errors for
18459         specific calls without having to use XSync after every one.
18461         * src/xfns.c (enum mouse_cursor): New type.
18462         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
18463         (mouse_cursor_types): New array listing the Lisp variables and default
18464         cursor appearances for each cursor type.
18465         (x_set_mouse_color_handler): New function; checks error event serial
18466         number against submitted requests.
18467         (x_set_mouse_color): Updated to use the new error handler callback,
18468         and to be more table-driven, to simplify repetitious code.
18470 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18472         Add x_catch_errors_with_handler
18474         * src/xterm.c (struct x_error_message_stack): Add new fields for a
18475         callback function and associated data pointer.
18476         (x_error_catcher): If the callback function is set, call it after
18477         saving the error message string.
18478         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
18479         accepts a callback function and data pointer.
18480         (x_catch_errors): Now a wrapper function.
18481         * src/xterm.h (x_special_error_handler): New typedef.
18482         (x_catch_errors_with_handler): Declare.
18484 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18486         Introduce x_uncatch_errors_after_check to reduce XSync calls
18488         Both x_had_errors_p and x_check_errors call XSync, so if they're
18489         immediately followed by x_uncatch_errors, its XSync call will be
18490         redundant, resulting in a wasted round trip to the X server.
18492         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
18493         x_uncatch_errors without the XSync call.
18494         (XTmouse_position, x_wm_supports):
18495         * src/xfns.c (x_set_mouse_color):
18496         * src/xmenu.c (Fx_menu_bar_open_internal):
18497         * src/xselect.c (x_own_selection, x_get_foreign_selection):
18498         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
18499         * src/xterm.h (x_uncatch_errors_after_check): Declare.
18501 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
18503         Document the optional prefix to `calc-yank'
18505         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
18506         prefix to `calc-yank'.
18507         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
18508         the Calc buffer are yanked back unchanged.
18510 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
18512         * lisp/calendar/calendar.el: Display buffer before executing body.
18514         In each use of this macro, the modeline is derived from a window width
18515         calculation, which will be wrong if (display-buffer) splits the window
18516         horizontally.
18518 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18520         Use ‘echo’ safely with ‘\’ or leading ‘-’
18522         POSIX says that ‘echo FOO’ produces implementation-defined output
18523         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
18524         behavior in that case.
18525         * Makefile.in (removenullpaths): Remove.
18526         (epaths-force): Rewrite to avoid the need for ‘echo’.
18527         (install-etc): Be clearer about escaping the shell metacharacters
18528         ‘\’ and ‘$’.
18529         * Makefile.in (install-arch-indep, install-etcdoc):
18530         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
18531         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
18532         * configure.ac, lib-src/rcs2log, make-dist:
18533         * src/Makefile.in (lisp.mk):
18534         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
18535         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
18536         if $foo can contain arbitrary characters.
18537         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
18538         * doc/lispref/two-volume.make (vol1.pdf):
18539         * test/etags/make-src/Makefile (web ftp publish):
18540         Use ‘printf’ rather than ‘echo -e’.
18542 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
18544         Allow numbers with different radixes to be yanked.
18546         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
18547         default base 10.
18549 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18551         Improve CHECK_IMPURE and PURE_P speedup
18553         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
18555 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
18557         Use events instead of chars to keep track of steps.
18559         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
18560         to keep track of steps.
18562 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18564         Fix --enable-gcc-warnings problem with older GCC
18566         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
18567         This is for building with --enable-gcc-warnings with
18568         GCC 4.6 through 5.0.
18570 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
18572         Fix vertical-motion in truncated lines that end in a stretch
18574         * src/indent.c (Fvertical_motion): Expect overshoot when point is
18575         beyond window margin and lines are truncated, even if we have a
18576         stretch at point.  (Bug#21468)
18578 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
18580         Avoid link-time errors due to inline functions
18582         * src/emacs.c: Include puresize.h, to avoid link-time errors in
18583         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
18584         inline functions.
18586 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
18588         * src/data.c (Faset): Fix last change.
18590 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18592         CHECK_IMPURE and PURE_P speedup
18594         * src/intervals.c (create_root_interval):
18595         Do CHECK_IMPURE only for strings; not needed for buffers.
18596         Prefer ! STRINGP to BUFFERP, for a tad more speed.
18597         * src/puresize.h (CHECK_IMPURE, PURE_P):
18598         Now inline functions instead of macros.
18599         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
18600         All callers changed.
18601         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
18602         All callers changed.
18604 2015-10-09  Noah Friedman  <friedman@splode.com>
18606         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
18608 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18610         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
18612         our after-change-function, rather than re-adding it if it was removed.
18614 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18616         * lisp/cedet/ede: Silence some compiler warnings
18618         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
18619         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
18620         (ede-apply-object-keymap, ede-reset-all-buffers)
18621         (ede-auto-add-to-target): Use dolist.
18622         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
18623         Use field names rather than initarg names in `oref'.
18624         (ede-load-project-file): Remove unused var `file'.
18625         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
18626         (ede-set): Remove unused var `a'.
18628         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
18629         (ede-project-autoload): Avoid the old-style "name" argument.
18630         (ede-emacs-find-matching-target): Use field names rather than initarg
18631         names in `oref'.
18633         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
18634         (ede-linux-load, ede-project-autoload): Avoid the old-style
18635         "name" argument.
18636         (ede-linux-find-matching-target): Use field names rather than initarg
18637         names in `oref'.
18639 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18641         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
18643 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18645         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
18646         indenting too far after ":-".
18648 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
18650         Update case-table and categories of recently added characters
18652         * lisp/international/characters.el: Update information about Latin
18653         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
18654         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
18655         blocks.  (Byug#21654)
18657 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
18659         * src/frame.c (adjust_frame_size): In minibuffer-only windows
18660         don't count minibuffer height twice.  (Bug#21643)
18662 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
18664         Avoid inflooping in font-lock
18666         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
18667         inhibit-field-text-motion around the call to
18668         line-beginning-position, to avoid inflooping.  (Bug#21615)
18670 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
18672         Refactor duplicated code; ensure default is in completions
18674         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
18675         New function.
18676         (reftex-extract-bib-entries): Use it.
18677         (reftex-extract-bib-entries-from-thebibliography): Use it.
18679 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18681         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
18682         in the example.
18684 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
18686         * lisp/calc/calc.el: Silence byte-compiler warnings.
18687         (calc-scan-for-dels): Use ignore-errors.
18688         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
18689         (calc-read-key-sequence): Remove unused var `prompt2'.
18690         (calc-kill-stack-buffer): Remove unused var `buflist'.
18691         (calc): Remove unused var `oldbuf'.
18692         (calc-refresh): Use inhibit-read-only.
18693         (calc-can-abbrev-vectors): Declare.
18694         (calc-record): Remove unused var `mainbuf'.
18695         (math-sub-bignum): Remove unused var `sum'.
18696         (math-svo-c, math-svo-wid, math-svo-off): Declare.
18698 2015-10-08  Daiki Ueno  <ueno@gnu.org>
18700         Use g_clear_error instead of g_error_free
18702         * src/image.c: Define g_clear_error instead of g_error_free.
18703         (init_svg_functions): Resolve symbol g_clear_error instead of
18704         g_error_free.
18705         (svg_load_image): Use g_clear_error instead of g_error_free, to
18706         suppress GLib warnings when ERR is not set.  See bug#21641.
18708 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
18710         * src/image.c (image_size_error): Simplify.
18712 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
18714         Fix problems caught with --enable-gcc-warnings
18716         * src/image.c (lookup_rgb_color):
18717         * src/xfns.c (x_defined_color):
18718         * src/xterm.c (x_parse_color):
18719         Remove unused locals.
18721 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
18723         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
18725 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
18727         Format initial input uniformly
18729         * lisp/calc/calc.el (calc-digit-start-entry): New function.
18730         * lisp/calc/calc.el (calcDigit-start):
18731         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
18732         Use `calc-digit-start-entry' to format input.
18734 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18736         Disable non-working pointerColor setting for X tooltip frame
18738         It generates a bunch of server traffic, but there's some bug wherein
18739         the new mouse cursor settings don't seem to get used.  In most
18740         situations the cursor isn't likely to be seen anyway, so it's not
18741         urgent to fix.
18743         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
18745 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18747         Reduce some unnecessary X calls
18749         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
18750         call.  If border width is wanted, get it from the XGetGeometry call
18751         instead of calling XGetWindowAttributes on the same window.  Skip some
18752         X calls if we've already detected an error from the X server.
18753         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
18754         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
18756 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18758         Reduce color allocation/query traffic in the TrueColor case
18760         When working with an X visual with TrueColor class, pixel values can
18761         be generated from the RGB values according to mask value provided by
18762         the server on connection.  Some of the image-handling code was already
18763         doing this.
18765         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
18766         lookup_rgb_color.
18767         (x_mutable_colormap): New function.
18768         * src/image.c (lookup_rgb_color): Move pixel composition code to
18769         x_make_truecolor_pixel.
18770         (x_kill_gs_process): Call x_mutable_colormap.
18771         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
18772         x_mutable_colormap.
18773         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
18774         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
18775         pixel value into RGB values directly, and don't send a request to the
18776         server.
18777         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
18778         value with x_make_truecolor_pixel.
18779         (x_copy_color): For an immutable color map, just return the provided
18780         pixel value.
18782 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18784         Cache XParseColor results in the X display info structure
18786         With repeated lookups of foreground and background colors for multiple
18787         faces per frame, we issue a lot of redundant color name lookups to the
18788         X server, waiting every time for the response.  On a remote network
18789         with, say, 30ms round-trip time, this can add nearly a full second to
18790         creation of a new frame.
18792         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
18793         * src/image.c (get_spec_bg_or_alpha_as_argb):
18794         (xpm_init_color_cache, xpm_lookup_color):
18795         * src/xfns.c (x_defined_color):
18796         * src/xterm.c (x_parse_color): New function; caches color names not
18797         starting with "#" in the display-info structure.
18798         (x_delete_display): Delete the cache content.
18799         * src/xterm.h (struct color_name_cache_entry): New type.
18800         (x_parse_color): Declare.
18801         (struct x_display_info): Add a new field for the cache.
18803 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
18805         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
18807 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
18809         Fix segfault in image_size_error
18811         * src/image.c (image_size_error): Pass a Lisp string to
18812         image_error, not a C string.  (Bug#21641)
18814 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
18816         Highlight CSS variable definitions
18818         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
18819         CSS variables.  (Bug#21638)
18821 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18823         * test/automated/tabulated-list-test.el: New file.
18824         Test bug#21639 and some basic functionality.
18826 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18828         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
18829         Check if column can be sorted before trying.  (Bug#21639)
18831 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
18833         Add test for `self-insert-command' (bug#21633)
18835         * test/automated/cmds-tests.el: New file.
18837 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
18839         * src/window.c (resize_frame_windows): Don't set root window's
18840         top position when resizing horizontally.
18842 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18844         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
18845         Document more possible values.
18847 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
18849         * lisp/textmodes/tex-mode.el: Use lexical-binding.
18851 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
18853         * lisp/indent.el (indent--default-inside-comment): New function.
18854         (indent-for-tab-command): Use it for `noindent' indentation.
18856 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
18858         Fix bug in GC_CHECK_MARKED_OBJECTS check
18860         * src/alloc.c (mark_object): Fix bug in checking code.
18861         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
18862         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
18863         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
18864         bucket.  The bug did not affect behavior either in the normal case
18865         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
18866         not have an internal error that a properly-written
18867         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
18869 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
18871         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
18872         Add prettified version for \\Bbb{Q}.
18874 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
18876         * test/automated/package-test.el (package-test-install-single):
18877         Add a test for bug#21625.
18879 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
18881         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
18882           not a package-desc object.  Also clarify documentation.  (Bug#21625)
18884 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
18886         Fix display of characters adjacent to ZWJ and ZWNJ
18888         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
18889         characters the same as directional formatting controls.
18890         (bidi_level_of_next_char): Include all Bn characters in rule L1,
18891         as mandated by the UBA.
18893 2015-10-06  Andreas Schwab  <schwab@suse.de>
18895         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
18896         number.  (Bug#21633)
18898 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
18900         * doc/lispref/objects.texi (Window Type): Add a cross reference.
18902         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
18904 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
18906         * lisp/language/misc-lang.el (composition-function-table):
18907         Fix entries for Arabic and Syriac.
18909 2015-10-05  Damien Cassou  <damien@cassou.me>
18911         Add first unit tests for auth-source.el
18913         * test/automated/auth-source-tests.el: New file.
18915 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
18917         Remove redundant redisplay code
18919         * src/xdisp.c (redisplay_internal, try_cursor_movement)
18920         (try_window_reusing_current_matrix, try_window_id): Remove
18921         redundant restrictions on redisplay optimizations based on the
18922         frame's 'redisplay' flag.  See
18923         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
18924         discussions.
18926 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
18928         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
18930 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
18932         Update tutorials/TUTORIAL.cn
18934         * etc/tutorials/TUTORIAL.cn: Improve translation.
18936 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18938         * src/macfont.m (macfont_encode_char, syms_of_macfont):
18939         Remove unused vars.
18941 2015-10-04  Stefan Merten  <stefan@merten-home.de>
18943         Pull in version numbers from rst.el upstream release.
18945         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
18946         (rst-svn-timestamp, rst-official-version)
18947         (rst-official-cvs-rev, rst-package-emacs-version-alist):
18948         Update version numbers.
18950 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
18952         * test/automated/coding-tests.el: New file.
18954 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
18956         Improve XEmacs compatibility of Tramp
18958         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
18959         Declare if it doesn't exist.
18960         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
18961         (redisplay): Make it an alias if it doesn't exist.
18963         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
18964         `file-remote-p' (due to XEmacs compatibility).
18966         * lisp/net/trampver.el (locate-dominating-file)
18967         (tramp-compat-replace-regexp-in-string): Autoload.
18968         (tramp-repository-get-version): Do not dupe byte-compiler.
18970 2015-09-02  K. Handa  <handa@gnu.org>
18972         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
18974         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
18975         Adjusted for the change of type of elements in the array
18976         MFLTGlyphString.glyphs.
18978 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
18979             Michael Heerdegen  <michael_heerdegen@web.de>
18981         shr: fix too long lines in rendered buffers (Bug#21012)
18983         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
18984         Correct calculation of available width.
18985         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
18986         is nil.
18988 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18990         Restore blank line before next section, erroneously erased
18991         in my previous commit
18993         * etc/compilation.txt (symbol ant): Add an additional trailing blank
18994         line to this section, so that there are two of them immediately before
18995         the next section.
18997 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18999         Support MSW filename style for ant compilation error regexp
19001         * etc/compilation.txt (symbol ant):
19002         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
19003         Support MSW filename style.
19005 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
19007         * nt/INSTALL: Minor spelling and quote fixes.
19009         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
19011 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
19013         Maintain ordering of JSON object keys by default
19015         * lisp/json.el (json-object-type): Mention order handling in doc-string.
19016         (json--plist-reverse): New utility function.
19017         (json-read-object): Maintain ordering for alists and plists.
19018         (json-pretty-print): Ensure that ordering is maintained.
19020         * test/automated/json-tests.el (test-json-plist-reverse): New test for
19021         `json--plist-reverse'.
19022         (json-read-simple-alist): Update test to accommodate for changes in
19023         `json-read-object'.
19025         * etc/NEWS: Document the new behavior of the pretty printing functions.
19027 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
19029         * src/coding.c (complement_process_encoding_system): Revert last change.
19031 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
19033         * admin/MAINTAINERS: Add entry for Ulf Jasper.
19035 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
19037         Doc fix for `defmacro'
19039         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
19041 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
19043         More validatation of coding systems
19045         * src/fileio.c (Finsert_file_contents): Remove redundant
19046         coding-system check.
19047         (choose_write_coding_system): Likewise.
19048         * src/coding.c (complement_process_encoding_system): Check argument
19049         for valid coding system.
19051 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
19053         Avoid crashes in coding_inherit_eol_type
19055         * src/coding.c (coding_inherit_eol_type): Check the validity of
19056         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
19057         (Bug#21602)
19059 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
19061         More validatation of coding system in 'write-region'
19063         * src/coding.c (choose_write_coding_system): More validation of
19064         coding-system from various sources.  Suggested by Andreas Schwab
19065         <schwab@linux-m68k.org>.  (Bug#21602)
19067 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
19069         Avoid crashes due to invalid coding-system
19071         * src/fileio.c (choose_write_coding_system)
19072         (Finsert_file_contents): Check validity of coding-system-for-write
19073         and coding-system-for-read bound by the caller.  (Bug#21602)
19075 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
19077         Adapt to new prettify-symbols-unprettify-at-point default
19079         * etc/NEWS: Mention that unprettication of symbol at point is off
19080         by default.
19082 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
19084         Revert my two recent process.c changes
19086         Revert "Improve last commit to process.c" and "Remove callback-handled
19087         channels from Available set" because they did not fix bug#21313.
19089         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
19090         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
19092 2015-10-02  Markus Triska  <triska@metalevel.at>
19094         * lisp/progmodes/prolog.el: Update and extend operator table.
19095         (prolog-smie-grammar): Add multifile, public etc.
19097 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19099         Allow autogen even when Git is not installed
19101         * autogen.sh: Test ‘git status’ before trying to use Git.
19103 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
19105         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
19106         Adjust lto/lfrom when we have uncommitted changes.
19108 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19110         Fix problems found by clang 3.5.0
19112         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
19113         * src/font.c (font_parse_family_registry):
19114         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
19116 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
19118         * nt/INSTALL: Update instructions for running autogen.sh.
19120         * nt/INSTALL: Point to ezwinports for libXpm binaries.
19122 2015-10-02  Daniel Colascione  <dancol@dancol.org>
19124         Fix winner in cl-lib not loaded case
19126         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
19127         without requiring CL
19129 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19131         Fix a few problems with directed quotes
19133         This is in response to a problem report by Kaushal Modi in:
19134         http://bugs.gnu.org/21588#25
19135         * lisp/cedet/mode-local.el (describe-mode-local-overload):
19136         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
19137         * lisp/info-xref.el (info-xref-check-all-custom):
19138         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
19139         Prefer directed to undirected single quotes in diagnostics.
19141 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
19143         Revert "Attempt to fix slow redisplay caused by last changes"
19145         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
19146         (try_cursor_movement): Don't relax requirements for redisplay
19147         optimizations for the selected frame.  (Bug#21597)
19149         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
19151 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
19153         Fix slow redisplay when daemon frame exists
19155         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
19156         when looking for frames that need to be redisplayed.  (Bug#21597)
19158 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
19160         Attempt to fix slow redisplay caused by last changes
19162         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
19163         (try_cursor_movement): Relax requirements for redisplay
19164         optimizations for the selected frame.  (Bug#21597)
19166 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
19168         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
19169         Improve doc string.
19171 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
19173         * lisp/minibuffer.el (minibuffer-completion-help):
19174         Set default base-size, in case completion table does not set it.
19176 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
19178         Fix GUD display of GDB output with non-ASCII text
19180         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
19181         (gdb-mi-decode): New function.
19182         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
19183         decode octal escapes in GDB output.  (Bug#21572)
19185 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
19187         * nt/INSTALL: Document where to find XPM support files.
19189 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
19191         Un- and re-prettification are not exclusive
19193         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
19194         Re-apply prettification to previous symbol also when unprettifying
19195         next one.
19197 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
19199         Don't unprettify symbol at point by default
19201         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
19202         Default to disabled (nil).
19204 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19206         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
19207         Support unprettifying when point is after a symbol.
19209         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
19211 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
19213         Avoid assertion violations in push_prefix_prop
19215         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
19216         a line that has a line-prefix defined starts with an image.  (Bug#21428)
19218 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
19220         Disable some display optimizations when frames need redisplay
19222         These optimizations were previously disabled by the
19223         windows_or_buffers_changed flag, which now is not set
19224         when only some frames need to be redrawn.
19225         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
19226         'redisplay' flag is set.
19227         (try_window_reusing_current_matrix, try_window_id)
19228         (try_cursor_movement): Disable these optimizations when the
19229         frame's 'redisplay' flag is set.
19231 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
19233         Don't modify buffer by unprettification
19235         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
19236         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
19237         modify buffer when setting/removing custom prettify-symbols-start/end
19238         text properties.  Add them to font-lock-extra-managed-props, too.
19240 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
19242         Try to avoid redisplaying all frames when creating a new one
19244         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
19245         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
19246         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
19247         * src/frame.c (x_set_screen_gamma): Set the specific frame's
19248         `redisplay' bit rather than windows_or_buffers_changed.
19250         * src/window.c (apply_window_adjustment): Remove redundant setting of
19251         windows_or_buffers_changed.
19253         * src/xdisp.c (redisplay_internal): Set the specific frame's
19254         `redisplay' bit rather than update_mode_lines in response to
19255         cursor_type_changed.
19256         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
19257         (AINC): Adjust accordingly.
19259 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
19261         Implement unprettification of symbol at point
19263         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
19264         symbol at point.
19265         (prettify-symbols--current-symbol-bounds): New variable.
19266         (prettify-symbols--post-command-hook): New function.
19267         (prettify-symbols-unprettify-at-point): New defcustom.
19268         (prettify-symbols-mode): Use it.
19269         (prettify-symbols--compose-symbol): Use them.
19271 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
19273         * src/macfont.m (mac_font_descriptor_supports_languages):
19274         Regard "zh" as synonym of "zh-Hans".
19276 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
19278         Work around crash when displaying etc/HELLO on OS X 10.11
19280         * src/macfont.m (mac_font_get_weight)
19281         (mac_font_descriptor_get_adjusted_weight): New functions.
19282         (macfont_store_descriptor_attributes): Adjust weight.
19284 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
19286         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
19288 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
19290         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
19291         of the columns.
19293 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
19295         Use unar and lsar to handle RAR archives in arc-mode
19297         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
19298         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
19300 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
19302         Clarify :create in auth-source's docs
19304         * lisp/gnus/auth-source.el (auth-source-search):
19305         Clarify :create's meaning.
19307 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
19309         Avoid empty -path arguments in rgrep
19311         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
19312         the list produced according to grep-find-ignored-directories,
19313         before passing it to Find/Grep invocation.  (Bug#21548)
19315 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
19317         Clarify documentation of pos-visible-in-window-p
19319         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
19320         t for POS.  See
19321         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
19322         for the original report.
19324         * doc/lispref/windows.texi (Window Start and End): Clarify the
19325         meaning of t for the POSITION argument of pos-visible-in-window-p.
19327 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19329         * lisp/progmodes/prolog.el: Fix various indentation cases.
19330         (prolog-operator-chars): New const (add \\).
19331         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
19332         (prolog-smie-rules): Add rules according to bug#21526.
19334 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19336         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
19337         (sh-indent-after-continuation): Add new value `always' (bug#17620)
19338         (sh-smie-sh-rules): Remove old handling of continued lines.
19339         (sh-smie--indent-continuation): New function.
19340         (sh-set-shell): Use it.
19342 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19344         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
19345         Remove redundant :group keyword args.
19346         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
19347         Remove variables.
19348         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
19349         turn them into compile-time variables.
19350         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
19351         Add rules for break, continue, return, global, and persistent.
19352         Refine the rule for "until".
19353         (octave-smie--funcall-p, octave-smie--end-index-p)
19354         (octave-smie--in-parens-p): New functions.
19355         (octave-smie-backward-token, octave-smie-forward-token): Use them to
19356         distinguish the "enumeration" function and the "end" index from
19357         their corresponding keywords.
19358         (octave--block-offset-keywords): New constant.
19359         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
19360         parsing.
19361         (octave-reserved-words): Redefine using octave-smie-grammar.
19362         (octave-font-lock-keywords): Use octave-smie--funcall-p and
19363         octave-smie--end-index-p.
19365 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19367         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
19369 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
19371         * nt/INSTALL: Remove references to GTK site.
19372         That site no longer offers Windows downloads.
19374 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
19376         * nt/INSTALL: Add instructions for installing Git.
19378 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
19380         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
19381         use colors.  Suggested by Eli Zaretskii.
19383 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
19385         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
19386         not supporting 256 above colors (bug#21557).
19388 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
19390         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
19392         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
19394 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
19396         Add documentation for seq.el
19398         * doc/lispref/sequences.texi: Add documentation regarding extending
19399         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
19400         seq-do and seq-map.
19402 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
19404         Better documentation for seq-some
19406         * doc/lispref/sequences.texi:
19407         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
19408         guarantee that the returned value is the first non-nil value that
19409         resulted from applying the predicate.
19411 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
19413         * lisp/arc-mode.el: Sharp-quote function arguments.
19415 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
19417         Avoid redisplay error in ediff-regions-wordwise
19419         * lisp/vc/ediff-util.el
19420         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
19421         set before activating it.  (Bug#21567)
19423 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
19425         Another attempt to fix crashes due to prematurely freed faces
19427         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
19428         faces for as long as we might have desired matrices that reference
19429         those faces.  (Bug#21428)
19431 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
19433         Add auctex development list email address
19435 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
19437         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
19439 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
19441         Improve wrapfig package support and caption parsing
19443         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
19444         Correct description string and add wraptable environment.
19445         (reftex-default-context-regexps): Improve caption regexp.
19447 2015-09-28  Anders Lindgren  <andlind@gmail.com>
19449         Respect value of frame_resize_pixelwise when handling fullscreen state
19451         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
19452         setting size increments.
19454 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
19456         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
19458 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
19460         Add prettify-symbols-alist for js-mode
19462         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
19463         (js-mode): Use it.
19465 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
19467         * nt/subdirs.el: File deleted (no longer used).
19469 2015-09-26  Alan Mackenzie  <acm@muc.de>
19471         Fix follow-scroll-up/down, making them replacements for scroll-up/down
19473         1. Allow point to move between follow windows in scroll operations.
19474         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
19475         when EOB was isolated in the last follow window.
19477         * lisp/follow.el (follow-fixed-window): New variable.
19478         (follow-get-scrolled-point): New function.
19479         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
19480         Reformulate the code.  Put `scroll-command' properties on the functions.
19481         Correct minor errors in ...-down's doc string and code.
19482         (follow-calc-win-end): Amend incomplete doc string.  Use
19483         `pos-visible-in-window-p' to check whether EOB is in the window.
19484         (follow-estimate-first-window-start): Correct an off-by-1 error.
19485         (follow-adjust-window): Add handling for explicit scrolling operations.
19487 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
19489         * admin/MAINTAINERS: Add self, plus list some more files
19490         sans maintaners.
19492 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
19494         New DWIM commands for changing letter-case
19496         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
19497         New functions.  (Bug#21501)
19499 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
19501         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
19503 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
19505         Make face realization be more frame-specific
19507         * src/frame.h (struct f): New flag face_change.
19508         * src/xfaces.c (Finternal_make_lisp_face)
19509         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
19510         (update_face_from_frame_parameter): Set the face_change flag only
19511         for the frame whose faces are affected.
19512         * src/xdisp.c (init_iterator): If a frame's face_change flag is
19513         set, free faces only on that frame.
19514         (redisplay_internal): Disable "display optimization 1" if the
19515         frame's face_change flag is set.
19516         (redisplay_window): Don't allow skipping a window's redisplay if
19517         its frame's face_change flag is set.
19518         * src/frame.c (x_set_screen_gamma): Instead of calling
19519         Fclear_face_cache, call clear_face_cache and set
19520         windows_or_buffers_changed to a non-zero value.  This avoids
19521         setting the global face_change flag that triggers face realization
19522         on all frames and thorough redisplay of all of them.
19524         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
19525         clear face cache if the selected frame is a GUI frame.
19527 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
19529         Remove font-latex specific check
19531         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
19532         Use syntax-ppss data to identify verbatim contents.
19534 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
19536         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
19537         Fix some false negatives.
19539 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19541         Reorder Windows version in Emacs manifests
19543         * nt/emacs-x64.manifest:
19544         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
19545         highest.
19547 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19549         Update Emacs manifest files for Windows 10
19551         * nt/emacs-x86.manifest:
19552         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
19554 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19556         Avoid non-ASCII decoding errors in C src files
19558         * src/nsterm.m:
19559         * src/lisp.h:
19560         * src/editfns.c:
19561         * src/doprnt.c: Add 'coding' cookies -- these files include
19562         Unicode characters and should be decoded as UTF-8.
19564 2015-09-25  Alan Mackenzie  <acm@muc.de>
19566         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
19568         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
19569         amend to match current modes and functions.
19570         (edebug-set-initial-mode): Uncomment and change from setting a defun's
19571         `edebug-initial-mode''s property to setting the variable
19572         `edebug-initial-mode'.
19573         (top level): Create new binding C-x C-a C-m for
19574         `edebug-set-initial-mode'.
19576         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
19577         `edebug-set-initial-mode' and its new key binding.
19578         (Edebug Options): Mention the new command in the pertinent place.
19580         * etc/NEWS: Write entry for this change.
19582 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19584         Avoid non-ASCII decoding errors in Texinfo files
19586         * doc/misc/tramp.texi:
19587         * doc/lispref/strings.texi:
19588         * doc/lispref/positions.texi:
19589         * doc/lispref/help.texi:
19590         * doc/lispref/functions.texi:
19591         * doc/lispintro/emacs-lisp-intro.texi:
19592         * doc/emacs/text.texi:
19593         * doc/emacs/modes.texi:
19594         * doc/emacs/mini.texi:
19595         * doc/emacs/display.texi:
19596         * doc/emacs/custom.texi:
19597         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
19598         Unicode characters and should be decoded as UTF-8.
19599         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
19600         apostrophe unnecessarily.
19602 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
19604         Merge from gnulib
19606         This incorporates:
19607         2015-09-25 c-ctype: rewrite to use inline functions
19608         2015-09-24 maint: add coding cookies to non-ASCII sources
19609         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
19610         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
19611         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
19612         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
19613         * lib/set-permissions.c:
19614         Copy from gnulib.
19616 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
19618         Update publicsuffix.txt from upstream
19620         * etc/publicsuffix.txt: Update from
19621         https://publicsuffix.org/list/effective_tld_names.dat
19622         dated 2015-09-24 17:29:21 UTC.
19624 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
19626         Prevent timers from messing up TTY menus
19628         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
19629         the TTY menu is open.  (Bug#21530)
19631 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
19633         No need to mention K&R C in c-mode intro
19635 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
19637         Fix recent bootstrap problems
19639         * src/syntax.c (parse_sexp_propertize): Fix last fix.
19640         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
19641         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
19643 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
19645         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
19647 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
19649         Properly quote nested xml comments (Bug#6267) (Bug#20001)
19651         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
19652         (nxml-mode): Set comment-quote-nested-function.
19654 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
19656         Allow major-modes full control over quoting nested comments
19658         * lisp/newcomment.el (comment-quote-nested-function): New variable.
19659         (comment-quote-nested-default): New function.
19660         (comment-quote-nested): Use `comment-quote-nested-function'.
19662 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19664         Prefer CALLN in a few more places
19666         * src/macfont.m (macfont_set_family_cache):
19667         * src/nsterm.m (append2):
19668         * src/xterm.c (x_cr_export_frames):
19669         Prefer CALLN to allocating the arg arrays by hand.
19671 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
19673         Adapt file-notify-test02-events test case
19675         * test/automated/file-notify-tests.el (file-notify-test02-events):
19676         Create a new watch for every test.
19678 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
19680         Continue gfilenotify.c implementation of missing parts
19682         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
19683         `gfile-add-watch' call.
19684         (file-notify-rm-watch): Modify `file-notify-descriptors' only
19685         after calling the low level functions.
19687         * src/gfilenotify.c (dir_monitor_callback): Check, whether
19688         event_type is expected.
19689         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
19690         (Fgfile_rm_watch): Fix typo.
19691         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
19693 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
19695         * src/syntax.c (parse_sexp_propertize): Handle spurious
19696         e_property_truncated flag.
19697         (update_syntax_table_forward): Remove invalid assertion.
19699 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
19701         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
19702         space display spec on text-mode terminals, by calling
19703         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
19704         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
19705         test for a GUI frame.
19707 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
19709         Move let-when-compile to lisp-mode.el
19711         This fixes the bootstrapping problem of `let-when-compile' using
19712         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
19714 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19716         * lisp/url/url-http.el (url-http-parse-headers): Do not
19717         automatically include Authorization header in redirect.
19718         (Bug#21350)
19720 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
19722         Clarify documentation of ':relative-width'
19724         * doc/lispref/display.texi (Specified Space): Document that
19725         ':relative-width' is only supported on GUI frames.
19727 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
19729         Fix 'current-column' in presence of :relative-width
19731         * src/indent.c (check_display_width): Support ':relative-width'
19732         in a display spec that specifies a stretch glyph.  (Bug#21533)
19734 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
19736         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
19738         ... to conform better to CONTRIBUTE guidelines.
19740 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
19742         * lisp/progmodes/prolog.el: Fix indentation of empty line
19744         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
19745         `empty-line-token' element.
19746         (smie-indent-empty-line): New function.
19747         (smie-indent-functions): Add it.
19749         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
19750         behavior and use the new `empty-line-token' element (bug#21526).
19751         (prolog-mode-variables): Fix comment-start-skip setting to match
19752         comment-start.
19754         * test/indent/prolog.prolog: Add nested indentation tests.
19756         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
19757         comment-start-skip not to misuse submatch 1.
19759 2015-09-22  Alan Mackenzie  <acm@muc.de>
19761         Make description of `edebug-initial-mode' user friendly
19763         Fixes bug#21365.
19765         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
19766         description of `edebug-initial-mode' from that of its implementation
19767         to that of its visual effect and use.  Move the paragraph higher up.
19769 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
19771         lisp/progmodes/gud.el (gud-format-command): Fix last commit
19773         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
19774         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
19776 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
19778         Improve last commit to process.c
19780 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
19782         Implement gfile-valid-p
19784         * lisp/filenotify.el (file-notify-callback): Fix typo.
19785         (gfile-valid-p): Remove defalias.
19787         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
19788         the file or directory to be watched is deleted.
19789         (Fgfile_add_watch): Make watch_object a triple.
19790         (Fgfile_rm_watch): Check, whether watch is cancelled already.
19791         (Fgfile_valid_p): New defun.
19792         (syms_of_gfilenotify): Declare Sgfile_valid_p.
19794 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
19796         Remove callback-handled channels from Available set
19798         * src/process.c (wait_reading_process_output): Remove channel from
19799         Available set if it is handled by a callback, e.g., dbus or
19800         inotify (bug#21313).
19802 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
19804         Use lunate epsilon for TeX \epsilon
19806         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
19807         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
19808         \epsilon to use GREEK LUNATE EPSILON SYMBOL
19810 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
19812         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
19814         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
19815         rather than outermost paren (bug#21526).
19817 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19819         Improve git diff hunk headers for .el, .texi
19821         Problem reported by Alan Mackenzie in:
19822         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
19823         * .gitattributes (*.el, *.texi): New patterns.
19824         * autogen.sh: Configure diff.elisp.xfuncname and
19825         diff.texinfo.xfuncname if using Git.
19827 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
19829         Don't rely on defaults in decoding UTF-8 encoded Lisp files
19831         * lisp/replace.el:
19832         * lisp/textmodes/rst.el:
19833         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
19835 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19837         Clarify or replace a few \u escapes
19839         * doc/lispref/nonascii.texi (Character Properties)
19840         More-detailed commentary for \u escapes.
19841         * lisp/progmodes/python.el (python--prettify-symbols-alist):
19842         * lisp/replace.el (query-replace-from-to-separator):
19843         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
19844         (rst-mode-syntax-table):
19845         * lisp/whitespace.el (whitespace-display-mappings):
19846         Prefer actual character to \u escape when this makes the code
19847         easier to follow in the usual case where Unicode chars can be
19848         displayed.
19850 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19852         Pacify GCC -Wmaybe-uninitialized in xdisp.c
19854         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
19855         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
19856         charpos.  The loop should always execute at least once anyway.
19858 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
19860         Signal error on invalid regexp
19862         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
19863         Signal an error when the user tries searching with a regexp
19864         matching the empty string.
19866 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
19868         Another fix of file-notify-tests for w32notify
19870         * test/automated/file-notify-tests.el (file-notify-test02-events):
19871         Further adaptation for w32notify: reduce the number of expected
19872         'changed' events.  (Bug#21435)
19874 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
19876         Adapt tests and manual for w32notify
19878         * doc/lispref/os.texi (File Notifications): w32notify does not
19879         send `attribute-changed' events.
19881         * test/automated/file-notify-tests.el (file-notify--test-with-events):
19882         Simplify parameters.  Adapt all callees.
19883         (file-notify-test02-events): w32notify does not send
19884         `attribute-changed' events.
19885         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
19886         Do not skip in case of w32notify.  Simply ignore this part of the test.
19888 2015-09-21  Dima Kogan  <dima@secretsauce.net>
19890         Fix setting breakpoints when remote-debugging
19892         * lisp/progmodes/gud.el (gud-format-command): Send localized file
19893         names to the debugger running on the remote.  (Bug#13304)
19895 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
19897         Better docstring and parameter name for seq-find
19899         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
19900         the parameter `sentinel' to `default'.
19902         * doc/lispref/sequences.texi (Sequence Functions): Update the
19903           documentation for `seq-find' accordingly.
19905 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
19907         Avoid infinite recursion while displaying box face
19909         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
19910         the previous string/buffer character position under bidi
19911         iteration.  (Bug#21428)
19913 2015-09-21  Anders Lindgren  <andlind@gmail.com>
19915         Keep upper edge unchanged when changing size of NS frame
19917         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
19918         (Bug#21415).
19920 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19922         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
19923         (prolog-smie-rules): Accommodate standard if/then/else special
19924         indentation.
19925         (prolog-mode): Add . to electric-indent-chars.
19926         (prolog-electric--if-then-else): Re-indent the line before adding space
19927         after the new char (bug#21526).
19929 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
19931         Add prettify symbols to python-mode
19933         * lisp/progmodes/python.el (python-prettify-symbols-alist):
19934         New variable.
19935         (python-mode): Use it
19937 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19939         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
19941 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
19943         (compilation-error-regexp-alist-alist): Tone down guile-file
19945         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
19946         Make guile-file a bit less enthusiastic (bug#21496).
19948 2015-09-20  Drew Csillag  <drew@thecsillags.com>
19950         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
19951         Fix m4_* highlighting.
19953         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
19954         of commands when they have a "m4_" prefix.
19956 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
19958         '.' -> `.' in doc string
19960         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
19961         individual chars with grave quotes instead of straight quotes, as
19962         this works better when they are translated to curved quotes.
19964 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
19966         Improve file notifications, especially for Tramp
19968         * doc/lispref/files.texi (Magic File Names):
19969         Mention `file-notify-valid-p'.
19971         * doc/lispref/os.texi (File Notifications):
19972         Describe `file-notify-valid-p'.
19974         * etc/NEWS: Add `file-notify-valid-p'.
19976         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
19977         Improve implementation.
19978         (tramp-gvfs-monitor-file-process-filter): Rename from
19979         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
19980         process if appropriate.
19982         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
19983         Improve implementation.
19984         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
19985         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
19986         if appropriate.
19987         (tramp-sh-inotifywait-process-filter): Rename from
19988         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
19989         appropriate.
19991         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
19992         Use `delete-process'.
19993         (tramp-handle-file-notify-valid-p): Check also, that file or
19994         directory to be watched still exists.
19996         * test/automated/file-notify-tests.el (file-notify--test-timeout):
19997         New defun.  Use it at all places a timeout is needed.
19998         (file-notify--test-cleanup): Delete directories recursively.
19999         Cleanup also Tramp connections.
20000         (file-notify-test02-events): Add tests for `attribute-change'.
20001         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
20002         Add tests for `file-notify-rm-watch'.
20004 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
20006         Use %s to format strings instead of splicing them
20008         If FOO might contain quotes that are part of a file or variable
20009         name, the quotes should not be translated when showing FOO’s name
20010         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
20011         is not quite right, as it would translate FOO’s quotes.
20012         Change it to (message "%s: bar" FOO) instead.
20013         * lisp/allout.el (allout-process-exposed):
20014         * lisp/calc/calc-ext.el (calc-do-prefix-help):
20015         * lisp/calc/calc-store.el (calc-store-into):
20016         * lisp/calendar/todo-mode.el (todo-category-completions):
20017         * lisp/cedet/semantic/complete.el (semantic-completion-message):
20018         * lisp/org/ob-latex.el (convert-pdf):
20019         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
20020         * lisp/org/ox-latex.el (org-latex-compile):
20021         * lisp/org/ox-man.el (org-man-compile):
20022         * lisp/org/ox-odt.el (org-odt--export-wrap):
20023         * lisp/org/ox-texinfo.el (org-texinfo-compile):
20024         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
20025         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
20026         (verilog-signals-combine-bus, verilog-read-defines)
20027         (verilog-getopt-file, verilog-expand-dirnames)
20028         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
20029         * lisp/term/ns-win.el (ns-spi-service-call):
20030         Use %s to avoid translating quotes of file names etc. in diagnostics.
20032 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
20034         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
20035         (js-mode): Don't set syntax-begin-function.
20037 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
20039         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
20040         syntax-begin-function is a symbol.
20042 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
20044         Improve documentation of 'run-at-time'
20045         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
20046         In particular, don't refer to 'diary-entry-time', because it is
20047         unavailable until diary-lib is loaded.  Also, refer to
20048         'timer-duration-words', not 'timer-duration', as the latter's doc
20049         string says nothing about the accepted strings.
20051 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
20053         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
20055 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
20057         Repair pdbtrack remote file tracking
20058         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
20059         Rectify pdbtrack so it follows transitions from one remote source
20060         file to the next.
20062 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
20064         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
20066 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
20068         Adapt vc-src to the old-new vc-checkin API
20069         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
20070         additional optional parameter.
20072 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
20074         Add overflow module to CSS property list
20075         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
20076         from CSS Overflow Module Level 3.
20078 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
20080         Fix documentation of "C-u C-x v v"
20081         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
20082         documentation of "C-u C-x v v" match what the code does.
20084         Resurrect the ability to specify a revision in vc-next-action
20085         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
20086         * lisp/vc/vc-dav.el (vc-dav-checkin):
20087         * lisp/vc/vc-git.el (vc-git-checkin):
20088         * lisp/vc/vc-hg.el (vc-hg-checkin):
20089         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
20090         an additional optional argument, the revision to checkin.
20091         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
20092         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
20093         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
20094         a revision to checkin.
20095         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
20096         revision when checking in files.
20097         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
20098         for the details.
20100 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
20102         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
20103         (verilog-decls-princ, verilog-modport-princ)
20104         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
20106 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
20108         Fix the routine for help on Calc's prefixes
20109         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
20110         (calc-do-prefix-help): Use `read-char' to determine the next Calc
20111         command.
20113 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
20115         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
20116         (font-lock-fontify-block): Don't let-bind it.
20117         (font-lock-compile-keywords): Don't use it.
20118         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
20119         start one slot earlier, instead.
20120         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
20121         Don't declare.
20122         (syntax-ppss): Don't use it either.
20123         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
20124         from docstring.
20125         * doc/emacs/display.texi (Font Lock): Don't mention
20126         font-lock-beginning-of-syntax-function.
20127         * doc/lispref/modes.texi (Font Lock Basics): Update description of
20128         font-lock-defaults.
20129         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
20130         * lisp/loadhist.el (unload-feature-special-hooks):
20131         Remove font-lock-beginning-of-syntax-function.
20132         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
20133         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
20134         font-lock-beginning-of-syntax-function.
20136 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
20138         Backslash cleanup in Elisp source files
20139         This patch should not change behavior.  It typically omits backslashes
20140         where they are redundant (e.g., in the string literal "^\$").
20141         In a few places, insert backslashes where they make regular
20142         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
20143         "^\\*", which has the same effect as a regular expression.
20144         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
20145         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
20146         RCS IDs, as that makes it clearer that the backslash is intended.
20148         Some more minor backslash fixes
20149         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
20150         * test/automated/info-xref.el (info-xref-test-write-file):
20151         Double backslashes in strings.
20153         Fix several backslash typos in Elisp strings
20154         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
20155         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
20156         (todo-reset-done-string, todo-reset-comment-string)
20157         (todo-reset-highlight-item):
20158         * lisp/erc/erc-networks.el (erc-networks-alist):
20159         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
20160         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
20161         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
20162         (nntp-telnet-shell-prompt):
20163         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
20164         * lisp/image-dired.el (image-dired-rotate-original):
20165         (image-dired-get-exif-file-name):
20166         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
20167         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
20168         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
20169         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
20170         * lisp/net/shr-color.el (shr-color->hexadecimal):
20171         * lisp/org/org-bibtex.el (org-bibtex-fields):
20172         * lisp/org/org-docview.el (org-docview-export):
20173         * lisp/org/org-entities.el (org-entities):
20174         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
20175         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
20176         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
20177         (ebnf-style-database):
20178         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
20179         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
20180         * lisp/progmodes/sql.el (sql-product-alist):
20181         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
20182         (verilog-error-font-lock-keywords)
20183         (verilog-assignment-operator-re):
20184         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
20185         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
20186         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
20187         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
20188         For example, to get the regular expression ‘\.’ use the string
20189         literal "\\.", not "\." (which is equivalent to ".").
20190         * lisp/emulation/viper-util.el (viper-glob-unix-files):
20191         Remove stray ‘\j’ from string.
20192         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
20193         (nntp-telnet-shell-prompt):
20194         Treat > like $ when matching a shell prompt.
20195         * lisp/progmodes/make-mode.el (makefile-browse):
20196         Properly quote a diagnostic.
20198         Fix minor quoting problems in diagnostics
20199         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
20200         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
20201         Follow text-quoting-style in diagnostic, and quote a file name.
20203 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
20205         * doc/lispref/frames.texi (Cursor Parameters):
20206         Document 'x-stretch-cursor'.
20208 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
20210         Omit unnecessary \ before paren in C docstrings
20211         Although \( is needed in docstrings in Elisp code, it is not needed in
20212         docstrings in C code, since C function definitiions do not start with
20213         a parenthesis.  The backslashes made the docstrings a bit harder to
20214         read and to format in columns.  Also, some C docstrings had ( in
20215         column 1 and this did not appear to be causing any problems.  So,
20216         simplify C docstrings by replacing \( with ( and \) with ).
20218         A few more minor quoting fixes in a script and a text file
20220         Minor quoting fixes in scripts and doc
20221         Prefer straight quotes in random script files, as they are not
20222         converted.  Prefer grave quotes in a couple of places in the manual
20223         that were missed earlier, as these quotes are converted.
20225         Minor backslash fixes in manuals and scripts
20226         * Makefile.in (install-arch-indep):
20227         * admin/charsets/compact.awk:
20228         * admin/charsets/gb180302.awk (gb_to_index):
20229         * admin/charsets/gb180304.awk (gb_to_index):
20230         Avoid undefined behavior in Awk regular expression backslashes.
20231         * doc/misc/efaq.texi (Matching parentheses):
20232         Omit unnecessary backslashes.
20233         * doc/misc/gnus-faq.texi (FAQ 5-8):
20234         Avoid undefined behavior in suggested sed backslash usage.
20236         Add -Wswitch to --enable-gcc-warnings
20237         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
20238         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
20239         * lib-src/etags.c (main, consider_token, C_entries):
20240         * src/coding.c (encode_invocation_designation):
20241         * src/data.c (Ftype_of):
20242         * src/eval.c (Fdefvaralias, default_toplevel_binding)
20243         (Fbacktrace__locals, mark_specpdl):
20244         * src/lisp.h (record_xmalloc):
20245         * src/syntax.c (scan_lists, scan_sexps_forward):
20246         * src/window.c (window_relative_x_coord):
20247         * src/xdisp.c (push_it, pop_it):
20248         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
20249         Error out or do nothing (as appropriate) if a switch statement
20250         with an enum value does not cover all of the enum.
20251         * src/dispextern.h (struct iterator_stack_entry.u.comp):
20252         Remove unused member discovered by using -Wswitch.
20253         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
20254         * src/vm-limit.c (check_memory_limits):
20255         Simplify warning-diagnostic computation by using a table.
20257         etags ‘fatal’ function is now printf-like
20258         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
20259         Also, now static; not clear why it needed to be extern.
20260         (verror): New function, with most of the old contents of ‘error’.
20261         (fatal, error): Use it.
20263 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
20265         More adaptations in file-notify-tests.el
20266         * test/automated/file-notify-tests.el
20267         (file-notify-test05-dir-validity): Skip for w32notify in
20268         batch-mode.  (Bug#21432)
20270 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
20272         Adapt test in file-notify-tests.el
20273         * test/automated/file-notify-tests.el
20274         (file-notify-test04-file-validity): Skip for w32notify in
20275         batch-mode.  Add test lost last commit.
20277 2015-09-16  Dima Kogan  <dima@secretsauce.net>
20279         winner no longer holds on to dead frames
20280         * lisp/winner.el (winner-change-fun): Cull dead frames.
20281         This prevents a potentially massive memory leak.  See:
20282         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
20284 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
20286         Use common report_file_notify_error function
20287         * src/fileio.c (report_file_notify_error): New function.
20288         * src/inotify.c (report_inotify_error): Remove function.
20289         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
20290         (Finotify_rm_watch): Use report_file_notify_error.
20291         * src/lisp.h (report_file_notify_error): Declare external function.
20292         * src/w32notify.c (report_w32notify_error): Remove function.
20293         (Fw32notify_add_watch, Fw32notify_rm_watch):
20294         Use report_file_notify_error.
20296 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
20298         Fix documentation.
20299         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
20300         the documentation of the root mean square.
20302 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
20304         Remove tool_bar_redisplayed_once and associated code.
20305         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
20306         * src/frame.c (make_frame, x_set_font): Remove initialization of
20307         f->tool_bar_redisplayed_once.
20308         * src/w32fns.c (x_change_tool_bar_height):
20309         * src/xfns.c (x_change_tool_bar_height): Don't check for
20310         f->tool_bar_redisplayed_once.
20311         * src/xdisp.c (redisplay_internal): Remove handling of
20312         f->tool_bar_redisplayed_once.
20314 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
20316         Restore some of the quoting in the manuals
20317         * doc/lispref/windows.texi (Coordinates and Windows)
20318         (Coordinates and Windows):
20319         * doc/lispref/variables.texi (Lexical Binding)
20320         (File Local Variables):
20321         * doc/lispref/text.texi (Format Properties):
20322         * doc/lispref/symbols.texi (Symbol Components):
20323         * doc/lispref/strings.texi (Creating Strings):
20324         * doc/lispref/sequences.texi (Sequence Functions):
20325         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
20326         (Search and Replace):
20327         * doc/lispref/processes.texi (Bindat Spec):
20328         * doc/lispref/os.texi (Idle Timers):
20329         * doc/lispref/objects.texi (Basic Char Syntax):
20330         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
20331         * doc/lispref/nonascii.texi (Character Properties):
20332         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
20333         (Mode Line Variables):
20334         * doc/lispref/minibuf.texi (Text from Minibuffer):
20335         * doc/lispref/loading.texi (Autoload):
20336         * doc/lispref/keymaps.texi (Controlling Active Maps):
20337         * doc/lispref/frames.texi (Frame Layout, Size and Position)
20338         (Size Parameters, Implied Frame Resizing):
20339         * doc/lispref/files.texi (Changing Files, Magic File Names):
20340         * doc/lispref/eval.texi (Self-Evaluating Forms):
20341         * doc/lispref/display.texi (Progress, Abstract Display)
20342         (Abstract Display Example, Bidirectional Display):
20343         * doc/lispref/commands.texi (Event Mod):
20344         * doc/emacs/windows.texi (Displaying Buffers):
20345         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
20346         * doc/emacs/text.texi (Enriched Text):
20347         * doc/emacs/programs.texi (MixedCase Words):
20348         * doc/emacs/picture-xtra.texi (Insert in Picture)
20349         (Tabs in Picture):
20350         * doc/emacs/misc.texi (Emacs Server, Printing):
20351         * doc/emacs/mini.texi (Minibuffer History):
20352         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
20353         (Pulling / Pushing):
20354         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
20355         * doc/emacs/help.texi (Help, Help Echo):
20356         * doc/emacs/glossary.texi (Glossary):
20357         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
20358         (Frame Commands):
20359         * doc/emacs/files.texi (Reverting, Saving, Directories):
20360         * doc/emacs/entering.texi (Exiting):
20361         * doc/emacs/emacs.texi (Top):
20362         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
20363         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
20364         appropriate or replace quoting with @dfn.
20365         * doc/misc/ediff.texi (Window and Frame Configuration):
20366         * doc/lispref/processes.texi (Network Feature Testing):
20367         * doc/lispref/display.texi (Display Margins): Quote the phrase
20368         after "a.k.a." where appropriate.
20370 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
20372         Clarify reftex-extra-bindings docs
20373         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
20374         * doc/misc/reftex.texi (Key Bindings): Document that the variable
20375         only has an effect at load-time.
20377 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
20379         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
20380         search argument.  (Bug#21492) (Bug#21493)
20382 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
20384         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
20385         Add pretty symbols for \qquad and \varrho.
20387 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
20389         Add new functions for the root mean square of a (Calc) vector
20390         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
20391         New functions.
20392         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
20393         `calc-vector-rms', add autoloads for `calc-vector-rms' and
20394         `calcFunc-rms'.
20395         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
20396         `calcFunc-rms'.
20397         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
20398         `calc-vector-rms'.
20399         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
20400         command.
20402 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
20404         Add monotone EDE generic project
20405         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
20406         Add monotone generic project.
20408         Revert premature commit
20409         * doc/lispref/files.texi: Revert premature commit of change to
20410         file-name-all-completions.
20412         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
20413         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
20414         with cl-generic defaults.
20415         (elisp--xref-find-references): Add doc string.
20416         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
20417         tests to find bug.
20419         Fix bugs in eieio-oref-default related to class symbols
20420         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
20421         (eieio-oref-default): Handle class properly.
20423 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20425         Quote “fullboth” when defining it
20426         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
20427         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
20429 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
20431         Minor doc fix in emacs/ack.texi
20432         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
20433         first argument.
20435 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
20437         Adapt tests in auto-revert-tests.el
20438         * test/automated/auto-revert-tests.el (auto-revert--timeout):
20439         Make it a defconst.
20440         (auto-revert--wait-for-revert): New defun.
20441         (auto-revert-test00-auto-revert-mode)
20442         (auto-revert-test01-auto-revert-tail-mode)
20443         (auto-revert-test02-auto-revert-mode-dired): Use it.
20445 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
20447         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
20448         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
20449         (cl-lib-fdefs): Add defgeneric.
20450         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
20451         (eieio-kw, cl-lib-kw, el-kw): Remove.
20453 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20455         Quote less in manuals
20456         The manuals often used quotes ``...'' when it is better to use @dfn or
20457         @code or capitalized words or no quoting at all.  For example, there is
20458         no need for the `` and '' in “if a variable has one effect for
20459         @code{nil} values and another effect for ``non-@code{nil}'' values”.
20460         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
20461         unnecessary quoting like this, and to use @dfn etc. instead when called
20462         for (Bug#21472).
20464 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
20466         * lisp/custom.el (load-theme): Only compute hash when needed.
20468 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20470         Pacify --enable-gcc-warnings
20471         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
20473 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
20475         Improve error reports in inotify.c
20476         * src/inotify.c (report_inotify_error): New function.  Clone of
20477         report_w32notify_error.
20478         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
20479         (Finotify_rm_watch): Use it.
20481 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
20483         Fix the file-notify tests for watch validation on w32
20484         * test/automated/file-notify-tests.el
20485         (file-notify-test04-file-validity): Move the directory deletion
20486         out of the file-notify--test-with-events macro.
20487         (file-notify-test04-file-validity)
20488         (file-notify-test05-dir-validity): Enlarge the timeout of
20489         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
20491 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
20493         Use OPEN BOX instead of space for \quad.
20494         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
20495         character for \quad instead of a space.
20497 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
20499         Add missing *.pbm images
20500         * etc/images/connect.pbm: New file.
20501         * etc/images/custom/down-pushed.pbm: New file.
20502         * etc/images/custom/down.pbm: New file.
20503         * etc/images/custom/right-pushed.pbm: New file.
20504         * etc/images/custom/right.pbm: New file.
20505         * etc/images/describe.pbm: New file.
20506         * etc/images/disconnect.pbm: New file.
20507         * etc/images/ezimage/bits.pbm: New file.
20508         * etc/images/ezimage/bitsbang.pbm: New file.
20509         * etc/images/ezimage/box-minus.pbm: New file.
20510         * etc/images/ezimage/box-plus.pbm: New file.
20511         * etc/images/ezimage/box.pbm: New file.
20512         * etc/images/ezimage/checkmark.pbm: New file.
20513         * etc/images/ezimage/dir-minus.pbm: New file.
20514         * etc/images/ezimage/dir-plus.pbm: New file.
20515         * etc/images/ezimage/dir.pbm: New file.
20516         * etc/images/ezimage/doc-minus.pbm: New file.
20517         * etc/images/ezimage/doc-plus.pbm: New file.
20518         * etc/images/ezimage/doc.pbm: New file.
20519         * etc/images/ezimage/info.pbm: New file.
20520         * etc/images/ezimage/key.pbm: New file.
20521         * etc/images/ezimage/label.pbm: New file.
20522         * etc/images/ezimage/lock.pbm: New file.
20523         * etc/images/ezimage/mail.pbm: New file.
20524         * etc/images/ezimage/page-minus.pbm: New file.
20525         * etc/images/ezimage/page-plus.pbm: New file.
20526         * etc/images/ezimage/page.pbm: New file.
20527         * etc/images/ezimage/tag-gt.pbm: New file.
20528         * etc/images/ezimage/tag-minus.pbm: New file.
20529         * etc/images/ezimage/tag-plus.pbm: New file.
20530         * etc/images/ezimage/tag-type.pbm: New file.
20531         * etc/images/ezimage/tag-v.pbm: New file.
20532         * etc/images/ezimage/tag.pbm: New file.
20533         * etc/images/ezimage/unlock.pbm: New file.
20534         * etc/images/gnus/important.pbm: New file.
20535         * etc/images/gnus/mail-send.pbm: New file.
20536         * etc/images/gnus/receipt.pbm: New file.
20537         * etc/images/gnus/toggle-subscription.pbm: New file.
20538         * etc/images/gnus/unimportant.pbm: New file.
20539         * etc/images/gud/all.pbm: New file.
20540         * etc/images/gud/rcont.pbm: New file.
20541         * etc/images/gud/recstart.pbm: New file.
20542         * etc/images/gud/recstop.pbm: New file.
20543         * etc/images/gud/rfinish.pbm: New file.
20544         * etc/images/gud/rnext.pbm: New file.
20545         * etc/images/gud/rnexti.pbm: New file.
20546         * etc/images/gud/rstep.pbm: New file.
20547         * etc/images/gud/rstepi.pbm: New file.
20548         * etc/images/gud/thread.pbm: New file.
20549         * etc/images/lock-broken.pbm: New file.
20550         * etc/images/lock-ok.pbm: New file.
20551         * etc/images/lock.pbm: New file.
20552         * etc/images/mail/copy.pbm: New file.
20553         * etc/images/mail/forward.pbm: New file.
20554         * etc/images/mail/not-spam.pbm: New file.
20555         * etc/images/mail/outbox.pbm: New file.
20556         * etc/images/mail/preview.pbm: New file.
20557         * etc/images/mail/save-draft.pbm: New file.
20558         * etc/images/mh-logo.pbm: New file.
20559         * etc/images/mpc/add.pbm: New file.
20560         * etc/images/mpc/ffwd.pbm: New file.
20561         * etc/images/mpc/next.pbm: New file.
20562         * etc/images/mpc/pause.pbm: New file.
20563         * etc/images/mpc/play.pbm: New file.
20564         * etc/images/mpc/prev.pbm: New file.
20565         * etc/images/mpc/rewind.pbm: New file.
20566         * etc/images/mpc/stop.pbm: New file.
20567         * etc/images/redo.pbm: New file.
20568         * etc/images/smilies/braindamaged.pbm: New file.
20569         * etc/images/smilies/cry.pbm: New file.
20570         * etc/images/smilies/dead.pbm: New file.
20571         * etc/images/smilies/evil.pbm: New file.
20572         * etc/images/smilies/forced.pbm: New file.
20573         * etc/images/smilies/grin.pbm: New file.
20574         * etc/images/smilies/indifferent.pbm: New file.
20575         * etc/images/sort-ascending.pbm: New file.
20576         * etc/images/sort-column-ascending.pbm: New file.
20577         * etc/images/sort-criteria.pbm: New file.
20578         * etc/images/sort-descending.pbm: New file.
20579         * etc/images/sort-row-ascending.pbm: New file.
20580         * etc/images/unchecked.pbm: New file.
20581         * etc/images/zoom-in.pbm: New file.
20582         * etc/images/README: Update instructions for PBM files.
20584         Add separator.pbm tool-bar image
20585         * etc/images/separator.pbm: New file.  Having it avoids the side
20586         effect of changing the tool-bar height when the default font's size
20587         changes and XPM image support is not available, due to the SPC
20588         characters that are left in the Lisp string used to display the tool
20589         bar, because there are no images to display instead of those SPC
20590         characters.
20592         Make show-paren-match face visible on mono-color displays
20593         * lisp/faces.el (show-paren-match): Use the underline face for
20594         mono-color displays.  (Bug#21481)
20596 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
20598         Don’t double-encode non-ASCII mail clipboard
20599         * lisp/mail/mailclient.el (mailclient-send-it):
20600         Also fix the case when mailclient-place-body-on-clipboard-flag
20601         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
20603 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
20605         Adapt file-notify-tests.el test cases
20606         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
20607         * src/inotify.c (Finotify_valid_p): Adapt docstring.
20608         * test/automated/file-notify-tests.el
20609         (file-notify-test03-autorevert)
20610         (file-notify-test04-file-validity)
20611         (file-notify-test04-file-validity-remote)
20612         (file-notify-test05-dir-validity)
20613         (file-notify-test05-dir-validity-remote): Adapt docstring.
20614         (file-notify-test04-file-validity): Let events arrive before
20615         calling final `file-notify-valid-p'.  Do not ignore errors.
20616         (file-notify-test05-dir-validity): Do not manipulate
20617         `temporary-file-directory', it isn't necessary.  Let events arrive
20618         before calling final `file-notify-valid-p'.  Do not ignore errors.
20620 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
20622         Don’t double-encode non-ASCII for mail client
20623         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
20624         Use RFC 6068’s list of unreserved characters.
20625         (mailclient-send-it): When encoding the body as a URL,
20626         first decode it as per Content-Type: and Content-Transfer-Encoding:,
20627         as URLs must use percent-encoded UTF-8 (Bug#21471).
20628         * doc/misc/url.texi (mailto): Update RFC number.
20630 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
20632         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
20634 2015-09-14  Alan Mackenzie  <acm@muc.de>
20636         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
20637         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
20638         `cadr/car'.
20640 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
20642         Clarify documentation of char-table extra slots
20643         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
20644         slot numbers are zero-based.  (Bug#21467)
20646 2015-09-14  Alan Mackenzie  <acm@muc.de>
20648         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
20649         Fixes bug#21449.
20650         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
20651         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
20652         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
20653         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
20654         Insert "\\|\\\\." into regexps which match symbols.
20656 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
20658         Improve the doc string of w32notify-valid-p
20659         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
20660         that removing a watch makes its object invalid.
20662 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
20664         Fix tests for file-notify-valid-p
20665         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
20666         Use delete-directory to delete file-notify--test-tmpfile if it is
20667         a directory.  Likewise for file-notify--test-tmpfile1.
20668         (file-notify-test04-file-validity)
20669         (file-notify-test05-dir-validity): Delete the parent directory of
20670         the test.  Ignore errors when cleaning up after the test.
20672 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
20674         Report file-notify-error in w32notify.c
20675         * src/w32notify.c (report_w32notify_error): New function.
20676         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
20677         errors, instead of calling report_file_error.  (Bug#21432)
20679         Implement w32notify-valid-p
20680         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
20681         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
20682         'identity'.
20684 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
20686         Test file-notify-valid-p
20687         * test/automated/file-notify-tests.el
20688         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
20689         New tests.
20691 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
20693         Fix markup in ELisp manual
20694         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
20695         of the 'alpha' parameter value.  (Bug#21470)
20697 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
20699         Introduce `file-notify-valid-p'
20700         * lisp/filenotify.el (file-notify-valid-p): New defun.
20701         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
20702         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
20703         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
20704         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
20705         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
20706         <file-notify-valid-p>: Add handler.
20707         * lisp/net/tramp.el (tramp-file-name-for-operation):
20708         Add `file-notify-valid-p'.
20709         (tramp-handle-file-notify-valid-p): New defun.
20710         * src/inotify.c (Finotify_valid_p): New defun.
20711         (syms_of_inotify): Declare Sinotify_valid_p.
20713 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
20715         Port Unicode char detection to FreeBSD+svgalib
20716         Problem reported by Ashish SHUKLA in:
20717         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
20718         * configure.ac: Check for struct unipair.unicode instead of for
20719         <linux/kd.h>, since that’s more specific to what the code
20720         actually needs.
20721         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
20723         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
20725 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
20727         Fix vertical cursor motion across overlay strings with newlines
20728         * src/indent.c (Fvertical_motion): Don't leave point in the middle
20729         of an overlay string with newlines, as that will position the
20730         cursor after the string at whatever column is there.  (Bug#21468)
20732 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
20734         Fix tests in file-notify-tests.el
20735         * test/automated/file-notify-tests.el: Remove Tramp declarations.
20736         (file-notify-test00-availability): Print remote command w/o Tramp
20737         internal functions.
20738         (file-notify-test02-events, file-notify-test02-events-remote):
20739         Adapt docstring.
20740         (file-notify-test03-autorevert): Use `format-message' when
20741         inspecting *Messages* buffer.
20743 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
20745         Bind inhibit-modification-hooks rather than a/b-c-f
20746         * lisp/wid-edit.el (widget-editable-list-insert-before)
20747         (widget-editable-list-delete-at):
20748         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
20749         (cperl-font-lock-unfontify-region-function):
20750         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
20751         * lisp/obsolete/longlines.el (longlines-mode):
20752         * lisp/obsolete/fast-lock.el (save-buffer-state):
20753         * lisp/mouse.el (mouse-save-then-kill-delete-region):
20754         * lisp/gnus/message.el (message-hide-headers):
20755         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
20756         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
20757         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
20758         than after/before-change-functions to nil.
20760 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
20762         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
20763         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
20764         the buffers, even if the forced redisplay is interrupted.
20766         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
20768         Merge syntax-propertize--done and parse-sexp-propertize-done
20769         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
20770         (syntax-propertize): Set syntax-propertize--done even if
20771         syntax-propertize-function is nil.  Avoid recursive invocations.
20772         (syntax-propertize-chunks): New var.
20773         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
20774         Simplify.
20775         (parse-sexp-propertize-function): Don't set any more.
20776         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
20777         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
20778         Call Qinternal__syntax_propertize instead of
20779         Vparse_sexp_propertize_function.  Truncate e_property if needed.
20780         (update_syntax_table_forward): Streamline.
20781         (syms_of_syntax): Define Qinternal__syntax_propertize.
20782         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
20784 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
20786         Prefer straight quoting in some text files
20787         Mostly this just changes ` to ' in static text.  Some exceptions:
20788         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
20789         typically does that now.
20790         * admin/quick-install-emacs (TRY, top level):
20791         Use straight quoting in diagnostics.
20792         * src/README: Fix working-directory confusion.
20794         * CONTRIBUTE: Move send-email here from git-workflow.
20796 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
20798         Improve file notifications in Tramp
20799         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
20800         Set proper events to watch for.
20801         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
20802         watched events.
20804 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
20806         Fix NS build with --enable-checking='glyphs'
20807         * src/nsfns.m (unwind_create_frame): Make the preprocessor
20808         conditionals for referencing 'dpyinfo' consistent throughout the
20809         function.  (Bug#21426)
20811 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
20813         Add seq-find
20814         This function is similar to `seq-some' but returns the found element.
20815         In the cases where nil can be the found element, a sentinel optional
20816         argument can be provided to avoid ambiguities.
20817         * lisp/emacs-lisp/seq.el (seq-find): New function.
20818         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
20819         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
20820         seq-find.
20822 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
20824         Document file-notify--test-with-events.
20825         * test/automated/file-notify-tests.el (file-notify--test-with-events):
20826         Add docstring.
20828 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
20830         Report used native library in file-notify-tests.el
20831         * test/automated/file-notify-tests.el
20832         (tramp-get-remote-gvfs-monitor-dir)
20833         (tramp-get-remote-inotifywait): Declare them.
20834         (file-notify-test00-availability): Print used native library.
20836 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
20838         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
20839         (mpc-file-local-copy): Check for absolute path.  Check more config
20840         locations.
20842 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
20844         Improve documentation of categories
20845         * doc/lispref/syntax.texi (Categories): Clarify the example of
20846         using define-category and modify-category-entry.  (Bug#21448)
20848 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
20850         Revert some stray curved quotes I missed earlier
20851         Problem reported by David Kastrup in:
20852         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
20853         * lisp/international/mule-cmds.el (leim-list-header):
20854         Use format-message with an ASCII-only format.
20856         Prefer NUMBERP to spelling it out
20857         * src/editfns.c (styled_format):
20858         * src/frame.h (NUMVAL):
20859         * src/image.c (parse_image_spec):
20860         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
20861         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
20862         * src/process.c (Fsignal_process):
20863         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
20864         * src/xfaces.c (check_lface_attrs):
20865         * src/xselect.c (x_fill_property_data, x_send_client_event):
20866         Use NUMBERP rather than INTEGERP || FLOATP.
20868 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
20870         Improve file-notify-tests
20871         * test/automated/file-notify-tests.el: Use lexical-binding.
20872         (file-notify--test-cleanup): New function.
20873         (file-notify-test00-availability, file-notify-test01-add-watch)
20874         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
20875         (file-notify--test-with-events): New macro.
20876         (file-notify-test02-events): Use it.
20878 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
20880         Add patch-sending instructions to git-workflow
20881         From a suggestion by Mitchel Humpherys in:
20882         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
20883         * admin/notes/git-workflow (Sending patches): New section.
20885         Port to GIFLIB 5.0.6 and later
20886         Problem reported by Mitchel Humpherys in:
20887         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
20888         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
20889         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
20890         (gif_load) [HAVE_GIF]: Use it.
20892 2015-09-10  Glenn Morris  <rgm@gnu.org>
20894         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
20896 2015-09-09  Glenn Morris  <rgm@gnu.org>
20898         * test/automated/file-notify-tests.el (file-notify-test02-events):
20899         Fix recent change.
20901 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20903         Refix movemail GCC pacification
20904         Problem reported by Ken Brown in:
20905         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
20906         * lib-src/movemail.c (main): Fix previous change.
20908 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20910         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
20911         Mark unused vars with underscore.
20913         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
20914         (parse_sexp_propertize): ...from here.
20916         * lisp/filenotify.el: Use lexical-binding
20917         (file-notify-add-watch): Avoid add-to-list.
20919 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
20921         Start checking event types in file-notify tests
20922         * test/automated/file-notify-tests.el (file-notify--test-events):
20923         New variable.
20924         (file-notify--test-event-handler): Append received event to
20925         file-notify--test-events for later analysis.
20926         (file-notify-test02-events): Assert that the expected notifications have
20927         arrived in the expected order.
20929 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20931         Merge from gnulib and texinfo
20932         This incorporates:
20933         2015-08-03 Improve port of stdalign to C++11
20934         * lib/stdalign.in.h: Copy from gnulib.
20935         * doc/misc/texinfo.tex: Copy from texinfo.
20937 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20939         Make syntax.c call syntax-propertize on demand
20940         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
20941         (parse-sexp-propertize-function): Use it.
20942         (syntax-propertize): Disable parse-sexp-propertize-function.
20943         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
20944         New functions.
20945         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
20946         `parse-sexp-propertize-function'.
20947         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
20948         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
20949         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
20950         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
20951         Don't assume `point' is set.
20953 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
20955         Fix indentation of an @example in ELisp manual
20956         * doc/lispref/syntax.texi (Categories): Untabify the example.
20957         (Bug#21448)
20959 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20961         Define internal-char-font even if --without-x
20962         The function is used now even in non-graphical environments.
20963         Problem reported by Glenn Morris in:
20964         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
20965         * src/font.c (Finternal_char_font): Move here ...
20966         * src/fontset.c (Finternal_char_font): ... from here.
20968 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20970         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
20971         Remove warning.
20973 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
20975         Fix display of complex local data types in GDB-MI
20976         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
20977         variable has no value, display "<complex data type>" as a
20978         placeholder, instead of a confusing "nil".  (Bug#21438)
20980 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
20982         Remove redundant redefinition of seq-drop-while from seq.el
20983         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
20985 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
20987         * lisp/emacs-lisp/package.el (package--ensure-init-file):
20988         More robust check for `package-initialize' calls in init file.
20989         This function accepts an optional argument, but calls passing
20990         an argument would not have been detected.
20992 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20994         Port movemail to RHEL 6 with --enable-gcc-warnings
20995         * lib-src/movemail.c (main): Declare local only if needed.
20997         Port recent Linux console changes to RHEL 6
20998         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
21000         Improvements for curved quotes on Linux consule
21001         This should help Emacs work better out-of-the-box on Linux consoles,
21002         which have only limited support for displaying Unicode characters.
21003         Also, undo the recent change that caused text-quoting-style to
21004         affect quote display on terminals, so that the two features are
21005         independent.  See Alan Mackenzie in:
21006         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
21007         Finally, add a style parameter to startup--setup-quote-display,
21008         so that this function can also be invoked after startup, with
21009         different styles depending on user preference at the time.
21010         * configure.ac: Check for linux/kd.h header.
21011         * doc/emacs/display.texi (Text Display): Document quote display.
21012         * doc/lispref/display.texi (Active Display Table):
21013         * etc/NEWS:
21014         * lisp/startup.el (startup--setup-quote-display, command-line):
21015         text-quoting-style no longer affects quote display.
21016         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
21017         * lisp/international/mule-util.el (char-displayable-p):
21018         * lisp/startup.el (startup--setup-quote-display):
21019         On a text terminal supporting glyph codes, use the reported
21020         glyph codes instead of the terminal coding system, as this
21021         is more accurate on the Linux console.
21022         * lisp/startup.el (startup--setup-quote-display):
21023         New optional arg STYLE.
21024         * src/fontset.c (Finternal_char_font):
21025         Report glyph codes for a text terminal, if they are available.
21026         Currently this is supported only for the Linux console.
21027         * src/termhooks.h (struct terminal): New member glyph-code-table.
21028         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
21029         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
21030         (terminal_glyph_code): New function.
21032 2015-09-08  Juri Linkov  <juri@linkov.net>
21034         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
21035         underline.  (Bug#21433)
21037 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
21039         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
21041 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
21043         Fix double-reporting of rename events with inotify
21044         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
21045         of rename events with inotify (bug#21435).
21047 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
21049         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
21050         (tetris-mode-map): Use it.
21052 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
21054         Remove a few simple cases of global redisplay
21055         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
21056         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
21057         rather than returning a "resized_p" boolean.
21058         (redisplay_internal): Adjust call accordingly.
21059         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
21060         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
21061         tracking of this undesirable situation.
21063         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
21064         * src/process.c (status_notify): Only set the update_mode_line on the
21065         relevant buffers rather than setting it globally.
21067 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21069         * lisp/electric.el (electric-quote-post-self-insert-function):
21070         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
21071         (electric-quote-mode): Activate everywhere in message-mode.
21073 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
21075         Go back to grave quoting in source-code docstrings etc.
21076         This reverts almost all my recent changes to use curved quotes
21077         in docstrings and/or strings used for error diagnostics.
21078         There are a few exceptions, e.g., Bahá’í proper names.
21079         * admin/unidata/unidata-gen.el (unidata-gen-table):
21080         * lisp/abbrev.el (expand-region-abbrevs):
21081         * lisp/align.el (align-region):
21082         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
21083         (outlineify-sticky):
21084         * lisp/apropos.el (apropos-library):
21085         * lisp/bookmark.el (bookmark-default-annotation-text):
21086         * lisp/button.el (button-category-symbol, button-put)
21087         (make-text-button):
21088         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
21089         * lisp/calc/calc-embed.el (calc-do-embedded):
21090         * lisp/calc/calc-ext.el (calc-user-function-list):
21091         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
21092         * lisp/calc/calc-help.el (calc-describe-key)
21093         (calc-describe-thing, calc-full-help):
21094         * lisp/calc/calc-lang.el (calc-c-language)
21095         (math-parse-fortran-vector-end, math-parse-tex-sum)
21096         (math-parse-eqn-matrix, math-parse-eqn-prime)
21097         (calc-yacas-language, calc-maxima-language, calc-giac-language)
21098         (math-read-giac-subscr, math-read-math-subscr)
21099         (math-read-big-rec, math-read-big-balance):
21100         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
21101         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
21102         (calc-auto-recompute):
21103         * lisp/calc/calc-prog.el (calc-fix-token-name)
21104         (calc-read-parse-table-part, calc-user-define-invocation)
21105         (math-do-arg-check):
21106         * lisp/calc/calc-store.el (calc-edit-variable):
21107         * lisp/calc/calc-units.el (math-build-units-table-buffer):
21108         * lisp/calc/calc-vec.el (math-read-brackets):
21109         * lisp/calc/calc-yank.el (calc-edit-mode):
21110         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
21111         * lisp/calendar/appt.el (appt-display-message):
21112         * lisp/calendar/diary-lib.el (diary-check-diary-file)
21113         (diary-mail-entries, diary-from-outlook):
21114         * lisp/calendar/icalendar.el (icalendar-export-region)
21115         (icalendar--convert-float-to-ical)
21116         (icalendar--convert-date-to-ical)
21117         (icalendar--convert-ical-to-diary)
21118         (icalendar--convert-recurring-to-diary)
21119         (icalendar--add-diary-entry):
21120         * lisp/calendar/time-date.el (format-seconds):
21121         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
21122         (timeclock-make-hours-explicit, timeclock-log-data):
21123         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
21124         (todo-item-mark, todo-check-format)
21125         (todo-insert-item--next-param, todo-edit-item--next-key)
21126         (todo-mode):
21127         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
21128         * lisp/cedet/mode-local.el (describe-mode-local-overload)
21129         (mode-local-print-binding, mode-local-describe-bindings-2):
21130         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
21131         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
21132         * lisp/cus-start.el (standard):
21133         * lisp/cus-theme.el (describe-theme-1):
21134         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
21135         (custom--sort-vars-1, load-theme):
21136         * lisp/descr-text.el (describe-text-properties-1, describe-char):
21137         * lisp/dired-x.el (dired-do-run-mail):
21138         * lisp/dired.el (dired-log):
21139         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
21140         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
21141         (ad-disable-advice, ad-remove-advice, ad-set-argument)
21142         (ad-set-arguments, ad--defalias-fset, ad-activate)
21143         (ad-deactivate):
21144         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
21145         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
21146         (byte-optimize-while, byte-optimize-apply):
21147         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
21148         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
21149         (byte-compile-log-file, byte-compile-format-warn)
21150         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
21151         (byte-compile-cl-warn)
21152         (byte-compile-warn-about-unresolved-functions)
21153         (byte-compile-file, byte-compile--declare-var)
21154         (byte-compile-file-form-defmumble, byte-compile-form)
21155         (byte-compile-normal-call, byte-compile-check-variable)
21156         (byte-compile-variable-ref, byte-compile-variable-set)
21157         (byte-compile-subr-wrong-args, byte-compile-setq-default)
21158         (byte-compile-negation-optimizer)
21159         (byte-compile-condition-case--old)
21160         (byte-compile-condition-case--new, byte-compile-save-excursion)
21161         (byte-compile-defvar, byte-compile-autoload)
21162         (byte-compile-lambda-form)
21163         (byte-compile-make-variable-buffer-local, display-call-tree)
21164         (batch-byte-compile):
21165         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
21166         * lisp/emacs-lisp/chart.el (chart-space-usage):
21167         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
21168         (check-declare-warn, check-declare-file)
21169         (check-declare-directory):
21170         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
21171         (checkdoc-message-text-engine):
21172         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
21173         (cl--describe-class):
21174         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
21175         (cl--generic-describe, cl-generic-generalizers):
21176         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
21177         (cl-symbol-macrolet):
21178         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
21179         * lisp/emacs-lisp/copyright.el (copyright)
21180         (copyright-update-directory):
21181         * lisp/emacs-lisp/edebug.el (edebug-read-list):
21182         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
21183         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
21184         (eieio-oref):
21185         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
21186         * lisp/emacs-lisp/eieio-speedbar.el:
21187         (eieio-speedbar-child-make-tag-lines)
21188         (eieio-speedbar-child-description):
21189         * lisp/emacs-lisp/eieio.el (defclass, change-class):
21190         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
21191         (elint-init-form, elint-check-defalias-form)
21192         (elint-check-let-form):
21193         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
21194         (ert-results-pop-to-backtrace-for-test-at-point)
21195         (ert-results-pop-to-messages-for-test-at-point)
21196         (ert-results-pop-to-should-forms-for-test-at-point)
21197         (ert-describe-test):
21198         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
21199         (find-function-library):
21200         * lisp/emacs-lisp/generator.el (iter-yield):
21201         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
21202         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
21203         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
21204         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
21205         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
21206         (advice--make, define-advice):
21207         * lisp/emacs-lisp/package-x.el (package-upload-file):
21208         * lisp/emacs-lisp/package.el (package-version-join)
21209         (package-disabled-p, package-activate-1, package-activate)
21210         (package--download-one-archive)
21211         (package--download-and-read-archives)
21212         (package-compute-transaction, package-install-from-archive)
21213         (package-install, package-install-selected-packages)
21214         (package-delete, package-autoremove, describe-package-1)
21215         (package-install-button-action, package-delete-button-action)
21216         (package-menu-hide-package, package-menu--list-to-prompt)
21217         (package-menu--perform-transaction)
21218         (package-menu--find-and-notify-upgrades):
21219         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
21220         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
21221         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
21222         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
21223         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
21224         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
21225         (rx-form):
21226         * lisp/emacs-lisp/smie.el (smie-config-save):
21227         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
21228         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
21229         * lisp/emacs-lisp/testcover.el (testcover-1value):
21230         * lisp/emacs-lisp/timer.el (timer-event-handler):
21231         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
21232         (viper-toggle-search-style, viper-kill-buffer)
21233         (viper-brac-function):
21234         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
21235         * lisp/env.el (setenv):
21236         * lisp/erc/erc-button.el (erc-nick-popup):
21237         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
21238         * lisp/eshell/em-dirs.el (eshell/cd):
21239         * lisp/eshell/em-glob.el (eshell-glob-regexp)
21240         (eshell-glob-entries):
21241         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
21242         * lisp/eshell/esh-opt.el (eshell-show-usage):
21243         * lisp/facemenu.el (facemenu-add-new-face)
21244         (facemenu-add-new-color):
21245         * lisp/faces.el (read-face-name, read-face-font, describe-face)
21246         (x-resolve-font-name):
21247         * lisp/files-x.el (modify-file-local-variable):
21248         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
21249         (set-auto-mode, hack-one-local-variable--obsolete)
21250         (dir-locals-set-directory-class, write-file, basic-save-buffer)
21251         (delete-directory, copy-directory, recover-session)
21252         (recover-session-finish, insert-directory)
21253         (file-modes-char-to-who, file-modes-symbolic-to-number)
21254         (move-file-to-trash):
21255         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
21256         * lisp/find-cmd.el (find-generic, find-to-string):
21257         * lisp/finder.el (finder-commentary):
21258         * lisp/font-lock.el (font-lock-fontify-buffer):
21259         * lisp/format.el (format-write-file, format-find-file)
21260         (format-insert-file):
21261         * lisp/frame.el (get-device-terminal, select-frame-by-name):
21262         * lisp/fringe.el (fringe--check-style):
21263         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
21264         * lisp/help-fns.el (help-fns--key-bindings)
21265         (help-fns--compiler-macro, help-fns--parent-mode)
21266         (help-fns--obsolete, help-fns--interactive-only)
21267         (describe-function-1, describe-variable):
21268         * lisp/help.el (describe-mode)
21269         (describe-minor-mode-from-indicator):
21270         * lisp/image.el (image-type):
21271         * lisp/international/ccl.el (ccl-dump):
21272         * lisp/international/fontset.el (x-must-resolve-font-name):
21273         * lisp/international/mule-cmds.el (prefer-coding-system)
21274         (select-safe-coding-system-interactively)
21275         (select-safe-coding-system, activate-input-method)
21276         (toggle-input-method, describe-current-input-method)
21277         (describe-language-environment):
21278         * lisp/international/mule-conf.el (code-offset):
21279         * lisp/international/mule-diag.el (describe-character-set)
21280         (list-input-methods-1):
21281         * lisp/mail/feedmail.el (feedmail-run-the-queue):
21282         * lisp/mouse.el (minor-mode-menu-from-indicator):
21283         * lisp/mpc.el (mpc-playlist-rename):
21284         * lisp/msb.el (msb--choose-menu):
21285         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
21286         * lisp/net/imap.el (imap-interactive-login):
21287         * lisp/net/mairix.el (mairix-widget-create-query):
21288         * lisp/net/newst-backend.el (newsticker--sentinel-work):
21289         * lisp/net/newst-treeview.el (newsticker--treeview-load):
21290         * lisp/net/rlogin.el (rlogin):
21291         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
21292         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
21293         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
21294         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
21295         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
21296         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
21297         (org-babel-goto-named-result):
21298         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
21299         * lisp/org/ob-ref.el (org-babel-ref-resolve):
21300         * lisp/org/org-agenda.el (org-agenda-prepare):
21301         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
21302         (org-clock-resolve):
21303         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
21304         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
21305         * lisp/org/org-habit.el (org-habit-parse-todo):
21306         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
21307         (org-mouse-context-menu):
21308         * lisp/org/org-table.el (org-table-edit-formulas):
21309         * lisp/org/ox.el (org-export-async-start):
21310         * lisp/proced.el (proced-log):
21311         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
21312         (ada-check-matching-start, ada-goto-matching-start):
21313         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
21314         * lisp/progmodes/ada-xref.el (ada-find-executable):
21315         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
21316         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
21317         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
21318         (flymake-start-syntax-check-process):
21319         * lisp/progmodes/python.el (python-shell-get-process-or-error)
21320         (python-define-auxiliary-skeleton):
21321         * lisp/progmodes/sql.el (sql-comint):
21322         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
21323         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
21324         * lisp/recentf.el (recentf-open-files):
21325         * lisp/replace.el (query-replace-read-from)
21326         (occur-after-change-function, occur-1):
21327         * lisp/scroll-bar.el (scroll-bar-columns):
21328         * lisp/server.el (server-get-auth-key):
21329         * lisp/simple.el (execute-extended-command)
21330         (undo-outer-limit-truncate, list-processes--refresh)
21331         (compose-mail, set-variable, choose-completion-string)
21332         (define-alternatives):
21333         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
21334         (command-line-1):
21335         * lisp/subr.el (noreturn, define-error, add-to-list)
21336         (read-char-choice, version-to-list):
21337         * lisp/term/common-win.el (x-handle-xrm-switch)
21338         (x-handle-name-switch, x-handle-args):
21339         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
21340         * lisp/textmodes/reftex-ref.el (reftex-label):
21341         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
21342         * lisp/textmodes/two-column.el (2C-split):
21343         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
21344         (tutorial--find-changed-keys):
21345         * lisp/type-break.el (type-break-noninteractive-query):
21346         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
21347         (wdired-do-perm-changes):
21348         * lisp/whitespace.el (whitespace-report-region):
21349         Prefer grave quoting in source-code strings used to generate help
21350         and diagnostics.
21351         * lisp/faces.el (face-documentation):
21352         No need to convert quotes, since the result is a docstring.
21353         * lisp/info.el (Info-virtual-index-find-node)
21354         (Info-virtual-index, info-apropos):
21355         Simplify by generating only curved quotes, since info files are
21356         typically that ways nowadays anyway.
21357         * lisp/international/mule-diag.el (list-input-methods):
21358         Don’t assume text quoting style is curved.
21359         * lisp/org/org-bibtex.el (org-bibtex-fields):
21360         Revert my recent changes, going back to the old quoting style.
21362 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21364         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
21365         (package--autoloads-file-name)
21366         (package--activate-autoloads-and-load-path): New function.
21367         (package-activate-1): Delegate autoloading and load-path
21368         configuration to `package--activate-autoloads-and-load-path'.
21369         (package--compile): Before compilation, call
21370         `package--activate-autoloads-and-load-path' instead of
21371         `package-activate-1'.
21373 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21375         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
21377 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
21379         Fix deletion of symlinks to directories on MS-Windows
21380         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
21381         symlink to a directory, try again with 'rmdir'.
21382         (is_symlink): If the argument is a symlink to a directory, set a
21383         bit in the return value to indicate that fact.
21385 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21387         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
21388         When `package-initialize' is called as part of loading the init file,
21389         the user probably doesn't want it to be called again afterwards.
21390         In this situation, `package-initialize' now sets
21391         `package-enable-at-startup' to nil to prevent that.  The user can have
21392         the old behavior by setting this variable to t after the call to
21393         `package-initialize'.  (Bug#21423)
21394         * doc/emacs/package.texi (Package Installation): Document it.
21395         * doc/lispref/package.texi (Packaging Basics): Document it.
21396         * etc/NEWS: Document it.
21398 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
21400         Bump version of ntlm.el to 2.00
21401         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
21402         Add comm keyword.
21404 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
21406         * doc/misc/gnus.texi (Mail Source Specifiers):
21407         Allow :mailbox to be a list.
21409 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
21411         * lisp/progmodes/etags.el (etags-tags-completion-table):
21412         Allow even one non-regular character before the implicit tag name.
21413         Reported at http://emacs.stackexchange.com/questions/15269/.
21415 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
21417         Add support for NTLMv2 authentication
21418         * lisp/net/ntlm.el (ntlm): New customization group.
21419         (ntlm-compatibility-level): New defcustom.
21420         (ntlm-compute-timestamp): New function.
21421         (ntlm-generate-nonce): Likewise.
21422         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
21424 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
21426         * lisp/emacs-lisp/package.el: Rename custom faces.
21427         All of the recently introduced faces, like `package-name-face', have
21428         been renamed to no end in `-face' to comply with the convention
21429         described in (info "(elisp) Defining Faces").
21430         (package-name, package-description)
21431         (package-status-built-in, package-status-external)
21432         (package-status-available, package-status-new)
21433         (package-status-held, package-status-disabled)
21434         (package-status-installed, package-status-dependency)
21435         (package-status-unsigned, package-status-incompat)
21436         (package-status-avail-obso): New faces.
21437         (package-menu--print-info-simple): Use them.
21439 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
21441         mail-source.el: Make the imap mail-source's :mailbox handle a list
21442         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
21443         Allow :mailbox to be  a list.
21445 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
21447         nnimap.el: Handle nil arg to nnimap-request-group
21448         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
21449         This arg isn't always passed in, check it's not nil before making it
21450         into a list.  The active arg will also be nil if the group is new,
21451         check for that.
21453 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
21455         File notifications: Support renaming over directory boundaries
21456         * lisp/filenotify.el (file-notify-handle-event):
21457         (file-notify--pending-event): Adapt docstring.
21458         (file-notify--descriptor, file-notify-callback): Reimplement in
21459         order to support renaming over directory boundaries.
21460         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
21461         * doc/lispref/os.texi (File Notifications): Remove limitation of
21462         file renaming to the same directory.
21464 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
21466         Spelling fix (Bug#21420)
21468 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
21470         Improve the semantic of map-some
21471         Update map-some to return the returned by the predicate, similar to
21472         seq-some.
21473         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
21474           return value of the predicate.
21475         * test/automated/map-tests.el (test-map-some): Update the test to check
21476           for non-nil values only.
21478         Rename map-contains-key-p and map-some-p
21479         Remove the "-p" suffix from both function names.
21480         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
21481           Rename the functions.
21482         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
21483           Update both test functions.
21485         Improve the semantic of seq-some
21486         Update seq-some to return non-nil if the predicate returns non-nil for
21487         any element of the seq, in which case the returned value is the one
21488         returned by the predicate.
21489         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
21490           docstring.
21491         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
21492         * doc/lispref/sequences.texi (Sequence Functions): Update the
21493           documentation for seq-some.
21495         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
21496         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
21497           without the "-p" prefix.
21498         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
21499           the tests accordingly.
21500         * doc/lispref/sequences.texi (Sequence Functions): Update the
21501           documentation for seq.el.
21503 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
21505         text-quoting-style for usage of fn names with ‘’
21506         * lisp/help.el (help--docstring-quote): Don’t assume
21507         text-quoting-style is ‘curve’ when generating usage strings for
21508         functions whose names contain curved quotes.
21510 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
21512         Fix fix for describe-function keybinding confusion
21513         This fixes a bug introduced by the previous patch.
21514         * lisp/help-fns.el (help-fns--signature):
21515         Last arg of help-fns--signature is now a buffer, or nil if a
21516         raw signature is wanted.  All callers changed.
21517         (describe-function-1): Use this to do the right thing with signatures.
21519 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
21521         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
21523         Use PAT rather than UPAT in pcase macros
21524         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
21525         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
21526           than UPAT.
21528 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
21530         Fix describe-function keybinding confusion
21531         * lisp/help-fns.el (describe-function-1): Compute signature
21532         in the original buffer, not in standard-output, so that
21533         substitute-command-keys uses the proper keybindings.
21534         This fixes Bug#21412, introduced in commit
21535         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
21537 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
21539         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
21541 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
21543         Avoid read error messages from 'inotify'
21544         * src/process.c (wait_reading_process_output): Add a
21545         'tls_available' set and manipulate it instead of 'Available' when
21546         checking TLS inputs.  Assign the value to 'Available' only if we
21547         find any TLS data waiting to be read.  This avoids error messages
21548         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
21550 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
21552         Avoid errors in thing-at-point with 2nd argument non-nil
21553         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
21554         sequences.  (Bug#21391)
21556 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
21558         Fix segfaults due to using a stale face ID
21559         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
21560         (display_echo_area_1, redisplay_internal): Call it to avoid
21561         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
21562         faces, which could case a segfault if the frame's face cache was
21563         freed since the last redisplay.  (Bug#21394)
21564         * src/xfaces.c (free_realized_faces):
21565         Call forget_escape_and_glyphless_faces.
21566         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
21568 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21570         Fix minor problems with " in manual
21572 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
21574         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
21575         multi-hop files.
21577 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21579         Support automated ‘make check’ in non-C locale
21580         This lets the builder optionally test Emacs behavior in other locales.
21581         The C locale is still the default for tests.
21582         * test/automated/Makefile.in (TEST_LOCALE): New macro.
21583         (emacs): Use it.
21584         * test/automated/flymake-tests.el (flymake-tests--current-face):
21585         Use C locale for subprocesses so that tests behave as expected.
21586         * test/automated/python-tests.el:
21587         (python-shell-prompt-validate-regexps-1)
21588         (python-shell-prompt-validate-regexps-2)
21589         (python-shell-prompt-validate-regexps-3)
21590         (python-shell-prompt-validate-regexps-4)
21591         (python-shell-prompt-validate-regexps-5)
21592         (python-shell-prompt-validate-regexps-6)
21593         (python-shell-prompt-set-calculated-regexps-1):
21594         Adjust expected output to match locale.
21595         * test/automated/tildify-tests.el (tildify-test--test)
21596         (tildify-space-test--test, tildify-space-undo-test--test):
21597         This test assumes UTF-8 encoding.
21599 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
21601         Fix some more docstring etc. quoting problems
21602         Mostly these fixes prevent the transliteration of apostrophes
21603         that should stay apostrophes.  Also, prefer curved quotes in
21604         Bahá’í proper names, as that’s the preferred Bahá’í style and
21605         these names are chock-full of non-ASCII characters anyway.
21606         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
21607         (eieio-defclass-internal):
21608         * lisp/emacs-lisp/eieio.el (defclass):
21609         * lisp/hi-lock.el (hi-lock-mode):
21610         Don’t transliterate Lisp apostrophes when generating a
21611         doc string or diagnostic.
21612         * lisp/international/mule-diag.el (list-coding-systems-1):
21613         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
21614         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
21615         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
21616         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
21617         Substitute quotes before putting them in the help buffer.
21619 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
21621         Re-add the notion of echo_prompt lost in the translation
21622         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
21623         echo_prompt which contains the actual string.  Update all uses.
21624         * src/keyboard.c (kset_echo_prompt): New function.
21625         (echo_update): Add echo_prompt at the very beginning.
21626         (read_char): Remove workaround for bug#19875, not needed any more.
21627         (read_key_sequence): Set echo_prompt rather than echo_string
21628         (bug#21403).
21629         (mark_kboards): Mark echo_prompt.
21631         Fix disassembly of non-compiled lexical functions (bug#21377)
21632         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
21633         * lisp/emacs-lisp/disass.el: Use lexical-binding.
21634         (disassemble): Recognize `closure's as well.
21635         (disassemble-internal): Use indirect-function and
21636         help-function-arglist, and accept `closure's.
21637         (disassemble-internal): Use interactive-form.
21638         (disassemble-1): Use functionp.
21640         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21641         Don't compose inside verbatim blocks!
21643 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
21645         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
21646         (bug#19441).
21648         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
21650 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
21652         vc-git-mode-line-string: Explicitly re-apply the face
21653         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
21654         the face (bug#21404).
21656 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
21658         Treat initial-scratch-message as a doc string
21659         * doc/emacs/building.texi (Lisp Interaction):
21660         * doc/lispref/os.texi (Startup Summary):
21661         * etc/NEWS: Document this.
21662         * lisp/startup.el (initial-scratch-message):
21663         Look up find-file’s key rather than hardcoding it.
21664         (command-line-1): Substitute the doc string.
21665         This also substitutes the quotes, which will help test display
21666         quoting at startup.
21668         Fix describe-char bug with glyphs on terminals
21669         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
21670         buffers too, so don’t treat them differently from graphic displays.
21671         Without this fix, describe-char would throw an error on a terminal
21672         if given a glyph with a non-default face.
21674         Follow text-quoting-style in display table init
21675         This attempts to fix a problem reported by Alan Mackenzie in:
21676         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
21677         * doc/lispref/display.texi (Active Display Table):
21678         Mention how text-quoting-style affects it.
21679         * doc/lispref/help.texi (Keys in Documentation):
21680         Say how to set text-quoting-style in ~/.emacs.
21681         * etc/NEWS: Document the change.
21682         * lisp/startup.el (startup--setup-quote-display):
21683         Follow user preference if text-quoting-style is set.
21684         (command-line): Setup quote display again if user expresses
21685         a preference in .emacs.
21687 2015-09-02  K. Handa  <handa@gnu.org>
21689         Fix typo
21690         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
21691         -> OTF_positioning_type_components_mask.
21693         Fix previous change
21694         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
21695         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
21697 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
21699         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
21700         Rename from vc-find-file-hook and make interactive.
21701         (vc-find-file-hook): Redefine as obsolete alias.
21703 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21705         Escape ` and ' in doc
21706         Escape apostrophes and grave accents in docstrings if they are
21707         are supposed to stand for themselves and are not quotes.  Remove
21708         apostrophes from docstring examples like ‘'(calendar-nth-named-day
21709         -1 0 10 year)’ that confuse source code with data.  Do some other
21710         minor docstring fixups as well, e.g., insert a missing close quote.
21712 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
21714         Generalize the prefix-command machinery of C-u
21715         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
21716         (prefix-command-preserve-state-hook): New hooks.
21717         (internal-echo-keystrokes-prefix): New function.
21718         (prefix-command--needs-update, prefix-command--last-echo): New vars.
21719         (prefix-command-update, prefix-command-preserve): New functions.
21720         (reset-this-command-lengths): New compatibility definition.
21721         (universal-argument--mode): Call prefix-command-update.
21722         (universal-argument, universal-argument-more, negative-argument)
21723         (digit-argument): Call prefix-command-preserve-state.
21724         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
21725         the "prefix argument" to echo.
21726         (this_command_key_count_reset, before_command_key_count)
21727         (before_command_echo_length): Delete variables.
21728         (echo_add_key): Always add a space.
21729         (echo_char): Remove.
21730         (echo_dash): Don't give up when this_command_key_count is 0, since that
21731         is now the case after a prefix command.
21732         (echo_update): New function, extracted from echo_now.
21733         (echo_now): Use it.
21734         (add_command_key, read_char, record_menu_key): Remove old disabled code.
21735         (command_loop_1): Don't refrain from pushing an undo boundary when
21736         prefix-arg is set.  Remove other prefix-arg special case, now handled
21737         directly in the prefix commands instead.  But call echo_now if there's
21738         a prefix state to echo.
21739         (read_char, record_menu_key): Use echo_update instead of echo_char.
21740         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
21741         (Freset_this_command_lengths): Delete function.
21742         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
21743         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
21744         * lisp/simple.el: Use those new hooks for C-u.
21745         (universal-argument--description): New function.
21746         (prefix-command-echo-keystrokes-functions): Use it.
21747         (universal-argument--preserve): New function.
21748         (prefix-command-preserve-state-hook): Use it.
21749         (command-execute): Call prefix-command-update if needed.
21750         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
21751         (kmacro-step-edit-prefix-index): Delete variables.
21752         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
21753         support for prefix arg commands.
21754         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
21755         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
21756         (cua--shift-control-prefix): Use prefix-command-preserve-state.
21757         Remove now unused arg `arg'.
21758         (cua--prefix-override-handler, cua--prefix-repeat-handler)
21759         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
21760         Update accordingly.
21761         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
21762         any more.
21763         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
21764         if the mark is not set.
21766 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21768         Rework quoting in Emacs Lisp Introduction
21769         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
21770         (if in more detail, type-of-animal in detail, else): Rework the
21771         early example to use " rather than ' so that we don’t burden
21772         complete novices with the low-priority detail of text quoting style.
21773         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
21774         (kill-new function, kill-ring-yank-pointer)
21775         (Complete forward-sentence, Loading Files)
21776         (Code for current-kill, Code for current-kill, yank):
21777         Resurrect the Emacs 22 versions of the code, which uses grave
21778         quoting style in doc strings.
21779         (Complete zap-to-char): Mention how quoting works in doc strings.
21781         Setup quote display only if interactive
21782         * lisp/startup.el (command-line):
21783         Skip call to startup--setup-quote-display if noninteractive.
21784         Without this change, python-shell-prompt-validate-regexps-1
21785         fails in test/automated/python-tests.el when run in an
21786         en_US.utf8 locale on Fedora.
21788 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
21790         Use defalias at the top level
21791         * lisp/gnus/gnus-util.el (gnus-format-message):
21792         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
21793         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
21795 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21797         terminal-init-w32console mimics command-line
21798         Problem reported by Eli Zaretskii.
21799         * lisp/startup.el (startup--setup-quote-display):
21800         New function, refactored from a part of ‘command-line’.
21801         (command-line): Use it.
21802         * lisp/term/w32console.el (terminal-init-w32console):
21803         Use it, so that this function stays consistent with ‘command-line’.
21805         Display replacement quotes with shadow glyphs
21806         * lisp/startup.el (command-line): When displaying ASCII
21807         replacements for curved quotes, use a shadow glyph instead of a
21808         regular one, to avoid ambiguity.
21810 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
21812         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
21814 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21816         Docstring fixes re quotes in C code
21817         Fix some docstring quoting problems, mostly by escaping apostrophe.
21819 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
21821         Some Tramp password fixes
21822         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
21823         of the hops.
21824         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
21825         at the beginning of the command.  Otherwise, it could be
21826         interpreted as password prompt if the remote host echoes the
21827         command.
21828         (tramp-remote-coding-commands): Add "openssl enc -base64".
21830 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
21832         Make vc-git-working-revision always return the commit hash
21833         * lisp/vc/vc-git.el (vc-git-working-revision):
21834         Return the commit hash (bug#21383).
21835         (vc-git--symbolic-ref): New function, extracted from above.
21836         (vc-git-mode-line-string): Use it.
21838 2015-09-01  K. Handa  <handa@gnu.org>
21840         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
21841         * src/ftfont.c (MFLTGlyphFT): New type.
21842         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
21843         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
21844         elements in the array MFLTGlyphString.glyphs.
21846 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21848         Improve comments in elisp-mode.el, elisp-mode-tests.el
21849         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
21851         Delete Emacs 25 test in mode-local.el
21852         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21853         Fix missed an edit in previous commit.
21855         Show all known mode-local overrides in *Help*
21856         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21857         Assume Emacs 25. Add all known mode-local overrides.
21859 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
21861         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
21862         Ensure that the article where the search word is found is displayed
21863         and pointed to in the summary buffer.
21865 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
21867         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
21868         When the region is active, but is empty (length 0), act as though
21869         the region was not active; that is, put a comment at the end of
21870         the line.  (Bug#21119)
21872 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
21874         Port tls.el to older Emacs
21875         * lisp/net/tls.el (tls-format-message):
21876         Alias to format-message, or format if not available.
21877         (open-tls-stream): Use it.
21879 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
21881         hideif.el: Recognize .h++ as C++ header
21882         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
21884         isearch: Document character folding mode
21885         * lisp/isearch.el (isearch-forward):
21886         Mention `isearch-toggle-character-fold' in doc string.
21888 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21890         Quoting fixes in ERC and Eshell
21891         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
21892         * lisp/erc/erc-backend.el (define-erc-response-handler):
21893         * lisp/erc/erc-fill.el (erc-fill-static-center):
21894         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
21895         * lisp/eshell/em-glob.el (eshell-glob-entries):
21896         * lisp/eshell/em-hist.el (eshell-save-some-history):
21897         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
21898         (eshell-shuffle-files):
21899         * lisp/eshell/esh-cmd.el (eshell-do-eval):
21900         * lisp/eshell/esh-proc.el (eshell-process-interact)
21901         (eshell-query-kill-processes):
21902         Respect ‘text-quoting-style’ in diagnostics and doc strings.
21904         Quoting fixes in Gnus
21905         * lisp/gnus/gnus-agent.el:
21906         (gnus-agent-possibly-synchronize-flags-server):
21907         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
21908         * lisp/gnus/gnus-eform.el (gnus-edit-form):
21909         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
21910         (gnus-group-nnimap-edit-acl):
21911         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
21912         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
21913         * lisp/gnus/message.el (message-strip-subject-encoded-words)
21914         (message-check-recipients, message-send-form-letter):
21915         * lisp/gnus/mm-decode.el (mm-display-part):
21916         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
21917         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
21918         (mml-smime-get-ldap-cert):
21919         * lisp/gnus/spam-report.el (spam-report-process-queue):
21920         Respect ‘text-quoting-style’ in diagnostics.
21921         * lisp/gnus/gnus-art.el (article-display-face)
21922         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
21923         Use straight quoting in email.
21924         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
21925         Escape apostrophes in doc strings.
21927         Quoting fixes in lisp mail, mh-e, net, url
21928         * lisp/mail/emacsbug.el (report-emacs-bug)
21929         (report-emacs-bug-hook): Use straight quotes in outgoing email,
21930         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
21931         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
21932         * lisp/mail/rmailout.el (rmail-output-read-file-name):
21933         * lisp/net/imap.el (imap-interactive-login):
21934         * lisp/net/tls.el (open-tls-stream):
21935         * lisp/url/url-auth.el (url-register-auth-scheme):
21936         Respect ‘text-quoting-style’ in diagnostics.
21937         * lisp/mh-e/mh-e.el (mh-sortm-args):
21938         Quote docstring example using text quotes, not as a Lisp quote.
21940 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
21942         Fix some byte-compiler warnings in EDE
21943         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
21944         existing autoloader list, rather than add to it.
21945         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
21946         argument to eieio class constructor.
21947         (ede-show-supported-projects): New.
21948         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
21949         with (oref ... name).
21950         (ede-auto-load-project): Use slot name, not initarg key.
21951         * lisp/cedet/ede/generic.el (ede-generic-load)
21952         (ede-generic-find-matching-target): Use slot name, not initarg key.
21953         (ede-find-target): Use oref-default on class name.
21954         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
21955         class constructor.
21956         (ede-enable-generic-projects): Make project type names unique.
21958 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
21960         Fix directory accessibility tests for w32 network volumes
21961         * src/w32.c (faccessat): Don't fail with network volumes without a
21962         share.
21963         (w32_accessible_directory_p): Handle network volumes without a
21964         share.
21966         Fix handling long file names in readdir on MS-Windows
21967         * src/w32.c (sys_readdir): Append "\*" to the directory after
21968         converting it to UTF-16/ANSI, not before, to avoid overflowing the
21969         260-character limit on file names in filename_to_utf16/ansi.
21971         Make file-accessible-directory-p reliable on MS-Windows
21972         * src/w32.c (w32_accessible_directory_p): New function.
21973         * src/w32.h (w32_accessible_directory_p): Add prototype.
21974         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
21975         w32_accessible_directory_p to test a directory for accessibility
21976         by the current user.  (Bug#21346)
21977         (Ffile_accessible_directory_p): Remove the w32 specific caveat
21978         from the doc string.
21980 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
21982         Don't call do_pending_window_change in signal handlers (Bug#21380)
21983         * src/gtkutil.c (xg_frame_resized):
21984         * src/xterm.c (x_set_window_size):
21985         * src/w32term.c (x_set_window_size): Don't call
21986         do_pending_window_change.
21988 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21990         Quoting fixes in lisp/org
21991         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
21992         (org-tags-view):
21993         * lisp/org/org-capture.el (org-capture-mode)
21994         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
21995         (org-ctags-ask-append-topic):
21996         * lisp/org/org.el (org-time-string-to-time)
21997         (org-time-string-to-absolute):
21998         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
21999         (org-ctags-ask-append-topic):
22000         * lisp/org/org.el (org-time-string-to-time)
22001         (org-time-string-to-absolute):
22002         Respect ‘text-quoting-style’ in diagnostics.
22003         * lisp/org/org-agenda.el (org-agenda-custom-commands)
22004         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
22005         * lisp/org/org-capture.el (org-capture-fill-template):
22006         Avoid contraction in output file that might be ASCII.
22007         * lisp/org/org-compat.el (format-message):
22008         Define if not already defined, for backward compatibility.
22009         * lisp/org/org-src.el (org-edit-src-save):
22010         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
22011         Escape apostrophes in diagnostics.
22013         Treat “instead” strings as docstrings
22014         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
22015         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
22016         Substitute quotes in instead strings.
22018 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
22020         Better documentation of seq-let
22021         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
22022         documentation of seq-let.
22024 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
22026         * lisp/international/ccl.el: Fix quoting.
22028         Quoting fixes in lisp/international and lisp/leim
22029         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
22030         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
22031         * lisp/international/mule-cmds.el:
22032         (select-safe-coding-system-interactively, leim-list-file-name):
22033         * lisp/international/quail.el (quail-use-package, quail-help):
22034         * lisp/international/titdic-cnv.el (tit-process-header)
22035         (miscdic-convert):
22036         Respect text quoting style in doc strings and diagnostics.
22037         * lisp/international/quail.el (lisp/international/quail.el):
22038         * lisp/leim/quail/ethiopic.el ("ethiopic"):
22039         Escape apostrophes in doc strings.
22041         Make ‘text-quoting-style’ a plain defvar
22042         It doesn’t need customization, as it’s likely useful only by experts.
22043         Suggested by Stefan Monnier in:
22044         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
22045         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
22047         Quoting fixes in lisp/textmodes
22048         * lisp/textmodes/bibtex.el (bibtex-validate)
22049         (bibtex-validate-globally, bibtex-search-entries):
22050         * lisp/textmodes/ispell.el (ispell-command-loop):
22051         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
22052         * lisp/textmodes/texinfmt.el (texinfmt-version)
22053         (texinfo-format-region, texinfo-format-buffer-1):
22054         * lisp/textmodes/two-column.el (2C-split):
22055         Respect text quoting style in doc strings and diagnostics.
22056         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
22057         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
22058         Escape apostrophes in doc strings.
22060         Documentation fixes re quotes
22061         Prefer curved quotes in examples if users will typically see
22062         curved quotes when the examples run.
22063         Mention format-message when appropriate.
22064         Don’t use @code in examples.
22065         Quote an apostrophe with @kbd.
22067         Quoting fixes in lisp/progmodes
22068         * lisp/progmodes/cc-engine.el (c-bos-report-error):
22069         * lisp/progmodes/cpp.el (cpp-edit-reset):
22070         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
22071         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
22072         (etags-tags-apropos, list-tags, tags-apropos):
22073         * lisp/progmodes/executable.el (executable-set-magic):
22074         * lisp/progmodes/octave.el (octave-sync-function-file-names)
22075         (octave-help, octave-find-definition-default-filename)
22076         (octave-find-definition):
22077         Respect text quoting style in doc strings and diagnostics.
22078         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
22079         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
22080         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
22081         Escape apostrophes in doc strings.
22082         * lisp/progmodes/cmacexp.el (c-macro-expansion):
22083         Use straight quoting in ASCII comment.
22084         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
22085         (idlwave-pad-keyword):
22086         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
22087         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
22088         (vhdl-electric-semicolon, vhdl-electric-comma)
22089         (vhdl-electric-period, vhdl-electric-equal):
22090         Use directed quotes in diagnostics and doc strings.
22092 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
22094         Minor documentation and NEWS tweak
22095         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
22096         Add an index entry.
22097         * etc/NEWS: Fix a typo in character-fold-to-regexp.
22099 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
22101         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
22102         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
22103         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
22104         Adapt test.
22106 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
22108         Text quoting fixes in cedet, emulation, emacs-lisp
22109         * lisp/cedet/ede.el (ede-check-project-directory):
22110         * lisp/cedet/semantic/analyze/debug.el
22111         (semantic-analyzer-debug-insert-include-summary):
22112         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
22113         * lisp/cedet/semantic/decorate/include.el
22114         (semantic-decoration-unknown-include-describe)
22115         (semantic-decoration-all-include-summary):
22116         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
22117         * lisp/emulation/edt.el (edt-load-keys):
22118         * lisp/emulation/viper-cmd.el
22119         (viper-display-current-destructive-command)
22120         (viper-query-replace, viper-brac-function):
22121         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
22122         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
22123         Respect text quoting style in doc string or diagnostic.
22124         * lisp/cedet/mode-local.el (describe-mode-local-overload):
22125         Use format-message to avoid overtranslating quotes.
22126         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
22127         Escape an apostrophe in a docstring.
22128         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
22130 2015-08-29  Daniel Colascione  <dancol@dancol.org>
22132         Fix which-func for curly quotes: look for symbol, not message
22133         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
22134         imenu-unavailable error symbol instead of trying to match message
22135         exactly.
22136         * lisp/imenu.el (imenu-unavailable): New error.
22137         (imenu-unavailable-error): New function.
22139 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
22141         Fix Python tests on MS-Windows
22142         * test/automated/python-tests.el
22143         (python-shell-calculate-command-1): Run python-shell-interpreter
22144         through shell-quote-argument before comparing with what
22145         python-shell-calculate-command returns.
22146         (python-shell-calculate-pythonpath-1)
22147         (python-shell-calculate-pythonpath-2)
22148         (python-shell-calculate-process-environment-2): Use path-separator
22149         instead of a literal ':'.
22150         (python-shell-calculate-exec-path-2)
22151         (python-shell-calculate-exec-path-3)
22152         (python-shell-calculate-exec-path-4)
22153         (python-shell-with-environment-1)
22154         (python-shell-with-environment-2): Run "/env/bin" through
22155         expand-file-name before comparing with exec-path.  (Bug#21375)
22157 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22159         Use Core Text types/functions/variables/enumerators directly
22160         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
22161         (CharacterCollection): Remove typedefs.  All uses replaced with
22162         definitions.
22163         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
22164         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
22165         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
22166         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
22167         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
22168         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
22169         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
22170         definitions.
22171         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
22172         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
22173         (MAC_FONT_FORMAT_BITMAP)
22174         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
22175         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
22176         All uses replaced with definitions.
22177         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
22178         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
22179         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
22180         Add compatibility enumerators for older versions.
22181         (mac_font_descriptor_create_with_attributes)
22182         (mac_font_descriptor_create_matching_font_descriptors)
22183         (mac_font_descriptor_create_matching_font_descriptor)
22184         (mac_font_descriptor_copy_attribute)
22185         (mac_font_descriptor_supports_languages)
22186         (mac_font_create_with_name, mac_font_get_size)
22187         (mac_font_copy_family_name, mac_font_copy_character_set)
22188         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
22189         (mac_font_get_descent, mac_font_get_leading)
22190         (mac_font_get_underline_position)
22191         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
22192         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
22193         replaced with definitions.
22194         (mac_font_create_preferred_family_for_attributes)
22195         (mac_font_get_advance_width_for_glyph)
22196         (mac_font_get_bounding_rect_for_glyph)
22197         (mac_font_create_available_families, mac_font_shape):
22198         Remove macros for renamed functions.
22199         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
22200         * src/macfont.m (mac_font_descriptor_supports_languages):
22201         Rename from mac_ctfont_descriptor_supports_languages.
22202         (mac_font_create_preferred_family_for_attributes): Rename from
22203         mac_ctfont_create_preferred_family_for_attributes.
22204         (mac_font_get_advance_width_for_glyph): Rename from
22205         mac_ctfont_get_advance_width_for_glyph.
22206         Use kCTFontOrientationDefault also for older versions.
22207         (mac_font_get_bounding_rect_for_glyph): Rename from
22208         mac_ctfont_get_bounding_rect_for_glyph.
22209         Use kCTFontOrientationDefault also for older versions.
22210         (mac_font_create_available_families): Rename from
22211         mac_ctfont_create_available_families.
22212         (mac_font_equal_in_postscript_name): Rename from
22213         mac_ctfont_equal_in_postscript_name.  All uses changed.
22214         (mac_font_create_line_with_string_and_font): Rename from
22215         mac_ctfont_create_line_with_string_and_font.  All uses changed.
22216         (mac_font_shape): Rename from mac_ctfont_shape.
22217         (mac_font_family_compare): Remove unused declaration.
22219 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
22221         Fix minor text quoting in calc, calendar, vc
22222         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
22223         * lisp/calc/calc-help.el (calc-j-prefix-help):
22224         * lisp/calc/calc-misc.el (calc-help):
22225         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
22226         Escape an apostrophe in a docstring.
22227         * lisp/calc/calc-forms.el (calc-hms-notation):
22228         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
22229         Escape an apostrophe in a diagnostic.
22230         * lisp/calc/calc-misc.el (calc-help):
22231         * lisp/calendar/diary-lib.el (diary-include-files):
22232         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
22233         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
22234         * lisp/vc/ediff-diff.el (ediff-same-contents):
22235         * lisp/vc/ediff-merg.el (ediff-re-merge):
22236         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
22237         * lisp/vc/ediff-util.el (ediff-test-save-region)
22238         (ediff-status-info):
22239         * lisp/vc/ediff.el (ediff-merge-revisions)
22240         (ediff-merge-revisions-with-ancestor):
22241         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
22242         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
22243         Respect text quoting style in doc string or diagnostic.
22244         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
22245         * lisp/vc/add-log.el (change-log-goto-source):
22246         Avoid double-formatting.
22247         * lisp/vc/ediff-init.el (format-message):
22248         New backward-compatibility alias.
22250 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
22252         Fix minor text quoting problems in lisp top level
22253         * lisp/apropos.el (apropos-describe-plist):
22254         * lisp/cus-theme.el (customize-themes):
22255         * lisp/dired.el (dired-log):
22256         * lisp/help-fns.el (describe-variable):
22257         * lisp/hexl.el (hexl-insert-multibyte-char):
22258         * lisp/info.el (Info-finder-find-node):
22259         * lisp/json.el (json-read-string):
22260         * lisp/novice.el (disabled-command-function)
22261         (disabled-command-function):
22262         * lisp/startup.el (normal-mouse-startup-screen):
22263         * lisp/woman.el (WoMan-log, WoMan-warn):
22264         Respect text quoting style in doc string or diagnostic.
22265         * lisp/replace.el (replace-character-fold):
22266         * src/syntax.c (Fmodify_syntax_entry):
22267         Escape an apostrophe in a docstring.
22268         * lisp/tempo.el (tempo-define-template):
22269         Remove confusing apostrophe from docstring.
22270         * lisp/whitespace.el (whitespace-mark-x):
22271         Use directed quotes in docstring.
22273 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
22275         Fix indentation rule in css-mode
22276         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
22277         brackets in presence of pseudo-selectors.  (Bug#21328)
22279 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
22281         Fix a bug in recording a macro while flyspell-mode is active
22282         * lisp/subr.el (sit-for): Don't call read-event when recording a
22283         macro.  (Bug#21329)
22285 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
22287         Tweak startup screen quoting
22288         * lisp/startup.el (normal-splash-screen): Use standard
22289         "M-" abbrevation rather than a confusingly-different one.
22290         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
22292 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
22294         Add test case for ‘format’ bug and refactor
22295         * src/editfns.c (styled_format): Refactor internally, mostly by
22296         moving declarations closer to uses.  This should not affect behavior.
22297         * test/automated/textprop-tests.el (textprop-tests-format): New test.
22299         Fix ‘format’ bug with property offsets
22300         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
22301         bug in calculating string property offsets (Bug#21351).
22303         Use straight quotes in lib-src diagnostics
22304         These auxiliary programs can’t use Emacs’s text-quoting-style,
22305         and it’s too much trouble to redo that mechanism by hand.
22306         So just use straight quotes for now.
22307         * lib-src/ebrowse.c (main):
22308         * lib-src/emacsclient.c (decode_options, main):
22309         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
22310         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
22311         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
22312         (none_help, print_language_names, print_help, add_regex)
22313         (suggest_asking_for_help):
22314         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
22315         Use straight quotes in diagnostics.
22317         ‘text-quoting-style’ fixes for admin
22318         * admin/admin.el (cusver-scan, cusver-check):
22319         * admin/authors.el (authors-canonical-file-name):
22320         * admin/bzrmerge.el (bzrmerge-missing):
22321         Respect ‘text-quoting-style’ in diagnostics.
22323 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22325         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
22326         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
22327         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
22328         * doc/lispref/internals.texi (Writing Emacs Primitives):
22329         * etc/NEWS:
22330         Document the change.
22331         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
22332         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
22333         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
22334         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
22335         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
22336         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
22337         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
22338         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
22339         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
22340         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
22341         Remove.  All uses removed.  The code now assumes
22342         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
22343         * src/bytecode.c (relocate_byte_stack):
22344         Rename from unmark_byte_stack, since it now only relocates.
22345         All callers changed.
22346         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
22347         with GCPROs removed.
22348         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
22349         * test/automated/finalizer-tests.el (finalizer-basic)
22350         (finalizer-circular-reference, finalizer-cross-reference)
22351         (finalizer-error):
22352         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
22353         Remove tests, as they depend on gc-precise.
22355 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
22357         Improve seq-concatenate for new sequence types
22358         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
22359         ensure that concatenation happens on sequences only.  This makes it
22360         possible to use `seq-concatenate' for new types of seqs.
22361         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
22362         New function used in `seq-concatenate'.
22363         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
22364         for seq-into-sequence.
22366 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
22368         Add mode local overrides to xref-find-definitions
22369         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
22370         (xref-mode-local-overload): New; add mode local overrides to
22371         xref-find-definitions.
22372         * test/automated/elisp-mode-tests.el: Add mode local override tests.
22373         (xref-elisp-test-run): Handle indented defuns.
22374         (xref-elisp-generic-*): Improve doc strings.
22375         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
22376         (elisp--xref-find-definitions): Use it.
22378         Add mode local overrides to describe-function
22379         * lisp/cedet/mode-local.el (describe-mode-local-overload):
22380         New; add mode local overrides to describe-function.
22381         * etc/NEWS: Document change.
22383 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22385         Prefer straight quoting in some etc text files
22386         These files are plain text and might be used by non-Emacs apps.
22387         They’re mostly ASCII, so just use straight quotes.
22389         Fix quoting in ‘message_with_string’
22390         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
22391         should work now.
22392         * src/xdisp.c (message_to_stderr): New function, refactored from
22393         part of ‘message3_nolog’.
22394         (message3_nolog): Use it.
22395         (message_with_string): Use it.  Don’t mishandle NUL bytes when
22396         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
22397         Use ‘format-message’, not ‘format’, so that quotes are translated.
22399 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
22401         Mention false positives of file-accessible-directory on w32
22402         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
22403         (Bug#21346)
22405 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22407         Treat error strings as help
22408         * src/print.c (print_error_message): Translate quotes and command
22409         keys in errmsg so that users see, e.g., "Symbol’s value as
22410         variable is void: foo" when text-quoting-style is curved.
22412 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
22414         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
22416 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22418         Top-level elisp files respect ‘text-quoting-style’
22419         In top-level elisp files, use format-message in diagnostic formats,
22420         so that they follow user preference as per ‘text-quoting-style’
22421         rather than being hard-coded to quote `like this'.
22422         * lisp/allout.el (allout-get-configvar-values):
22423         * lisp/apropos.el (apropos-symbols-internal):
22424         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
22425         (dired-do-create-files-regexp, dired-create-files-non-directory):
22426         * lisp/dired-x.el (dired-do-run-mail):
22427         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
22428         * lisp/disp-table.el (standard-display-european):
22429         * lisp/find-dired.el (find-dired):
22430         * lisp/forms.el (forms-mode):
22431         * lisp/ido.el (ido-buffer-internal):
22432         * lisp/info.el (Info-index-next):
22433         * lisp/outline.el (outline-invent-heading):
22434         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
22435         * lisp/proced.el (proced-log):
22436         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
22437         * lisp/recentf.el (recentf-open-files, recentf-save-list):
22438         * lisp/savehist.el (savehist-save):
22439         * lisp/server.el (server-ensure-safe-dir):
22440         * lisp/ses.el (ses-rename-cell):
22441         * lisp/simple.el (list-processes--refresh):
22442         * lisp/startup.el (command-line):
22443         * lisp/strokes.el (strokes-unset-last-stroke)
22444         (strokes-execute-stroke):
22445         Use format-message so that quotes are restyled.
22446         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
22447         Don’t quote ‘raised’.
22448         * lisp/descr-text.el (describe-char):
22449         * lisp/dirtrack.el (dirtrack-debug-message):
22450         * lisp/hexl.el (hexl-insert-multibyte-char):
22451         Apply substitute-command-keys to help string.
22452         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
22453         (wdired-do-perm-changes):
22454         Let dired-log do the formatting.
22456 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22458         Go back to grave quoting in Tramp
22459         * lisp/net/tramp-adb.el:
22460         * lisp/net/tramp-cache.el:
22461         * lisp/net/tramp-compat.el:
22462         * lisp/net/tramp-gvfs.el:
22463         * lisp/net/tramp-gw.el:
22464         * lisp/net/tramp-sh.el:
22465         * lisp/net/tramp-smb.el:
22466         * lisp/net/tramp.el:
22467         Stick with grave quoting in diagnostics strings.  This is more
22468         portable to older Emacs, desirable for Tramp.
22469         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
22470         for diagnostic that needs requoting.
22471         * lisp/net/tramp-compat.el (format-message):
22472         Fall back on simple ‘format’, since that’s good enough now.
22474         Go back to grave quoting in Gnus
22475         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
22476         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
22477         (gnus-agent-fetch-headers):
22478         * lisp/gnus/gnus-int.el (gnus-start-news-server):
22479         * lisp/gnus/gnus-registry.el:
22480         (gnus-registry--split-fancy-with-parent-internal)
22481         (gnus-registry-post-process-groups):
22482         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
22483         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
22484         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
22485         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
22486         * lisp/gnus/spam.el (spam-check-blackholes):
22487         Stick with grave quoting in diagnostics strings.  This is more
22488         portable to older Emacs, desirable for Gnus.
22490         Fix customization of text-quoting-style
22491         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
22492         * lisp/wid-edit.el (widget-docstring):
22493         Get raw docstring here since it’s cooked later and should not be
22494         cooked twice.
22495         * lisp/cus-edit.el (custom-group-value-create):
22496         Cook the docstring before inserting it.
22497         * lisp/cus-start.el (text-quoting-style): Quote the customization
22498         docstrings according to the new rules.  Give curved examples.
22500         format-message now curves ` and '
22501         That way, the caller doesn’t have to use curved quotes to
22502         get diagnostics that match the text-quoting-style preferences.
22503         Suggested by Dmitry Gutov in:
22504         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
22505         This means we no longer need %qs, so remove that format.
22506         While we’re at it, fix an unlikely bug and lessen the pressure
22507         on the garbage collector by processing the string once rather
22508         than twice in the usual case.
22509         * doc/lispref/strings.texi (Formatting Strings):
22510         * etc/NEWS: Document this.
22511         * lisp/subr.el (format-message): Remove; now done in C.
22512         * src/callint.c (Fcall_interactively):
22513         * src/editfns.c (Fmessage, Fmessage_box):
22514         Use Fformat_message instead of Finternal__text_restyle
22515         followed by Fformat.
22516         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
22517         uLSQM and uRSQM.
22518         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
22519         when pure ASCII now suffices.  Fix unlikely bug when parsing
22520         unibyte string containing non-ASCII bytes.  Use inline code
22521         rather than memcpy, as it’s a tiny number of bytes.
22522         (Finternal__text_restyle): Remove; no longer used.
22523         (syms_of_doc): Don’t declare it.
22524         * src/editfns.c (Fformat): Rewrite in terms of new function
22525         ‘styled_format’.
22526         (Fformat_message): New function, moved here from subr.el.
22527         (styled_format): New function, with the old guts of Fformat,
22528         except it now optionally transliterates quotes, and it transliterates
22529         traditional grave accent and apostrophe quoting as well.
22530         Remove recently-added q flag; no longer needed or used.
22531         (syms_of_editfns): Define format-message.
22532         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
22533         Remove; no longer need to be global symbols.
22534         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
22535         so that callers can use `%s'.
22536         * src/image.c (image_size_error, xbm_load_image, xbm_load)
22537         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
22538         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
22539         (svg_load_image, gs_load, x_kill_gs_process):
22540         * src/lread.c (load_warn_old_style_backquotes):
22541         * src/xfaces.c (load_pixmap):
22542         * src/xselect.c (x_clipboard_manager_error_1):
22543         Use `%s' instead of %qs in formats.
22545 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
22547         Minor fixes in doc/emacs/search.texi
22548         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
22549         (Special Isearch): Use @w{} to generate several consecutive spaces
22550         with Texinfo 6.  (Bug#21345)
22552 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
22554         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
22555         (tramp-awk-coding-test): New defconsts.
22556         (tramp-remote-coding-commands): Use them.
22557         (tramp-find-inline-encoding): Check for Perl only if necessary.
22559 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
22561         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
22562         index entries for the special form `quote'.
22564 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22566         Spelling fixes
22568         Gnus format-message typo fix
22569         * lisp/gnus/gnus-util.el (gnus-format-message):
22570         Fix typo when running in older Emacs.
22572         Prefer directed to neutral quotes in docstings and diagnostics.
22573         In docstrings, escape apostrophes that would otherwise be translated
22574         to curved quotes using the newer, simpler rules.
22575         * admin/unidata/unidata-gen.el (unidata-gen-table):
22576         * lisp/align.el (align-region):
22577         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
22578         * lisp/bookmark.el (bookmark-default-annotation-text):
22579         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
22580         * lisp/calc/calc-lang.el (math-read-giac-subscr)
22581         (math-read-math-subscr):
22582         * lisp/calc/calc-misc.el (report-calc-bug):
22583         * lisp/calc/calc-prog.el (calc-fix-token-name)
22584         (calc-read-parse-table-part):
22585         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
22586         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
22587         * lisp/dabbrev.el (dabbrev-expand):
22588         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
22589         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
22590         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
22591         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
22592         * lisp/erc/erc-button.el (erc-nick-popup):
22593         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
22594         * lisp/eshell/em-dirs.el (eshell/cd):
22595         * lisp/eshell/em-glob.el (eshell-glob-regexp):
22596         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
22597         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
22598         * lisp/eshell/esh-opt.el (eshell-show-usage):
22599         * lisp/files-x.el (modify-file-local-variable):
22600         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
22601         (filesets-update-pre010505):
22602         * lisp/find-cmd.el (find-generic, find-to-string):
22603         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
22604         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
22605         (gnus-agent-fetch-headers):
22606         * lisp/gnus/gnus-int.el (gnus-start-news-server):
22607         * lisp/gnus/gnus-registry.el:
22608         (gnus-registry--split-fancy-with-parent-internal):
22609         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
22610         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
22611         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
22612         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
22613         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
22614         * lisp/gnus/spam.el (spam-check-blackholes):
22615         * lisp/mail/feedmail.el (feedmail-run-the-queue):
22616         * lisp/mpc.el (mpc-playlist-rename):
22617         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
22618         * lisp/net/mairix.el (mairix-widget-create-query):
22619         * lisp/net/tramp-cache.el:
22620         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
22621         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
22622         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
22623         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
22624         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
22625         (org-babel-goto-named-result):
22626         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
22627         * lisp/org/ob-ref.el (org-babel-ref-resolve):
22628         * lisp/org/org-agenda.el (org-agenda-prepare):
22629         * lisp/org/org-bibtex.el (org-bibtex-fields):
22630         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
22631         (org-clock-resolve):
22632         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
22633         * lisp/org/org-habit.el (org-habit-parse-todo):
22634         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
22635         (org-mouse-context-menu):
22636         * lisp/org/org-table.el (org-table-edit-formulas):
22637         * lisp/org/ox.el (org-export-async-start):
22638         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
22639         (dun-rooms, dun-endgame-questions):
22640         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
22641         * lisp/progmodes/ada-xref.el (ada-find-executable):
22642         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
22643         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
22644         (flymake-start-syntax-check-process):
22645         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
22646         * lisp/progmodes/sql.el (sql-comint):
22647         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
22648         * lisp/server.el (server-get-auth-key):
22649         * lisp/subr.el (version-to-list):
22650         * lisp/textmodes/reftex-ref.el (reftex-label):
22651         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
22652         * lisp/vc/ediff-diff.el (ediff-same-contents):
22653         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
22654         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
22655         Use directed rather than neutral quotes in diagnostics.
22657         Treat ' like ’ even when not matching `
22658         This is simpler and easier to explain, and should encourage better
22659         typography.  Do this in Electric Quote mode and when translating
22660         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
22661         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
22662         * doc/emacs/text.texi (Quotation Marks):
22663         * doc/lispref/help.texi (Keys in Documentation):
22664         * etc/NEWS:
22665         Document this.
22666         * lisp/electric.el (electric-quote-post-self-insert-function):
22667         * src/doc.c (Fsubstitute_command_keys):
22668         Always treat ' like ’ even when not matched by an open quote.
22670 2015-08-25  Glenn Morris  <rgm@gnu.org>
22672         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
22673         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
22675 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22677         * src/macfont.m (macfont_create_family_with_symbol):
22678         Accept localized names.
22680 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22682         Tramp diagnostics as per ‘text-quoting-style’
22683         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
22684         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
22685         (tramp-adb-handle-delete-directory)
22686         (tramp-adb-handle-delete-file)
22687         (tramp-adb-handle-file-local-copy)
22688         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
22689         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
22690         (tramp-adb-maybe-open-connection):
22691         * lisp/net/tramp-cache.el:
22692         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
22693         (tramp-compat-octal-to-decimal)
22694         (tramp-compat-coding-system-change-eol-conversion):
22695         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
22696         (tramp-gvfs-do-copy-or-rename-file)
22697         (tramp-gvfs-handle-delete-directory)
22698         (tramp-gvfs-handle-delete-file)
22699         (tramp-gvfs-handle-expand-file-name)
22700         (tramp-gvfs-handle-file-local-copy)
22701         (tramp-gvfs-handle-file-notify-add-watch)
22702         (tramp-gvfs-handle-make-directory)
22703         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
22704         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
22705         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
22706         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
22707         (tramp-sh-handle-set-visited-file-modtime)
22708         (tramp-sh-handle-set-file-modes)
22709         (tramp-sh-handle-file-name-all-completions)
22710         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
22711         (tramp-do-copy-or-rename-file-directly)
22712         (tramp-do-copy-or-rename-file-out-of-band)
22713         (tramp-sh-handle-make-directory)
22714         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
22715         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
22716         (tramp-sh-handle-start-file-process)
22717         (tramp-sh-handle-file-local-copy)
22718         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
22719         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
22720         (tramp-find-file-exists-command, tramp-open-shell)
22721         (tramp-find-shell)
22722         (tramp-open-connection-setup-interactive-shell)
22723         (tramp-find-inline-encoding, tramp-find-inline-compress)
22724         (tramp-compute-multi-hops, tramp-maybe-open-connection)
22725         (tramp-wait-for-output, tramp-send-command-and-check)
22726         (tramp-send-command-and-read, tramp-get-remote-path)
22727         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
22728         (tramp-get-ls-command-with-quoting-style)
22729         (tramp-get-test-command, tramp-get-remote-ln)
22730         (tramp-get-remote-perl, tramp-get-remote-stat)
22731         (tramp-get-remote-readlink, tramp-get-remote-trash)
22732         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
22733         (tramp-get-remote-inotifywait, tramp-get-remote-id)
22734         (tramp-get-remote-python):
22735         * lisp/net/tramp-smb.el (tramp-smb-errors)
22736         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
22737         (tramp-smb-handle-delete-directory)
22738         (tramp-smb-handle-delete-file)
22739         (tramp-smb-handle-file-local-copy)
22740         (tramp-smb-handle-make-directory)
22741         (tramp-smb-handle-make-directory-internal)
22742         (tramp-smb-handle-make-symbolic-link)
22743         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
22744         (tramp-smb-handle-set-file-modes)
22745         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
22746         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
22747         (tramp-process-actions):
22748         Generate diagnostics according to ‘text-quoting-style’, by
22749         using curved quotes in format strings and ‘format-message’
22750         when appropriate.
22751         * lisp/net/tramp-compat.el (format-message):
22752         Define a replacement, if it’s an older version of Emacs
22753         that doesn’t have it already.
22755         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
22757 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
22759         Fix documentation for `save-excursion'
22760         * doc/lispref/positions.texi (Excursions):
22761         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
22762         (Template for save-excursion, Point and mark): `save-excursion'
22763         does not save&restore the mark any more.
22765 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
22767         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
22768         New defconsts.
22769         (tramp-do-file-attributes-with-stat)
22770         (tramp-do-directory-files-and-attributes-with-stat): Use them.
22771         (tramp-convert-file-attributes): Remove double slashes in symlinks.
22772         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
22773         Handle symlinks with "//" in the file name.
22775         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
22777 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
22779         Fix cl-subseq and cl-concatenate
22780         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
22781         seq functions.
22782         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
22783         seq-concatenate.
22785 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
22787         Fix full-screen code when there is no window manager (Bug#21317)
22788         * src/xterm.h (x_wm_supports): Declare external.
22789         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
22790         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
22791         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
22792         `fullscreen' frame parameter.
22793         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
22794         without a window manager.
22796 2015-08-24  Glenn Morris  <rgm@gnu.org>
22798         * lisp/version.el (emacs-version): No longer include build host.
22799         * doc/lispref/intro.texi (Version Info): Update example.
22801 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22803         * doc/lispref/elisp.texi: Fix typo in previous change.
22805         More-conservative ‘format’ quote restyling
22806         Instead of restyling curved quotes for every call to ‘format’,
22807         create a new function ‘format-message’ that does the restyling,
22808         and using the new function instead of ‘format’ only in contexts
22809         where this seems appropriate.
22810         Problem reported by Dmitry Gutov and Andreas Schwab in:
22811         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
22812         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
22813         * doc/lispref/commands.texi (Using Interactive):
22814         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
22815         * doc/lispref/display.texi (Displaying Messages, Progress):
22816         * doc/lispref/elisp.texi:
22817         * doc/lispref/help.texi (Keys in Documentation):
22818         * doc/lispref/minibuf.texi (Minibuffer Misc):
22819         * doc/lispref/strings.texi (Formatting Strings):
22820         * etc/NEWS:
22821         Document the changes.
22822         * lisp/abbrev.el (expand-region-abbrevs):
22823         * lisp/apropos.el (apropos-library):
22824         * lisp/calc/calc-ext.el (calc-record-message)
22825         (calc-user-function-list):
22826         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
22827         * lisp/calc/calc-lang.el (math-read-big-balance):
22828         * lisp/calc/calc-store.el (calc-edit-variable):
22829         * lisp/calc/calc-units.el (math-build-units-table-buffer):
22830         * lisp/calc/calc-yank.el (calc-edit-mode):
22831         * lisp/calendar/icalendar.el (icalendar-export-region)
22832         (icalendar--add-diary-entry):
22833         * lisp/cedet/mode-local.el (mode-local-print-binding)
22834         (mode-local-describe-bindings-2):
22835         * lisp/cedet/semantic/complete.el (semantic-completion-message):
22836         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
22837         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
22838         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
22839         * lisp/descr-text.el (describe-text-properties-1, describe-char):
22840         * lisp/dframe.el (dframe-message):
22841         * lisp/dired-aux.el (dired-query):
22842         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
22843         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
22844         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
22845         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
22846         (cconv-analyze-form):
22847         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
22848         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
22849         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
22850         * lisp/emacs-lisp/edebug.el (edebug-format):
22851         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
22852         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
22853         (eldoc-message):
22854         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
22855         * lisp/emacs-lisp/find-func.el (find-function-library):
22856         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
22857         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
22858         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
22859         * lisp/emacs-lisp/package.el (package-compute-transaction)
22860         (package-install-button-action, package-delete-button-action)
22861         (package-menu--list-to-prompt):
22862         * lisp/emacs-lisp/timer.el (timer-event-handler):
22863         * lisp/emacs-lisp/warnings.el (lwarn, warn):
22864         * lisp/emulation/viper-cmd.el:
22865         (viper-toggle-parse-sexp-ignore-comments)
22866         (viper-kill-buffer, viper-brac-function):
22867         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
22868         * lisp/facemenu.el (facemenu-add-new-face):
22869         * lisp/faces.el (face-documentation, read-face-name)
22870         (face-read-string, read-face-font, describe-face):
22871         * lisp/files.el (find-alternate-file, hack-local-variables)
22872         (hack-one-local-variable--obsolete, write-file)
22873         (basic-save-buffer, delete-directory):
22874         * lisp/format.el (format-write-file, format-find-file)
22875         (format-insert-file):
22876         * lisp/help-fns.el (help-fns--key-bindings)
22877         (help-fns--compiler-macro, help-fns--obsolete)
22878         (help-fns--interactive-only, describe-function-1)
22879         (describe-variable):
22880         * lisp/help.el (describe-mode):
22881         * lisp/info-xref.el (info-xref-output):
22882         * lisp/info.el (Info-virtual-index-find-node)
22883         (Info-virtual-index, info-apropos):
22884         * lisp/international/kkc.el (kkc-error):
22885         * lisp/international/mule-cmds.el:
22886         (select-safe-coding-system-interactively)
22887         (select-safe-coding-system, describe-input-method):
22888         * lisp/international/mule-conf.el (code-offset):
22889         * lisp/international/mule-diag.el (describe-character-set)
22890         (list-input-methods-1):
22891         * lisp/international/quail.el (quail-error):
22892         * lisp/minibuffer.el (minibuffer-message):
22893         * lisp/mpc.el (mpc--debug):
22894         * lisp/msb.el (msb--choose-menu):
22895         * lisp/net/ange-ftp.el (ange-ftp-message):
22896         * lisp/net/gnutls.el (gnutls-message-maybe):
22897         * lisp/net/newst-backend.el (newsticker--sentinel-work):
22898         * lisp/net/newst-treeview.el (newsticker--treeview-load):
22899         * lisp/net/nsm.el (nsm-query-user):
22900         * lisp/net/rlogin.el (rlogin):
22901         * lisp/net/soap-client.el (soap-warning):
22902         * lisp/net/tramp.el (tramp-debug-message):
22903         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
22904         * lisp/nxml/nxml-parse.el (nxml-parse-error):
22905         * lisp/nxml/rng-cmpct.el (rng-c-error):
22906         * lisp/nxml/rng-match.el (rng-compile-error):
22907         * lisp/nxml/rng-uri.el (rng-uri-error):
22908         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
22909         * lisp/org/org-ctags.el:
22910         (org-ctags-ask-rebuild-tags-file-then-find-tag):
22911         * lisp/proced.el (proced-log):
22912         * lisp/progmodes/ebnf2ps.el (ebnf-log):
22913         * lisp/progmodes/flymake.el (flymake-log):
22914         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
22915         * lisp/replace.el (occur-1):
22916         * lisp/simple.el (execute-extended-command)
22917         (undo-outer-limit-truncate, define-alternatives):
22918         * lisp/startup.el (command-line):
22919         * lisp/subr.el (error, user-error, add-to-list):
22920         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
22921         (tutorial--find-changed-keys):
22922         * src/callint.c (Fcall_interactively):
22923         * src/editfns.c (Fmessage, Fmessage_box):
22924         Restyle the quotes of format strings intended for use as a
22925         diagnostic, when restyling seems appropriate.
22926         * lisp/subr.el (format-message): New function.
22927         * src/doc.c (Finternal__text_restyle): New function.
22928         (syms_of_doc): Define it.
22930 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22932         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
22934 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22936         python.el: Fix python-shell-buffer-substring on indented code
22937         (Bug#21086)
22938         * lisp/progmodes/python.el (python-shell-buffer-substring):
22939         Respect current line indentation when calculating string.
22940         * test/automated/python-tests.el
22941         (python-shell-buffer-substring-10)
22942         (python-shell-buffer-substring-11)
22943         (python-shell-buffer-substring-12): New tests.
22945 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22947         Fix minor glitches from ‘format’ reversion
22948         * doc/lispref/strings.texi (Formatting Strings):
22949         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
22950         Documentation’, not below.
22951         * src/syntax.c (Finternal_describe_syntax_value):
22952         Prefer AUTO_STRING to build_string where either will do, as
22953         AUTO_STRING is a bit faster.
22955 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22957         python.el: Defer shell setup code until first interactive prompt
22958         * lisp/progmodes/python.el
22959         (python-shell-comint-watch-for-first-prompt-output-filter):
22960         New function.
22961         (inferior-python-mode): Use it.
22962         (python-shell-first-prompt-hook): New hook.
22963         (python-shell-send-setup-code)
22964         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
22965         this hook instead of inferior-python-hook.
22967 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
22969         Remove the calls to `seq-into` from `seq-concatenate`
22970         Since most new types of seq would have to be defined as sequences (cons
22971         cells or CL structs, mostly), there is no need to convert the seqs to
22972         sequences (which can be a fairly expensive operation).
22973         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
22974         sequences.
22976 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22978         python.el: Fix completion for pdb interactions
22979         * lisp/progmodes/python.el (python-shell-completion-setup-code):
22980         Simplify.  Toggle print_mode for native wrapped completer.
22981         (python-shell-completion-native-setup): Ensure process buffer.
22982         Add print_mode attribute to completer wrapper to toggle returning
22983         or printing candidates.
22984         (python-shell-completion-native-get-completions): Cleanup.
22985         (python-shell-completion-get-completions): Cleanup.
22986         (python-shell-completion-at-point): Perform prompt checks.
22987         Force fallback completion in pdb interactions.
22989 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
22991         Make seq.el more extensible by using cl-defmethod
22992         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
22993         make it easier to extend seq.el with new "seq types".
22994         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
22995         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
22996         subseq in cl-extra.el, and use it in seq.el.
22998 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
23000         python.el: Fix prompt detection with user overridden interpreter
23001         * lisp/progmodes/python.el (python-shell-prompt-detect):
23002         Honor buffer local python-shell-interpreter and
23003         python-shell-interpreter-interactive-arg.
23005 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
23007         Support exec-directory with non-ASCII characters on Windows
23008         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
23009         in the system's ANSI codepage, when it is used for invoking
23010         cmdproxy.
23012 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
23014         Revert "Extend ‘format’ to translate curved quotes"
23015         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
23017         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
23018         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
23020 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
23022         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
23023         Clarify "invisible window".
23025 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
23027         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
23028         magic-fallback-mode-alist.
23030 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
23032         python.el: fallback completion, ffap and eldoc setup enhancements
23033         Setup codes are now sent continuously so that the current frame is
23034         always taken into account.  This allows working within debuggers
23035         and always keeping a fresh version of setup codes that will return
23036         proper results.
23037         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
23038         (python-shell-send-setup-code): Send code only when
23039         python-shell-setup-codes is non-nil.
23040         (python-shell-completion-string-code): Cleanup trailing newline.
23041         (python-shell-completion-get-completions): Always use
23042         python-shell-completion-setup-code.
23043         (python-ffap-setup-code): Work with any object, not only modules.
23044         (python-ffap-string-code): Cleanup trailing newline.
23045         (python-ffap-module-path): Always use python-ffap-setup-code.
23046         (python-eldoc-string-code): Cleanup trailing newline.
23047         (python-eldoc--get-doc-at-point): Always use
23048         python-eldoc-setup-code.  Return non-nil only if docstring is
23049         found.
23051         python.el: Increase native completion robustness
23052         * lisp/progmodes/python.el (python-shell-completion-native-setup):
23053         Make completer print real candidates and just return dummy ones to
23054         avoid input modification.
23055         (python-shell-completion-native-get-completions): Set
23056         comint-redirect-insert-matching-regexp to non-nil and make
23057         comint-redirect-finished-regexp match the last dummy candidate.
23058         Use python-shell-accept-process-output to wait for the full list
23059         of candidates.
23061 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
23063         Fix invocation of programs via cmdproxy.exe
23064         * src/w32proc.c (sys_spawnve): Use exec-directory, not
23065         invocation-directory, for finding cmdproxy.exe.  When Emacs is
23066         run from the source tree, look for cmdproxy.exe in the same source
23067         tree.  (Bug#21323)
23069 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
23071         Handle comments inside unquoted URIs in css-mode
23072         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
23073         (css-syntax-propertize-function): New defconst.
23074         (css--font-lock-keywords): Handle parens around unquoted URIs.
23075         (css-mode): Set `syntax-propertize-function'.
23077 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
23079         Support invocation of Hunspell with multiple dictionaries
23080         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
23081         Support lists of dictionaries of the form "DICT1,DICT2,...".
23082         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
23084         Minor formatting changes in ispell.el
23085         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
23086         (ispell-print-if-debug, ispell-aspell-find-dictionary)
23087         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
23088         (ispell-hunspell-dictionary-alist)
23089         (ispell-hunspell-fill-dictionary-entry)
23090         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
23091         (ispell-buffer-with-debug, ispell-complete-word)
23092         (ispell-current-dictionary, ispell-current-personal-dictionary)
23093         (ispell-accept-output, ispell-minor-mode)
23094         (ispell-personal-dictionary, ispell-dictionary-alist)
23095         (ispell-really-aspell, ispell-really-hunspell)
23096         (ispell-encoding8-command, ispell-aspell-supports-utf8)
23097         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
23098         Fix whitespace, inconsistent capitalization, and arguments in doc
23099         strings.
23101 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
23103         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
23104         function refused to resize a size-preserved window.
23106 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
23108         * doc/lispref/windows.texi (Selecting Windows): Improve
23109         documentation and indexing of 'window-use-time'.
23111 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
23113         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
23114         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
23115         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
23116         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
23117         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
23118         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
23119         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
23120         Fix up commenting style.
23122 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23124         text-quoting-style in emacs-lisp diagnostics
23125         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
23126         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
23127         (ad-disable-advice, ad-remove-advice, ad-set-argument)
23128         (ad-set-arguments):
23129         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
23130         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
23131         (byte-optimize-while, byte-optimize-apply):
23132         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
23133         (byte-compile-log-file, byte-compile-format-warn)
23134         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
23135         (byte-compile-cl-warn)
23136         (byte-compile-warn-about-unresolved-functions)
23137         (byte-compile-file, byte-compile-fix-header)
23138         (byte-compile--declare-var, byte-compile-file-form-defmumble)
23139         (byte-compile-form, byte-compile-normal-call)
23140         (byte-compile-variable-ref, byte-compile-variable-set)
23141         (byte-compile-subr-wrong-args, byte-compile-setq-default)
23142         (byte-compile-negation-optimizer)
23143         (byte-compile-condition-case--old)
23144         (byte-compile-condition-case--new, byte-compile-save-excursion)
23145         (byte-compile-defvar, byte-compile-autoload)
23146         (byte-compile-lambda-form)
23147         (byte-compile-make-variable-buffer-local, display-call-tree)
23148         (batch-byte-compile):
23149         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
23150         (cconv-analyze-form):
23151         * lisp/emacs-lisp/chart.el (chart-space-usage):
23152         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
23153         (check-declare-warn, check-declare-file)
23154         (check-declare-directory):
23155         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
23156         (checkdoc-message-text-engine):
23157         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
23158         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
23159         (cl-symbol-macrolet):
23160         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
23161         * lisp/emacs-lisp/copyright.el (copyright)
23162         (copyright-update-directory):
23163         * lisp/emacs-lisp/edebug.el (edebug-read-list):
23164         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
23165         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
23166         (eieio-oref, eieio-oset-default):
23167         * lisp/emacs-lisp/eieio-speedbar.el:
23168         (eieio-speedbar-child-make-tag-lines)
23169         (eieio-speedbar-child-description):
23170         * lisp/emacs-lisp/eieio.el (defclass, change-class):
23171         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
23172         (elint-init-form, elint-check-defalias-form)
23173         (elint-check-let-form):
23174         * lisp/emacs-lisp/ert.el (ert-get-test):
23175         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
23176         (find-function-library):
23177         * lisp/emacs-lisp/generator.el (iter-yield):
23178         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
23179         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
23180         * lisp/emacs-lisp/package-x.el (package-upload-file):
23181         * lisp/emacs-lisp/package.el (package-version-join)
23182         (package-disabled-p, package-activate-1, package-activate)
23183         (package--download-one-archive)
23184         (package--download-and-read-archives)
23185         (package-compute-transaction, package-install-from-archive)
23186         (package-install, package-install-selected-packages)
23187         (package-delete, package-autoremove)
23188         (package-install-button-action, package-delete-button-action)
23189         (package-menu-hide-package, package-menu--list-to-prompt)
23190         (package-menu--perform-transaction)
23191         (package-menu--find-and-notify-upgrades):
23192         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
23193         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
23194         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
23195         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
23196         * lisp/emacs-lisp/smie.el (smie-config-save):
23197         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
23198         * lisp/emacs-lisp/testcover.el (testcover-1value):
23199         Use curved quotes in diagnostic format strings.
23201 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
23203         python.el: Ensure remote process-environment on non-interactive processes
23204         * lisp/progmodes/python.el
23205         (python-shell-tramp-refresh-process-environment): New function.
23206         (python-shell-with-environment): Use it.
23207         * test/automated/python-tests.el (python-shell-with-environment-2):
23208         Update.
23210         python.el: Enhancements to process environment setup.
23211         * lisp/progmodes/python.el (python-shell-process-environment)
23212         (python-shell-extra-pythonpaths, python-shell-exec-path)
23213         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
23214         (python-shell-setup-codes): Remove :safe.
23215         (python-shell-remote-exec-path): New defcustom.
23216         (python-shell--add-to-path-with-priority): New macro.
23217         (python-shell-calculate-pythonpath): Give priority to
23218         python-shell-extra-pythonpaths.  Update docstring.
23219         (python-shell-calculate-process-environment): Give priority to
23220         python-shell-process-environment.  Update docstring.
23221         (python-shell-calculate-exec-path): Give priority to
23222         python-shell-exec-path and calculated virtualenv bin directory.
23223         Update docstring.
23224         (python-shell-tramp-refresh-remote-path): New function.
23225         (python-shell-with-environment): Use it when working remotely and
23226         do not modify tramp-remote-path.  Allow nesting.
23227         (python-shell-calculate-command): Remove useless
23228         python-shell-with-environment call.
23229         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
23230         (python-shell-calculate-pythonpath-2)
23231         (python-shell-calculate-process-environment-6)
23232         (python-shell-calculate-process-environment-7)
23233         (python-shell-calculate-process-environment-8)
23234         (python-shell-calculate-exec-path-3)
23235         (python-shell-calculate-exec-path-4)
23236         (python-shell-calculate-exec-path-5)
23237         (python-shell-calculate-exec-path-6)
23238         (python-shell-with-environment-3): New tests.
23239         (python-shell-calculate-process-environment-2)
23240         (python-shell-calculate-process-environment-3)
23241         (python-shell-calculate-process-environment-4)
23242         (python-shell-calculate-process-environment-5)
23243         (python-shell-calculate-exec-path-1)
23244         (python-shell-calculate-exec-path-2)
23245         (python-shell-with-environment-1)
23246         (python-shell-with-environment-2): Update and simplify.
23248 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23250         Avoid hard-coding "M-x command" in docstrings
23251         * lisp/calendar/todo-mode.el (todo-mode):
23252         * lisp/desktop.el (desktop-save-mode):
23253         * lisp/edmacro.el (edit-kbd-macro):
23254         * lisp/emacs-lisp/package.el (package-menu-execute):
23255         * lisp/emulation/viper-cmd.el (viper-ask-level):
23256         * lisp/emulation/viper-init.el (viper-expert-level):
23257         * lisp/filesets.el (filesets-add-buffer):
23258         * lisp/follow.el (follow-mode):
23259         * lisp/gnus/auth-source.el (auth-sources):
23260         * lisp/international/ogonek.el (ogonek-informacja)
23261         (ogonek-information):
23262         * lisp/net/tramp.el (tramp-process-actions):
23263         * lisp/org/org-gnus.el (org-gnus-no-new-news):
23264         * lisp/org/org.el (org-ellipsis):
23265         * lisp/progmodes/python.el (python-shell-get-process-or-error):
23266         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
23267         * lisp/server.el (server-start):
23268         * lisp/type-break.el (type-break-noninteractive-query):
23269         * lisp/userlock.el (ask-user-about-supersession-help):
23270         * lisp/whitespace.el (whitespace-report-region):
23271         Prefer (substitute-command-keys "`\\[foo-command]'")
23272         to "`M-x foo-command'" in docstrings and the like.
23274 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
23276         Use add-function for prettify-symbols-compose-predicate
23277         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
23278         prettify-symbols-compose-predicate in terms of add-function.
23279         * etc/NEWS: Mention prettify-symbols-compose-predicate and
23280         prettify-symbols-mode support in tex-mode.
23282 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
23284         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
23285         (smie-indent-exps, smie-indent-keyword): Use it.
23286         * test/indent/css-mode.css: Test alignment with leading comment.
23288 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23290         Respect text-quoting-style in (*Finder*) menus
23291         * lisp/info.el (info--prettify-description):
23292         Treat description as a docstring, so that it's requoted as
23293         per text-quoting-style.
23295 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
23297         Document `window-use-time' in Elisp manual
23298         * doc/lispref/windows.texi (Selecting Windows): Document
23299         `window-use-time'.
23301 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
23303         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
23304         This is a cleaner fix for Bug#21260 than the previous change.
23306 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23308         Respect text-quoting-style in calc
23309         In calc, tespect text-quoting-style preference in diagnostic
23310         formats and fix a few similar problems in docstrings.
23311         * lisp/calc/calc-aent.el (math-read-factor):
23312         * lisp/calc/calc-embed.el (calc-do-embedded):
23313         * lisp/calc/calc-ext.el (calc-user-function-list)
23314         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
23315         * lisp/calc/calc-help.el (calc-describe-key)
23316         (calc-describe-thing):
23317         * lisp/calc/calc-lang.el (calc-c-language)
23318         (math-parse-fortran-vector-end, math-parse-tex-sum)
23319         (math-parse-eqn-matrix, math-parse-eqn-prime)
23320         (calc-yacas-language, calc-maxima-language, calc-giac-language)
23321         (math-read-big-rec, math-read-big-balance):
23322         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
23323         (calc-auto-recompute):
23324         * lisp/calc/calc-prog.el (calc-user-define-invocation)
23325         (math-do-arg-check):
23326         * lisp/calc/calc-store.el (calc-edit-variable):
23327         * lisp/calc/calc-units.el (math-build-units-table-buffer):
23328         * lisp/calc/calc-vec.el (math-read-brackets):
23329         * lisp/calc/calc-yank.el (calc-edit-mode):
23330         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
23331         Use curved quotes in diagnostic format strings.
23332         * lisp/calc/calc-help.el (calc-describe-thing):
23333         Format docstrings with substitute-command-keys.
23334         * lisp/calc/calc-help.el (calc-j-prefix-help):
23335         * lisp/calc/calc-misc.el (calc-help):
23336         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
23337         Escape a docstring "`".
23339 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
23341         Fix documentation of 'menu-set-font' and 'set-frame-font'
23342         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
23343         * doc/lispref/frames.texi (Frame Font): Document that
23344         set-frame-font with the last argument 't' will also make the font
23345         the default for the future GUI frames.
23347         Document '--create-frame' option to emacsclient
23348         * doc/emacs/misc.texi (emacsclient Options): Document the
23349         '--create-frame' option.  (Bug#21308)
23351 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
23353         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
23355 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
23357         Document 'get-mru-window' in the ELisp manual
23358         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
23359         'get-mru-window'.  (Bug#21306)
23361         Clarify documentation of 'get-buffer-window-list'
23362         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
23363         current window, if relevant, will be the first in the list
23364         returned by 'get-buffer-window-list'.
23365         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
23367 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
23369         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
23370         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
23371         `switch-to-buffer'.
23373 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
23375         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
23376         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
23377         `display-buffer' instead of `switch-to-buffer'.
23379 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23381         Follow user preference in calendar diagnostics
23382         Respect text-quoting-style preference in diagnostic formats by
23383         using curved quotes (which are translated as per text-quoting-style)
23384         instead of grave accent and apostrophe (which are not).
23385         * lisp/calendar/appt.el (appt-display-message):
23386         * lisp/calendar/diary-lib.el (diary-check-diary-file)
23387         (diary-mail-entries, diary-from-outlook):
23388         * lisp/calendar/icalendar.el (icalendar-export-region)
23389         (icalendar--convert-float-to-ical)
23390         (icalendar--convert-date-to-ical)
23391         (icalendar--convert-ical-to-diary)
23392         (icalendar--convert-recurring-to-diary)
23393         (icalendar--add-diary-entry):
23394         * lisp/calendar/time-date.el (format-seconds):
23395         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
23396         (timeclock-make-hours-explicit):
23397         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
23398         (todo-item-mark, todo-check-format)
23399         (todo-insert-item--next-param, todo-edit-item--next-key)
23400         (todo-mode):
23401         Use curved quotes in diagnostic format strings.
23402         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
23403         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
23404         Just use straight quoting for simple test case.
23406 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
23408         * src/gfilenotify.c (Fgfile_add_watch):
23409         Handle errors from g_file_monitor.
23411 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
23413         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
23414         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
23415         frame" instead of "non-minibuffer frame".
23417         Fix frame geometry related text
23418         * doc/lispref/frames.texi (Frame Layout):
23419         Rename `x-frame-geometry' to `frame-geometry'.
23420         * doc/lispref/frames.texi (Mouse Position):
23421         * doc/lispref/windows.texi (Coordinates and Windows):
23422         Use `set-mouse-absolute-pixel-position' instead of
23423         `x-set-mouse-absolute-pixel-position'.
23425         Sanitize frame geometry related functions
23426         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
23427         (Fx_frame_edges): Rename to Fns_frame_edges.
23428         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
23429         (Fx_frame_edges): Rename to Fw32_frame_edges.
23430         (Fx_mouse_absolute_pixel_position): Rename to
23431         Fw32_mouse_absolute_pixel_position.
23432         (Fx_set_mouse_absolute_pixel_position): Rename to
23433         Fw32_set_mouse_absolute_pixel_position.
23434         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
23435         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
23436         (ns-frame-edges, w32-mouse-absolute-pixel-position)
23437         (x-mouse-absolute-pixel-position)
23438         (w32-set-mouse-absolute-pixel-position)
23439         (x-set-mouse-absolute-pixel-position): Declare.
23440         (frame-geometry, mouse-absolute-pixel-position)
23441         (set-mouse-absolute-pixel-position): New functions.
23442         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
23444 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
23446         Fix MinGW64 build broken by latest w32uniscribe.c changes
23447         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
23448         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
23449         (Bug#21260)
23451 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
23453         Add TeX defaults for prettify-symbol-mode
23454         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
23455         Rename from tex-prettify-symbols-alist.
23456         (tex--prettify-symbols-compose-p): New function.
23457         (tex-common-initialization): Use them as prettify-symbols-alist
23458         and prettify-symbols-compose-predicate.
23460         Generalize prettify-symbols to arbitrary modes
23461         * lisp/progmodes/prog-mode.el
23462         (prettify-symbols-default-compose-p): New function.
23463         (prettify-symbols-compose-predicate): New variable.
23464         (prettify-symbols--compose-symbol): Use it.
23466 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
23468         Don't quote symbols 'like-this' in docstrings etc.
23469         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
23470         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
23471         * lisp/allout.el (allout-add-resumptions, allout-mode):
23472         * lisp/calculator.el (calculator-operators):
23473         * lisp/cedet/data-debug.el (dd-propertize):
23474         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
23475         * lisp/cedet/semantic/analyze/debug.el:
23476         (semantic-analyzer-debug-global-miss-text):
23477         * lisp/cedet/semantic/lex-spp.el:
23478         (semantic-lex-spp-replace-or-symbol-or-keyword):
23479         * lisp/cedet/semantic/symref.el:
23480         (semantic-symref-cleanup-recent-buffers-fcn):
23481         * lisp/cedet/semantic/tag.el (semantic-tag-class):
23482         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
23483         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
23484         * lisp/gnus/pop3.el (pop3-authentication-scheme):
23485         * lisp/help-fns.el (describe-function-orig-buffer):
23486         * lisp/imenu.el (imenu--history-list):
23487         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
23488         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
23489         (feedmail-queue-default-file-slug)
23490         (feedmail-queue-buffer-file-name):
23491         * lisp/net/mairix.el (mairix-searches-mode-map):
23492         * lisp/net/newst-backend.el (newsticker-retrieval-method)
23493         (newsticker-auto-mark-filter-list):
23494         * lisp/obsolete/vi.el (vi-mode):
23495         * lisp/progmodes/cc-engine.el (c-literal-type):
23496         * lisp/progmodes/cpp.el (cpp-face):
23497         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
23498         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
23499         * lisp/progmodes/pascal.el (pascal-auto-lineup):
23500         * lisp/progmodes/prog-mode.el (prog-widen):
23501         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
23502         (verilog-auto-lineup, verilog-auto-reset-widths)
23503         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
23504         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
23505         (flyspell-maybe-correct-doubling):
23506         * lisp/textmodes/table.el (table-justify, table-justify-cell)
23507         (table-justify-row, table-justify-column, table-insert-sequence)
23508         (table--justify-cell-contents):
23509         * lisp/url/url-auth.el (url-get-authentication):
23510         * lisp/window.el (display-buffer-record-window):
23511         * lisp/xml.el (xml-parse-file, xml-parse-region):
23512         * src/gfilenotify.c (Fgfile_add_watch):
23513         Don't quote symbols with apostrophes in doc strings.
23514         Use asymmetric quotes instead.
23515         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
23516         Likewise for symbol in diagnostic.
23517         * lisp/image.el (image-extension-data):
23518         * lisp/register.el (frame-configuration-to-register):
23519         * src/buffer.c (syms_of_buffer):
23520         Remove bogus apostrophes after symbols.
23521         * lisp/thumbs.el (thumbs-conversion-program):
23522         Quote Lisp string values using double-quotes, not apostrophes.
23524 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
23526         Describe frame geometry and related functions in Elisp manual
23527         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
23528         (Showing Images): Update references.
23529         * doc/lispref/elisp.texi (Top): Update node listing.
23530         * doc/lispref/frames.texi (Frame Geometry): New node.
23531         Move `Size and Position' section here.
23532         (Size Parameters): Update references.
23533         (Mouse Position): Update references and nomenclature.
23534         Describe new functions `x-mouse-absolute-pixel-position' and
23535         `x-set-mouse-absolute-pixel-position'.
23536         * doc/lispref/windows.texi (Window Sizes): Update references.
23537         (Resizing Windows): Update references.  Move description of
23538         `fit-frame-to-buffer' here.
23539         (Coordinates and Windows): Update nomenclature and references.
23540         Describe new arguments of `window-edges'.  Comment out
23541         descriptions of `window-left-column', `window-top-line',
23542         `window-pixel-left' and `window-pixel-top'.  Describe
23543         `window-absolute-pixel-position'.
23545 2015-08-20  Alan Mackenzie  <acm@muc.de>
23547         Handling of `c-parse-state'.  Fix low level bug.
23548         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
23549         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
23551 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
23553         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
23554         window instead of deleting it.
23556 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
23558         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
23559         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
23560         determine whether frame has a titlebar.
23561         Suggested by Eli Zaretskii <eliz@gnu.org>
23563 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
23565         Add a prettify-symbols-alist for (La)TeX
23566         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
23567         New variable holding an alist suitable as prettify-symbols-alist in
23568         (La)TeX modes.
23570 2015-08-19  Alan Mackenzie  <acm@muc.de>
23572         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
23573         Fixes debbugs#21275.
23574         In Emacs >= 25, let electric-pair-mode take precedence over
23575         delete-selection-mode.
23576         * lisp/delsel.el (delete-selection-uses-region-p): New function,
23577         previously a lambda expression in a property value for
23578         `self-insert-command'.
23579         (top-level): Set the `delete-selection' property of
23580         `self-insert-command' to `delete-selection-uses-region-p'.
23581         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
23582         property for c-electric-\(brace\|paren\) the value
23583         `delete-selection-uses-region-p' when the latter function exists.
23585 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23587         Fix key binding quoting in tutorial *Help*
23588         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
23589         When generating help for custom key bindings, use the user-preferred
23590         quoting style rather than hardcoding the grave style.
23592 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
23594         Improve and future-proof OTF fonts support in w32uniscribe.c
23595         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
23596         about the expected results and why the new Uniscribe APIs are not
23597         used in this function.
23598         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
23599         (ScriptGetFontFeatureTags_Proc): New function typedefs.
23600         (uniscribe_new_apis): New static variable.
23601         (uniscribe_check_features): New function, implements OTF features
23602         verification while correctly accounting for features in the list
23603         after the nil member, if any.
23604         (uniscribe_check_otf_1): New function, retrieves the features
23605         supported by the font for the requested script and language using
23606         the Uniscribe APIs available from Windows Vista onwards.
23607         (uniscribe_check_otf): If the new Uniscribe APIs are available,
23608         use them in preference to reading the font data directly.  Call
23609         uniscribe_check_features to verify that the requested features are
23610         supported, replacing the original incomplete code.
23611         (syms_of_w32uniscribe): Initialize function pointers for the new
23612         Uniscribe APIs.  (Bug#21260)
23613         (otf_features): Scan the script, langsys, and feature arrays back
23614         to front, so that the result we return has them in alphabetical
23615         order, like ftfont.c does.
23616         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
23617         New variable for debugging w32uniscribe.c code.
23619 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
23621         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
23622         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
23623         clause of `isearch-search-fun-default'.  That lax variable does not
23624         refer to lax-whitespacing.  Related to (bug#21777).
23625         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
23626         * lisp/character-fold.el (character-fold-search): Set to nil.
23627         Default to nil for now, until someone implements proper
23628         lax-whitespacing with char-fold searching.
23630 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
23632         Fix doc-string of `help-mode-finish'.
23633         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
23635         In nsimage.m include coding.h (Bug#21292)
23636         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
23638         Move window edge functions to Elisp.
23639         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
23640         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
23641         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
23642         Move to window.el.
23643         (calc_absolute_offset): Remove.
23644         * lisp/frame.el (frame-edges): New function.
23645         * lisp/window.el (window-edges, window-pixel-edges)
23646         (window-absolute-pixel-edges): Move here from window.c.
23647         (window-body-edges, window-body-pixel-edges)
23648         (window-absolute-body-pixel-edges): Move here from window.c and
23649         rename "inside" to "body".  Keep old names as aliases.
23650         (window-absolute-pixel-position): New function.
23652 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
23654         [Gnus]: Use overlay functions directly
23655         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
23656         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
23657         (gnus-article-highlight-signature, gnus-article-extend-url-button)
23658         (gnus-article-add-button, gnus-insert-prev-page-button)
23659         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
23660         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
23661         (gnus-cite-add-face):
23662         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
23663         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
23664         (gnus-tree-recenter, gnus-highlight-selected-tree):
23665         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
23666         (gnus-summary-show-thread, gnus-summary-hide-thread)
23667         (gnus-highlight-selected-summary):
23668         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
23669         * lisp/gnus/message.el (message-fix-before-sending)
23670         (message-toggle-image-thumbnails):
23671         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
23672         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
23673         Use overlay functions directly instead of using gnus-overlay-*,
23674         message-overlay-*, and sieve-overlay-*.
23675         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
23676         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
23677         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
23678         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
23679         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
23680         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
23681         (message-overlay-get, message-overlay-put, message-overlays-in):
23682         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
23683         (sieve-overlays-at): Remove.
23685 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
23687         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
23688         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
23689         builds can use the declaration from the system headers.
23690         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
23691         definition of TITLEBAR_INFO.
23692         Suggested by Eli Zaretskii  <eliz@gnu.org>
23694 2015-08-19  Glenn Morris  <rgm@gnu.org>
23696         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
23698 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23700         Use new q ‘format’ flag when fixing quotes in C
23701         * src/image.c (image_size_error): New function.  All uses of
23702         image_error with "Invalid image size ..."  changed to use it.
23703         * src/image.c (image_size_error, xbm_load_image, xbm_load)
23704         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
23705         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
23706         (imagemagick_load, svg_load, svg_load_image, gs_load)
23707         (x_kill_gs_process):
23708         * src/lread.c (load_warn_old_style_backquotes):
23709         * src/xfaces.c (load_pixmap):
23710         * src/xselect.c (x_clipboard_manager_error_1):
23711         Use %qs, not uLSQM and uRSQM.
23712         * src/syntax.c (Finternal_describe_syntax_value):
23713         Prefer Fsubstitute_command_keys to Fformat, as this lets
23714         us use AUTO_STRING.
23715         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
23716         as it's now guaranteed to be ASCII.
23717         * src/xselect.c (x_clipboard_manager_error_2):
23718         Avoid grave accent in low-level stderr diagnostic.
23720 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
23722         New q flag for ‘format’
23723         * doc/lispref/processes.texi (Sentinels):
23724         Don't hardwire grave quoting style in example.
23725         * doc/lispref/strings.texi (Formatting Strings):
23726         * etc/NEWS:
23727         Document new q flag.
23728         * src/editfns.c (Fformat): Implement it.
23730 2015-08-18  Daiki Ueno  <ueno@gnu.org>
23732         pinentry.el: Add debugging support
23733         * lisp/net/pinentry.el (pinentry-debug): New variable.
23734         (pinentry-debug-buffer): New variable.
23735         (pinentry--process-filter): Send input to the debug buffer, if
23736         `pinentry-debug' is set.
23738         pinentry.el: Improve multiline prompt
23739         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
23740         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
23741         command.
23743 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
23745         Fix multibyte confusion in diagnostics
23746         * src/print.c (print_error_message):
23747         Don't assume that the caller's name is unibyte.
23748         * src/xdisp.c (vadd_to_log):
23749         Don't assume that the formatted diagnostic is unibyte.
23751         Fix file name encodings in diagnostics
23752         Also, close some minor races when opening image files, by opening
23753         them once instead of multiple times.
23754         * src/gtkutil.c (xg_get_image_for_pixmap):
23755         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
23756         (svg_load):
23757         * src/nsimage.m (allocInitFromFile:):
23758         * src/xfns.c (xg_set_icon):
23759         Encode file name, since x_find_image_file no longer does that.
23760         * src/image.c (x_find_image_fd): New function.
23761         (x_find_image_file): Use it.  Do not encode resulting file name,
23762         since callers sometimes need it decoded.
23763         (slurp_file): File arg is now a fd, not a file name.
23764         All callers changed.  This saves us having to open the file twice.
23765         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
23766         (svg_load):
23767         Use x_find_image_fd and fdopen to save a file-open.
23768         Report file name that failed.
23769         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
23771 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
23773         Allow blink-matching-paren to jump off screen
23774         * doc/emacs/programs.texi (Matching): Mention the
23775         `blink-matching-paren' value `jump-offscreen'.
23776         * lisp/simple.el (blink-matching-paren): New possible value.
23777         (blink-matching-paren-on-screen): Clarify the docstring.
23778         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
23780         Refine the previous change
23781         * lisp/simple.el (blink-matching-open): Use minibuffer-message
23782         outside of save-excursion (bug#21286).
23784 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
23786         Rewrite and add frame geometry related functions.
23787         * src/frame.c (Fframe_position): New function.
23788         (Fset_frame_position): Rename parameters and rewrite doc-string.
23789         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
23790         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
23791         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
23792         Qtitle_bar_size.
23793         * src/nsfns.m (frame_geometry): New function.
23794         (Fx_frame_geometry): Call frame_geometry.
23795         (Fx_frame_edges): New function.
23796         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
23797         (GetTitleBarInfo_Proc): Define these so we can use the
23798         GetTitleBarInfo API.
23799         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
23800         (Fx_frame_geometry): Rewrite.
23801         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
23802         (Fx_set_mouse_absolute_pixel_position): New functions.
23803         * src/xfns.c (frame_geometry): New function.
23804         (Fx_frame_geometry): Call frame_geometry.
23805         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
23806         (Fx_set_mouse_absolute_pixel_position): New functions.
23808 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
23810         Improve Tramp's compatibility
23811         * lisp/net/tramp.el (tramp-get-method-parameter):
23812         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
23813         (tramp-adb-get-device):
23814         * lisp/net/trampver.el (tramp-repository-get-version):
23815         Use `tramp-compat-replace-regexp-in-string'.
23817 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
23819         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
23820         Encode/decode string.
23822 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
23824         Clarify what happens to match data on failure
23825         Problem reported by Ernesto Alfonso (Bug#21279).
23826         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
23827         Document more carefully what happens to match data after a failed
23828         search.
23829         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
23830         the return value is undefined if the last search failed.
23831         (Fmatch_data): Simplify doc string line 1.
23833 2015-08-18  Daiki Ueno  <ueno@gnu.org>
23835         Revert "pinentry.el: Support external passphrase cache"
23836         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
23837         pinentry.el shouldn't directly interact with the secrets service,
23838         but ask the caller to cache the passphrase.
23840 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
23842         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
23843         Message mode hooks.
23845 2015-08-17  Daiki Ueno  <ueno@gnu.org>
23847         epg.el: Make gpgconf output parsing future proof
23848         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
23849         --list-options" output.
23851         pinentry.el: Support external passphrase cache
23852         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
23853         (pinentry--allow-external-password-cache): New local variable.
23854         (pinentry--key-info): New local variable.
23855         (secrets-enabled, secrets-search-items, secrets-get-secret):
23856         Declare.
23857         (pinentry--send-passphrase): New function, split from
23858         `pinentry--process-filter'.
23859         (pinentry--process-filter): Use secrets.el to retrieve passphrase
23860         from login keyring.
23862         pinentry.el: Popup window for multiline prompt
23863         * lisp/net/pinentry.el (pinentry): New custom group.
23864         (pinentry-popup-prompt-window): New user option.
23865         (pinentry-prompt-window-height): New user option.
23866         (pinentry--prompt-buffer): New variable.
23867         (pinentry-prompt-mode-map): New variable.
23868         (pinentry-prompt-mode): New function.
23869         (pinentry--prompt): New function.
23870         (pinentry--process-filter): Use `pinentry--prompt' instead of
23871         `read-passwd' and `y-or-n-p'.
23873 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
23875         message.el: Silent the byte compiler
23876         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
23877         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
23878         (message-delete-overlay, message-window-inside-pixel-edges):
23879         Declare before using.
23881         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
23882         (message-window-inside-pixel-edges): XEmacs compatible functions.
23884 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
23886         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
23888 2015-08-17  Noah Friedman  <friedman@splode.com>
23890         * lisp/simple.el (blink-matching-open): Restore point before
23891         calling minibuffer-message.
23893 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
23895         * lisp/play/dunnet.el: Update version number in header (now
23896         matches help).
23898 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23900         Curved quotes in --batch diagnostics in non-UTF-8
23901         When run with --batch, check that curved quotes are compatible with
23902         the system locale before outputting them in diagnostics.
23903         Problem reported by Eli Zaretskii in:
23904         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
23905         * lisp/startup.el (command-line): Set internal--text-quoting-flag
23906         after the standard display table is initialized.
23907         * src/doc.c (default_to_grave_quoting_style): New function.
23908         (text_quoting_style): Use it.
23909         (text_quoting_flag): New static var, visible to Lisp as
23910         internal--text-quoting-flag.
23911         * src/emacs.c: Include <wchar.h> if available.
23912         (using_utf8): New function.
23913         (main): Use it to initialize text_quoting_flag.
23914         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
23915         Don't define, as it's not needed and it clashes with wchar.h.
23917 2015-08-17  Glenn Morris  <rgm@gnu.org>
23919         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
23920         from makeinfo about spurious "Note:" cross-reference, and for grammar.
23922 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
23924         Minor change in variable initialization on MS-Windows
23925         * src/w32fns.c <after_dead_key>: Initialize to -1.
23926         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
23927         non-zero.
23929         Fix a bug with LWindow key remapping on MS-Windows
23930         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
23932 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
23934         Improve fontset support for latest OTF script tags
23935         * lisp/international/fontset.el (otf-script-alist): Add some
23936         missing script tags.
23937         (setup-default-fontset): Include settings for v2 versions of the
23938         script tags used by some modern OTF/TTF fonts.
23940 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23942         Spelling fixes
23944 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
23946         Use curved quotes in core elisp diagnostics
23947         In the core elisp files, use curved quotes in diagnostic formats,
23948         so that they follow user preference as per ‘text-quoting-style’
23949         rather than being hard-coded to quote `like this'.
23950         * lisp/abbrev.el (expand-region-abbrevs):
23951         * lisp/button.el (button-category-symbol, button-put)
23952         (make-text-button):
23953         * lisp/cus-start.el:
23954         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
23955         (custom--sort-vars-1, load-theme):
23956         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
23957         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
23958         (cl-generic-generalizers):
23959         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
23960         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
23961         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
23962         (advice--make, define-advice):
23963         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
23964         * lisp/emacs-lisp/timer.el (timer-event-handler):
23965         * lisp/env.el (setenv):
23966         * lisp/facemenu.el (facemenu-add-new-face)
23967         (facemenu-add-new-color):
23968         * lisp/faces.el (face-documentation, read-face-name)
23969         (face-read-string, read-face-font, face-spec-set-match-display)
23970         (read-color, x-resolve-font-name):
23971         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
23972         (set-auto-mode, hack-local-variables)
23973         (hack-one-local-variable--obsolete)
23974         (dir-locals-set-directory-class, write-file)
23975         (basic-save-buffer, delete-directory, copy-directory)
23976         (recover-session, recover-session-finish, insert-directory)
23977         (file-modes-char-to-who, file-modes-symbolic-to-number)
23978         (move-file-to-trash):
23979         * lisp/font-lock.el (font-lock-fontify-buffer):
23980         * lisp/format.el (format-write-file, format-find-file)
23981         (format-insert-file):
23982         * lisp/frame.el (get-device-terminal, select-frame-by-name):
23983         * lisp/fringe.el (fringe--check-style):
23984         * lisp/help.el (describe-minor-mode-from-indicator):
23985         * lisp/image.el (image-type):
23986         * lisp/international/fontset.el (x-must-resolve-font-name):
23987         * lisp/international/mule-cmds.el (prefer-coding-system)
23988         (select-safe-coding-system-interactively)
23989         (select-safe-coding-system, activate-input-method)
23990         (toggle-input-method, describe-current-input-method):
23991         * lisp/international/mule-conf.el (code-offset):
23992         * lisp/mouse.el (minor-mode-menu-from-indicator):
23993         * lisp/replace.el (query-replace-read-from)
23994         (occur-after-change-function, occur-1):
23995         * lisp/scroll-bar.el (scroll-bar-columns):
23996         * lisp/simple.el (execute-extended-command)
23997         (undo-outer-limit-truncate, compose-mail, set-variable)
23998         (choose-completion-string, define-alternatives):
23999         * lisp/startup.el (site-run-file, tty-handle-args)
24000         (command-line, command-line-1):
24001         * lisp/subr.el (noreturn, define-error, add-to-list)
24002         (read-char-choice):
24003         * lisp/term/common-win.el (x-handle-xrm-switch)
24004         (x-handle-name-switch, x-handle-args):
24005         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
24006         Use curved quotes in diagnostics.
24007         * lisp/international/mule.el (find-auto-coding):
24008         Use " to quote in a diagnostic, to be consistent with the rest of
24009         this file.
24011         Convert lisp/term/x-win.el to UTF-8
24012         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
24013         runtime behavior, and the file is multilingual so compile-time
24014         appearance shouldn't be an issue.
24015         * admin/notes/unicode: Document this.
24017 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
24019         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
24020         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
24021         issues and comments, bug#943.
24022         (verilog-type-font-keywords): Cycle delay operators like ##1 and
24023         ##[0:$] are now highlighted in their entirety similarly to the #
24024         delay-control operator.  Likewise, the followed-by operators #-#
24025         and #=# are no longer partially highlighed.
24026         (verilog-backward-syntactic-ws-quick)
24027         (verilog-skip-backward-comments): Minor performance improvements
24028         to buffer traversal functions for reduced latency.
24029         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
24030         keyword 'final' follows 'assert/assume/cover', then it is part of
24031         a deferred immediate assertion item and should not be treated as a
24032         final construct for indentation.  Reported by Yuri Sugihara.
24033         (verilog-do-indent): Virtual task/function/class definition lines
24034         should not be considered as declarations.  Reported by Enzo Chi.
24035         (verilog-do-indent): Do not falsely indent to '=' of
24036         property/sequence operators on subsequent lines of a multi-line
24037         statement.
24038         (verilog-assignment-operator-re): Fix '!==' operator and add
24039         support for '<->', ':/', '#-#', and '#=#' operators.
24040         (verilog-calculate-indent, verilog-label-be): Enable
24041         case-sensitive regular expression parsing when looking for
24042         keywords.
24043         (verilog-calc-1): Detect 'pure virtual method' declarations which
24044         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
24045         (verilog-backward-ws&directives): When moving back to the start of
24046         a line and the preceeding line ended with an escaped-newline, then
24047         jump up one line.  This properly consumes a multi-line
24048         pre-processor directive.  Reported by Kaushal Modi.
24049         (verilog-dpi-import-export-re, verilog-extended-complete-re)
24050         (verilog-calc-1): Teach verilog-mode to properly indent after a
24051         DPI import/export statement that resides outside of a module.
24052         Reported by Kaushal Modi.
24053         (verilog-extended-complete-re): Update regexp to match both
24054         "DPI-C" and "DPI".  Reported by Kaushal Modi.
24056 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
24058         substitute-command-keys a few more doc strings
24059         * lisp/allout.el (outlineify-sticky):
24060         * lisp/files.el (hack-one-local-variable--obsolete):
24061         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
24062         Use substitute-command-keys on some doc strings so that
24063         they don't use hard-coded key bindings or quoting styles.
24065         Fix quoting in Fformat calls
24066         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
24067         (xpm_load, xpm_load_image, pbm_load, png_load_body)
24068         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
24069         (imagemagick_load, svg_load, svg_load_image, gs_load)
24070         (x_kill_gs_process):
24071         * src/lread.c (load_warn_old_style_backquotes):
24072         * src/xfaces.c (load_pixmap):
24073         * src/xselect.c (x_clipboard_manager_error_1):
24074         Quote diagnostics according to user preference when calling
24075         Fformat or its derivatives.
24077 2015-08-15  Glenn Morris  <rgm@gnu.org>
24079         * admin/admin.el (set-version, set-copyright): Remove deleted files.
24081 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
24083         Allow describe-function helpers to access buffer-local values
24084         This will be used by cedet/mode-local.el `describe-mode-local-override'
24085         on `help-fns-describe-function-functions' in upstream CEDET.
24086         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
24087         `describe-function'.
24088         (describe-function): Bind it, save it on the help xref stack.
24090         Handle pulse-background being nil
24091         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
24092         pulse-background, handle it being nil.
24094 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
24096         Fix "\`" confusion in Lisp strings
24097         * admin/authors.el (authors-canonical-author-name):
24098         Fix typo by using "\\`" not "\`" in string RE.
24099         * lisp/obsolete/complete.el (PC-complete-as-file-name):
24100         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
24101         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
24102         Use plain "`", not the equivalent-but-confusing "\`", in strings.
24103         * lisp/textmodes/texinfmt.el: Fix comment likewise.
24105 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
24107         * nt/zipdist.bat: Remove -- no longer used.
24109 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
24111         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
24112         rather than "getenforce".
24113         (tramp-sh-handle-set-file-selinux-context): Do not
24114         cache SELinux context if not all context components are given.
24116 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
24118         Add doc strings to 2 help-mode.el functions
24119         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
24120         strings.  (Bug#21263)
24122         Remove files used by the old MS-Windows specific build procedure
24123         * admin/unidata/makefile.w32-in:
24124         * doc/emacs/makefile.w32-in:
24125         * doc/lispintro/makefile.w32-in:
24126         * doc/lispref/makefile.w32-in:
24127         * doc/misc/makefile.w32-in:
24128         * leim/makefile.w32-in:
24129         * lib-src/makefile.w32-in:
24130         * lib/makefile.w32-in:
24131         * lisp/makefile.w32-in:
24132         * nt/INSTALL.OLD:
24133         * nt/config.nt:
24134         * nt/emacs-src.tags:
24135         * nt/envadd.bat:
24136         * nt/gmake.defs:
24137         * nt/makefile.w32-in:
24138         * nt/multi-install-info.bat:
24139         * nt/nmake.defs:
24140         * nt/paths.h:
24141         * src/makefile.w32-in: Files deleted.
24142         * nt/configure.bat: Remove everything except the blurb about the
24143         new build procedure.
24144         * make-dist: Remove references to makefile.w32-in in various
24145         directories, and to files in nt/ that were deleted.
24146         * etc/NEWS: Mention the fact that the files were dropped.
24148 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
24150         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
24151         (Bug#21248)
24153 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
24155         Default to inotify instead of gfile
24156         * configure.ac (with_file_notification): Fix typo that
24157         prevented suppression of file notification if HAVE_NS.
24158         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
24159         with_file_notification is 'yes' (Bug#21241).
24160         * etc/NEWS: Mention this.
24162         Fix broken URLs for ISO-IR
24163         * doc/emacs/mule.texi (Charsets):
24164         * lisp/international/mule-conf.el:
24165         Fix broken URL (Bug#21248).
24167         Low-level diagnostics now use ‘text-quoting-style’
24168         * src/doprnt.c (doprnt):
24169         Format ` and ' as per ‘text-quoting-style’.
24170         * src/xdisp.c (vmessage, message): Mention that the format should
24171         not contain ` or '.
24173         Prefer ‘format’ to ‘substitute-command-keys’
24174         * src/character.h (uLSQM, uRSQM): Move here ...
24175         * src/doc.c (uLSQM, uRSQM): ... from here.
24176         * src/doc.c (Fsubstitute_command_keys):
24177         * src/syntax.c (Finternal_describe_syntax_value):
24178         * lisp/cedet/mode-local.el (mode-local-print-binding)
24179         (mode-local-describe-bindings-2):
24180         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
24181         * lisp/cus-theme.el (describe-theme-1):
24182         * lisp/descr-text.el (describe-text-properties-1, describe-char):
24183         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
24184         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
24185         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
24186         * lisp/emacs-lisp/package.el (describe-package-1):
24187         * lisp/faces.el (describe-face):
24188         * lisp/help-fns.el (help-fns--key-bindings)
24189         (help-fns--compiler-macro, help-fns--parent-mode)
24190         (help-fns--obsolete, help-fns--interactive-only)
24191         (describe-function-1, describe-variable):
24192         * lisp/help.el (describe-mode):
24193         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
24194         to implement quoting style.  This generally makes the code simpler.
24196         Extend ‘format’ to translate curved quotes
24197         This is a followup to the recent doc string change, and deals with
24198         diagnostics and the like.  This patch is more conservative than
24199         the doc string change, in that the behavior of ‘format’ changes
24200         only if its first arg contains curved quotes and the user prefers
24201         straight or grave quotes.  (Come to think of it, perhaps we should
24202         be similarly conservative with doc strings too, but that can wait.)
24203         The upside of this conservatism is that existing usage is almost
24204         surely unaffected.  The downside is that we'll eventually have to
24205         change Emacs's format strings to use curved quotes in places where
24206         the user might want curved quotes, but that's a simple and
24207         mechanical translation that I'm willing to do later.  (Bug#21222)
24208         * doc/lispref/help.texi (Keys in Documentation):
24209         Move description of text-quoting-style from here ...
24210         * doc/lispref/strings.texi (Formatting Strings):
24211         ... to here, and describe new behavior of ‘format’.
24212         * etc/NEWS: Describe new behavior.
24213         * lisp/calc/calc-help.el (calc-describe-thing):
24214         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
24215         * lisp/info.el (Info-find-index-name):
24216         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
24217         of recently-added curved quotes.
24218         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
24219         Move from here ...
24220         * src/lisp.h: ... to here.
24221         * src/doc.c (text_quoting_style): New function.
24222         (Fsubstitute_command_keys): Use it.
24223         * src/editfns.c (Fformat): Implement new behavior.
24224         * src/lisp.h (enum text_quoting_style): New enum.
24226 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
24228         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
24229         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
24231 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
24233         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
24234         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
24236 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
24238         Flush file properties in Tramp
24239         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
24240         (tramp-sh-handle-set-file-times):
24241         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
24242         (tramp-adb-handle-set-file-times): Flush the file properties of
24243         the directory.
24245 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
24247         * doc/emacs/misc.texi (Amusements): Fixed typo.
24249 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
24251         Don't miss warnings about removing string text properties while dumping
24252         * src/alloc.c (purecopy): Warn about removing a string's text
24253         properties even when the same string was already pure-copied
24254         earlier.
24255         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
24256         (elisp--xref-format-extra): Fix the commentary.
24258 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
24260         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
24262 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
24264         * lisp/progmodes/compile.el: Use lexical-binding.
24265         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
24267 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
24269         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
24270         * lisp/uniquify.el: Remove redundant `:group's.
24272 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
24274         * lisp/net/tramp-adb.el
24275         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
24276         result to prevent modification of the tramp-cache by side effects.
24277         Use the correct cache key.
24279 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
24281         Make add_to_log varargs
24282         * src/alloc.c (run_finalizer_handler):
24283         * src/charset.c (load_charset_map_from_vector):
24284         * src/nsimage.m (ns_load_image):
24285         * src/xfaces.c (load_pixmap, load_color2):
24286         Simplify, now that add_to_log has a variable number of args.
24287         * src/image.c (image_error): Take a variable number of args.
24288         Callers simplified.
24289         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
24290         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
24291         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
24292         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
24294         Optional args for holiday-greek-orthodox-easter
24295         * etc/NEWS: Document this.
24296         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
24297         Add optional args N and STRING, mimicking the API and code of
24298         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
24300 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
24302         xref-find-definitions: Exclude more generic function items.
24303         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
24304         Add doc string.
24305         (cl--generic-find-defgeneric-regexp): New.
24306         (find-function-regexp-alist): Add it.
24307         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
24308         elisp-mode.el, change to search for ";;; Code:"
24309         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
24310         (find-function-regexp-alist): Add them.
24311         * lisp/progmodes/elisp-mode.el:
24312         (elisp--xref-format, elisp--xref-format-extra): Change back to
24313         defvar due to bug#21237.
24314         (elisp--xref-find-definitions): Exclude co-located default methods for
24315         generic functions.  Also exclude implicitly declared defgeneric.
24316         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
24317         mode variables defined by 'define-minor-mode'.
24318         * test/automated/elisp-mode-tests.el: Declare generic functions, add
24319         tests for them.
24320         (xref-elisp-test-run): Fix bug.
24321         (emacs-test-dir): Improve initial value.
24322         (find-defs-defun-defvar-el): Don't expect defvar.
24323         (find-defs-feature-el): Match change to find-feature-regexp.
24325 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
24327         Improve warning about purecopy of strings with properties
24328         * src/alloc.c (purecopy): Show the offending string with the
24329         warning about removing its text properties.
24331 2015-08-12  Alan Mackenzie  <acm@muc.de>
24333         Introduce new macros to cover Emacs's new names in cl-lib.el
24334         This also eliminates `mapcan' warnings in XEmacs.
24335         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
24336         characterise [X]Emacs versions.
24337         (top-level): Require either 'cl or 'cl-lib, depending on
24338         c--mapcan-status.
24339         Change this back to cc-external-require from an eval-when-compile
24340         require.
24341         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
24342         (c--delete-duplicates): New macros which expand into either old or new
24343         names.
24344         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
24345         rather than the old names.
24346         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
24347         rather than mapcan.
24348         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
24349         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
24350         depending on c--mapcan-status.
24351         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
24352         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
24353         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
24354         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
24355         (c-decl-block-key, c-keywords, c-keywords-obarray)
24356         (c-regular-keywords-regexp, c-primary-expr-regexp)
24357         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
24358         (c-known-type-key, c-nonlabel-token-key)
24359         (c-make-init-lang-vars-fun): Use the new macros rather than the old
24360         names.
24362 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
24364         loadhist.el (read-feature): Conform to completing-read
24365         * lisp/loadhist.el (read-feature): According to `completing-read'
24366         documentation, if collection is a list, then it must be a list of
24367         strings, not a list of symbols like before.
24369 2015-08-12  David Kastrup  <dak@gnu.org>
24371         Deal gracefully with up-events (Bug#19746)
24372         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
24373         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
24374         those may easily be injected by user-level Lisp code.
24375         (read_key_sequence): Discard unbound up-events like unbound
24376         down-events: they are even more likely only relevant for special
24377         purposes.
24378         While Emacs will not produce up-events on its own currently (those are
24379         converted to drag or click events before being converted to
24380         Lisp-readable structures), the input queue can be made to contain them
24381         by synthesizing events to `unread-command-events'.  Emacs should deal
24382         consistently with such events.
24384 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
24386         Fix display of thin lines whose newline has line-height property of t
24387         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
24388         and descent values of non-empty glyph rows, since they could have
24389         forced low values deliberately.  (Bug#21243)
24391 2015-08-12  Richard Stallman  <rms@gnu.org>
24393         Offer to combine multiple To or CC fields.
24394         * lisp/mail/sendmail.el (mail-combine-fields): New function.
24395         (mail-send): Call 'mail-combine-fields'.
24397         Don't decrypt encrypted files.
24398         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
24400         Handle encrypted mbox files.
24401         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
24402         the mbox file if necessary.
24404         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
24405         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
24406         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
24407         In a mime message, reenable Mime and show the parts that
24408         were shown before.
24409         Add keyword "decrypt" if anything decrypted.
24411         epa-inhibit inhibits auto-recognition of .gpg files
24412         * lisp/epa-file.el (epa-inhibit): New variable.
24413         (epa-file-handler): Check epa-inhibit.
24415 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
24417         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
24419 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24421         Respect python.el imenu when semantic-mode is off
24422         Fixes bug#21220
24423         * lisp/cedet/semantic/wisent/python.el: Do not force
24424         wisent-python-default-setup on python-mode-hook.
24426 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24428         Give names to Unicode code points in C code
24429         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
24430         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
24431         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
24432         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
24433         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
24434         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
24435         (OBJECT_REPLACEMENT_CHARACTER):
24436         New named constants for Unicode code points.
24437         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
24438         * src/composite.c (char_composable_p):
24439         * src/lread.c (readevalloop, read1):
24440         * src/xdisp.c (get_next_display_element):
24441         Use them.
24442         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
24443         Remove; now in character.h.
24445 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
24447         elisp--xref-find-definitions handle cl-defstuct default constructor
24448         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
24449         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
24450         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
24451         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
24452         from xref-elisp-test for ease of debugging.
24453         (xref-elisp-deftest): Rename from xref-elisp-test.
24454         (find-defs-constructor): New test.
24455         (find-defs-defgeneric-el): Match batch test config.
24456         (compile): Required for find-defs compilation-minor-mode test.
24457         (find-defs-defvar-el): Match code change.
24458         (find-defs-face-el): Match code change.
24459         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
24460         Improve doc string.
24462 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
24464         * lisp/replace.el (perform-replace): Document `replacements'.
24465         (perform-replace): Move the description of the format of `replacements'
24466         from the body's comment to the doc string.
24468 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
24470         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
24471         sequence.  Recent adb version send initial escape sequences, even
24472         when terminal type is set to TERM=dumb.
24474 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
24476         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
24477         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
24478         Function deleted.
24479         (elisp--xref-format-cl-defmethod): New defconst.
24480         (find-feature-regexp, find-alias-regexp): New defcustoms.
24481         (elisp--xref-make-xref): New function.
24482         (elisp--xref-find-definitions): Rewrite using the above, handle many
24483         more cases.  Always output all available definitions.
24484         (xref-location-marker): No need for special cases.
24485         * test/automated/elisp-mode-tests.el: Add more tests of
24486         elisp--xref-find-definitions, improve current tests.
24488 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
24490         Fix recording of events pushed onto unread-command-events
24491         * src/keyboard.c (read_char): Make sure events read from
24492         unread-command-events and unread-post-input-method-events are
24493         always recorded by record_char.  Reported by David Kastrup
24494         <dak@gnu.org>, see
24495         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
24497 2015-08-10  Samer Masterson  <samer@samertm.com>
24499         Set file buffer as current for "--file"
24500         * lisp/startup.el (command-line-1): Set file buffer as current before
24501         it is displayed so it can be used with options like "--eval".
24502         (Bug#21095)
24504 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
24506         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
24507         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
24508         after setting LC_ALL to the desired locale, to avoid affecting how
24509         numbers are read and printed.  (Bug#21223)
24511 2015-08-10  Alan Mackenzie  <acm@muc.de>
24513         Fix "Invalid search bound (wrong side of point)" in fontification
24514         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
24515         an initialization expression, check point is not beyond the
24516         fontification limit.
24518 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24520         Fix DPI calculation when Xft/DPI is default
24521         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
24522         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
24523         Remove unnecessary cast while we're in the neighborhood.
24525 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
24527         Add project-vc-search-path and project-vc-ignores
24528         * lisp/progmodes/project.el (project-vc): New group.
24529         (project-vc-search-path, project-vc-ignores): New variables.
24530         (project--value-in-dir): Utility function.
24531         (project-search-path, project-ignores): Use them.
24532         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
24533         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
24535 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24537         Fix some minor quoting issues with grave accent
24538         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
24539         Remove redundant quotes.
24540         * src/doc.c (uLSQM, uRSQM): New macros.
24541         * src/doc.c (Fsubstitute_command_keys):
24542         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
24543         preference for quotes rather than hardcoding the ‘grave’ style.
24544         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
24545         (re_match_2_internal) [DEBUG]: In debugging output, quote C
24546         strings with "...", not `...'.
24548         ChangeLog.2 ignores remote-tracking merges
24549         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
24550         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
24551         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
24553 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
24555         Use kpsewhich in ffap-latex-mode, if available
24556         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
24557         (ffap-latex-mode): Use kpsewhich if available.
24559         ffap: disallow braces in filenames for tex modes
24560         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
24561         braces in tex-related modes.
24563         Remove useless backslashes from ffap-string-at-point-mode-alist
24564         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
24565         misleading backslashes from default value.
24567         Augment docstring of ffap-string-at-point-mode-alist
24568         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
24569         and END are handled.
24571 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24573         * lisp/org/org-src.el (org-edit-src-code)
24574         (org-edit-fixed-width-region):
24575         * lisp/simple.el (completion-setup-function):
24576         Remove calls to substitute-command-keys that always just return
24577         their argument.
24579 2015-08-09  Daiki Ueno  <ueno@gnu.org>
24581         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
24582         (Bug#21210)
24584 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
24586         Fix link to source code in help window
24587         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
24588         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
24589         'No longer include timestamp in header of .elc files'.  Add code
24590         that will return .el source file in load-path.
24592 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
24594         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
24595         Respect `isearch-lax-whitespace' when searching through
24596         `isearch-word'.
24598 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
24600         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
24602         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
24603         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
24604         (org-set-regexps-and-options, org-assign-fast-keys)
24605         (org-contextualize-keys, org-contextualize-validate-key)
24606         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
24607         (org-find-olp, org-find-exact-heading-in-directory)
24608         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
24609         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
24610         (org-replace-escapes): Use dolist.
24611         (org-mode): Optimize away XEmacs-only code.
24612         (org-refile-get-targets): Remove unused var `f'.
24613         (org-fast-todo-selection): Remove unused var `e'.
24614         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
24615         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
24616         (org-format-latex): Use dolist.  Remove unused var `e'.
24617         (org-toggle-heading): Access vars lexically rather than dynamically.
24618         (org-backward-sentence, org-forward-sentence, org-meta-return)
24619         (org-kill-line): Mark arg as unused.
24620         (org-submit-bug-report): Silence compiler warning.
24621         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
24622         (org-get-cursor-date): Remove unused var `tm'.
24623         (org-comment-or-uncomment-region): Use standard name `_'.
24624         (reftex-docstruct-symbol, reftex-cite-format): Declare to
24625         silence byte-compiler.
24626         (org-reftex-citation): Add `org--' prefix to dynamically scoped
24627         `rds' var.
24629 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
24631         Electric quote if coding is undecided or no conv
24632         * lisp/electric.el (electric--insertable-p): Also say that a
24633         string is insertable if the buffer file coding system is undecided
24634         or uses no conversion, as curved quotes will work in either case.
24636         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
24638 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
24640         Fix overlay string display regressions introduced in Emacs 24.5
24641         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
24642         buffer position, if we move the iterator to a new position as
24643         result of jumping over text covered by a "replacing" display
24644         property.
24645         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
24647         Support recovery from C stack overflow on MS-Windows
24648         * src/w32fns.c (w32_reset_stack_overflow_guard)
24649         (stack_overflow_handler): New functions for handling C stack
24650         overflow exceptions.
24651         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
24652         specially, and zero out except_addr if we do.
24653         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
24654         mode.
24655         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
24656         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
24657         the MinGW build, but the code guarded by that is for Posix hosts.
24658         * src/keyboard.c (command_loop) [WINDOWSNT]:
24659         Call w32_reset_stack_overflow_guard.
24660         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
24661         (sigsetjmp): New macro.
24662         (w32_reset_stack_overflow_guard): Declare the prototype.
24663         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
24665 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
24667         Improve error signalling for seq-subseq
24668         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
24669         when indexes are too large, but to silently ignore numbers which
24670         are too negative for lists.  String and vector handling errors in
24671         both cases.  This has been regularized.  Error signaling behavior
24672         has been explicitly added to the doc string.
24674         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
24675         therefore also impacted by this change.  Update the doc string
24676         to reflect this.
24678         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
24679         added for these exceptional cases, as well as one non exceptional
24680         base case.
24682 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
24684         Improve error checking in tramp-adb.el
24685         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
24686         Improve error checking.  "ls -l" on Android in Enforcing mode can
24687         print "lstat './FILENAME failed: Permission denied".
24689 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
24691         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
24692         non-struct vectors.
24694 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
24696         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
24697         * lisp/window.el: Fix typo that broke build.
24698         (display-buffer--action-function-custom-type):
24699         Add `display-buffer-use-some-frame'.
24700         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
24702         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
24703         * lisp/window.el (display-buffer-use-some-frame): Add support for
24704         'inhibit-same-window in alist.
24705         * doc/lispref/windows.texi (display-buffer-use-some-frame):
24706         Doc support for 'inhibit-same-window in alist.
24708 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
24710         Avoid infinite loop in display of invisible text in strings
24711         * src/xdisp.c (handle_invisible_prop): If the next change of
24712         invisibility spec does not mean the beginning of a visible text,
24713         update the string position from which to start the search for the
24714         next invisibility change.  This avoids an infinite loop when we
24715         have more than one invisibility spec that are made inactive by
24716         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
24717         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
24718         for the situation that caused bug #21200.
24720 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
24722         * lisp/emacs-lisp/package.el: Simplify describe-package-1
24723         (package-help-section-name-face): New face.
24724         (package--print-help-section): New function.
24725         (describe-package-1): Refactor section printing.
24726         (package-make-button): Use face instead of font-lock-face, which
24727         doesn't work on buttons.
24729         * lisp/emacs-lisp/package.el: Define custom faces
24730         (package-name-face, package-description-face)
24731         (package-status-built-in-face, package-status-external-face)
24732         (package-status-available-face, package-status-new-face)
24733         (package-status-held-face, package-status-disabled-face)
24734         (package-status-installed-face, package-status-dependency-face)
24735         (package-status-unsigned-face, package-status-incompat-face)
24736         (package-status-avail-obso-face): New faces.
24737         (package-menu--print-info-simple): Use them.
24739 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24741         Fix some confusion with ‘format’
24742         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
24743         (allout-graphics-modification-handler):
24744         Protect arbitrary string in a format context with "%s" format.
24745         * lisp/avoid.el:
24746         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
24747         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
24748         * lisp/erc/erc-button.el (erc-button-beats-to-time):
24749         * lisp/gnus/message.el (message-send-form-letter):
24750         * lisp/org/ob-core.el (org-babel-check-evaluate)
24751         (org-babel-confirm-evaluate):
24752         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
24753         * lisp/org/ox-latex.el (org-latex-compile):
24754         * lisp/org/ox-man.el (org-man-compile):
24755         * lisp/org/ox-odt.el (org-odt-template):
24756         * lisp/org/ox-texinfo.el (org-texinfo-compile):
24757         * lisp/progmodes/prolog.el (prolog-help-info)
24758         (prolog-view-predspec):
24759         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
24760         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
24761         * lisp/textmodes/rst.el (rst-replace-lines):
24762         Change (message (format ...)) to (message ...), and likewise
24763         for ‘error’.  This lessens the probability of confusion when the
24764         output of ‘format’ contains ‘%’.
24766 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
24768         * lisp/replace.el (replace-character-fold): Default to nil.
24770         * lisp/character-fold.el: Fix lax whitespace.
24771         (character-fold-table): Don't make space match other whitespace chars.
24772         (character-fold-to-regexp): Simplify lax behavior.
24774 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
24776         Preserve window point in xref-find-definitions-other-window
24777         Fix the problem reported by Ingo Logmar in
24778         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
24779         * lisp/progmodes/xref.el (xref--goto-char): Extract from
24780         xref--goto-location.
24781         (xref--pop-to-location): Use it.  Replace xref--goto-location with
24782         a direct xref-location-marker call.
24783         (xref--show-location): Likewise.
24784         (xref--display-position): Use xref--goto-char.
24786         * lisp/progmodes/project.el: Add a paragraph to the front matter.
24788 2015-08-04  David Kastrup  <dak@gnu.org>
24790         * lisp/vc/emerge.el (emerge-show-file-name):
24791         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
24792         (vhdl-comment-insert, vhdl-hooked-abbrev):
24793         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
24794         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
24795         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
24796         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
24797         * lisp/obsolete/vip.el (vip-escape-to-emacs)
24798         (vip-prefix-arg-value, vip-prefix-arg-com):
24799         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
24800         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
24801         (quail-tibkey-update-translation):
24802         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
24803         * lisp/leim/quail/lao.el (quail-lao-update-translation):
24804         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
24805         (quail-japanese-self-insert-and-switch-to-alpha):
24806         * lisp/leim/quail/hangul.el (hangul2-input-method)
24807         (hangul3-input-method, hangul390-input-method):
24808         * lisp/language/hanja-util.el (hangul-to-hanja-char):
24809         * lisp/international/robin.el (robin-input-method):
24810         * lisp/international/quail.el (quail-start-translation)
24811         (quail-start-conversion):
24812         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
24813         (gnus-article-describe-key-briefly):
24814         * lisp/eshell/em-hist.el (eshell-list-history):
24815         * lisp/term.el (term-dynamic-list-input-ring)
24816         (term-dynamic-list-completions):
24817         * lisp/subr.el (momentary-string-display):
24818         * lisp/simple.el (read-quoted-char):
24819         * lisp/pcomplete.el (pcomplete-show-completions):
24820         * lisp/kmacro.el (kmacro-repeat-on-last-key):
24821         * lisp/info.el (Info-summary):
24822         * lisp/ehelp.el (electric-help-command-loop):
24823         * lisp/ebuff-menu.el (electric-buffer-list)
24824         (Electric-buffer-menu-exit):
24825         * lisp/double.el (double-translate-key):
24826         * lisp/comint.el (comint-dynamic-list-input-ring)
24827         (comint-dynamic-list-completions): Do not overwrite preexisting
24828         contents of `unread-command-events' when putting new events into it.
24830 2015-08-04  Daniel Colascione  <dancol@dancol.org>
24832         Improve ansi-color filtering of unrecognized escape sequences
24833         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
24834         escape sequences.
24835         (ansi-color-filter-apply, ansi-color-apply): Filter out
24836         unrecognized escape sequences.
24838 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
24840         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
24841         definitions to `easy-menu-define', improve a couple to account for
24842         async, and add a couple of new commands.
24844 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
24846         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
24848 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
24850         Add new 'calendar-weekend-days' option
24851         Make the days receiving the 'calendar-weekend-header' face freely
24852         customizable, as they differ by region/culture.
24853         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
24854         new variable.
24855         * lisp/calendar/calendar.el (calendar-generate-month): New variable
24856         calendar-weekend-days to customize day header fontification.
24858 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24860         Redo text-quoting-style variable
24861         Rename help-quote-translation to text-quoting-style,
24862         and use symbols rather than characters as values.
24863         This follows suggestions along these lines by Alan Mackenzie in:
24864         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
24865         and by Drew Adams in:
24866         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
24867         * doc/lispref/help.texi (Keys in Documentation)
24868         * etc/NEWS:
24869         * lisp/cus-start.el (standard):
24870         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
24871         Document and/or implement the new behavior instead of the old.
24872         (syms_of_doc): New symbols 'grave' and 'straight'.
24874 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
24876         nnimap.el: Use IMAP MOVE extension if available
24877         * lisp/gnus/nnimap.el (nnimap-request-move-article)
24878         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
24879         Use MOVE extension if available.
24881         nnimap.el: Explicitly ask for server capabilities
24882         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
24883         capabilities will be returned in the login-result.
24885 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
24887         Treat help strings like other doc strings
24888         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
24889         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
24890         substitute-command-keys.
24891         * src/keyboard.c (show_help_echo, parse_menu_item): Call
24892         substitute-command-keys on the help string before displaying it.
24894         Also mention "curly quotes"
24895         See Drew Adams's email in:
24896         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
24897         * doc/lispref/help.texi (Keys in Documentation):
24898         Add index entry "curly quotes".
24899         * etc/NEWS: Use the phrase "curly quotes" too.
24901         ede-proj-target-makefile docstring tweaks
24902         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
24903         Consistently use "all:" to describe the all: target,
24904         replacing three different and confusingly-quoted usages.
24906 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
24908         Don't abort emacsclientw when -a was specified
24909         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
24910         out if we are in emacsclientw and -a was specified.
24912 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
24914         Fix handling of 1st keystroke on MS-Windows
24915         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
24916         This is needed to correctly handle the session's first keystroke,
24917         if it has any modifiers.  (Bug#19994)
24919 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
24921         Substitute some customization etc. doc strings
24922         These changes apply substitute-command-keys to some
24923         doc strings that were going through untranslated
24924         when creating customization or other widgets.
24925         * lisp/cus-edit.el (custom-group-value-create):
24926         * lisp/wid-edit.el (widget-default-create):
24927         (widget-push-button-value-create):
24928         Treat the widget tag as a doc string.
24929         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
24930         Treat the :documentation value as a doc string.
24931         * lisp/wid-edit.el (widget-choose):
24932         Treat the choice names as doc strings.
24933         (widget-default-create): Treat the :doc value as a doc string.
24934         (widget-toggle-value-create): Treat the :on and :off values
24935         as doc strings.
24936         (widget-documentation-string-value-create):
24937         Substitute the doc string.
24939 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
24941         Add a second argument to project-ignores
24942         * lisp/progmodes/project.el (project-ignores): Add a second
24943         argument DIR.
24944         * lisp/progmodes/project.el (project-ignores): Only include the VC
24945         ignores if DIR is the VC root.
24946         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
24948 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
24950         Prevent incorrect display when 'line-spacing' variable is set
24951         * src/xdisp.c (try_window_id): Give up this optimization if the
24952         buffer has its 'line-spacing' variable set non-nil.
24954 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
24956         Don't pass NOVISIT to find-file
24957         * lisp/progmodes/etags.el (next-file):
24958         Don't pass NOVISIT to find-file (bug#21175).
24960         Ignore buffer restriction for tags-loop-eval
24961         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
24962         restriction (bug#21167).
24964 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
24966         Fix a thinko in 'ffap-gopher-at-point'
24967         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
24969         Honor 'line-spacing' for empty lines
24970         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
24971         property and 'line-spacing' frame parameter or variable or
24972         property for empty lines, by doing the same processing as in
24973         x_produce_glyph for newline characters.  (Bug#21165)
24975 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
24977         Simplify by assuming C99 integer division
24978         * src/floatfns.c (ceiling2, floor2, truncate2):
24979         Assume C99 (i.e., Fortran) semantics for integer division.
24980         This simplifies the code.
24982 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
24984         Don't overflow if computing approximate percentage
24985         * lisp/align.el (align-region):
24986         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
24987         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
24988         * lisp/cus-edit.el (custom-buffer-create-internal):
24989         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
24990         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
24991         (checkdoc-next-message-error):
24992         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
24993         * lisp/epa.el (epa-progress-callback-function):
24994         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
24995         * lisp/ffap.el (ffap-menu-rescan):
24996         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
24997         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
24998         * lisp/gnus/nneething.el (nneething-retrieve-headers):
24999         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
25000         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
25001         * lisp/gnus/nnml.el (nnml-retrieve-headers):
25002         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
25003         * lisp/gnus/nntp.el (nntp-retrieve-headers)
25004         (nntp-retrieve-articles):
25005         * lisp/imenu.el (imenu--relative-position):
25006         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
25007         (skkdic-convert-okuri-nasi):
25008         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
25009         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
25010         * lisp/org/org-list.el (org-update-checkbox-count):
25011         * lisp/org/org.el (org-table-map-tables)
25012         (org-update-parent-todo-statistics):
25013         * lisp/play/decipher.el (decipher-insert-frequency-counts)
25014         (decipher-analyze-buffer):
25015         * lisp/profiler.el (profiler-format-percent):
25016         * lisp/progmodes/cc-cmds.el (c-progress-update):
25017         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
25018         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
25019         (idlwave-list-load-path-shadows):
25020         * lisp/progmodes/opascal.el (opascal-step-progress):
25021         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
25022         (vhdl-scan-directory-contents):
25023         * lisp/textmodes/bibtex.el (bibtex-progress-message):
25024         * lisp/textmodes/flyspell.el (flyspell-small-region)
25025         (flyspell-external-point-words):
25026         * lisp/textmodes/table.el (table-recognize):
25027         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
25028         progress-report percentages and the like.  This avoids problems
25029         if (* 100 NUMERATOR) would overflow.
25030         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
25031         * lisp/gnus/registry.el (registry-reindex):
25032         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
25033         * lisp/descr-text.el (describe-char):
25034         * lisp/org/org-colview.el (org-nofm-to-completion):
25035         * lisp/ps-print.el (ps-plot):
25036         * lisp/simple.el (what-cursor-position):
25037         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
25038         more-complicated and less-accurate approximation.
25040         Fix some int overflows in profiler.c
25041         * src/profiler.c (make_log): Make args EMACS_INT, not int,
25042         to avoid unwanted behavior on 'int' overflow.
25043         (make_log, evict_lower_half, record_backtrace):
25044         Use ptrdiff_t, not int, for object indexes.
25046         Port to pedantic memcpy
25047         * src/keyboard.c (menu_bar_items, tool_bar_items):
25048         * src/xrdb.c (magic_db):
25049         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
25051         Merge from gnulib
25052         This incorporates:
25053         2015-07-29 time_rz: port to pedantic memcpy
25054         * lib/time_rz.c: Copy from gnulib.
25056 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
25058         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
25059         When updating the very last entry, tabulated-list-print would
25060         erase it and then try to look at the next one (which obviously
25061         isn't there).
25063 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
25065         Allow to use the old key processing code on MS-Windows
25066         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
25067         New variable.
25068         (w32_wnd_proc): Use it to invoke the old code that processed
25069         character keys, as fallback, when this variable is non-nil.
25070         Fix typos in comments.  (Bug#19994)
25072 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
25074         Improve handling of Unicode keyboard input on MS-Windows
25075         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
25076         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
25077         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
25078         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
25079         successful, don't call TranslateMessage.  (Bug#19994)
25081 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
25083         Fix default-directory in changeset diffs after vc-print-log
25084         * lisp/vc/log-view.el (log-view-diff-common): Move the
25085         revision-granularity check back into log-view-diff-changeset.
25086         (log-view-diff-changeset): Bind default-directory to the current
25087         VC root.
25089         Rename project-directories to project-roots
25090         * lisp/progmodes/project.el (project-search-path-function)
25091         (project-search-path): Update the docstring.
25092         (project-directories): Rename to `project-roots', update all
25093         callers and implementations accordingly.
25094         (project-root): Remove.
25095         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
25096         as the default file mask.
25098 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
25100         Support long URLs in w32-shell-execute
25101         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
25102         and filename_to_ansi to convert the DOCUMENT argument, as it could
25103         be a URL that is not limited to MAX_PATH characters.  Instead, use
25104         MultiByteToWideChar directly, and allocate heap storage as
25105         required to accommodate the converted string.  Likewise with
25106         non-Unicode operation.  Ensure OPERATION is null-terminated, even
25107         if it is longer than 32K bytes.  (Bug#21158)
25109 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
25111         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
25113 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
25115         Add docs for display-buffer action display-buffer-use-some-frame
25116         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
25117         * doc/lispref/windows.texi (Display Action Functions):
25118         Add display-buffer-use-some-frame.
25119         * etc/NEWS: Mention display-buffer-use-some-frame.
25121         Add display-buffer action display-buffer-use-some-frame
25122         * lisp/window.el (display-buffer-use-some-frame): New.
25124         Handle vc-mtn error more gently
25125         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
25126         branch is nil.
25128 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
25130         Fix Tramp problems with multihops, and nc
25131         * lisp/net/tramp-cache.el (tramp-get-file-property)
25132         (tramp-set-file-property, tramp-flush-file-property)
25133         (tramp-get-connection-property, tramp-set-connection-property)
25134         (tramp-flush-connection-property): Remove hop from vector.
25135         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
25136         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
25137         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
25138         netstat to 60".
25139         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
25140         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
25141         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
25142         Keep hop in result.
25143         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
25144         Add hop tests.
25146 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
25148         Resurrect highlighting of repeated words by Flyspell Mode
25149         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
25150         characters between point and the doublon candidate, so that
25151         flyspell-word-search-backward finds it.  (Bug#21157)
25153         Fix redisplay of large images on expose events
25154         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
25155         between signed negative values and unsigned values.  This
25156         prevented redisplay on expose events when the window showed a very
25157         large image.
25159 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
25161         Remove unnecessary stack overflow dependency
25162         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
25163         Don't worry about $ac_cv_header_sys_resource_h and
25164         $ac_cv_func_getrlimit, as they're no longer needed for this.
25165         Problem reported by Eli Zaretskii in:
25166         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
25168 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
25170         Pacify compilation -Wincompatible-pointer-types warnings
25171         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
25172         warning.
25173         (CompareStringW_Proc): New typedef.
25174         (w32_compare_strings): Use it, to pacify compiler warnings under
25175         "-Wincompatible-pointer-types".
25176         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
25177         (GetDiskFreeSpaceExA_Proc): New typedefs.
25178         (Ffile_system_info): Use them, to pacify compiler warnings under
25179         "-Wincompatible-pointer-types".
25181 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
25183         Fix subscript error in calculate_direct_scrolling
25184         Use slightly-longer cost vectors.  Without this change,
25185         calculate_direct_scrolling can have a subscript violation when
25186         FRAME_LINES (frame) <= delta.
25187         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
25188         (line_ins_del, do_line_insertion_deletion_costs):
25189         Allocate and use slightly-larger cost vectors, ones based on
25190         FRAME_TOTAL_LINES instead of FRAME_LINES.
25192         Fix uninitalized value in encode_coding_object
25193         * src/coding.c (encode_coding_object): Also initialize
25194         coding->src_pos and coding->src_pos_byte when NILP (src_object).
25195         This avoids later use of uninitialized storage.
25197 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
25199         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
25200         (Bug#21141)
25202 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
25204         Merge from gnulib
25205         This incorporates:
25206         2015-07-27 time_rz: port better to MinGW
25207         2015-07-27 time: port __need_time_t to MinGW
25208         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
25209         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
25210         * lib/time-internal.h: New file, from gnulib.
25212 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
25214         Handle NULL pointers in w32heap.c allocation routines
25215         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
25216         freeable".
25217         (realloc_after_dump, realloc_before_dump, free_before_dump):
25218         Handle NULL pointers gracefully, as Emacs now seems to expect that.
25220         Fix Cairo build without PNG
25221         * src/image.c: Define PNG function when USE_CAIRO is defined, even
25222         if HAVE_PNG is not.  (Bug#21133)
25224         MS-Windows follow-up for recent TZ-related changes
25225         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
25226         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
25227         picking up 'struct timespec' from pthread.h, if it is installed on
25228         the user's system.  We want either the definitions from MinGW
25229         system headers, if available, or the Gnulib replacements if not.
25230         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
25231         lib/time.h.
25232         * lib/time.in.h: Don't let __need_* symbols affect what happens on
25233         MinGW.  These symbols are defined by MinGW system headers, but we
25234         don't want that to affect whether Gnulib portions of the header
25235         are or aren't used.
25237 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
25239         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
25241         New optional ZONE arg for format-time-string etc.
25242         This simplifies time conversions in other time zones.
25243         It also prevents display-time-world tampering with TZ (Bug#21020).
25244         * admin/admin.el (add-release-logs):
25245         Use improved add-log-time-format API.
25246         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
25247         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
25248         * configure.ac (tzalloc): Remove test for this, since
25249         Emacs no longer uses HAVE_TZALLOC directly.
25250         * doc/lispref/os.texi (Time of Day, Time Conversion)
25251         (Time Parsing):
25252         * etc/NEWS: Document the new behavior.
25253         Merge from gnulib, incorporating:
25254         2015-07-25 strftime: fix newly-introduced bug on Solaris
25255         2015-07-23 fprintftime, strftime: use timezone_t args
25256         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
25257         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
25258         * m4/time_h.m4:
25259         Update from gnulib.
25260         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
25261         New files from gnulib.
25262         * lisp/time-stamp.el (time-stamp-string):
25263         * lisp/time.el (display-time-world-list)
25264         (display-time-world-display):
25265         Use new API, with time zone arg.
25266         * lisp/time.el (display-time-world-display):
25267         Fix race when current-time advances while we're running.
25268         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
25269         (add-log-iso8601-time-string): Accept optional time zone arg.
25270         * lisp/vc/add-log.el (add-change-log-entry):
25271         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
25272         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
25273         Add rules for the time module, since they're now needed
25274         for tzalloc etc.
25275         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
25276         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
25277         * src/editfns.c: Include errno.h.
25278         (set_time_zone_rule): Omit unnecessary forward decl.
25279         (initial_tz): Remove, replacing with ...
25280         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
25281         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
25282         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
25283         (tzlookup): New static functions.
25284         (init_editfns): New arg DUMPING.  All uses changed.
25285         (init_editfns): Omit most initialization if dumping, not if
25286         !initialized.  Initialize wall_clock_tz and local_tz.
25287         (emacs_nmemftime, format_time_string): Time zone argument can now
25288         be any time zone, not just a boolean for UTC or local time.  All
25289         callers changed.
25290         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
25291         (Fcurrent_time_zone): New optional arg ZONE.
25292         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
25293         the same form as with the other new additions.
25294         (decode_time_zone): Remove; no longer needed.
25295         (tzvalbuf): Now file-scope.
25296         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
25297         (syms_of_editfns): Define Qwall.
25298         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
25299         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
25300         [!HAVE_TZALLOC]:
25301         Remove; now supplied by gnulib.
25302         * src/emacs.c (main):
25303         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
25305 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
25307         Fix infinite loop in delete-consecutive-dups
25308         * lisp/subr.el (delete-consecutive-dups): Work even if the last
25309         element is nil (Bug#20588).  Avoid rescan of a circular list in
25310         deletion of last element.
25312 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
25314         Have `x-frame-geometry' return nil for terminal and initial
25315         frames (Bug#21132)
25316         * src/nsfns.m (Fx_frame_geometry):
25317         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
25318         terminal frames.
25319         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
25320         (Fx_frame_geometry): Return nil for terminal frames
25322 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
25324         * etc/tutorials/TUTORIAL.ja: Improve translation.
25326 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
25328         Avoid crashes when w32 GUI functions are called in -batch
25329         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
25330         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
25331         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
25333         Fix flyspell-check-previous-highlighted-word
25334         * lisp/textmodes/flyspell.el
25335         (flyspell-check-previous-highlighted-word): Really accept a
25336         numeric argument, as the doc string describes.  Fix an off-by-one
25337         error in looking up overlays, so invocation with point immediately
25338         after a word would check that word.  Clarify the doc string as
25339         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
25341 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
25343         Minor cleanup in tramp-tests.el
25344         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
25345         Implement using the documented interface
25346         `tramp-connection-properties', rather than with internal functions.
25348 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
25350         Pass lambdas to `skeleton-read'
25351         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
25352         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
25353         lambdas to `skeleton-read' (bug#20386).
25355 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
25357         * INSTALL (DETAILED BUILDING AND INSTALLATION):
25358         Mention --without-imagemagick.
25360         Don't require GUI frames and mouse for Flyspell menus
25361         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
25362         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
25363         support, since pop-up menus work with text terminals and can be
25364         controlled via the keyboard.
25366         Improve documentation of Flyspell commands
25367         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
25368         can be invoked via the keyboard.  Mention those commands by name
25369         and add them to the fn index.  (Bug#21125)
25371 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
25373         Fix some Tramp problems with HP-UX
25374         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
25375         Add "tab0" to stty call.
25376         * test/automated/tramp-tests.el (tramp-persistency-file-name):
25377         Set to nil.
25378         (tramp--test-hpux-p): New defun.
25379         (tramp--test-utf8): Use it.
25381 2015-07-22  Glenn Morris  <rgm@gnu.org>
25383         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
25385 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
25387         Fix point positioning in ffap-next-guess
25388         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
25389         as our callers expect.  This was clobbered as part of fixing
25390         bug#5673.  (Bug#21107)
25391         (ffap-gopher-at-point): Set ffap-string-at-point-region.
25393 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
25395         * lisp/window.el (even-window-sizes): Fix customization type.
25397         Optionally even widths of `display-buffer' windows.  (Bug#21100)
25398         * lisp/window.el (quit-restore-window): Restore width if
25399         requested.
25400         (display-buffer-record-window): Record width when window is
25401         reused and horizontally combined.
25402         (even-window-sizes): New option to allow evening window widths.
25403         (even-window-heights): Defalias to `even-window-sizes'.
25404         (window--even-window-heights): Rename to
25405         `window--even-window-sizes'.  Handle side-by-side windows.
25406         (display-buffer-use-some-window): Call `window--even-window-sizes'
25407         instead of `window--even-window-heights'.
25408         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
25409         * doc/lispref/windows.texi (Choosing Window Options): Describe
25410         `even-window-sizes'.
25411         (Coordinates and Windows): Fix typo.
25413 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
25415         Add file name to autoload error messages
25416         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
25417         Add condition-case to add file name to error message.
25419 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
25421         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
25422         Use 0.0.0.1 as test host.
25424 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25426         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
25427         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
25428         Fix inf-loop (bug#21083).
25430 2015-07-21  Glenn Morris  <rgm@gnu.org>
25432         * test/automated/package-test.el (package-test-signed):
25433         Update for recent changes.
25435         * test/automated/elisp-mode-tests.el
25436         (elisp-xref-finds-both-function-and-variable)
25437         (elisp-xref-finds-only-function-for-minor-mode):
25438         Update for recent xref name changes.
25440 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
25442         Make eldoc timer non-repeatable
25443         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
25444         non-repeatable.  Since it's on post-command hook, that just wasted
25445         CPU cycles.
25447 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
25449         Mention `tramp-connection-properties' in NEWS
25451         Sync with Tramp repository
25452         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
25453         required prior changing its configuration.
25454         (Connection caching, Predefined connection information)
25455         (Remote shell setup): Fix typos.
25456         (Predefined connection information): Describe, how to overwrite
25457         parameters of `tramp-methods'.
25458         (Remote programs, Remote processes, Traces and Profiles):
25459         Simplify example.
25460         (Remote programs): Remove superfluous comment.
25461         * doc/misc/trampver.texi: Update release number.
25462         * lisp/net/tramp-cache.el (tramp-connection-properties):
25463         Adapt docstring.
25464         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
25465         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
25466         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
25467         "gvfs-mkdir -p ..." does not work robust.
25468         (tramp-gvfs-maybe-open-connection):
25469         Adapt `tramp-get-method-parameter' call.
25470         * lisp/net/tramp-sh.el (tramp-methods):
25471         Add `tramp-remote-shell-login' parameter where it fits.
25472         (tramp-get-remote-path): Use it.
25473         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
25474         (all): Adapt `tramp-get-method-parameter' calls.
25475         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
25476         (tramp-get-method-parameter): Replace argument METHOD by VEC.
25477         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
25478         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
25479         (all): Adapt `tramp-get-method-parameter' calls.
25480         * lisp/net/trampver.el: Update release number.
25481         * test/automated/tramp-tests.el (tramp--instrument-test-case):
25482         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
25483         (tramp-test13-make-directory, tramp--test-adb-p)
25484         (tramp--test-smb-or-windows-nt-p): Simplify.
25485         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
25486         (tramp--test-special-characters): Fix docstring.  Add gvfs and
25487         ftp tests.
25488         (tramp--test-utf8): Fix docstring.
25490 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
25492         Add new xref-query-replace command
25493         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
25494         New function, extracted from xref-pulse-momentarily.
25495         (xref-query-replace): New command.
25496         (xref--query-replace-1): New helper function.
25497         (xref--xref-buffer-mode-map): Add `r' binding.
25499 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
25501         Simplify icalendar decoding of Z dates
25502         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
25503         Simplify calculation of time strings with trailing "Z".
25505 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
25507         Do not corrupt grep-find-ignored-files
25508         * lisp/progmodes/project.el (project-ignores): Change the order of
25509         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
25511         Add xref-match-item, and use it
25512         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
25513         (xref-file-location): Add reader for the column slot.
25514         (xref-match-item): New class.
25515         (xref-match-bounds): A method implementation for it.
25516         (xref-make-match): New constructor function.
25517         (xref--current-item): New private variable.
25518         (xref-pulse-momentarily): Use it.
25519         (xref--pop-to-location): Change the first argument to an xref
25520         item, instead of location, bind xref--current-item.
25521         Update all callers.
25522         (xref-next-line, xref-prev-line, xref--next-error-function)
25523         (xref--mouse-2): Look for the property `xref-item',
25524         instead of `xref-location'.
25525         (xref--item-at-point): Likewise.  This function replaces
25526         `xref-location-at-point'.  Update all callers.
25527         (xref--insert-xrefs): Add the `xref-item' text property, instead
25528         of `xref-location'.
25529         (xref--collect-match): Use xref-make-match.
25531         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
25532         Update all references.
25534         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
25535         slot to `summary'.
25537         vc-hg: Perform the print-log call asynchronously
25538         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
25539         asynchronously (bug#21067).
25541         Add xref-after-jump-hook and xref-after-return-hook
25542         * lisp/progmodes/xref.el (xref-after-jump-hook)
25543         (xref-after-return-hook): New hooks.
25544         (xref-pulse-on-jump): Remove, in favor of the above.
25545         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
25546         (xref--pop-to-location, xref--display-position)
25547         (xref-pop-marker-stack): Use the new hooks, as requested in
25548         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
25550 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
25552         * lisp/progmodes/js.el (js-mode): Correct the lighter.
25554 2015-07-19  Leo Liu  <sdl.web@gmail.com>
25556         Fix a bug in cfengine3-mode
25557         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
25558         eldoc-documentation-function.
25560 2015-07-18  Julien Danjou  <julien@danjou.info>
25562         sieve-mode: support "body" test command
25563         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
25564         Add missing "body" test command.
25566 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
25568         Fix info-apropos when the default encoding is Latin-N
25569         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
25570         'undecided', so that it is set to the encoding of the Info file we
25571         are about to insert.  Otherwise, 'info-apropos' will fail to find
25572         some index nodes in some UTF-8 encoded files, if the buffer's
25573         previous encoding is Latin-N or some such.
25575 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
25577         * lisp/epg.el (epg--start): Check that gpgconf can be found
25578         before calling it.
25580         Expose more file types to OS X that Emacs understands
25581         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
25582         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
25584 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
25586         Fix visual-order cursor movement when lines are truncated
25587         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
25588         simulate display in a window of infinite width, to allow move_it_*
25589         functions reach positions outside of normal window dimensions.
25590         Remove code that tried to handle a subset of these situations by
25591         manual iteration of buffer text.  (Bug#17777)
25593         Fix following Info cross-references to anchors
25594         * lisp/info.el (Info-read-subfile): Add to the returned value the
25595         length of subfile preamble, after converting it to file's byte
25596         offset, as expected by the caller.  Use bufferpos-to-filepos.
25597         (Info-find-node-2): If searching for a node with a
25598         1000-character slop fails, try again with a 10000-character slop,
25599         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
25600         * lisp/international/mule-util.el (bufferpos-to-filepos): New
25601         function.
25602         * etc/NEWS: Mention bufferpos-to-filepos.
25604         Fix scrolling backwards on TTY frames under scroll-conservatively
25605         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
25606         in moving backwards on TTY frames.  (Bug#21080)
25608 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
25610         Consider a jsdoc tag to be a beginning of a paragraph as well
25611         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
25612         consider a jsdoc tag to be a beginning of a paragraph as well.
25614 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
25616         * lisp/emacs-lisp/package.el: Fix warnings.
25618         * lisp/emacs-lisp/package.el (package-buffer-info):
25619         Add author and maintainers to `package-buffer-info'.
25621         * lisp/emacs-lisp/package.el: Many small changes.
25622         Replace all instances of 'face with 'font-lock-face.
25623         (describe-package-1): Improve some strings and move the summary
25624         up the list.
25625         (package-install-file): Update docstring.
25626         (package-menu-hide-package): Bind to `H'.
25628         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
25629         Fix error handling.
25631 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
25633         Fix hang with large yanks This should fix the bug fixed by Mike
25634         Crowe's patch in:
25635         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
25636         A problem in this area has been reported by several users; see
25637         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
25638         This fix differs from Mike Crowe's patch in that it should avoid a
25639         race condition that could lose SIGIO signals.  ignore_sigio dates
25640         back to the 1980s when some platforms couldn't block signals, and
25641         could only ignore them, which led to races when signals arrived
25642         while being ignored.  We shouldn't have to worry about those old
25643         platforms now.
25644         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
25645         * src/emacs.c (shut_down_emacs):
25646         Don't call ignore_sigio; unrequest_sigio should suffice.
25647         * src/keyboard.c (kbd_buffer_store_buffered_event):
25648         Use unrequest_sigio, not ignore_sigio.
25649         (kbd_buffer_get_event):
25650         Call request_sigio when getting the ball rolling again.
25652 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
25654         * lisp/obsolete/longlines.el (longlines-search-function):
25655         Fallback on `isearch-search-fun-default'.
25657 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
25659         Support @-mentions
25660         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
25661         of mentions/messages with @nick instead of just nick.
25663 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
25665         Fix bug#20943
25666         * lisp/autorevert.el (auto-revert-handler): Do not check for
25667         `buffer-modified-p'.
25668         * lisp/files.el (buffer-stale--default-function): Check for
25669         `buffer-modified-p'.
25670         * test/automated/auto-revert-tests.el
25671         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
25673 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
25675         Fix delete-dups bug on long lists
25676         * lisp/subr.el (delete-dups):
25677         Don't mistakenly keep some dups when applied to long lists.
25679 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
25681         Better heuristic for C stack overflow
25682         Improve the heuristic for distinguishing stack overflows from
25683         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
25684         the getrlimit method wasn't portable to Cygwin; see:
25685         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
25686         Corinna suggested pthread_getattr_np but this also has problems.
25687         Instead, replace the low-level system stuff with a simple
25688         heuristic based on known good stack addresses.
25689         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
25690         * src/sysdep.c: Don't include <sys/resource.h>.
25691         (stack_direction): Remove.  All uses removed.
25692         (stack_overflow): New function.
25693         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
25694         Make SEGV fatal in non-main threads.
25696 2015-07-16  Daiki Ueno  <ueno@gnu.org>
25698         epg: Automatically start pinentry server
25699         * lisp/epg-config.el (epg-gpgconf-program): New variable.
25700         * lisp/epg.el (epg--start): Call `pinentry-start' if
25701         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
25703 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
25705         * lisp/gnus/nnimap.el: Fix my last bogus change.
25706         Reinstall Stefan Monnier's change that was made in
25707         <83d824bc4041332f338ad7e5e830f443535aa300>.
25709 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
25711         Merge from gnulib
25712         This incorporates:
25713         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
25714         2015-07-05 acl-permissions: Fix on FreeBSD
25715         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
25716         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
25717         * lib/set-permissions.c: Copy from gnulib.
25719         Port to stricter C99
25720         * src/keyboard.h (kbd_buffer_store_event_hold):
25721         Don't return a void expression.
25723 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
25725         * doc/emacs/frames.texi (Creating Frames):
25726         Fix the command `C-x 5 m' runs.
25728 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
25730         New autorevert tests
25731         * test/automated/auto-revert-tests.el: New file.
25733 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
25735         Clear gcprolist etc. after stack overflow
25736         After stack overflow, command_loop calls init_eval, and this needs to
25737         clear gcprolist and byte_stack_list (Bug#20996).
25738         * src/alloc.c (init_alloc):
25739         Move gcprolist and byte_stack_list initialization from here ...
25740         * src/eval.c (init_eval): ... to here.
25742 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
25744         * doc/emacs/windows.texi (Pop Up Window): Fix the description
25745         of `C-x 4 m'.
25747 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25749         Avoid deprecated enums in mac-ct font backend driver
25750         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
25751         (mac_ctfont_get_advance_width_for_glyph)
25752         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
25754         Cache font family in mac-ct font backend driver
25755         * src/macfont.m (macfont_family_cache): New variable.
25756         (syms_of_macfont): Initialize it.
25757         (macfont_available_families_cache): New variable.
25758         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
25759         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
25760         (macfont_handle_font_change_notification)
25761         (macfont_init_font_change_handler)
25762         (macfont_copy_available_families_cache): New functions.
25763         (macfont_create_family_with_symbol): Use font family caches.
25764         (macfont_list, macfont_list_family):
25765         Use macfont_copy_available_families_cache instead of
25766         mac_font_create_available_families.
25768 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
25770         Show the default value in the prompt
25771         * lisp/progmodes/xref.el: Add `M-?' binding for
25772         xref-find-references.  Declare functions `grep-read-files' and
25773         `grep-expand-template'.
25774         (xref--read-identifier): Show the default value in the prompt.
25776         * lisp/progmodes/xref.el (xref-find-regexp): When called with
25777         prefix argument, ask for file patterns to search as well.  When
25778         prompting for the directory, require an existing one.
25779         (xref-collect-matches): Add a new argument, FILES.  Use it in the
25780         above function.
25782         Add `project-ignores'
25783         * lisp/progmodes/project.el (project-ignores): New generic
25784         function, and an implementation for the VC project type.
25785         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
25786         variant of rgrep-default-command that handles a generic list of
25787         ignores.
25788         (xref-collect-matches): Use it, and pass through to it the value
25789         of the newly added argument.
25790         (xref-find-regexp): Handle ignored paths within the project.
25791         Remove outdated comment.
25792         * lisp/vc/vc.el (vc-default-ignore-completion-table):
25793         Skip the comments and the empty lines.
25795 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
25797         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
25799 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
25801         gnus-registry.el: Correct function argument order
25802         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
25803         Reverse the order of function arguments.
25805 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
25807         Bind grep-highlight-matches to nil
25808         * lisp/progmodes/xref.el (xref-collect-matches):
25809         Bind grep-highlight-matches to nil (bug#20728).
25811 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
25813         nnimap.el: Fix IMAP message size parsing
25814         * lisp/gnus/nnimap.el (nnimap-transform-headers):
25815         Don't assume that UID comes before RFC822.SIZE.
25817 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
25819         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
25820         (auth-source-creation-prompts): Declare.
25821         (nnimap-retrieve-headers, nnimap-status-message)
25822         (nnimap-request-create-group, nnimap-request-delete-group)
25823         (nnimap-close-group, nnimap-request-move-article)
25824         (nnimap-request-accept-article, nnimap-request-newgroups)
25825         (nnimap-request-post, nnimap-dummy-active-number)
25826         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
25827         (nnimap-parse-flags): Remove unused var `p'.
25828         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
25829         (nnimap-flags-to-marks): Remove unused var `totalp'.
25831 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
25833         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
25835 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25837         * src/macfont.m (macfont_list): Ignore font families lacking
25838         font descriptors.
25840 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
25842         Don't check the exit status, it can be misleading
25843         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
25844         exit status, it can be misleading.
25846         Introduce a Project API
25847         * lisp/progmodes/project.el: New file.
25848         * lisp/cedet/ede.el (project-try-ede): New function.
25849         (project-root): New implementation.
25850         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
25851         Set project-search-path-function.
25852         (elisp--xref-find-references): Delegate some logic to
25853         project-search-path.
25854         (elisp-search-path): New function.
25855         (elisp-xref-find): Don't implement `matches' anymore.
25856         * lisp/progmodes/etags.el: Don't implement `matches'.
25857         Delegate some logic to project-search-path.
25858         (etags-search-path): New function.
25859         * lisp/progmodes/xref.el (xref-find-function):
25860         Remove `matches' from the API.
25861         (xref-find-regexp): Move whatever common logic was in elisp and
25862         etags implementations, and search the directories returned by
25863         project-directories and project-search-path.
25865 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
25867         * test/automated/map-tests.el (test-map-delete-return-value):
25868         Uncomment test.
25870         Add support for gv.el in map.el
25871         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
25872         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
25873         * test/automated/map-tests.el: Update tests to work with the new
25874         implementations of map-elt and map-put.
25876 2015-07-09  Glenn Morris  <rgm@gnu.org>
25878         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
25880 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
25882         Syntax-propertize until the end of the line first
25883         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
25884         until the end of the line first.
25886 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
25888         * doc/emacs/files.texi (File Archives): Add a cross reference.
25890 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
25892         nnimap.el: Handle plain value for nnimap-stream
25893         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
25894         capabilities, so that a 'plain value for the `nnimap-stream' server
25895         variable is handled correctly.
25896         * doc/misc/gnus.texi (Customizing the IMAP Connection):
25897         Document the 'plain option.
25899 2015-07-08  Leo Liu  <sdl.web@gmail.com>
25901         Fix bug in thing-at-point--bounds-of-well-formed-url
25902         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
25903         sure boundary contains current point.
25905 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
25907         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
25908         in the end.
25910         Declare whitespace-line-column a safe file-local
25911         * lisp/whitespace.el (whitespace-line-column): Declare to be a
25912         safe file-local when the value is an integer.
25914 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
25916         gnus-group.el: Check if group names are already strings
25917         * lisp/gnus/gnus-group.el (gnus-group-group-name):
25918         The group name may already be a string.
25919         Specifically, in the group list reached from the *Server* buffer,
25920         the 'gnus-group text property returns a string.  Everywhere else
25921         it returns a symbol.
25923         nnimap.el: Remove unused let variables
25924         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
25926 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
25928         Support "maximized" property of runemacs's shortcut
25929         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
25930         the '--maximized' switch to Emacs.
25932         Support "minimized" property of runemacs's shortcut
25933         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
25934         pass the '--iconic' switch to Emacs.  (Bug#20991)
25936 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
25938         Doc fixes
25939         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
25940         C-w' in Diff mode.
25941         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
25942         Add a cross reference.
25944 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
25946         * lisp/obsolete/landmark.el: Add Obsolete-since header.
25948 2015-07-07  Glenn Morris  <rgm@gnu.org>
25950         * test/automated/ert-tests.el (ert-test-deftest):
25951         Update for recent changes.
25953 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
25955         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
25956         * lisp/emacs-lisp/gv.el (gv-setter): New function.
25957         (gv-invalid-place): New error.
25958         (gv-get): Use them.
25959         (gv-synthetic-place, gv-delay-error): New places.
25960         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
25961         (cl-defgeneric, cl-defmethod): Use gv-setter.
25963 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
25965         Make vc-tests work with MSYS svn program
25966         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
25967         svn is an MSYS program.
25969 2015-07-07  Ken Brown  <kbrown@cornell.edu>
25971         Improve recent change to emacsclient on Cygwin
25972         * lisp/server.el (server-process-filter): Remove redundant check
25973         that 'cygwin-convert-file-name-from-windows' is defined as a
25974         function on Cygwin.  Don't call that function unless its argument
25975         starts with a drive letter.
25977 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25979         * lisp/emacs-lisp/package.el (package-compute-transaction):
25980         Fix void variable due to `found-something' being in the wrong `let'.
25982 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
25984         * lisp/play/landmark.el: Move to lisp/obsolete/.
25986 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
25988         Have `x-show-tip' handle `right' and `bottom' frame parameters
25989         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
25990         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
25991         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
25992         tooltips also via `right' and `bottom' frame parameters.
25994 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
25996         Add online-help support to describe types
25997         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
25998         (describe-symbol): Improve the selection of default.
25999         * lisp/help-mode.el: Require cl-lib.
26000         (describe-symbol-backends): Move from help-fns.el.
26001         (help-make-xrefs): Use it.
26002         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
26003         for types.
26004         (cl--typedef-regexp): New const.
26005         (find-function-regexp-alist): Add entry for types.
26006         (cl-help-type, cl-type-definition): New buttons.
26007         (cl-find-class): New function.
26008         (cl-describe-type): New command.
26009         (cl--describe-class, cl--describe-class-slot)
26010         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
26011         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
26012         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
26013         New functions.  Moved from eieio-opt.el.
26014         (cl--generic-class-parents): New function, extracted from
26015         cl--generic-struct-specializers.
26016         (cl--generic-struct-specializers): Use it.
26017         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
26018         Improve constructor's docstrings.
26019         (cl-struct-unknown-slot): New error.
26020         (cl-struct-slot-offset): Use it.
26021         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
26022         definition in current-load-list.
26023         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
26024         (eieio--add-new-slot): Set it.
26025         (eieio-defclass-internal): Use new name for current-load-list.
26026         (eieio-oref): Add compiler-macro to warn about unknown slots.
26027         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
26028         as compile-time as well.  Improve constructor docstrings.
26029         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
26030         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
26031         (eieio-class-def): Remove button.
26032         (eieio-help-constructor): Use new name for load-history element.
26033         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
26034         (eieio-method-documentation): Move to cl-generic.el.
26035         (eieio-display-method-list): Use new names.
26036         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
26037         Add "define-linline".
26038         (lisp-fdefs): Remove "defsubst".
26039         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
26040         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
26041         (macroexp--warn-and-return): Use it to avoid inf-loops.
26042         Add `compile-only' argument.
26044 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26046         python.el: Fix local/remote shell environment setup
26047         * lisp/progmodes/python.el (python-shell-with-environment):
26048         Fix remote/local environment setup.
26049         * test/automated/python-tests.el (python-shell-with-environment-1)
26050         (python-shell-with-environment-2): New tests.
26052 2015-07-06  Glenn Morris  <rgm@gnu.org>
26054         * lisp/simple.el (set-variable): Tweak recent doc fix.
26056 2015-07-06  Ken Brown  <kbrown@cornell.edu>
26058         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
26060 2015-07-06  Glenn Morris  <rgm@gnu.org>
26062         * lisp/simple.el (set-variable): Use user-error for type mismatch.
26064 2015-07-06  Ken Brown  <kbrown@cornell.edu>
26066         * src/emacs.c (main): Don't increase the stack size on Cygwin.
26068 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
26070         (describe-symbol): Rewrite describe-function-or-variable
26071         * lisp/help-fns.el (describe-symbol-backends): New var.
26072         (help-xref-stack-item): Declare.
26073         (describe-symbol): Rename from describe-function-or-variable.
26074         Rewrite using describe-symbol-backends instead of help-xref-interned.
26075         * lisp/help.el (help-map): Use it.
26076         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
26077         (help-xref-interned): Make it into an obsolete alias.
26079         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
26080         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
26081         and cl-letf.
26083 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
26085         Fix parsing glitches in dired-mark-sexp (bug#13575)
26086         * lisp/dired-x.el (dired-x--string-to-number): New function.
26087         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
26088         of directory-listing-before-filename-regexp.  Consider
26089         forward-word harmful and replace it.  Add more verbiage in
26090         comments and doc string.
26092 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26094         python.el: Respect process environment for remote shells
26095         * lisp/progmodes/python.el
26096         (python-shell-calculate-process-environment): Calculate
26097         process-environment or tramp-remote-process-environment depending
26098         whether current file is remote.
26099         (python-shell-calculate-exec-path): Calculate exec-path or
26100         tramp-remote-path depending whether current file is remote.
26101         (python-shell-with-environment): New macro.
26102         (python-shell-prompt-detect, python-shell-calculate-command)
26103         (python-shell-make-comint, python-check): Use it.
26105         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
26106         * lisp/progmodes/python.el (python-shell--interpreter)
26107         (python-shell--interpreter-args): New vars.
26108         (inferior-python-mode, python-shell-make-comint): Use them.
26110         python.el: Fixes for IPython 3.x  (Bug#20580)
26111         * lisp/progmodes/python.el:
26112         (python-shell-completion-native-setup): Fix IPython 3.x setup.
26113         (python-shell-completion-native-get-completions): Fix timeout
26114         logic.
26116         python.el: Fix mark-defun behavior  (Bug#19665)
26117         * lisp/progmodes/python.el (python-mark-defun): New function.
26118         * test/automated/python-tests.el (python-mark-defun-1)
26119         (python-mark-defun-2, python-mark-defun-3): New tests.
26121 2015-07-05  Glenn Morris  <rgm@gnu.org>
26123         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
26124         such as "extends(parent), private".  (Bug#20969)
26125         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
26126         New tests.
26128 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
26130         Avoid duplicate calls to current_timespec
26131         * src/process.c (wait_reading_process_output):
26132         Cache current_timespec results as long as we're not waiting.
26134 2015-07-05  Ian Kelling  <ian@iankelling.org>
26136         Avoid returning early reading process output due to SIGIO
26137         * src/process.c (wait_reading_process_output): Extend the behavior of
26138         not breaking due to not finding output when a timer has lowered the
26139         timeout to include when SIGIO lowers the timeout.
26141         Don't return as fast reading any process output
26142         * src/process.c (wait_reading_process_output):
26143         The patch for Bug#17647 returns too fast sometimes when reading
26144         from any processes.  Revert part of it, and limit the timeout more
26145         sensibly (Bug#20978).
26147         Refactor timeouts in wait_reading_process_output
26148         * src/process.c (wait_reading_process_output):
26149         Simplify timeouts with an enum.  Remove a redundant condition.
26150         (Bug#20978)
26152         Remove ADAPTIVE_READ_BUFFERING ifdef
26153         * src/process.c (make-process, make-pipe-process, deactivate_process)
26154         (wait_reading_process_output, read_process_output, send_process)
26155         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
26156         added in case there was an operating system in which it was not
26157         useful.  That was 11 years ago and it hasn't happened.  Make
26158         development easier by not considering the effect of changes on a
26159         theoretical OS where this is disabled (Bug#20978).
26161 2015-07-05  Glenn Morris  <rgm@gnu.org>
26163         * lisp/simple.el (set-variable): Doc fix.
26165         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
26167 2015-07-05  Ian Kelling  <ian@iankelling.org>
26169         accept-process-output fix
26170         This is a followon to the fix for bug#17647 (Bug#20976).
26171         * src/process.c (status_notify): Fix too high return in some cases.
26173 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
26175         * lisp/character-fold.el (character-fold-table):
26176         Only fold decompositions if at least one character is non-spacing.
26177         (Bug#20975)
26179 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
26181         Merge from gnulib
26182         This incorporates:
26183         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
26184         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
26185         2015-07-02 update-copyright: fix test failure with perl >= 5.22
26186         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
26187         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
26188         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
26189         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
26191 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
26193         Respect `prog-indentation-context' in python.el
26194         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
26195         (python-indent-context, python-indent--calculate-indentation)
26196         (python-info-current-defun)
26197         (python-info-dedenter-opening-block-message)
26198         (python-info-line-ends-backslash-p)
26199         (python-info-beginning-of-backslash)
26200         (python-info-continuation-line-p): Use `prog-widen'.
26201         (python-indent--calculate-indentation)
26202         (python-indent--calculate-levels)
26203         (python-indent-calculate-indentation): Use `prog-first-column'.
26204         (python-indent--calculate-levels): Simplify.
26205         Ignore also initial empty lines for syntax calculation.
26206         * lisp/progmodes/python.el (python-indent-context): Return
26207         :no-indent for first non-empty line, not just in line 1.
26208         * test/automated/python-tests.el (python-indent-base-case)
26209         (python-indent-inside-paren-1, python-indent-inside-paren-2)
26210         (python-indent-inside-paren-3, python-indent-inside-paren-4)
26211         (python-indent-inside-paren-5, python-indent-inside-paren-6)
26212         (python-indent-after-backslash-1)
26213         (python-indent-after-backslash-2)
26214         (python-indent-after-backslash-3)
26215         (python-indent-after-backslash-4, python-indent-inside-string-1):
26216         Expect :no-indent for first non-empty line.
26218 2015-07-04  Daniel Colascione  <dancol@dancol.org>
26220         Factor isearch word description into new function
26221         * lisp/isearch.el (isearch--describe-word-mode): New function.
26222         (isearch-message-prefix, isearch-query-replace): Use it.
26224 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
26226         Fix mouse pointer on w32 when a menu is active
26227         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
26228         shape while a menu is in use.  This started happening since we now
26229         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
26231 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
26233         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
26234         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
26235         parameter.  (Bug#17344)
26237         Have `compilation-set-window' use right window for getting fringes
26238         (Bug#20829)
26239         * lisp/progmodes/compile.el (compilation-set-window):
26240         Take `window-fringes' from argument window.
26242 2015-07-03  Glenn Morris  <rgm@gnu.org>
26244         Update eieio tests for recent eieio-core change.
26245         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
26246         * test/automated/eieio-tests.el
26247         (eieio-test-32-slot-attribute-override-2):
26248         Replace the deleted eieio--class-v with cl--find-class.
26250 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
26252         Fix some issues with `window-divider-mode'
26253         * lisp/frame.el (window-divider-default-places): New option.
26254         (window-divider-mode): Remove option.
26255         (window-divider-mode): Make it a "regular" minor mode.
26256         (window-divider-width-valid-p): Drop frame- prefix.
26257         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
26258         prefix.  Handle `window-divider-default-places'.
26259         (frame--window-divider-mode-set-and-apply): Remove.
26260         (window-divider-default-bottom-width)
26261         (window-divider-default-right-width): Drop :group entries.
26262         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
26263         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
26264         (menu-bar-no-window-divider): Set `window-divider-default-places'
26265         and call `window-divider-mode'.
26266         * doc/emacs/frames.texi (Window Dividers): Document
26267         `window-divider-default-places'.
26269 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
26271         * doc/emacs/display.texi (Displaying Boundaries):
26272         * doc/emacs/search.texi (Word Search): Add cross references.
26274 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
26276         -batch should not affect ‘’ -> `' display
26277         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
26278         -batch (Bug#20926).
26280 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
26282         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
26283         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
26284         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
26285         Use cl--find-class instead.
26287         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
26289 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
26291         Some further fixes in Change Window node (Bug#20183)
26292         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
26293         by "resizing" in section title.  Add some concept indices.
26294         Suggested by N. Jackson (Bug#20183).
26296         * doc/emacs/windows.texi (Change Window): Reference window
26297         dividers.
26299         Document new `window-divider-mode'.
26300         * lisp/frame.el (window-divider-mode): Fix doc-string.
26301         * doc/emacs/frames.texi (Window Dividers): New section.
26303         Improve accessibility of window dividers (Bug#20183)
26304         * lisp/faces.el (window-divider)
26305         (window-divider-first-pixel, window-divider-last-pixel): Change
26306         membership from `frames' to `window-divider' customization group.
26307         * lisp/frame.el (window-divider): New customization group.
26308         (window-divider-mode): New minor mode.
26309         (window-divider-default-bottom-width)
26310         (window-divider-default-right-width): New options.
26311         (frame--window-divider-previous-mode): New variable.
26312         (frame-window-divider-width-valid-p)
26313         (frame--window-divider-mode-apply)
26314         (frame--window-divider-mode-set-and-apply): New functions.
26315         * lisp/menu-bar.el (menu-bar-options-save): Save
26316         window-divider-mode settings.
26317         (menu-bar-window-divider-customize)
26318         (menu-bar-bottom-and-right-window-divider)
26319         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
26320         (menu-bar-no-window-divider): New functions.
26321         (menu-bar-showhide-window-divider-menu): New variable.
26322         (menu-bar-showhide-menu): Show/hide window divider menu.
26323         * lisp/mouse.el (mouse-split-window-vertically)
26324         (mouse-split-window-horizontally): Replace `error' by
26325         `user-error'.  Bind `window-combination-resize' to nil.
26326         (top-level): Add/reorder mouse key bindings on mode- and
26327         vertical-line.
26329 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
26331         Don't display ‘’ as `' under X in en_GB
26332         The curved quote setup code invokes (char-displayable-p ?‘),
26333         but this isn’t reliable until after the X frame replaces the
26334         terminal frame (Bug#20926).
26335         * lisp/international/mule-cmds.el (set-locale-environment):
26336         Move curved quote setup code from here ...
26337         * lisp/startup.el (command-line): ... to here, after creating
26338         the X frame.
26340 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
26342         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
26344         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
26345         to reverse the meaning (Bug#15631).
26347 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
26349         Be more tolerant to fonts named "Foobar-12"
26350         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
26351         don't barf; instead, request a new fontset to be generated.  This
26352         avoids unnecessarily rejecting fonts named against XLFD rules.  See
26353         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
26354         for the description of the original problem.
26355         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
26356         by a hyphen in a font's name.
26358         Fix value of posn-at-pont in R2L lines
26359         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
26360         coordinate of -1, for a newline in a right-to-left line that
26361         overflowed into the left fringe.
26363 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
26365         (cl--copy-slot-descriptor): Copy the `props' alist as well
26366         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
26367         Rename from cl--copy-slot-descriptor.
26368         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
26370 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
26372         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
26373         (xterm-query-timeout): New var.
26374         (xterm--query): Use it.  Fallback on async method if we timeout before
26375         getting the first byte of the reply (bug#12354).
26377 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
26379         Spelling fixes
26380         * lisp/character-fold.el (character-fold-search):
26381         * lisp/emacs-lisp/package.el (package-hidden-regexps):
26382         Fix typos.
26384 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
26386         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
26388 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
26390         In strings, prefer plain ` and ' to \` and \'
26391         * lisp/allout.el (allout-insert-listified):
26392         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
26393         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
26394         (ls-lisp-string-lessp):
26395         * lisp/menu-bar.el (menu-bar-open):
26396         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
26397         * lisp/progmodes/compile.el (compile):
26398         * lisp/progmodes/etags.el (tags-loop-scan):
26399         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
26400         * lisp/subr.el (posn-actual-col-row):
26401         * lisp/term/pc-win.el (x-list-fonts):
26402         * lisp/textmodes/texinfmt.el (texinfmt-version):
26403         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
26404         * lisp/time.el (display-time-world-list):
26405         * lisp/tmm.el (tmm-menubar):
26406         * src/buffer.c (syms_of_buffer):
26407         * src/fileio.c (syms_of_fileio):
26408         Omit unnecessary and confusing backslash before quote.
26409         * lisp/erc/erc.el (erc-cmd-LASTLOG):
26410         * lisp/progmodes/flymake.el (flymake-fix-file-name):
26411         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
26412         Fix string that was intended to escape a backslash and not a quote.
26414 2015-06-30  Glenn Morris  <rgm@gnu.org>
26416         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
26418         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
26419         Replace hard-coded lists with wildcard + filter-out.
26421         * configure.ac (system-configuration-features): Add X11, NS.
26423         Improve reproducibility of generated loaddefs file
26424         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
26425         Make the return value the modtime of the input file (if no autoloads).
26426         (update-directory-autoloads): In the "no autoloads" section,
26427         use "most recent modtime" rather than "current time".
26429 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
26431         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
26432         (Bug#20930)
26434 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
26436         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
26438         Add seq-min and seq-max
26439         Bump version number.
26440         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
26441         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
26443 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
26445         Make sure sleep-for always delays for as long as it's told
26446         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
26447         a loop, to ensure we always wait exactly the required amount of
26448         time.  (Bug#15990)
26450 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
26452         Fix pointer signedness glitch
26453         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
26455 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
26457         Don't block changes in mouse pointer inside 'track-mouse'
26458         * etc/NEWS:
26459         * doc/lispref/frames.texi (Mouse Tracking): Document the special
26460         effect of setting 'track-mouse' to 'dragging'.
26461         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
26462         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
26463         * lisp/mouse-drag.el (mouse-drag-throw):
26464         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
26465         to avoid changes in the shape of the mouse pointer.
26466         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
26467         pointer shape when do_mouse_tracking has the value of 'dragging',
26468         not just any non-nil value.  (Bug#20934)
26469         (syms_of_xdisp): DEFSYM 'dragging'.
26471 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
26473         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
26475         * lisp/emacs-lisp/package.el (package-compute-transaction):
26476         Don't assume version sorting.
26478         * lisp/emacs-lisp/package.el (package--save-selected-packages):
26479         Don't save before init time, to avoid overwriting configurations.
26480         (Bug#20855)
26482 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
26484         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
26485         references.
26487 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
26489         Update for the upcoming CFEngine 3.7 release: support macros and
26490         quoted context strings; reformat JSON; indent promise attributes 2
26491         units by default; give function parameter descriptions in the eldoc
26492         glue.
26493         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
26494         Autoload `json-pretty-print'.  Support new features in 3.7.
26495         (cfengine-parameters-indent): Set default promise attribute indent to
26496         2 more than the promise itself.
26497         (cfengine3-macro-regex): New variable to match the new macro syntax.
26498         (cfengine3-font-lock-keywords): Use it to highlight macros.
26499         (cfengine3-indent-line): Use it to indent macros to column 0.
26500         (cfengine3-class-selector-regex): Update for the new quoted strings
26501         format.
26502         (cfengine3-reformat-json-string): New function to reformat a JSON
26503         string using `json-pretty-print'.
26504         (cfengine3-format-function-docstring): Use function parameter
26505         description if it's provided by the cf-promises syntax dump.
26507 2015-06-29  Michael R. Mauger  <michael@mauger.com>
26509         Cygwin emacsclient handles w32 file names
26510         * lisp/server.el (server-process-filter): Allow Cygwin's
26511         emacsclient to be used as a file handler on MS-Windows.
26513 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
26515         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
26516         (bug#20925).
26518 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
26520         * doc/lispref/text.texi (Sticky Properties): Improve wording.
26521         (Bug#20924)
26523         Allow font names that end in "-NN", where NN is a number
26524         * src/font.c (font_load_for_lface): If the font-spec didn't match
26525         any available fonts, try again without interpreting trailing "-NN"
26526         as the font size.  For the description of the original problem, see
26527         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
26529         .gdbinit followup to changes in !USE_LSB_TAG
26530         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
26531         !USE_LSB_TAG, as Emacs no longer does.
26533 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
26535         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
26536         Otherwise `s p' of f and F will stomp on each other's value.
26537         (Bug#20916)
26539 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
26541         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
26542         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
26544 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
26546         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
26547         as additional guess.
26549         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
26550         to a string.
26552 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
26554         apropos-library quoting fix
26555         * lisp/apropos.el (apropos-library): Quote library consistently
26556         with the rest of the quoting used by apropos.
26558         Clarify interpreter-mode-alist doc
26559         * lisp/files.el (interpreter-mode-alist):
26560         Reword to avoid confusing quoting that wasn't working anyway.
26562 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
26564         Sync with Tramp 2.2.12
26565         * doc/misc/trampver.texi:
26566         * lisp/net/trampver.el: Update release number.
26567         * test/automated/tramp-tests.el (tramp-test13-make-directory):
26568         Fix cleanup.
26570 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
26572         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
26574 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
26576         Bind grep-highlight-matches around the rgrep call
26577         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
26578         around the rgrep call (bug#20728).
26580         Put "--color" before the other options in grep-command
26581         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
26582         before the other options in grep-command (bug#20912).
26584         Add --color Grep option to the command dynamically
26585         * lisp/progmodes/grep.el (grep-template, grep-find-template):
26586         Update the description for <C>.  (Bug#20728)
26587         (grep-compute-defaults): Don't add the --color option to
26588         grep-options.  Only add it to grep-command.
26589         (grep-expand-keywords): Expand the env value opts into <C>.
26590         (grep-expand-template): Replace cf in the env with the opts list,
26591         that can include -i and --color.
26592         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
26593         "--color=always" from the template, because we don't have to.
26595 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
26597         cl-extra fixes for most-negative-fixnum
26598         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
26599         Don't mishandle an argument equal to most-negative-fixnum,
26600         whose absolute value equals itself.
26601         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
26603         Initialize cl--gensym-counter to 0
26604         Previously it was initialized to a random value, which made it
26605         harder to reproduce earlier Emacs runs.  The need for a random
26606         value went away when Emacs introduced and used the #: syntax for
26607         uninterned symbols (Bug#20862).
26608         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
26609         Document that cl--gensym-counter now starts with 0.
26610         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
26611         (cl--random-time): Move to near only remaining use.
26612         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
26614         Improve docstring for macroexp-let2
26615         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
26616         Improve as per suggestion by RMS in:
26617         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
26618         Also, rename args to match new doc string.
26620 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
26622         Fix VC test suite on MS-Windows
26623         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
26624         always starts with 3 slashes after the colon.
26625         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
26626         'w32-application-type' to invoke CVS on MS-Windows with properly
26627         formatted CVSROOT directory name.
26629         Add a new function w32-application-type
26630         * src/w32proc.c (Fw32_application_type): New function.
26632         Avoid error in TLS connections due to incorrect format
26633         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
26634         the call to 'error', instead of the unsupported %u.  Reported by
26635         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
26637 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
26639         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
26641 2015-06-26  Leo Liu  <sdl.web@gmail.com>
26643         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
26644         `with-output-to-string' in elisp.
26646         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
26647         with-output-to-string".
26648         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
26650 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
26652         Minor corrections in ELisp manual
26653         * doc/lispref/nonascii.texi (Character Properties): Correct
26654         inaccuracies in description of values of the Unicode properties.
26656         Fix invisible mouse pointers on Windows.
26657         * src/w32fns.c: Include windowsx.h.
26658         (w32_wnd_proc): If the mouse moved and the mouse pointer is
26659         invisible, make it visible again even when the main (Lisp)
26660         thread is busy.
26661         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
26662         garbaging the frame have the input thread call SetCursor.
26664 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
26666         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
26667         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
26668         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
26669         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
26670         (w32_toggle_invisible_pointer): New function.
26671         (w32_create_terminal): Add w32_toggle_invisible_pointer as
26672         toggle_invisible_pointer_hook for this terminal.
26674 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
26676         Doc fix for deletion commands
26677         'delete-char' does not respect the value of 'delete-active-region'.
26678         * doc/emacs/killing.texi (Deletion):
26679         Fix documentation for some single-char deletion commands.
26681         * doc/emacs/help.texi (Apropos):
26682         Improve documentation of 'apropos-do-all'.
26684         * doc/emacs/help.texi (Help Summary):
26685         Improve documentation of 'describe-mode'.
26687 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
26689         Fix submake dependency bug with .h files
26690         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
26691         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
26692         before the submake in $(libsrc) would spin off a subsubmake
26693         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
26695 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
26697         * lisp/character-fold.el (character-fold-table): Reuse `table'.
26699 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
26701         Translate undisplayable ‘ to `
26702         * doc/lispref/help.texi (Keys in Documentation):
26703         * lisp/international/mule-cmds.el (set-locale-environment):
26704         * lisp/term/w32console.el (terminal-init-w32console):
26705         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
26706         If ‘ is not displayable, transliterate it to `, not to '.  See:
26707         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
26709         Fix C99 incompatibilities in Cairo code
26710         * src/image.c (xpm_load) [USE_CAIRO]:
26711         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
26712         Fix pointer signedness problem.
26714 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
26716         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
26717         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
26718         `with-output-to-string' should have the same indent as `progn'.
26719         This is in line with the declaration of `with-output-to-string'.
26721 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
26723         Get ‘./configure; make -C src emacs’ to work
26724         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
26725         * lib-src/Makefile.in (../lib/libgnu.a):
26726         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
26728 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
26730         Fix GC bugs --with-wide-int and Qnil == 0
26731         Use the same alignment for the !USE_LSB_TAG case as for the
26732         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
26733         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
26734         once we changed the representation of symbols so that Qnil == 0.
26735         Problem reported by Eli Zaretskii (Bug#20862).
26736         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
26737         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
26738         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
26739         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
26740         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
26741         This optimization in the !USE_LSB_TAG case is no longer valid when
26742         symbols are represented via offsets.  Change the only use to
26743         assume that pointers might hide in objects.
26744         * src/lisp.h (alignas) [!USE_LSB_TAG]:
26745         Require support in this case, too.
26746         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
26747         This is OK, because the !USE_LSB_TAG case now applies only when
26748         Lisp_Object is wider than void *, so there's no longer any need
26749         to shift the offset.  Not shifting the offset means that
26750         symbol representations have the same alignment as pointers,
26751         which the GC assumes.
26753 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
26755         * doc/lispintro/emacs-lisp-intro.texi (Data types):
26756         Improve documentation of 'substring'.
26758 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
26760         * lisp/character-fold.el (character-fold-table): Fix table generation.
26762 2015-06-24  Glenn Morris  <rgm@gnu.org>
26764         * nextstep/Makefile.in (all): Make it the first target.
26765         (../src/emacs${EXEEXT}): Add rule for making it.
26767 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
26769         * etc/NEWS: Fix mention to old function name.
26771         * lisp/character-fold.el: New file (Bug#20887)
26772         (character-fold-to-regexp): New function.
26773         * lisp/replace.el (replace-search): Check value of
26774         `character-fold-search'.
26775         * lisp/isearch.el: Move character-folding code to
26776         character-fold.el
26777         (isearch-toggle-character-fold): New command.
26778         (isearch-mode-map): Bind it to "\M-sf".
26779         (isearch-mode): Check value of `character-fold-search'.
26781 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
26783         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
26784         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
26785         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
26787         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
26788         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
26790 2015-06-24  Glenn Morris  <rgm@gnu.org>
26792         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
26794 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
26796         lisp/gnus/nnmaildir.el: Silence lexical warnings
26797         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
26798         functional style.
26799         (nnmaildir--update-nov): Remove unused var `numdir'.
26800         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
26801         (nnmaildir-request-group, nnmaildir-request-create-group)
26802         (nnmaildir-request-post, nnmaildir-request-move-article)
26803         (nnmaildir-request-accept-article, nnmaildir-active-number):
26804         Mark unused args.
26805         (nnmaildir-get-new-mail, nnmaildir-group-alist)
26806         (nnmaildir-active-file): Declare.
26807         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
26808         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
26809         `mark', `end', `new-mark', and `mark-sym'.
26810         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
26811         `nlist2'.
26812         (nnmaildir-request-expire-articles):
26813         Remove unused vars `article', `stop' and `nlist2'.
26814         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
26815         `end'.  Use nnmaildir--article when dyn-binding is needed.
26816         Give the value directly in the `let' for `del-mark', `del-action',
26817         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
26818         (nnmaildir-close-server): Declare those local vars that need to be
26819         dyn-bound.
26821 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
26823         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
26825         Port selection info fix to clang
26826         * src/keyboard.h (kbd_buffer_store_event_hold):
26827         Don't assume C11 semantics for alignof (Bug#20756).
26829         Fix bug that munged selection info
26830         On some optimizing C compilers, copying a structure did not
26831         copy the padding bytes between elements, and the type punning
26832         between struct input_data and struct selection_input_data did
26833         not work.  Change the C code to use a proper union type instead.
26834         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
26835         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
26836         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
26837         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
26838         (mark_kboards):
26839         Use union buffered_input_event, not struct input_event.
26840         (clear_event, deliver_input_available_signal, process_special_events):
26841         Remove unnecessary forward decls.
26842         (kbd_buffer_store_buffered_event): New function, mostly just the
26843         old kbd_buffer_store_event_hold, except its argument is of type
26844         union buffered_input_event, not struct input_event.
26845         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
26846         not needed otherwise.  Argument is now of type
26847         struct selection_input_event *, not struct input_event *.
26848         All callers changed.
26849         (clear_event): Arg is now of type union buffered_input_event *,
26850         not struct input_event *.  All callers changed.
26851         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
26852         (union buffered_input_event): New type.
26853         (kbd_buffer_store_event_hold): Now an inline function,
26854         defined here.
26855         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
26856         (struct input_event): Use it.
26857         * src/xselect.c (struct selection_event_queue):
26858         Make elements be of type struct selection_input_event,
26859         not struct input_event.
26860         (selection_input_event_equal): New static function.
26861         (x_queue_event): Use it.
26862         (x_queue_event, x_decline_selection_request)
26863         (x_selection_current_request, x_reply_selection_request)
26864         (x_handle_selection_request, x_handle_selection_clear)
26865         (x_handle_selection_event): Use struct selection_input_event,
26866         not struct input_event.  All callers changed.
26867         (x_convert_selection): Omit unused first arg.  All callers changed.
26868         (Fx_disown_selection_internal): Omit unnecessary union.
26869         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
26870         rather than rolling our own equivalent.  Prefer sie.kind when
26871         setting up that kind of structure.
26872         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
26873         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
26874         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
26875         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
26876         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
26877         (SELECTION_EVENT_TIME, x_handle_selection_event):
26878         Arg is now of type struct selection_input_event *)
26879         not struct input_event *.  All callers changed.
26881 2015-06-23  Glenn Morris  <rgm@gnu.org>
26883         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
26885 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
26887         * lisp/isearch.el: Fold many unicode characters to ASCII.
26888         (isearch-character-fold-search, isearch--character-fold-extras)
26889         (isearch--character-fold-table): New variable.
26890         (isearch--character-folded-regexp): New function.
26891         (isearch-search-fun-default): Use them.
26892         * lisp/replace.el (replace-character-fold): New variable.
26893         (replace-search): Use it.
26894         * etc/NEWS: Document it.
26896 2015-06-23  Glenn Morris  <rgm@gnu.org>
26898         Check for an input event before showing a dialog box.  (Bug#20813)
26899         * lisp/subr.el (y-or-n-p):
26900         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
26901         as last-nonmenu-event.
26903 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
26905         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
26906         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
26907         (switch-to-prev-buffer, switch-to-next-buffer): Respect
26908         switch-to-visible-buffer independent of the windows history.
26910 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
26912         * src/keyboard.c (last_timer_event): Remove unused var.
26914 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
26916         * test/automated/package-test.el (package-test-update-listing):
26917         Fix test.
26919 2015-06-23  Glenn Morris  <rgm@gnu.org>
26921         Revert 2014-06-25 nextstep/Makefile change.
26922         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
26923         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
26924         not as an order-only prerequisite.
26926         * configure.ac (--with-ns): Enable by default on OS X.
26928 2015-06-23  Leo Liu  <sdl.web@gmail.com>
26930         Fix shell-for/backward-command to exclude spaces
26931         * lisp/shell.el (shell-forward-command, shell-backward-command):
26932           Handle the 'move case from re-search-forward/backward.
26933           fixes debbugs:20873
26935 2015-06-22  Juri Linkov  <juri@linkov.net>
26937         * lisp/replace.el (query-replace-read-from): Add separator to
26938         the local binding of text-property-default-nonsticky.  (Bug#20690)
26940         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
26941         (Bug#20785)
26943 2015-06-22  Ken Brown  <kbrown@cornell.edu>
26945         Enable CPU profiling on Cygwin
26946         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
26947         change that undefined this.
26948         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
26949         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
26950           Cygwin.
26952         Improve diagnostics of profiler-cpu-start
26953         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
26954         return -1 if the sampling interval is invalid.
26955         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
26956         fails.  (Bug#20843)
26958 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
26960         * lisp/emacs-lisp/package.el: Exclude packages by name.
26961         (package-hidden-regexps): New variable.
26962         (package-menu--refresh): Use it.
26963         (package-menu-hide-package): New command.
26965         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
26967 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
26969         Fix debug-timer-check on systems without HAVE_TIMERFD
26970         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
26971         the expired timers, since wait_reading_process_output doesn't.
26972         (debug_timer_callback): Enlarge the tolerance to 20 msec.
26974         Fix RCS crashes in vc-test
26975         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
26976         ports of 'ci' on MS-Windows by always passing the -t- switch.
26978 2015-06-22  Glenn Morris  <rgm@gnu.org>
26980         * doc/emacs/package.texi (Packages):
26981         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
26983         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
26985 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
26987         Port tests to help-quote-translation
26988         * test/automated/ert-x-tests.el (ert-test-describe-test):
26989         * test/automated/package-test.el (package-test-describe-package)
26990         (package-test-signed): Allow straight quotes, too.
26992 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
26994         Make find-function-on-key use the current window
26995         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
26996         Extract from `find-function-on-key', add a second argument.
26997         (find-function-on-key): Use it (bug#19679).
26998         (find-function-on-key-other-window)
26999         (find-function-on-key-other-frame): New commands.
27001 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
27003         Revert "Define `map-elt' as a generalized variable"
27004         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
27006 2015-06-21  Ken Brown  <kbrown@cornell.edu>
27008         Drop support for CPU profiling on Cygwin
27009         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
27010         (Bug#20843)
27012 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
27014         Fix some “nested” quoting confusion in doc strings
27015         * lisp/emacs-lisp/advice.el (ad-map-arglists):
27016         * lisp/kermit.el (kermit-clean-on):
27017         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
27018         * src/keyboard.c (Frecursive_edit):
27019         Use curved quotes when quoting text containing apostrophe,
27020         so that the apostrophe isn't curved in the output.
27022 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
27024         Define `map-elt' as a generalized variable
27025         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
27026         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
27027         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
27028         `setf' with `map-elt'.
27029         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
27031 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
27033         Improve error handling in tramp-adb.el
27034         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
27035         Improve error handling.
27037 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
27039         Reuse `alist-get' in map.el
27040         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
27041         elements.
27043 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
27045         Fix bytecomp-tests--warnings when $TMPDIR has a long name
27046         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
27047         Allow the warning to begin on the 3rd, not only 2nd line, which
27048         happens if temporary-file-directory has a very long name.
27050         Expect 2 icalendar tests to fail on MS-Windows
27051         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
27052         (icalendar-real-world): Make them expected failures on MS-Windows.
27054 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
27056         Improve port of settings UI to older displays
27057         * lisp/cus-start.el (standard): Don't assume curved quotes are
27058         easily distinguishable when users are tinkering with a setting
27059         that affects how curved quotes are generated.
27061         Fix quoting in electric-quote-mode doc string
27062         * lisp/electric.el (electric-quote-mode): Fix quoting.
27063         This is a fallout from the recent change introducing
27064         ‘help-quote-translation’.
27066         Spelling fix
27068         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
27070         * src/doc.c (syms_of_doc): Remove unused symbols.
27072 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
27074         * lisp/window.el (window-state-put): Undedicate target window
27075         before putting STATE into it.  (Bug#20848)
27077 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
27079         Merge from origin/emacs-24
27080         a5e6f33 Fixes: debbugs:20832
27081         b9f02cf Fixes: debbugs:20832
27083 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
27085         Fix file-in-directory-p when the directory is UNC
27086         * lisp/files.el (file-in-directory-p): Support files and
27087         directories that begin with "//".  (Bug#20844)
27089 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
27091         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
27092         in the minibuffer.  (Bug#20832)
27094 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
27096         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
27097         for adding new todo file is empty but modified.  (Bug#20832)
27099 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
27101         (filepos-to-bufferpos): Further tweaks to the utf-16 code
27102         * lisp/international/mule-util.el (filepos-to-bufferpos):
27103         Fix typo.  Move non-exact check to the utf-16 branch (the only one
27104         affected).  Don't use byte-to-position for the utf-16 case.
27106 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
27108         Minor fixes in filepos-to-bufferpos
27109         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
27110         test for utf-8-emacs.  Exempt single-byte encodings from the
27111         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
27112         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
27113         UTF-16 encoded files for CR-LF EOLs.
27115 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
27117         Improve the optional translation of quotes
27118         Fix several problems with the recently-added custom variable
27119         help-quote-translation where the code would quote inconsistently
27120         in help buffers.  Add support for quoting 'like this', which
27121         is common in other GNU programs in ASCII environments.  Change
27122         help-quote-translation to use more mnemonic values: values are now the
27123         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
27124         traditional Emacs help-buffer quoting style `like this'.  Change the
27125         default behavior of substitute-command-keys to match what's done in
27126         set-locale-environment, i.e., quote ‘like this’ if displayable,
27127         'like this' otherwise.
27128         * doc/lispref/help.texi (Keys in Documentation): Document
27129         new behavior of substitute-command-keys, and document
27130         help-quote-translation.
27131         * doc/lispref/tips.texi (Documentation Tips):
27132         Mention the effect of help-quote-translation.
27133         * etc/NEWS: Mention new behavior of substitute-command-keys,
27134         and merge help-quote-translation news into it.
27135         When talking about doc strings, mention new ways to type quotes.
27136         * lisp/cedet/mode-local.el (overload-docstring-extension):
27137         Revert my recent change to this function, which shouldn't be
27138         needed as the result is a doc string.
27139         * lisp/cedet/mode-local.el (mode-local-print-binding)
27140         (mode-local-describe-bindings-2):
27141         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
27142         * lisp/cus-theme.el (describe-theme-1):
27143         * lisp/descr-text.el (describe-text-properties-1, describe-char):
27144         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
27145         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
27146         (eieio-help-constructor):
27147         * lisp/emacs-lisp/package.el (describe-package-1):
27148         * lisp/faces.el (describe-face):
27149         * lisp/help-fns.el (help-fns--key-bindings)
27150         (help-fns--compiler-macro, help-fns--parent-mode)
27151         (help-fns--obsolete, help-fns--interactive-only)
27152         (describe-function-1, describe-variable):
27153         * lisp/help.el (describe-mode):
27154         Use substitute-command-keys to ensure a more-consistent quoting
27155         style in help buffers.
27156         * lisp/cus-start.el (standard):
27157         Document new help-quote-translation behavior.
27158         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
27159         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
27160         (help-xref-url-regexp):
27161         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
27162         * lisp/wid-edit.el (widget-documentation-link-regexp):
27163         Also match 'foo', in case we're in a help buffer generated when
27164         help-quote-translation is ?'.
27165         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
27166         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
27167         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
27168         (Fsubstitute_command_keys): Document and implement new behavior.
27169         (Vhelp_quote_translation): Document new behavior.
27171 2015-06-18  Glenn Morris  <rgm@gnu.org>
27173         * lisp/cus-start.el (help-quote-translation): Add :version.
27175         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
27177 2015-06-18  Alan Mackenzie  <acm@muc.de>
27179         Make translation of quotes to curly in doc strings optional.
27180         * src/doc.c (traditional, prefer-unicode): New symbols.
27181         (help-quote-translation): New variable.
27182         (Fsubstitute_command_keys): Make translation of quotes dependent on
27183         `help-quote-translation'; also translate curly quotes back to ASCII
27184         ones.
27185         * lisp/cus-start.el (top-level): Add a customization entry for
27186         `help-quote-translation'.
27188 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
27190         * lisp/emacs-lisp/package.el: Don't always propagate async errors
27191         (package--with-work-buffer-async): Only propagate the error if the
27192         callback returns non-nil.
27193         (package--download-one-archive): Return nil on the signature
27194         checking callback if we accept unsigned.
27195         (package--download-and-read-archives): Return non-nil on the
27196         archive download callback.
27198 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
27200         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
27201         * src/nsfns.m (Fx_create_frame):
27202         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
27203         image_cache_refcount before first x_default_parameter call.
27205 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
27207         Improve and extend filepos-to-bufferpos
27208         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
27209         Don't barf if F returns nil for some argument.
27210         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
27211         that every encoding of type 'charset' is single-byte.
27213 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
27215         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
27216         Properly delete packages.  (Bug#20836)
27218 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
27220         Update data files from just-released Unicode 8.0
27221         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
27222         status.
27223         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
27224         * admin/unidata/BidiMirroring.txt:
27225         * admin/unidata/BidiBrackets.txt:
27226         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
27228 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
27230         Document curved quotes a bit better
27231         * doc/emacs/basic.texi (Inserting Text):
27232         Mention C-x 8.  Change example to use curved quote rather
27233         than infinity, as this lets us give more ways to do it.
27234         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
27235         and quotation marks.
27236         * doc/emacs/text.texi (Quotation Marks):
27237         * doc/lispref/tips.texi (Documentation Tips):
27238         Add "curly quotes" and "curved quotes" to the index.
27239         * doc/emacs/text.texi (Quotation Marks):
27240         Give the C-x 8 shorthands for curved quotes.
27241         Cross-reference to "Quotation Marks".
27243 2015-06-17  Daiki Ueno  <ueno@gnu.org>
27245         Add pinentry.el for better GnuPG integration
27246         * lisp/pinentry.el: New file.
27247         * etc/NEWS: Add entry about pinentry.el.
27248         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
27249         (Bug#20550)
27251 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27253         * lisp/emacs-lisp/package.el: Slightly better error reporting.
27255 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
27257         (define-minor-mode): Use setq-default for :global minor modes
27258         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
27259         Use setq-default for :global minor modes (bug#20712).
27261 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
27263         Avoid infloop in redisplay with tall images
27264         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
27265         down near ZV.  (Bug#20808)
27266         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
27267         instead of CHARPOS.
27269 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27271         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
27272         Fix error reporting.
27274         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
27276         * lisp/emacs-lisp/package.el: Revert buffer after any operation
27277         Call `package-menu--post-refresh' after any operation that changes
27278         the package database (`package-install' and `package-delete').  To
27279         avoid performance issues in large transactions, these functions
27280         add `post-refresh' to `post-command-hook' instead of calling it
27281         immediately.
27282         (package-menu--mark-or-notify-upgrades): New function.
27283         (list-packages): Add it to `package--post-download-archives-hook'.
27284         (package-menu--post-refresh): Lose the upgrade-checking code, add
27285         code to remove itself from `post-command-hook'.
27286         (package-install, package-delete): Add it to `post-command-hook'.
27287         (package-menu-execute): Don't call `package-menu--post-refresh'.
27289 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
27291         Add missing function xref-location-group for elisp-mode.
27292         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
27294 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
27296         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
27297         The behavior now matches the description in the manual.  (Bug#20783)
27299 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
27301         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
27303 2015-06-17  Glenn Morris  <rgm@gnu.org>
27305         Generate char-script-table from Unicode source.  (Bug#20789)
27306         * admin/unidata/Makefile.in (AWK): New, set by configure.
27307         (all): Add charscript.el.
27308         (blocks): New variable.
27309         (charscript.el, ${unidir}/charscript.el): New targets.
27310         (extraclean): Also remove generated charscript.el.
27311         * admin/unidata/blocks.awk: New script.
27312         * admin/unidata/Blocks.txt: New data file, from unicode.org.
27313         * lisp/international/characters.el: Load charscript.
27314         * src/Makefile.in (charscript): New variable.
27315         (${charscript}): New target.
27316         (${lispintdir}/characters.elc): Depend on charscript.elc.
27317         (temacs$(EXEEXT)): Depend on charscript.
27319         * lisp/international/characters.el (char-script-table): Tweak
27320         some ranges to better match the source.  (Bug#20789#17)
27322         Remove "no-byte-compile: t" from a few files.
27323         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
27324         * lisp/obsolete/patcomp.el: No reason not to compile these.
27326 2015-06-16  Glenn Morris  <rgm@gnu.org>
27328         Fix some typos in copied Unicode data.  (Bug#20789)
27329         * lisp/international/characters.el (char-script-table):
27330         * lisp/international/fontset.el (script-representative-chars)
27331         (setup-default-fontset): Fix typos.
27333         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
27334         Don't print filename twice (it's in the prefix now).
27336         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
27337         No longer needed.
27339         Address a compilation warning.
27340         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
27341         Replace 't' with '_' in pcase.
27343         Address some check-declare warnings.
27344         * lisp/simple.el (tabulated-list-print):
27345         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
27346         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
27347         (ns-get-selection): Update declarations.
27349         Address some compilation warnings.
27350         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
27351         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
27352         Replace 't' with '_' in pcase.
27354         Address some compilation warnings.
27355         * lisp/face-remap.el (text-scale-adjust):
27356         * lisp/menu-bar.el (popup-menu-normalize-position):
27357         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
27358         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
27359         * lisp/emacs-lisp/generator.el (cps--transform-1):
27360         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
27361         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
27362         * lisp/progmodes/octave.el (octave-goto-function-definition)
27363         (octave-find-definition-default-filename):
27364         Replace 't' with '_' in pcase.
27366         * lisp/emacs-lisp/pcase.el (pcase--u1):
27367         Paper-over today's bootstrap failure.
27369 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
27371         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
27373         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
27375         Better confirmation message in `find-alternate-file' (Bug#20830)
27376         * lisp/files.el (find-alternate-file'): Improve the confirmation
27377         message to show the buffer name.
27379         Better docstring for null.  (Bug#20815)
27380         * src/data.c (null): Improves the docstring, saying what null returns
27381         when OBJECT is non-nil.
27383 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
27385         * lisp/net/newst-treeview.el: Use lexical-binding.
27387         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
27388         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
27389         New auxiliary function, extracted from filepos-to-bufferpos.
27390         Make sure it terminates.
27391         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
27392         Add support for the `exact' quality.
27394 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
27396         Identify feeds in newsticker treeview with :nt-feed property
27397         * lisp/net/newst-treeview.el:
27398         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
27400 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
27402         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
27403         (pcase--self-quoting-p): Floats aren't self-quoting.
27404         (pcase): Tweak docstring.
27405         (pcase--u1): Deprecate the t pattern.  Improve error detection for
27406         the nil pattern.
27407         (\`): Tweak docstring.  Signal an error for unrecognized cases.
27408         (bug#20784)
27410 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
27412         Fix infloop in filepos-to-bufferpos
27413         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
27414         offset calculation, and make it conditional on the eol-type of the
27415         file's encoding.  (Bug#20825)
27417 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
27419         Fix handling of image cache refcounts.  (Bug#20802)
27420         This backports Eli Zaretskii's solution of this problem for W32
27421         to X and NS.
27422         * src/nsfns.m (image_cache_refcount): Define unconditionally.
27423         (unwind_create_frame): If the image cache's reference count
27424         hasn't been updated yet, do that now.
27425         (Fx_create_frame): Set image_cache_refcount unconditionally.
27426         * src/xfns.c (image_cache_refcount): Define unconditionally.
27427         (unwind_create_frame): If the image cache's reference count
27428         hasn't been updated yet, do that now.
27429         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
27430         unconditionally.
27431         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
27432         X and NS.
27434 2015-06-16  Nils Ackermann  <nils@ackermath.info>
27436         Improve reftex-label-regexps default value
27437         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
27438         keyvals label regexp more strict to better cope with unbalanced
27439         brackets common in math documents.
27441 2015-06-16  Glenn Morris  <rgm@gnu.org>
27443         * doc/emacs/calendar.texi (Format of Diary File):
27444         Move "nonmarking" from here...
27445         (Displaying the Diary): ... to here.
27447         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
27448         Swap the order of these nodes.
27449         * doc/emacs/emacs.texi: Update detailed menu for the above change.
27451         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
27452         Update date of examples.
27453         (Diary, Format of Diary File): Move example from former to latter.
27454         Reduce duplication.
27456         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
27457         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
27458         Don't set no-byte-compile in the outputs.
27459         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
27461 2015-06-15  Glenn Morris  <rgm@gnu.org>
27463         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
27464         * doc/emacs/calendar.texi (Diary, Format of Diary File):
27465         Update for above diary-file change.
27467         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
27468         (apply-macro-to-region-lines): Use user-error.
27470         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
27471         (pages-directory-for-addresses): Doc fixes.
27473 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
27475         * lisp/info.el: Cleanup bytepos/charpos issues
27476         * lisp/international/mule-util.el: Use lexical-binding.
27477         (filepos-to-bufferpos): New function.
27478         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
27479         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
27480         (Info-read-subfile, Info-search): Use 0-based file positions.
27482         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
27483         (perl--syntax-exp-intro-keywords): New var.
27484         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
27485         (bug#20800).
27487 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
27489         Fix quoting when making derived mode docstring
27490         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
27491         Nest regexp-quote inside format, not the reverse.
27492         Problem reported by Artur Malabarba in:
27493         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
27495 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
27497         Fix current-iso639-language on MS-Windows
27498         * lisp/international/mule-cmds.el (set-locale-environment):
27499         Downcase the locale name before interning it.  This is so the
27500         'current-iso639-language' on MS-Windows matches the ':lang'
27501         property of font-spec objects.
27503         Limit Symbola usage some more
27504         * lisp/international/fontset.el (setup-default-fontset): Limit
27505         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
27506         (Bug#20727)
27508 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
27510         * lisp/emacs-lisp/map.el (map-let): Better docstring.
27512 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
27514         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
27515         (help-fns-test-funny-names): Spelling fixes.
27517 2015-06-14  Glenn Morris  <rgm@gnu.org>
27519         * lisp/version.el (emacs-repository-version-git): Demote errors.
27520         Check result is a hash.
27522 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
27524         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
27525         Catch errors that happen before going async.  (Bug#20809)
27527 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
27529         Another improvement of documentation of set-fontset-font
27530         * doc/lispref/display.texi (Fontsets): Say explicitly that
27531         CHARACTER can be a single codepoint.
27532         * src/fontset.c (Fset_fontset_font): Doc fix.
27534         Another improvement for symbol and punctuation characters
27535         * lisp/international/fontset.el (setup-default-fontset): Exclude
27536         from Symbola character ranges for symbols and punctuation covered
27537         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
27538         installed and where its coverage of symbols and punctuation is
27539         known to be good.  (Bug#20727)
27541 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
27543         Some generic support for multi-mode indentation.
27544         * lisp/progmodes/prog-mode.el (prog-indentation-context):
27545         New variable.
27546         (prog-first-column, prog-widen): New convenience functions.
27548 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
27550         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
27551         Don't assume that `tabulated-list-printer' will leave point at the
27552         end of the buffer.  (Bug#20810)
27554 2015-06-13  Glenn Morris  <rgm@gnu.org>
27556         Tweaks for getting repository version; a bit more like it was for bzr
27557         * lisp/version.el (emacs-repository-version-git)
27558         (emacs-repository--version-git-1): New functions,
27559         split from emacs-repository-get-version.
27560         (emacs-repository-get-version): Make the second argument meaningful.
27562         * lisp/startup.el (command-line-1): Inform if skipping relative
27563         file names due to deleted PWD.
27565         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
27566         when starup directory is missing.  (Bug#18851)
27567         (errno.h): Include it.
27569 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
27571         Better fix for documenting `X as "`X"
27572         Fix suggested by Stefan Monnier.
27573         * lisp/help-fns.el (help-fns--signature):
27574         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
27575         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
27576         Don't treat `X specially, as help-fns--signature now handles this.
27578 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
27580         Improve the default fontset when Symbola is not installed
27581         * lisp/international/fontset.el (setup-default-fontset): Only
27582         prepend Symbola and FreeMono font specs for symbols and
27583         punctuation; do not replace the default spec for them.  This
27584         should have better results when Symbola/FreeMono are not
27585         installed.  (Bug#20727)
27587         Improve documentation of ':lang' in font specs
27588         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
27589         use of the ':lang' property of the font spec.
27590         * doc/emacs/frames.texi (Fonts): Document the language names that
27591         can be in the STYLE part of XLFD.
27592         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
27593         property.
27595         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
27597         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
27599         Revert last change in fontset.el
27600         * lisp/international/fontset.el (setup-default-fontset): Revert
27601         the change "Configure Symbola font only if installed", since font
27602         search is evidently not yet set up when this function is called.
27603         (Bug#20727)
27605 2015-06-12  Glenn Morris  <rgm@gnu.org>
27607         Ensure early startup warnings are visible at the end.  (Bug#20792)
27608         * lisp/emacs-lisp/warnings.el (display-warning):
27609         If startup isn't complete, delay the warning.
27610         * lisp/startup.el (normal-top-level, command-line):
27611         Let display-warning automatically handle the needed delays.
27612         Run delayed-warnings-hook.
27614         * lisp/version.el (emacs-repository-get-version):
27615         Avoid calling external executable if possible.  (Bug#20799)
27617 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
27619         Document `X as "`X", not as "(` X)"
27620         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
27621         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
27623         * src/print.c (print_object): Minor simplification.
27625 2015-06-12  Glenn Morris  <rgm@gnu.org>
27627         * src/buffer.c (init_buffer): Add final newline to message.
27629 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
27631         Configure Symbola font only if installed
27632         * lisp/international/fontset.el (setup-default-fontset):
27633         Don't specify the Symbola font if it's not installed.
27634         Likewise for FreeMono.  (Bug#20727)
27636 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
27638         Configure Symbola font only for symbols and punctuation
27639         * lisp/international/fontset.el (setup-default-fontset): Leave
27640         only symbols and punctuation in the fontset setup for Symbola
27641         font; remove "Greek and Coptic" and "Cyrillic Supplement".
27642         (Bug#20798)
27644 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
27646         Fix crash in fontset-info
27647         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
27648         non-nil.
27650 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
27652         Port to Solaris 10 sparc + Sun C 5.13
27653         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
27654         Adjust to process.c change.
27655         * src/process.c (create_process): Declare volatile variables at
27656         top level of this function, so that they're less likely to be
27657         reused later in the function in the code executed by the vforked
27658         child.  Do not declare locals used only in the vforked child, as
27659         they might share memory with locals still live in the parent.
27660         Instead, use the same variables in the child as in the parent.
27661         This works around a subtle bug that causes a garbage collector
27662         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
27664 2015-06-12  Glenn Morris  <rgm@gnu.org>
27666         * lisp/startup.el (normal-top-level): Don't let *Messages* get
27667         a nil default-directory.
27669 2015-06-11  Glenn Morris  <rgm@gnu.org>
27671         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
27673         Some progress towards starting with PWD deleted.  (Bug#18851)
27674         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
27675         * lisp/startup.el (normal-top-level, command-line-1):
27676         * lisp/minibuffer.el (read-file-name-default):
27677         Handle default-directory being nil.
27679 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
27681         Fix "not a tty" bug on Solaris 10
27682         * configure.ac (PTY_OPEN): Define to plain 'open'
27683         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
27684         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
27685         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
27686         hosts that call grantpt which does its work via a setuid subcommand
27687         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
27688         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
27689         seems relevant in that case too.
27691 2015-06-11  Juri Linkov  <juri@linkov.net>
27693         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
27694         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
27695         (Bug#20785)
27697 2015-06-11  Glenn Morris  <rgm@gnu.org>
27699         * lisp/international/characters.el (char-script-table): Fix typo.
27701 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
27703         Fix quoting of help for functions with odd names
27704         While investigating Bug#20759, I discovered other quoting problems:
27705         C-h f mishandled characters like backslash and quote in function names.
27706         This fix changes the behavior so that 'C-h f pcase RET' now
27707         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
27708         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
27709         in src/lread.c's read1 function says that the backslash will be
27710         needed starting in Emacs 25, which implies that 'format' is
27711         correct and the old pcase documention was wrong to omit the backslash.
27712         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
27713         * lisp/help-fns.el (help-fns--signature):
27714         * lisp/help.el (help-add-fundoc-usage):
27715         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
27716         Use help--make-usage-docstring rather than formatting
27717         help-make-usage.
27718         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
27719         Return raw docstring.
27720         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
27721         raw docstring.  Take more care to distinguish raw from cooked dstrings.
27722         (describe-function-1): Let help-fns--signature substitute
27723         command keys.
27724         * lisp/help.el (help--docstring-quote): New function.
27725         (help-split-fundoc): Use it, to quote funny characters more
27726         systematically.
27727         (help--make-usage): Rename from help-make-usage, since this
27728         should be private.  Leave an obsolete alias for the old name.
27729         (help--make-usage-docstring): New function.
27730         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
27732 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
27734         * lisp/thingatpt.el (in-string-p): Revert last change,
27735         since in-string-p is not used in thingatpt.el but only from outside.
27736         Also, use lexical binding.
27738 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
27740         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
27741         * test/automated/let-alist.el (let-alist-cons): Test it.
27743 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
27745         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
27747 2015-06-10  Glenn Morris  <rgm@gnu.org>
27749         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
27751         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
27752         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
27753         * admin/gitmerge.el (gitmerge-commit-message):
27754         Exclude "skipped" messages from ChangeLog once again.
27756         Slight namespace cleanup for thingatpt.el.
27757         * lisp/thingatpt.el (thing-at-point--in-string-p)
27758         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
27759         (thing-at-point--read-from-whole-string): Rename from
27760         old versions without "thing-at-point--" prefix.
27761         Keep old versions as obsolete aliases.  Update all uses.
27763         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
27764         Move requiring of finder from here...
27765         (checkdoc-package-keywords): ... to here.
27767         Use 'user-error' in a few calendar files.
27768         * lisp/calendar/appt.el (appt-add):
27769         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
27770         (calendar-generate):
27771         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
27772         Replace 'error' with 'user-error'.
27774         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
27776         * lisp/files-x.el (add-file-local-variable):
27777         Special-case 'lexical-binding'.  (Bug#20641)
27779         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
27780         No longer autoload.
27781         * doc/misc/autotype.texi (Executables):
27782         Undocument executable-self-display.
27784         * lisp/progmodes/executable.el (executable-self-display):
27785         Use non-obsolete tail syntax.  (Bug#20779)
27786         (executable-self-display): Doc update.
27788 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
27790         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
27791         (finder-known-keywords): Silence byte-compiler.
27793 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
27795         * lisp/simple.el (eval-expression): Macroexpand before evaluating
27796         (bug#20730).
27798         * lisp/progmodes/sh-script.el: Better handle nested quotes.
27799         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
27800         (sh-font-lock-quoted-subshell): Make sure double quotes within single
27801         quotes don't mistakenly end prematurely the surrounding string.
27803         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
27805 2015-06-09  Glenn Morris  <rgm@gnu.org>
27807         * test/automated/Makefile.in (ELFILES): Sort.
27809         * Makefile.in (SUBDIR_MAKEFILES):
27810         * lwlib/Makefile.in (WARN_CFLAGS):
27811         Use built-in Make functions rather than echo+sed.
27813 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
27815         Update char-script-table
27816         * lisp/international/characters.el (char-script-table): Update
27817         from Unicode 8.0 Draft.
27819         Improve font selection for punctuation and other symbols
27820         * src/fontset.c (face_for_char): If the character's script is
27821         'symbol', and the font used for ASCII face has a glyph for it, use
27822         the font for the ASCII face instead of searching the fontsets.
27823         This comes instead of NS-specific code that used the current
27824         face's font instead, which is now disabled due to undesirable
27825         consequences.  (Bug#20727)
27827 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
27829         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
27830         Skip past `#' to find BEG (bug#20771).
27831         * test/automated/elisp-mode-tests.el
27832         (elisp-completes-functions-after-hash-quote): New test.
27834 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
27836         Fix compilation warning/error in --without-x builds
27837         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
27838         code on HAVE_WINDOW_SYSTEM.
27840         Improve the default fontset wrt symbols
27841         * lisp/international/fontset.el (setup-default-fontset): Better
27842         setup of fontset-default for symbols: use Symbola and FreeMono.
27843         (Bug#20727)
27845 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
27847         Add new command checkdoc-package-keywords
27848         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
27849         New defcustom.
27850         (checkdoc-list-of-strings-p): Add doc.
27851         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
27852         non-nil, call `checkdoc-package-keywords'.
27853         (checkdoc-get-keywords): New defun.
27854         (checkdoc-package-keywords): New command.  Warns if the current file
27855         has package.el-style keywords that aren't in `finder-known-keywords'.
27856         * etc/NEWS: Add entry.
27858 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
27860         Avoid crashes when key-binding is called from a timer
27861         * src/keymap.c (Fkey_binding): Don't segfault if called with an
27862         empty vector as KEY.  (Bug#20705)
27864         Fix a thinko in arc-mode.el
27865         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
27866         non-Zip64 case.  (Bug#20769)
27868 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
27870         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
27872 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
27874         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
27875         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
27876         "*warn*", print the warning to the standard output.  (bug#20754)
27878 2015-06-07  Glenn Morris  <rgm@gnu.org>
27880         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
27882         * src/font.c (syms_of_font) <font-log>: Doc fix.
27884         Remove the obsolete leading "*" from some C doc strings.
27885         * src/coding.c (syms_of_coding):
27886         * src/font.c (syms_of_font): Remove leading "*" from docs.
27887         * lisp/cus-start.el (enable-character-translation): Add it.
27889 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
27891         Move gen_origin from program to data
27892         That way, 'make change-history' needs to change only ChangeLog.2,
27893         instead of having to change two files.
27894         * ChangeLog.2: Add commit info for range that this file covers.
27895         * Makefile.in (new_commit_regexp): New macro.
27896         (change-history-nocommit): Simplify, by putting what used to be
27897         the gen_origin value into the data (ChangeLog.2) rather than
27898         into the program (gitlog-to-emacslog).
27899         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
27900         the input file (e.g., ChangeLog.2) rather than by having a
27901         constant in the program.  Substitute it into the output.
27903 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
27905         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
27906         function name (bug#20759).
27908 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
27910         Adapt 'struct timespec' to next release of MinGW runtime
27911         * nt/inc/ms-w32.h (struct timespec): Don't declare if
27912         __struct_timespec_defined is defined.
27914 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
27916         Merge from gnulib
27917         This incorporates:
27918         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
27919         2015-06-05 stdio: Don't redefine gets when using C++
27920         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
27921         2015-06-02 file-has-acl: fix build on Mac OS X 10
27922         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
27923         2015-06-01 pthread_sigmask: discount system version if a simple macro
27924         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
27925         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
27926         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
27927         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
27928         * lib/gnulib.mk: Regenerate.
27930 2015-06-06  Juri Linkov  <juri@linkov.net>
27932         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
27933         before calling grep-compute-defaults because now it affects the
27934         command lines computed in grep-compute-defaults.  (Bug#20728)
27936 2015-06-06  Glenn Morris  <rgm@gnu.org>
27938         Address some compilation warnings.
27939         * lisp/international/mule-cmds.el (w32-get-console-codepage)
27940         (w32-get-console-output-codepage):
27941         * lisp/progmodes/elisp-mode.el (xref-collect-references):
27942         * lisp/version.el (cairo-version-string): Declare.
27943         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
27945 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
27947         Fix display when a font claims large values of ascent and descent
27948         This fixes bug#20628.
27949         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
27950         coordinate of a hollow cursor glyph when the original glyph's
27951         ascent is too small.
27952         (get_font_ascent_descent, normal_char_ascent_descent)
27953         (normal_char_height): New functions.
27954         (handle_single_display_spec, append_space_for_newline)
27955         (calc_pixel_width_or_height, produce_stretch_glyph)
27956         (calc_line_height_property): Use normal_char_ascent_descent and
27957         normal_char_height.
27958         (x_produce_glyphs): When font-global values of ascent and descent
27959         are too large, use per-character glyph metrics instead, if
27960         possible.  But don't allow the glyph row's ascent and descent
27961         values become smaller than the values from the metrics of the
27962         font's "normal" character.
27963         * src/xftfont.c (xftfont_draw):
27964         * src/w32font.c (w32font_draw): Correct the values of ascent and
27965         descent used to draw glyphless characters' hex code in a box.
27966         * src/xterm.c (x_draw_glyph_string_background):
27967         * src/xdisp.c (x_produce_glyphs):
27968         * src/w32term.c (x_draw_glyph_string_background):
27969         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
27970         to detect fonts whose global ascent and descent values are too
27971         large to be used in layout decision, and redraw the background
27972         when that happens.
27973         * src/dispextern.h (FONT_TOO_HIGH): New macro.
27974         (get_font_ascent_descent): Add prototype.
27975         * src/xterm.c (x_new_font):
27976         * src/w32term.c (x_new_font):
27977         * src/nsterm.m (x_new_font):
27978         * src/font.c (font_open_entity):
27979         * src/composite.c (composition_gstring_width):
27980         Use get_font_ascent_descent to obtain reasonable values for ascent
27981         and descent of a font.
27983 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
27985         Add assertion in adjust_point_for_property
27986         * src/keyboard.c (adjust_point_for_property): Add eassert for
27987         current buffer being shown in selected window.
27989 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
27991         Replace uses of in-string-p; make it obsolete
27992         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
27993         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
27995 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
27997         Fix Dired display of an explicit list of files by ls-lisp.el
27998         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
27999         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
28000         correct for when displaying individual files separately, not as
28001         part of listing a directory, in which case these values are not
28002         recomputed by 'ls-lisp-insert-directory', but used verbatim.
28004         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
28006 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
28008         Do not adjust point in a non-selected window
28009         * src/keyboard.c (command_loop_1): Do not adjust point when
28010         current buffer is not shown in selected window (Bug#20590).
28012         * etc/DEBUG: Mention 'maybe_call_debugger'
28014 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
28016         Fix a unit test for map.el
28017         * test/automated/map-tests.el (test-map-let): Fix the test to work
28018         with the new syntax of `map-let'.
28020         * lisp/emacs-lisp/map.el (map-let): Better docstring.
28022         Better syntax for the map pcase pattern
28023         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
28024         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
28026         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
28028         Fix a byte-compiler error in map-put and map-delete
28029         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
28030         called with a symbol.
28032 2015-06-05  Glenn Morris  <rgm@gnu.org>
28034         * admin/gitmerge.el (gitmerge-commit-message):
28035         Revert to including "skipped" messages in ChangeLog once again.
28037 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
28039         Use string> instead of equiv lambda with string<
28040         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
28041         lambda with string<.
28043 2015-06-05  Glenn Morris  <rgm@gnu.org>
28045         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
28046         (map--delete-array): Fix typo.
28048         * test/automated/map-tests.el: Replace "assert" with "should".
28050         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
28051         (SUBDIRS_REL): Derive from SUBDIRS.
28053         Tweak some build messages.
28054         * lisp/Makefile.in ($(lisp)/loaddefs.el):
28055         * lisp/cus-dep.el (custom-make-dependencies):
28056         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
28057         * lisp/international/titdic-cnv.el (batch-titdic-convert):
28058         Don't say how to compile.
28060 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
28062         Omit U+0332 COMBINING LOW LINE in previous change
28063         It turns out that it does not work on Ubuntu 15.04.
28065         Fix transliteration of Bahá'í months
28066         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
28067         Improve quality of Latin transliteration of Bahá'í month names.
28069         Fix curved quotes in a few places
28070         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
28071         The strings in question are not doc strings, so this partially
28072         undoes the recent change that assumed they were doc strings.
28073         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
28074         * lisp/info.el (Info-finder-find-node):
28075         Use curved quotes.
28076         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
28077         Also allow curved quotes in doc strings.
28079 2015-06-04  Glenn Morris  <rgm@gnu.org>
28081         * lisp/Makefile.in (AM_V_at): Add missing definition.
28083         * lisp/Makefile.in: Quieten output a bit.
28084         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
28085         Don't echo directories, since the commands we invoke print them.
28087         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
28088         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
28089         (SUBDIRS_SUBDIRS): New variables.
28090         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
28091         Remove.
28092         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
28093         (update-subdirs, compile-main, compile-clean):
28094         Replace "setwins" usage with new "SUBDIRS" variables.
28096         * lisp/vc/compare-w.el (compare-windows-get-window-function):
28097         Fix :version tag.
28099 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28101         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
28103         Undo removal of x_clear_area call on expose for GTK3 or cairo
28104         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
28105         Clear exposed area.  (Bug#20677)
28107 2015-06-04  Glenn Morris  <rgm@gnu.org>
28109         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
28111         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
28113         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
28114         Rename from quail-lao-update-translation, since lao.el defines that.
28116 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
28118         Handle new-style advice in find-funct
28119         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
28120         Handle new-style advice.  Return the symbol's function definition.
28121         (Bug#20718)
28122         (find-function-library): Update accordingly.
28124 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
28126         Merge branch 'map'
28128         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
28130         Add new function string-greaterp
28131         * lisp/subr.el (string-greaterp): New function.  Also aliased to
28132         `string>'.
28133         * test/automated/subr-tests.el (string-comparison-test): Add unit
28134         tests for `string>'and `string<'.
28135         * src/fns.c (string-lessp): Better docstring.
28137 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
28139         Fix timezone-related functions on MS-Windows
28140         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
28141         'xputenv', even if no reallocation of tzvalbuf was necessary.
28142         This fixes a bug in timezone-related functions on MS-Windows.
28143         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
28145 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
28147         Don't pass raw directory name to 'error'
28148         * lisp/files.el (basic-save-buffer-2): Avoid format error if
28149         a directory name contains a string like "%s".
28151 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
28153         Override 'grep --color=always'
28154         * lisp/progmodes/xref.el (xref-collect-matches):
28155         Override --color=always in grep-find-template.
28157 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
28159         Fix error introduced recently in file-notify-tests.el
28160         * test/automated/file-notify-tests.el
28161         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
28162         (file-notify--deftest-remote): Revert previous patch, not
28163         necessary anymore.
28165 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
28167         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
28168         Starting from a display string after a newline, point went to the
28169         previous line.  Also, fix an inadvertent use of a buffer position
28170         with FETCH_BYTE.  (Bug#20701)
28172 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
28174         Instrument file-notify-test.el in order to catch hydra error
28175         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
28176         Wrap body by `ignore-case', in order to trap non-local errors.
28178 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28180         Undo previous changes in non-toolkit scroll bar drawing
28181         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
28182         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
28184 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
28186         * .gitignore: Also ignore doc/*/*/*.html and .ps.
28188         Support quotes 'like this' in info files
28189         This is possible when 'makeinfo --disable-encoding' is used
28190         in Texinfo 5.
28191         * lisp/calc/calc-help.el (calc-describe-thing):
28192         * lisp/gnus/gnus-art.el (gnus-button-alist):
28193         * lisp/info.el (Info-find-index-name):
28194         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
28195         Also support quotes 'like this'.
28196         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
28197         * lisp/finder.el (finder-font-lock-keywords): Remove var that
28198         hasn't been used in years, instead of bothering to fix its quoting.
28200 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
28202         * .gitignore: Remove !test/etags/html-src/*.html.
28203         It's no longer needed, since *.html was removed.  Sort.
28205 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
28207         Restore <D> instead of '.' in grep-find-template
28208         * lisp/cedet/semantic/symref/grep.el
28209         (semantic-symref-grep-use-template): Update a comment.
28210         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
28211         instead of '.' in grep-find-template (bug#20719).
28212         (rgrep): Pass nil as the directory to rgrep-default-command.
28213         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
28214         default value for DIR.
28215         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
28216         workaround.
28218 2015-06-02  Glenn Morris  <rgm@gnu.org>
28220         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
28222         * configure.ac (emacs_config_features): Add Cairo.
28224         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
28226 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
28228         Ensure that autorevert works for remote files in file-notify-tests.el
28229         * test/automated/file-notify-tests.el (file-notify--test-desc):
28230         New defvar.
28231         (file-notify--test-remote-enabled)
28232         (file-notify-test00-availability, file-notify-test01-add-watch)
28233         (file-notify-test02-events): Use it.
28234         (file-notify--test-event-test): Check proper descriptor.
28235         (file-notify-test03-autorevert): Ensure that
28236         `visited-file-modtime' has changed.  (Bug#20392)
28238 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
28240         Add a pcase pattern for maps and `map-let' based on it
28241         * lisp/emacs-lisp/map.el (map-let): New macro.
28242         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
28243         * test/automated/map-tests.el: New test for `map-let'.
28245 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
28247         Reuse rgrep mechanics in xref-find-regexp
28248         * lisp/progmodes/grep.el (rgrep-default-command):
28249         Extract from `rgrep'.
28250         * lisp/progmodes/xref.el (xref-collect-references): Split from
28251         `xref-collect-matches'.  Only handle the case of symbol search.
28252         (xref-collect-matches): Instead of Semantic Symref, use
28253         `rgrep-default-command', to take advantage of its directory and
28254         file ignore settings.
28255         (xref--collect-match): Remove the last argument, leaving the
28256         regexp construction up to the caller.
28257         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
28258         Change to take the xref-collect- function to use as an argument.
28259         (elisp-xref-find): Update accordingly.
28260         * lisp/progmodes/etags.el (etags--xref-find-matches)
28261         (etags-xref-find): Same.
28263         Move xref-elisp-location to elisp-mode.el
28264         * lisp/progmodes/xref.el (xref-elisp-location)
28265         (xref-make-elisp-location, xref-location-marker): Remove here.
28266         (xref--xref): Don't limit the type of the location slot.
28267         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
28268         Define as a cl-struct here.
28269         (xref-location-marker): Move here.
28271 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
28273         Minor tweaks for .gitignore
28274         * .gitignore: Don't ignore versioned *.html and *.ps files.
28275         Don't ignore admin/notes/tags that might be ignored as TAGS
28276         on case-insensitive filesystems.  (Bug#20710)
28278 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
28280         Generate curved quotes in ert doc
28281         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
28282         (ert-results-mode-menu)
28283         (ert-results-pop-to-backtrace-for-test-at-point)
28284         (ert-results-pop-to-messages-for-test-at-point)
28285         (ert-results-pop-to-should-forms-for-test-at-point)
28286         (ert-describe-test):
28287         Quote ‘like this’, not `like this', when generating doc strings
28288         and the like.
28289         * test/automated/ert-x-tests.el (ert-test-describe-test):
28290         Allow quoting ‘like this’.
28292 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
28294         Add test for previous commit
28295         * test/automated/replace-tests.el: New file.
28296         (query-replace--split-string-tests): Add test for previous commit.
28298         Avoid confusion in query-replace history when replacing NUL chars
28299         * lisp/replace.el (query-replace--split-string): New function.
28300         (query-replace-read-from): Rely on the 'separator' property
28301         instead of searching for the NUL character (Bug#20690).
28303 2015-06-02  Glenn Morris  <rgm@gnu.org>
28305         Merge from origin/emacs-24
28306         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
28308         * admin/gitmerge.el (gitmerge-commit-message):
28309         Exclude "skipped" messages from ChangeLog.
28311 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
28313         Sync with Tramp repository
28314         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
28315         messages.
28316         (tramp-handle-make-auto-save-file-name): When calling
28317         `make-auto-save-file-name' internally, make sure it uses Unix-like
28318         behavior, not Windows-like behavior.
28319         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
28320         the local case, because "chown" might fail on w32.
28321         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
28322         for XEmacs.
28324 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
28326         MS-Windows followup for batch stdout/stderr output changes
28327         * lisp/international/mule-cmds.el (set-locale-environment):
28328         In batch mode, use console codepages for keyboard and terminal
28329         encoding.  (Bug#20545)
28331         Update .gitattributes for DOS EOL files
28332         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
28333         CRLF end-of-line format.
28335         NS equivalents of xterm.c and w32term.c changes
28336         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
28337         glyph string background also when the font in use claims
28338         preposterously large global height value.  Helps to remove
28339         artifacts left from previous displays when glyphless characters
28340         are displayed as hex code in a box.
28341         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
28342         value for FRAME_LINE_HEIGHT, even when a font claims very large
28343         value for its height.
28345 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
28347         Avoid grave accent quoting in stderr diagnostics
28348         A few Emacs diagnostics go directly to stderr, and so can't easily
28349         contain curved quotes (as non-UTF-8 locales might mishandle them).
28350         Instead of bothering to add support for this rarity, reword the
28351         diagnostics so that they don't use grave accent to quote.
28352         * src/alloc.c (mark_memory): Fix comment.
28353         * src/buffer.c (init_buffer):
28354         * src/dispnew.c (init_display):
28355         * src/emacs.c (main, sort_args):
28356         * src/lread.c (dir_warning):
28357         * src/term.c (init_tty):
28358         * src/unexmacosx.c (unexec):
28359         * src/xfns.c (select_visual):
28360         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
28361         Reword stderr diagnostics to avoid quoting `like this'.
28362         * src/unexmacosx.c: Include errno.h.
28363         * src/xfns.c (select_visual): Encode value for locale.
28365 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
28367         Treat batch stdout/stderr like standard display
28368         Calls like (print FOO) could generate improperly encoded or
28369         hard-to-read output if FOO contains characters outside the system
28370         locale.  Fix this by treating batch stdout and stderr like
28371         interactive standard display, when it comes to transliterating and
28372         encoding characters (Bug#20545).
28373         * doc/emacs/mule.texi (Communication Coding):
28374         * doc/lispref/display.texi (Active Display Table):
28375         * doc/lispref/nonascii.texi (Locales):
28376         * etc/NEWS:
28377         * src/coding.c (syms_of_coding):
28378         * src/dispnew.c (syms_of_display):
28379         Document this.
28380         * src/print.c: Include disptab.h.
28381         (printchar_to_stream): New function, with much of the guts of the
28382         old Fexternal_debugging_output, except this one also uses the
28383         standard display table.
28384         (printchar, strout, Fexternal_debugging_output): Use it.
28386 2015-05-31  Glenn Morris  <rgm@gnu.org>
28388         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
28390 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
28392         Remove DEFSYMs that aren't used at the C level.  Also:
28393         * src/decompress.c (Qzlib_dll):
28394         * src/font.c (Qunicode_sip):
28395         * src/frame.c (Qtip_frame):
28396         * src/ftfont.c (Qserif):
28397         * src/gnutls.c (Qgnutls_dll):
28398         * src/xml.c (Qlibxml2_dll):
28399         Move from here ...
28400         * src/w32fns.c (syms_of_w32fns): ... to here,
28401         as these are used only on MS-Windows.
28403 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
28405         Use another default value for tramp-histfile-override
28406         * lisp/net/tramp-sh.el (tramp-histfile-override):
28407         Use ".tramp_history" as default.
28408         Fixes bug#20446
28410 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
28412         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
28414 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
28416         * etc/NEWS: Add an entry about map.el.
28418         Improve the docstring of functions in map.el
28419         Since a map is not a data structure but a concept, adding information
28420         about the possible types of maps can be useful information.
28421         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
28422         each public function.
28424 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
28426         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
28427         specific tests depending on the type of the map.
28429         * lisp/emacs-lisp/map.el: Better docstrings.
28431 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
28433         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
28435 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
28437         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
28439         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
28441         Fix a false negative in `map-elt' with alists and values being nil
28442         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
28443         found but its associated value is nil, do not return the default
28444         value.
28445         * test/automated/map-tests.el: Add a regression test.
28447 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
28449         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
28451         Do not signal an error when trying to delete a key from an array
28452         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
28453         the key is present to avoid signaling an error.
28454         * test/automated/map-tests.el: Add a test for deleting non-existing
28455         keys from maps.
28457         * lisp/emacs-lisp/map.el: Better docstring.
28459         Minor improvement in map-elt
28460         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
28461         doing a lookup in arrays, but check the boundaries of the array
28462         instead.
28463         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
28464         and a negative integer as key.
28466 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
28468         * test/automated/map-tests.el: Refactoring of test methods.
28470         * test/automated/map-tests.el: Renamed from map-test.el.
28472 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
28474         * lisp/emacs-lisp/map.el (map-into): Better error message.
28476         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
28478         Throw an error when converting a map into an unknown map type
28479         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
28480         not valid.
28481         * test/automated/map-tests.el: Add a regression test.
28483         New library map.el similar to seq.el but for mapping data structures.
28484         * test/automated/map-tests.el: New file.
28485         * lisp/emacs-lisp/map.el: New file.
28487 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
28489         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
28490         there's no explicit tag name (bug#20629).
28492 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
28494         Remove format2
28495         * src/editfns.c, src/lisp.h (format2): Remove.
28496         It is more trouble than it's worth, now that we have CALLN.
28497         This is just a minor refactoring.
28498         * src/buffer.c (Fkill_buffer):
28499         * src/dbusbind.c (XD_OBJECT_TO_STRING):
28500         * src/fileio.c (barf_or_query_if_file_exists):
28501         Adjust to format2 going away.
28503         Don't misencode C-generated messages
28504         Also, be more consistent about calls to 'Fmessage' vs 'message'.
28505         * src/alloc.c (Fgc_status):
28506         Prefer AUTO_STRING to build_string for Fmessage call.
28507         * src/data.c (Fmake_variable_buffer_local)
28508         (Fmake_local_variable, Fmake_variable_frame_local):
28509         * src/doc.c (store_function_docstring):
28510         Use Fmessage, not message, since the argument can contain
28511         non-ASCII characters, and this can cause the resulting message
28512         to be incorrectly encoded for the current environment.
28513         * src/fns.c (maybe_resize_hash_table):
28514         * src/xselect.c (x_clipboard_manager_save_all):
28515         Use message, not Fmessage, since Fmessage's power isn't needed here.
28516         * src/process.c (Fmake_network_process): Reword message to avoid %s.
28517         * src/xdisp.c (vmessage): Document restrictions on message contents.
28518         (message_nolog) [false]: Remove unused code.
28520         Use \r rather than ^M in string literals
28521         This is less likely to cause problems on platforms that
28522         use CRLF (or CR!) termination for lines.
28524         Update .gitattributes to match current sources
28525         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
28526         * .gitattributes: Accommodate tests that insist on DOS format.
28527         Remove test/automated/data/decompress/foo-gzipped.
28528         Add etc/e/eterm-color.
28530 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
28532         * doc/emacs/mule.texi (Modifying Fontsets):
28533         Document face-ignored-fonts.  (Bug#20628)
28535         Add etags test for the new -Q option
28536         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
28537         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
28538         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
28539         test-case changes below.
28540         * test/etags/ETAGS.good_6: New file.
28541         * test/etags/cp-src/x.cc: New file.
28542         * test/etags/Makefile (CPSRC): Add x.cc.
28543         (check): Add one more test, for -Q.
28545 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
28547         Use list for the tags completion table, not obarray
28548         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
28549         list instead of an obarray
28550         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
28551         (tags-completion-table): Combine those lists.
28552         (tags-completion-table): Update the docstring.
28554 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
28556         Restore EOL format testing in etags
28557         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
28558         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
28559         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
28560         test-case changes below.
28561         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
28562         * test/etags/cp-src/c.C (B): Add back stray CR character.
28563         * test/etags/c-src/dostorture.c: Add back.
28564         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
28566 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
28568         Declare Emacs on MS-Windows to be DPI-aware
28569         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
28570         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
28571         This avoids Windows entering compatibility mode for Emacs,
28572         which causes fonts to look less nice.
28574 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
28576         Improve Tramp traces
28577         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
28578         * lisp/net/tramp.el (tramp-debug-message): Use it.
28580 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
28582         backup-buffer minor reworking of internals
28583         * lisp/files.el (backup-buffer): Rework to avoid a couple of
28584         unused locals inadvertently introduced in the previous change.
28586         backup-buffer now reports .emacs.d/%backup% ills
28587         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
28588         fails due to disk space exhaustion or whatever, do not pretend
28589         that it succeeded.  More generally, do a better job of checking
28590         for I/O failures, and limit the scope of the condition-case to
28591         just the operations where file errors should be caught and ignored
28592         (Bug#20595).  Also, don't bother trying to delete later backups if
28593         an earlier deletion fails, as this is a sign of trouble and it's
28594         better to stop when there's trouble.
28596         copy-file now truncates output after writing
28597         * src/fileio.c (Fcopy_file): Truncate output after writing rather
28598         than before.  This is more likely to work than truncation before
28599         writing, if the file system is out of space or the user is over
28600         disk quota (Bug#20595).  Also, check for read errors.
28602 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
28604         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
28605         Don't load descriptors from directories above the package directories.
28607 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
28609         Merge from gnulib
28610         This incorporates the following (Bug#20681):
28611         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
28612         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
28613         * lib/set-permissions.c: Copy from gnulib.
28615 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
28617         Improve Tramp traces
28618         * lisp/net/tramp.el (tramp-call-process-region): New defun.
28619         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
28621 2015-05-29  Glenn Morris  <rgm@gnu.org>
28623         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
28625 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
28627         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
28628         The signature was changed in the cairo branch, merged on 2015-05-23.
28629         This oversight broke compiling only the non-toolkit X version.
28631 2015-05-29  Samer Masterson  <samer@samertm.com>
28633         * doc/lispref/os.texi: Update initial-buffer-choice docs.
28635 2015-05-29  Glenn Morris  <rgm@gnu.org>
28637         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
28638         Mark as an expected failure.
28640 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
28642         Change package test to look for curved quotes
28643         * test/automated/package-test.el (package-test-describe-package)
28644         (package-test-signed): Search for curved single quotes as well as
28645         for grave accent and apostrophe.
28647 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
28649         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
28650         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
28652 2015-05-28  Samer Masterson  <samer@samertm.com>
28654         Show files when `initial-buffer-choice' is non-nil
28655         * lisp/startup.el (command-line-1): When Emacs is given a file as an
28656         argument and `initial-buffer-choice' is non-nil, display both the file
28657         and `initial-buffer-choice'.  For more than one file, show
28658         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
28659         commands out of the command line arg parser.
28660         (initial-buffer-choice): Clarify docstring.
28662 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
28664         Fix last commit
28665         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
28666         (gnulib module qcopy-acl): Add back, as it is harmless.  This
28667         minimizes differences wrt lib/gnulib.mk.
28669         Fix the MS-Windows build as followup to gnulib update
28670         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
28671         set-permissions.c, as they don't compile on MinGW.
28672         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
28674 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
28676         Revert my change to gnus-art.el
28677         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
28678         It wasn't that important, and it caused a Gnus build to fail.  See:
28679         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
28681         New minor mode Electric Quote
28682         This lets you easily insert quotes ‘like this’ by typing
28683         quotes `like this', and similarly you can easily insert
28684         quotes “like this” by typing quotes ``like this'' (Bug#20545).
28685         * doc/emacs/basic.texi (Inserting Text):
28686         * doc/emacs/modes.texi (Minor Modes):
28687         * etc/NEWS: Document it.
28688         * doc/emacs/text.texi (Quotation Marks): New section.
28689         * lisp/electric.el (electric-quote-comment)
28690         (electric-quote-string, electric-quote-paragraph):
28691         New custom vars.
28692         (electric--insertable-p)
28693         (electric-quote-post-self-insert-function): New functions.
28694         (electric-quote-mode, electric-quote-local-mode): New minor modes.
28695         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
28696         Add curved single quotes to electric-pair-text-pairs.
28697         Set electric-quote-string in this buffer.
28699         A few more doc string fixes (Bug#20385)
28701         Accept curved quotes in doc strings
28702         * lisp/info-look.el (info-lookup-guess-custom-symbol):
28703         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
28705         Generate curved quotes in pseudo-info nodes
28706         * lisp/info.el (Info-virtual-index-find-node)
28707         (Info-virtual-index, Info-apropos-find-node, info-apropos):
28708         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
28710         Fix minor quoting problems in doc strings
28711         Most of these fixes involve escaping grave accents that are
28712         actually intended to be grave accents, not left quotes.
28713         (Bug#20385)
28715         Support curved quotes in doc strings
28716         Emacs's traditional doc string style has been to quote symbols
28717         `like this'.  This worked well on now-obsolete terminals where
28718         ` and ' were symmetric quotes, but nowadays curved quotes
28719         ‘like this’ look better.  Support quoting the new way too.
28720         (Bug#20385)
28721         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
28722         ‘like-this’ as well as `like-this'.
28723         * etc/NEWS: Mention this.
28724         * lisp/cedet/mode-local.el (overload-docstring-extension)
28725         (mode-local-print-binding, mode-local-describe-bindings-2):
28726         * lisp/cus-theme.el (describe-theme-1):
28727         * lisp/descr-text.el (describe-text-properties-1, describe-char):
28728         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
28729         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
28730         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
28731         (eieio-help-constructor):
28732         * lisp/emacs-lisp/package.el (describe-package-1):
28733         * lisp/faces.el (describe-face):
28734         * lisp/help-fns.el (help-fns--key-bindings)
28735         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
28736         (help-fns--interactive-only, describe-function-1):
28737         (describe-variable):
28738         * lisp/help.el (describe-mode):
28739         * lisp/international/mule-cmds.el (describe-input-method)
28740         (describe-language-environment):
28741         * lisp/international/mule-diag.el (describe-character-set)
28742         (print-coding-system-briefly, list-input-methods)
28743         (list-input-methods-1):
28744         Insert curved quotes rather than grave accent and apostrophe.
28745         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
28746         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
28747         (checkdoc-proper-noun-region-engine):
28748         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
28749         (lisp-cl-font-lock-keywords-2):
28750         * lisp/finder.el (finder-font-lock-keywords):
28751         * lisp/gnus/gnus-art.el (gnus-button-alist):
28752         * lisp/help-fns.el (help-do-arg-highlight)
28753         (describe-function-1, describe-variable):
28754         * lisp/help-mode.el (help-xref-symbol-regexp)
28755         (help-xref-info-regexp, help-xref-url-regexp):
28756         * lisp/help.el (describe-mode):
28757         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
28758         * lisp/wid-edit.el (widget-documentation-link-regexp):
28759         Parse symbols quoted ‘like-this’ as well as `like-this'.
28760         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
28761         Add "‘" and "’" to electric-pair-text-pairs.
28762         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
28763         (elisp-completion-at-point, elisp--preceding-sexp):
28764         Also treat "‘" and "’" as quoting chars.
28766         substitute-command-keys now curves quotes
28767         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
28768         * doc/lispref/help.texi (Keys in Documentation):
28769         * etc/NEWS: Document this.
28770         * src/doc.c (Fsubstitute_command_keys): Implement it.
28772 2015-05-28  Glenn Morris  <rgm@gnu.org>
28774         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
28775         (rmail-summary-by-topic, rmail-summary-by-senders):
28776         No longer strip leading/trailing whitespace.
28778         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
28779         (f90-no-block-limit): Add "enum".  (Bug#20680)
28780         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
28781         New tests.
28783 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
28785         * lisp/isearch.el (isearch--current-buffer): Give a default value.
28786         Un-revert changes mistakenly dropped by f9fabb2b.
28788 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
28790         Merge from gnulib
28791         This incorporates:
28792         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
28793         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
28794         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
28795         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
28796         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
28797         2015-05-26 stdio: fix probe on mingw under gcc 5.1
28798         * admin/merge-gnulib (GNULIB_MODULES):
28799         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
28800         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
28801         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
28802         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
28803         Get latest versions from gnulib.
28804         * lib/get-permissions.c, lib/set-permissions.c: New files.
28805         * lib/gnulib.mk, m4/gnulib-comp.m4:
28806         Regenerate.
28807         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
28809 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
28811         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
28812         process here.
28813         (vc-do-command): Rather than here (bug#20608).
28815 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
28817         Avoid gratuitous delete-dups in face-at-point
28818         * lisp/faces.el (face-at-point): Do not compute the properly
28819         ordered, duplicate-free list if only a single value is
28820         requested anyway.  (Bug#20519)
28822         Show the exact C-x 8 RET invocation in describe-char
28823         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
28824         invocation instead of a template.  (Bug#20522)
28826 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
28828         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
28829         (package-menu--post-refresh): Call `tabulated-list-print' with the
28830         UPDATE argument.  This only affects the refresh action, the revert
28831         action still erases tags.
28832         (package-menu-get-status): Change `assq' to `assoc'.
28833         (package-menu--mark-upgrades-1): New function.
28834         (package-menu--mark-upgrades-pending): New variable.
28835         (package-menu-mark-upgrades): Use them to delay marking until
28836         after refresh is done.
28837         (package-menu--post-refresh): Call mark-upgrades-1 if
28838         mark-upgrades-pending is non-nil.
28840 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
28842         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
28843         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
28844         (commit 3953c4be2816537be95520605d45b866dc731f4b).
28846 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
28848         * lisp/isearch.el (isearch--current-buffer): New var.
28849         (isearch-update): Set cursor-sensor-inhibit here.
28850         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
28851         (bug#20532).
28853         Change inhibit-point-motion-hooks to t
28854         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
28855         to t and document it as obsolete.
28857 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
28859         Support ZIP files that use Zip64 extensions
28860         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
28861         format of central directory offsets used by Zip64 extensions.
28862         (Bug#20665)
28864 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
28866         New test tramp-test30-make-auto-save-file-name
28867         * test/automated/tramp-tests.el
28868         (tramp-test30-make-auto-save-file-name): New test.
28869         (tramp-test31-special-characters)
28870         (tramp-test31-special-characters-with-stat)
28871         (tramp-test31-special-characters-with-perl)
28872         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
28873         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
28874         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
28875         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
28877         Improve tramp-handle-make-auto-save-file-name
28878         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
28879         (tramp-handle-make-auto-save-file-name): Let native
28880         `make-auto-save-file-name' use `auto-save-file-name-transforms',
28881         if `tramp-auto-save-directory' is not set.
28883 2015-05-27  Glenn Morris  <rgm@gnu.org>
28885         No longer set dired-directory in eshell.  (Bug#16477)
28886         * lisp/eshell/esh-mode.el (eshell-mode):
28887         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
28889         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
28891         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
28892         * lisp/progmodes/cc-mode.el (c-mode-help-address):
28893         Change to submit@debbugs.
28894         (c-mode-bug-package): New constant.
28895         (mail-position-on-field): Declare.
28896         (c-submit-bug-report): Insert X-Debbugs-Package header.
28897         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
28898         Mention debbugs.gnu.org.
28900 2015-05-26  Glenn Morris  <rgm@gnu.org>
28902         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
28903         (rmail-summary-by-recipients, rmail-summary-by-topic)
28904         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
28905         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
28907 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
28909         Handle curved quotes in info files
28910         * lisp/calc/calc-help.el (calc-describe-thing):
28911         * lisp/info.el (Info-find-index-name)
28912         (Info-try-follow-nearest-node, Info-fontify-node):
28913         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
28914         In info files, process quotes ‘like this’ the same way we process
28915         quotes `like this'.  This catches a few places we missed earlier.
28917 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
28919         xref-prompt-for-identifier: Use a list value
28920         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
28921         value, to be interpreted as a list of commands.
28922         (xref--prompt-p): New function.
28923         (xref--read-identifier): Use it.
28925 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
28927         Teach MS-Windows font back-end return per-glyph ascent/descent
28928         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
28929         values.
28930         * src/w32font.c (w32font_text_extents): Compute, cache, and
28931         accumulate per-glyph ascent and descent values, instead of copying
28932         global values from the font.  If the values are not available from
28933         the font data, i.e., non-TTF fonts, fall back on font-global values.
28934         (compute_metrics): Compute and return per-glyph ascent and descent
28935         values, if returned by GetGlyphOutlineW, falling back on
28936         font-global values.  (Bug#20628)
28937         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
28938         height of rectangle to be drawn, to be compatible with
28939         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
28940         box, when per-glyph ascent/descent values are used.
28942 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
28944         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
28945         Don't sort if sorter is nil.
28947 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
28949         Fix Bug#20621
28950         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
28951         are major modes which set `auto-save-mode' on their own rules;
28952         Tramp shall not overwrite such settings.
28954 2015-05-26  Glenn Morris  <rgm@gnu.org>
28956         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
28957         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
28958         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
28959         Doc updates.
28960         (vc-dir-mode): Remove unnecessary autoload.
28962 2015-05-25  Philipp Stephani  <phst@google.com>
28964         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
28965         (xterm--extra-capabilities-type): Add `getSelection'.
28966         (xterm--query): Add `no-async' argument.
28967         (xterm--init-activate-get-selection): New function.
28968         (terminal-init-xterm): Use it.
28969         (xterm--init-modify-other-keys): Rename from
28970         terminal-init-xterm-modify-other-keys.
28971         (xterm--init-bracketed-paste-mode): Rename from
28972         terminal-init-xterm-bracketed-paste-mode.
28973         (xterm--init-activate-set-selection): Rename from
28974         terminal-init-xterm-activate-set-selection.
28975         (xterm--selection-char): New function.
28976         (gui-backend-set-selection): Use it.  Use the &context to only apply
28977         this method in terminals where we enabled the feature.
28978         (gui-backend-get-selection): New method.
28980 2015-05-25  Daniel Colascione  <dancol@dancol.org>
28982         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
28983         keyword constants to C++.
28985 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
28987         Make TAGS files more portable to MS-Windows
28988         * etc/NEWS: Document this.
28989         * lib-src/etags.c (readline_internal) [DOS_NT]:
28990         Don't treat CRs differently from GNUish hosts.
28991         * lisp/progmodes/etags.el (etags-goto-tag-location):
28992         Adjust STARTPOS to account for the skipped CRs in dos-style files.
28994 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28996         Improve fix of bug#20634 in tramp-sh.el
28998 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
29000         Fix a typo in last commit
29001         * lib-src/etags.c (C_entries): Fix a typo.
29002         * test/etags/ETAGS.good_1:
29003         * test/etags/ETAGS.good_2:
29004         * test/etags/ETAGS.good_3:
29005         * test/etags/ETAGS.good_4:
29006         * test/etags/ETAGS.good_5:
29007         * test/etags/CTAGS.good: Update due to the change in etags.c.
29009         Fix tagging of class members in C-like OO languages
29010         * lib-src/etags.c (longopts): Add new option --class-qualify and
29011         its shorthand -Q.
29012         (print_help): Add help text for --class-qualify.
29013         (main): Add handling of -Q.
29014         (consider_token, C_entries) <omethodparm>: Append argument types
29015         to Objective C methods only if --class-qualify was specified.
29016         Qualify C++, Objective C, and Java class members with their class
29017         names only if --class-qualify was specified.
29018         (C_entries): If --class-qualify was not specified, remove the
29019         namespace and class qualifiers from tag names of C++ methods.
29020         This allows to use etags.el as xref back-end without the
29021         tag-symbol-match-p method, which greatly increases the number of
29022         potentially false positives.  (Bug#20629)
29023         * doc/man/etags.1: Update to document the new --class-qualify
29024         option.
29025         * test/etags/ETAGS.good_1:
29026         * test/etags/ETAGS.good_2:
29027         * test/etags/ETAGS.good_3:
29028         * test/etags/ETAGS.good_4:
29029         * test/etags/ETAGS.good_5:
29030         * test/etags/CTAGS.good: Update due to changes in etags.c.
29032 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
29034         (cl-generic-define-method): Side effects are evil (bug#20644)
29035         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
29036         cons-cells that might be used as keys in an `equal' hash-table.
29038 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
29040         Make erc timestamps visible again
29041         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
29042         Make timestamps visible again (if requested).
29044 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
29046         Fix last change in etags.c that broke tagging compresed files
29047         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
29048         quoting of decompression shell command for MS-Windows/MS-DOS.
29050 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
29052         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
29053         (Bug#20639)
29055 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
29057         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
29058         Fix typo in "Inhibit `epa-file-handler' in Tramp"
29059         (commit 89035e247591c8d688fce922b7079881aa110f33).
29061 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
29063         Fix IPv6 addresses in Tramp
29064         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
29065         Add square brackets around host name.
29067 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
29069         Inhibit `epa-file-handler' in Tramp (Bug#20634)
29070         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
29071         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
29072         `epa-file-handler'.
29074 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
29076         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
29077         (pcase-let): Document the behavior in case the pattern doesn't match.
29079 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
29081         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
29082         (tabulated-list-print): New optional argument, UPDATE.  If
29083         non-nil, the list is printed by only adding and deleting the
29084         changed entries, instead of erasing the whole buffer.  This method
29085         is much faster when few or no entries have changed.
29086         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
29087         * etc/NEWS: Document it.
29089         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
29090         (tabulated-list--get-sorter): New function.
29091         (tabulated-list-print): Restore window-line when remember-pos is
29092         passed and optimize away the `nreverse'.
29094 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
29096         Simpilify etags TEX mode scanning
29097         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
29098         Remove static vars.
29099         (TeX_commands): Deduce escapes here instead.
29100         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
29101         This removes the need for a reset_input call.
29103         Improve etags I/O error reporting
29104         * lib-src/etags.c:
29105         Don't include sys/types.h and sys/stat.h; no longer needed.
29106         (infilename): New static var.
29107         (process_file_name): Don't call 'stat'.  Instead, just open the
29108         file for reading and report any errors.  Don't bother making
29109         a copy of the file argument; it's not needed.  Be more careful to
29110         use the failing errno when reporting an error.
29111         Quote the real name better (though no perfectly)
29112         when passing it to the shell.
29113         (reset_input): New function, which reports I/O errors.
29114         All uses of 'rewind' changed to use this function.
29115         (perhaps_more_input): New function, which also checks for
29116         I/O errors.  All uses of 'feof' changed to use this function.
29117         (analyze_regex): Report an error if fclose fails.
29118         (readline_internal): Report an error if getc fails.
29119         (etags_mktmp): Return an error if close fails.
29121         etags.c: avoid side effects in 'if'
29122         * lib-src/etags.c (process_file_name, Perl_functions)
29123         (TEX_decode_env): Hoist side effects into previous statement.
29125         .gitignore tweaks
29126         * .gitignore: Ignore all *.stamp files.  Sort.
29127         Ignore [0-9]*.txt (commonly used name for git patches)
29128         and /vc-dwim-log-* (vc-dwim temporary).
29130 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
29132         Fix last change in etags.c, which failed the test suite
29133         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
29134         before the last change.
29136 2015-05-23  Glenn Morris  <rgm@gnu.org>
29138         Remove charset map files from repository, generate in first bootstrap
29139         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
29140         (all): Create the stamp file.
29141         (extraclean): Delete the stamp file.
29142         * src/Makefile.in (lispintdir, charsets): New variables.
29143         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
29144         New rules.
29145         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
29146         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
29147         * etc/charsets/*.map: Remove from repository.
29149 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
29151         Cleanup etags.c to use locale-independent code
29152         Although this doesn't alter behavior (as etags doesn't use
29153         setlocale), the new version is more clearly locale-independent and
29154         the executable is a bit smaller on my platform.
29155         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
29156         Include <c-ctype.h> instead of <ctype.h>.
29157         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
29158         (begtk, midtk):
29159         Remove; no longer needed.
29160         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
29161         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
29162         c_islower, c_tolower, respectively.
29163         (notinname, begtoken, intoken, endtoken): Rewrite as functions
29164         instead of macros, and initialize the tables at compile-time
29165         rather than at run-time.
29167         Put default action first in src/Makefile
29168         * src/Makefile.in (all): Put this rule before lisp.mk.
29169         That way, plain 'make' works in the src directory again.
29171 2015-05-23  Glenn Morris  <rgm@gnu.org>
29173         * Makefile.in: Fix extraclean rule.
29174         (extraclean_dirs): New.
29175         (extraclean): Use it.
29177 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
29179         Avoid compiler warning in image.c on MS-Windows
29180         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
29181         warning in image.c.
29183 2015-05-23  Glenn Morris  <rgm@gnu.org>
29185         Fix --without-toolkit-scroll-bars builds.
29186         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
29187         Add new argument to x_clear_area1.
29188         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
29189         Update x_clear_area arguments.
29191         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
29192         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
29193         Change to included version.
29194         (LOCAL, local, totalclean): Remove.
29195         (extraclean): Delete all generated files.
29197 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
29199         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
29200         CVS/Entries exists.
29202         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
29204         * lisp/progmodes/etags.el (tags-completion-at-point-function):
29205         Don't trust the find-tag function.
29207 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
29209         Pacify --enable-gcc-warnings
29210         * src/frame.h (x_query_color): Remove redundant extern decl.
29211         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
29212         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
29213         (ftcrfont_text_extents, ftcrfont_draw):
29214         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
29215         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
29216         (x_ins_del_lines, frame_highlight, frame_unhighlight)
29217         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
29218         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
29219         (x_update_window_begin, x_connection_closed)
29220         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
29221         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
29222         (*x_gc_get_ext_data, x_extension_initialize)
29223         (x_cr_accumulate_data):
29224         Remove redundant static decl.  Many of these GCC doesn't complain
29225         about, but we might as well clean out the duplication while we're
29226         in the neighborhood.
29227         * src/xterm.c (x_fill_trapezoid_for_relief):
29228         Remove decl of nonexistent function.
29230 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
29232         Replace gui-method macros with cl-generic with &context
29233         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
29234         (gui-method-declare, gui-call): Remove.
29235         (frame-creation-function): Use cl-defgeneric.
29236         (make-frame): Adjust callers.
29237         * lisp/menu-bar.el (menu-bar-edit-menu):
29238         Use gui-backend-selection-exists-p.
29239         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
29240         (gui-backend-get-selection): New cl-generic to replace
29241         gui-get-selection method.
29242         (gui-backend-set-selection): New cl-generic to replace
29243         gui-set-selection method.
29244         (gui-selection-owner-p): New cl-generic to replace
29245         gui-selection-owner-p method.
29246         (gui-backend-selection-exists-p): New cl-generic to replace
29247         gui-selection-exists-p method.  Adjust all callers.
29248         * lisp/server.el (server-create-window-system-frame): Don't ignore
29249         window-system spec even when unsupported.
29250         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
29251         * lisp/startup.el (handle-args-function, window-system-initialization):
29252         Use cl-defgeneric.
29253         (command-line): Adjust calls accordingly.
29254         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
29255         a window-system-initialization method.
29256         (handle-args-function, frame-creation-function): Use cl-defmethod.
29257         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
29258         (gui-get-selection): Use cl-defmethod on the new functions instead.
29259         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
29260         a gui-backend-get-selection method.
29261         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
29262         Use cl-defmethod on the new functions instead.
29263         (msdos-window-system-initialization): Turn into
29264         a window-system-initialization method.
29265         (frame-creation-function, handle-args-function): Use cl-defmethod.
29266         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
29267         a window-system-initialization method.
29268         (handle-args-function, frame-creation-function): Use cl-defmethod.
29269         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
29270         (gui-get-selection): Use cl-defmethod on the new functions instead.
29271         * lisp/term/x-win.el (x-window-system-initialization): Turn into
29272         a window-system-initialization method.
29273         (handle-args-function, frame-creation-function): Use cl-defmethod.
29274         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
29275         (gui-get-selection): Use cl-defmethod on the new functions instead.
29276         * lisp/term/xterm.el (xterm--set-selection): Turn into
29277         a gui-backend-set-selection method.
29278         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
29279         (Fns_selection_owner_p): Remove unused arg `terminal'.
29280         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
29282 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
29284         Revert "Fix etags Bug#20629 that broke C++ support"
29285         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
29287 2015-05-23  Jan D  <jan.h.d@swipnet.se>
29289         Fix etags Bug#20629 that broke C++ support
29290         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
29291         Revert commit from Sun May 10 (Bug#20629).
29293         Merge branch 'cairo'.
29294         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
29295         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
29297         Merge branch 'master' into cairo
29299         Fixes to compile cairo branch without cairo
29300         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
29301         first argument.
29302         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
29303         USE_CAIRO.
29305 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
29307         * lisp/emacs-lisp/package.el: Always update selected-packages.
29308         (package--update-selected-packages): New function.
29309         (package-menu-execute): Use it before starting the transaction,
29310         this way the list of selected packages is updated even when the
29311         transaction fails.
29312         (package-menu--perform-transaction): Don't edit selected-packages.
29314 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
29316         Fix etags reading of compressed files
29317         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
29318         Include fcntl.h, for O_CLOEXEC.
29319         (process_file_name): Don't use 'popen', whose streams cannot be
29320         rewound.  Instead, uncompress the file to a temporary file,
29321         created by 'etags_mktmp', and read from that as usual.
29322         (etags_mktmp): New function.
29323         * test/etags/ETAGS.good_1:
29324         * test/etags/ETAGS.good_2:
29325         * test/etags/ETAGS.good_3:
29326         * test/etags/ETAGS.good_4:
29327         * test/etags/ETAGS.good_5: Update to be consistent with latest
29328         changes in etags.c regarding reading compressed files.
29330         Improve documentation of 'set-fontset-font'
29331         * doc/lispref/display.texi (Fontsets): Document the value of nil
29332         for the 3rd argument of 'set-fontset-font'.
29334         Fix documentation of forward-line
29335         * src/cmds.c (Fforward_line): Clarify the return value if the line
29336         at end of accessible portion of the buffer has no newline.
29337         * doc/lispref/positions.texi (Text Lines): Document what happens
29338         if the line at end of accessible portion of buffer has no newline.
29339         (Bug#20587)
29341 2015-05-22  Glenn Morris  <rgm@gnu.org>
29343         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
29345         * admin/charsets/mapconv (LC_ALL): Set to C.
29347         * Makefile.in: Add admin/charsets into top-level clean rules.
29348         (clean): Add admin/charsets.
29349         (maybeclean_dirs): New variable.
29350         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
29352         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
29354 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
29356         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
29358 2015-05-22  Glenn Morris  <rgm@gnu.org>
29360         Generate admin/charsets Makefile via configure, and make more portable
29361         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
29362         (admin/charsets/Makefile): Generate it.
29363         * admin/charsets/Makefile.in: Rename from Makefile.
29364         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
29365         New variables, set by configure.
29366         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
29367         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
29368         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
29369         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
29370         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
29371         (all): Declare PHONY.
29372         (local): New PHONY target.
29373         (map_template): New template.  Use to define short PHONY aliases.
29374         (*.map): Add directory prefixes to targets and prerequisites.
29375         Respect make verbosity.
29376         (JISC6226.map): Replace non-portable sed append without newline.
29377         (install): Remove rule.
29378         (clean): Only delete temporary sedscript.
29379         (bootstrap-clean, distclean, maintainer-clean, extraclean)
29380         (totalclean): New PHONY rules.
29381         * admin/charsets/mapconv (BASE): Replace basename with expr.
29382         (FILE): Add "mapfiles" subdirectory.
29383         (AWK): New variable.  Use throughout in place of "awk".
29384         (main): Use "gunzip -c" in place of "zcat".
29385         Don't leave whitespace before "p", for older sed.
29386         * admin/charsets/mapfiles/PTCP154: Add final newline,
29387         to make older sed versions happy.
29389 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
29391         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
29392         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
29393         (auto-revert-notify-watch-descriptor): Use defvar-local.
29394         (find-file-hook, auto-revert-tail-mode)
29395         (auto-revert-notify-add-watch): Use setq-local.
29396         (auto-revert-notify-add-watch): Don't call make-local-variable on
29397         kill-buffer-hook (bug#20601).
29399 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
29401         Change defgeneric so it doesn't completely redefine the function
29402         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
29403         previously defined methods.
29404         (cl-generic-define-method): Let-bind purify-flag instead of
29405         using `fset'.
29406         (cl--generic-prefill-dispatchers): Only define during compilation.
29407         (cl-method-qualifiers): Remove redundant alias.
29408         (help-fns-short-filename): Silence byte-compiler.
29409         * test/automated/cl-generic-tests.el:
29410         Adjust to new defgeneric semantics.
29412 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
29414         * lisp/emacs-lisp/package.el (package-menu-execute):
29415         Remove reference to remove-dups.
29417 2015-05-21  kwhite  <kwhite@gnu.org>
29419         * lisp/erc/erc.el: Hide network/channel messages.
29420         (erc-network-hide-list, erc-channel-hide-list): New lists to define
29421         message types per network/channel.
29422         (erc-add-targets): New function to parse list of targets.
29423         (erc-hide-current-message-p): Modify to check for new targets.
29425 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
29427         Don't quote nil and t in doc strings
29428         This is as per "Tips for Documentation Strings" in the elisp manual.
29429         For consistency, do the same in diagnostics and comments.
29431 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
29433         Fix a minor problem with mouse-face on mode line
29434         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
29435         mouse face also if the mouse pointer hovers above mode-line glyphs
29436         that don't come from any Lisp string.  (Bug#20620)
29438 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
29440         * lisp/emacs-lisp/package.el: Fix selected-package logic.
29441         (package-menu-execute): Mark as selected all non-upgrade packages
29442         being installed.
29443         (package-menu--perform-transaction): Don't mark anything.
29445         * lisp/emacs-lisp/package.el: Mode-line progress report.
29446         (package-menu--transaction-status): New variable.
29447         (package-menu-mode, package-menu--perform-transaction): Use it.
29449         * lisp/emacs-lisp/package.el: Better transaction messages.
29450         (package-menu--partition-transaction): New function.
29451         (package-menu--prompt-transaction-p, package-menu-execute):
29452         Use it.
29453         (package-menu--perform-transaction): Don't do any messaging.
29455         * lisp/emacs-lisp/package.el: Revert async package transactions.
29456         (package-menu-async): Update doc.
29457         (package-install-from-archive, package-download-transaction)
29458         (package-install, package-menu--perform-transaction)
29459         (package-menu-execute): Remove asynchronous functionality.
29461 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
29463         Revert doc string changes to f90.el
29464         Problem reported by Glenn Morris in:
29465         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
29466         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
29467         Revert recent changes to doc strings, as it's intended that they
29468         use grave accent, not quote.
29470 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
29472         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
29473         Improve parameter name.
29475         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
29477 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
29479         Don't require help-fns when not needed
29480         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
29481         * lisp/emacs-lisp/elint.el:
29482         Don't require help-fns at the top level
29483         * lisp/emacs-lisp/advice.el (ad-arglist):
29484         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
29485         Don't require help-fns.  (Bug#17001)
29487 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
29489         Fix slash collapsing in etags on MS-Windows
29490         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
29491         MS-Windows code from the Posix code, and support collapsing both
29492         forward- and back-slashes on MS-Windows.  Fixes a regression found
29493         by the test suite.
29495         Improve documentation of glyphless-char-display
29496         * doc/lispref/display.texi (Glyphless Chars): Improve
29497         documentation of glyphless character display.
29499         Fix "acronym" display of glyphless characters on w32
29500         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
29501         ignore "acronym" substitutes of 1 character for glyphless characters.
29503 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
29505         Add an automated test for let-when-compile
29506         * test/automated/subr-tests.el (let-when-compile): New test.
29508         Add let-when-compile macro instead of using pcase-let
29509         * lisp/subr.el (let-when-compile): New let-like macro that makes its
29510         bindings known to macros like `eval-when-compile' in the body.
29511         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
29512         a `let-when-compile'.  Also comment out the unused lexical var
29513         `el-kws-re'.
29514         The change greatly improves readability, while providing almost the
29515         same (even shorter) byte code: instead of pre-evaluating 10 variables,
29516         tossing them into a list, and destructuring that list a full screen
29517         page later, the variables are simply bound as they are evaluated,
29518         wrapped individually in `eval-when-compile'.
29520 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
29522         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
29523         (package-delete-button-action): New function.
29524         (describe-package-1): Add Delete button.
29526         * lisp/emacs-lisp/package.el: Better dependency description.
29527         (package--used-elsewhere-p): New optional arg, ALL, and return
29528         package-desc objects instead of names.
29529         (package-delete): Update accordingly.
29530         (describe-package-1): Describe which packages require the package.
29532 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
29534         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
29535         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
29536         Fix doc-string.
29538         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
29539         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
29540         (switch-to-buffer): If the selected window is strongly dedicated
29541         to its buffer, signal error before prompting for buffer name.
29542         Handle `switch-to-buffer-in-dedicated-window'.
29543         * doc/lispref/windows.texi (Switching Buffers):
29544         Document `switch-to-buffer-in-dedicated-window'.
29546 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
29548         Prefer "this" to “this” in doc strings
29549         This mostly just straightens quotes introduced in my previous patch.
29550         Suggested by Dmitry Gutov in:
29551         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
29552         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
29553         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
29554         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
29555         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
29556         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
29557         Prefer straight double quotes to curved double quotes in doc strings.
29559         Fix minor quoting problems in doc strings
29560         These were glitches regardless of how or whether we tackle the
29561         problem of grave accent in doc strings.
29562         * lisp/calc/calc-aent.el (math-restore-placeholders):
29563         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
29564         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
29565         * lisp/leim/quail/hebrew.el ("hebrew-new")
29566         ("hebrew-biblical-sil"):
29567         * lisp/leim/quail/thai.el ("thai-kesmanee"):
29568         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
29569         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
29570         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
29571         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
29572         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
29573         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
29574         (semantic-tag-components):
29575         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
29576         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
29577         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
29578         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
29579         * lisp/emacs-lisp/generator.el (iter-next):
29580         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
29581         (gnus-article-mode-syntax-table):
29582         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
29583         * lisp/net/soap-client.el (soap-wsdl-get):
29584         * lisp/net/telnet.el (telnet-mode):
29585         * lisp/org/org-compat.el (org-number-sequence):
29586         * lisp/org/org.el (org-remove-highlights-with-change)
29587         (org-structure-template-alist):
29588         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
29589         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
29590         (handwrite-12pt, handwrite-13pt):
29591         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
29592         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
29593         * lisp/progmodes/verilog-mode.el (verilog-tool)
29594         (verilog-string-replace-matches, verilog-preprocess)
29595         (verilog-auto-insert-lisp, verilog-auto-insert-last):
29596         * lisp/textmodes/makeinfo.el (makeinfo-options):
29597         * src/font.c (Ffont_spec):
29598         Fix minor quoting problems in doc strings, e.g., missing quote,
29599         ``x'' where `x' was meant, etc.
29600         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
29601         Fix minor quoting problem in other string.
29602         * lisp/leim/quail/ethiopic.el ("ethiopic"):
29603         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
29604         Omit unnecessary quotes.
29605         * lisp/faces.el (set-face-attribute, set-face-underline)
29606         (set-face-inverse-video, x-create-frame-with-faces):
29607         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
29608         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
29609         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
29610         * lisp/net/tramp.el (tramp-methods):
29611         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
29612         * lisp/textmodes/artist.el (artist-ellipse-right-char)
29613         (artist-ellipse-left-char, artist-vaporize-fuzziness)
29614         (artist-spray-chars, artist-mode, artist-replace-string)
29615         (artist-put-pixel, artist-text-see-thru):
29616         * lisp/vc/ediff-util.el (ediff-submit-report):
29617         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
29618         Use double-quotes rather than TeX markup in doc strings.
29619         * lisp/skeleton.el (skeleton-pair-insert-maybe):
29620         Reword to avoid the need for grave accent and apostrophe.
29621         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
29622         Don't use grave and acute accents to quote.
29624 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
29626         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
29627         Silence compiler.
29629 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
29631         Try to port new etags tests to MS-Windows
29632         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
29633         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
29634         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
29635         Adjust to test-case changes below.
29636         * test/etags/Makefile (CSRC): Remove dostorture.c.
29637         Whatever it was trying to test, wasn't working portably.
29638         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
29639         just a line-ending problem.
29640         * test/etags/c-src/dostorture.c: Remove.
29641         * test/etags/cp-src/c.C: Remove stray CR.
29642         * test/etags/html-src/algrthms.html: Remove trailing CRs.
29643         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
29644         but if someone edits it later it should stay UTF-8-compatible.
29646 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
29648         Fix display of overlapping window-specific overlays
29649         * src/keyboard.c (adjust_point_for_property): When adjusting point
29650         due to display strings, ignore overlays that are specific to
29651         windows other than the currently selected one.
29652         * src/xdisp.c (handle_single_display_spec): If the display
29653         property comes from an overlay, arrange for buffer iteration to
29654         resume only after the end of that overlay.  (Bug#20607)
29656 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
29658         New command icomplete-force-complete-and-exit
29659         * lisp/icomplete.el (icomplete-force-complete-and-exit):
29660         New command
29661         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
29662         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
29663         (icomplete-minibuffer-map): Bind C-j to it.
29664         (icomplete-forward-completions, icomplete-backward-completions):
29665         Mention the new command in the docstring.
29666         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
29667         Revert the previous fix for bug#17545.
29669 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
29671         Fix last commit
29673         In Elisp manual explain how to override window manager positioning
29674         (Bug#20552)
29675         * doc/lispref/frames.texi (Position Parameters): Give example of
29676         how to override a window manager positioning decision.
29678         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
29679         * src/frame.c (Fdelete_frame): In doc-string mention that frame
29680         can't be deleted if it has a surrogate minibuffer.
29681         * doc/lispref/frames.texi (Minibuffers and Frames)
29682         (Deleting Frames): Explain "surrogate minibuffer frames".
29684         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
29686 2015-05-18  Glenn Morris  <rgm@gnu.org>
29688         Add option to ignore commit lines matching a pattern in ChangeLog
29689         * build-aux/gitlog-to-changelog: Add --ignore-line option.
29690         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
29692 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
29694         Don't skip new etags tests on non-UTF-8 hosts
29695         Problem reported by Eli Zaretskii for MS-Windows.
29696         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
29697         (LC_ALL): Set to C if the current locale isn't UTF-8.
29698         (.PHONY): Remove ediff_1 thru ediff_5.
29699         (check): Always run.
29701 2015-05-18  Glenn Morris  <rgm@gnu.org>
29703         * lisp/calculator.el (calculator-funcall):
29704         * lisp/textmodes/artist.el (artist-spray-random-points):
29705         Use standard degree/radian conversion utilities.
29707         Further lisp-complete-symbol related cleanup.
29708         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
29709         Unadvertise non-functional argument.  Replace obsolete alias.
29711 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
29713         Add a test case for Maven warning ouput
29714         * test/automated/compile-tests.el
29715         (compile-tests--test-regexps-data): Add a case for Maven warning
29716         ouput.
29717         (compile--test-error-line): Check the compilation message type, if
29718         it's specified in the test data.
29720 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
29722         Update Maven compilation-mode entry to distinguish warnings
29723         * lisp/progmodes/compile.el
29724         (compilation-error-regexp-alist-alist): Update Maven entry to
29725         distinguish warnings (bug#20556).
29727 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
29729         * test/automated/sgml-mode-tests.el: New file.
29731 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
29733         Improve handling of the first Git revision
29734         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
29735         there's no next entry, delete until the end of the buffer.
29736         (log-view-end-of-defun-1): Stop at eob.
29737         * lisp/vc/vc-annotate.el
29738         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
29739         when previous-revision is nil.
29740         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
29741         with `--' to avoid ambiguity.
29742         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
29743         returned revision string.
29744         (vc-git-annotate-time): Expect `^' before the first revision.
29745         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
29746         REV1 is nil, and REV2 is not.
29747         * lisp/vc/vc.el: Update the description of the `diff' function.
29749 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
29751         Allow checkdoc to be called in batch
29752         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
29753         is non-nil, echo the error with `warn'.
29754         How it can be used in -batch:
29755         (with-current-buffer (find-file "checkdoc.el")
29756           (checkdoc-current-buffer t))
29758 2015-05-18  Glenn Morris  <rgm@gnu.org>
29760         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
29762 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
29764         * admin/notes/unicode: New section "binary files".
29766         Change new etags test to use UTF-8 encoding
29767         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
29768         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
29769         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
29770         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
29771         * test/etags/html-src/softwarelibero.html:
29772         Switch to UTF-8 encoding.
29773         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
29774         Remove Makefile, as it's too incestuous to have the test input
29775         include the build procedure.
29776         (UTF8_LOCALE, UTF_ENCODING): New macros.
29777         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
29778         (check): Skip if not UTF-8.
29779         (.PHONY): New rule.
29780         (FRC): Remove, as superseded by .PHONY.  All uses removed.
29781         (regexfile): Prefer printf to echo when outputting oddball chars.
29782         (.PRECIOUS): Remove, as these files are not built.
29784         Rename 'foo-gzipped' to 'foo.gz'
29785         * test/automated/data/decompress/foo.gz:
29786         Rename from test/automated/data/decompress/foo-gzipped,
29787         to make it easier for other tools to tell that it's compressed.
29788         * test/automated/zlib-tests.el (zlib--decompress):
29789         Adjust to renamed file.
29791 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
29793         Set up default-directory
29794         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
29795         binding for `v'.
29796         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
29797         appropriate value for default-directory.
29799 2015-05-17  Samer Masterson  <samer@samertm.com>
29801         * lisp/eshell/em-term.el (eshell-term-sentinel):
29802         No-op by default, only kills term buffer if
29803         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
29804         (eshell-destroy-buffer-when-process-dies): New custom to preserve
29805         previous behavior.
29807         eshell: Introduce new buffer syntax
29808         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
29809         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
29810         needed (Bug#19319).
29811         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
29812         (eshell-get-target): Remove shorthand-specific code.
29813         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
29814         '#<buffer-name>'.
29816 2015-05-17  Jan D  <jan.h.d@swipnet.se>
29818         Merge branch 'master' into cairo
29820 2015-04-26  Jan D  <jan.h.d@swipnet.se>
29822         Merge branch 'master' into cairo
29824         Add PBM support for cairo
29825         * src/image.c (xcolor_to_argb32): New function.
29826         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
29827         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
29828         XImagePtr if ! USE_CAIRO.
29829         (pbm_load): Add cairo support.
29831 2015-04-12  Jan D  <jan.h.d@swipnet.se>
29833         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
29834         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
29835         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
29836         x_free_cr_resources.
29838         Handle specified bg in images.  Use generic libpng code for PNGs.
29839         * src/image.c (get_spec_bg_or_alpha_as_argb)
29840         (create_cairo_image_surface): New functions when USE_CAIRO.
29841         (xpm_load): Call the above functions.  Handle XPM without mask
29842         when USE_CAIRO.
29843         (png_load_body): Handle USE_CAIRO case.
29844         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
29845         instead.
29846         (jpeg_load_body): Call create_cairo_image_surface.
29847         (gif_load, svg_load_image): Handle specified background, call
29848         create_cairo_image_surface.
29849         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
29851 2015-04-11  Jan D  <jan.h.d@swipnet.se>
29853         Support GIF and TIFF with cairo
29854         * configure.ac: Allow jpeg with cairo.
29855         Allow tiff and gif with cairo.
29856         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
29857         (tiff_load): Create cairo image surface if USE_CAIRO.
29858         (gif_load): Ditto.
29860         Support JPEG with USE_CAIRO
29861         * configure.ac: Allow jpeg with cairo.
29862         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
29864 2015-04-05  Jan D  <jan.h.d@swipnet.se>
29866         Support RSVG and cairo
29867         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
29868         * src/dispextern.h (struct image): Add cr_data2 if cairo.
29869         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
29870         (x_clear_image): Free cr_data and cr_data2 if set.
29871         (xpm_load): Assign data to cr_data2.
29872         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
29874 2015-04-03  Jan D  <jan.h.d@swipnet.se>
29876         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
29877         * configure.ac (HAVE_RSVG): Move after cairo.
29878         (USE_CAIRO): Disable rsvg, don't disable Xpm.
29879         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
29880         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
29881         don't return early.
29882         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
29883         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
29884         and create a surface.
29886         Tool tips for menus did not show any text.
29887         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
29888         tip frames, the geometry may be wrong.
29890         Merge branch 'master' into cairo, fixes tooltips not shown.
29892         Merge branch 'master' into cairo
29894         Add CAIRO_CFLAGS to lwlib/Makefile.in
29895         * Makefile.in (CAIRO_CFLAGS): Add.
29897 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29899         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
29901 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29903         Draw outermost line using black relief and erase corners also for cairo.
29904         * src/xterm.c [USE_CAIRO]: Include math.h.
29905         (enum corners) [USE_CAIRO]: New enum.
29906         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
29907         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
29908         than 1, draw the outermost line using the black relief.
29910         * src/xterm.c (x_fill_trapezoid_for_relief):
29911         Remove unnecessary cairo_close_path.
29913 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29915         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
29917         * src/xterm.c (x_draw_stretch_glyph_string):
29918         Call x_reset_clip_rectangles instead of XSetClipMask.
29920         Use int instead of unsigned int for width and height args.
29921         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
29922         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
29923         width and height args.
29925         Modernize k&r cairo-related function declarations.
29926         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
29927         (xg_print_frames_dialog): Modernize k&r declarations.
29928         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
29929         (Fx_print_frames_dialog): Modernize k&r declarations.
29930         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
29931         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
29932         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
29933         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
29934         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
29935         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
29936         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
29937         (x_clear_area): Modernize k&r declarations.
29939         Implement wave-style variant of underlining for cairo.
29940         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
29941         (x_draw_underwave) [USE_CAIRO]: Use it.
29943         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
29944         instead of XFillRectangle.
29946 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29948         Fix fringe bitmap initialization for cairo
29949         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
29950         data for cairo image surface.
29951         * src/xterm.c (x_cr_define_fringe_bitmap):
29952         Call cairo_surface_mark_dirty.
29954 2015-02-11  Jan D  <jan.h.d@swipnet.se>
29956         Add cairo drawing
29957         * configure.ac (with-cairo): New option.
29958         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
29959         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
29960         Output "Does Emacs use cairo?".
29961         * lisp/version.el (emacs-version): Add cairo version.
29962         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
29963         (FONT_OBJ): Add comment about ftcrfont.
29964         (ALL_CFLAGS): Add CAIRO_CFLAGS.
29965         (LIBES): Add CAIRO_LIBS.
29966         * src/dispextern.h (struct image): Add cr_data for cairo.
29967         (x_cr_init_fringe): Declare.
29968         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
29969         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
29970         * src/fringe.c (x_cr_init_fringe): New function name that shares code
29971         with w32_init_fringe.
29972         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
29973         * src/ftfont.c (ftfont_info_size); New global variable.
29974         (ftfont_open2): New extern function almost the same as old ftfont_open,
29975         but takes the font_object as argument.
29976         (ftfont_open): Build font object and call ftfont_open2.
29977         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
29978         * src/gtkutil.c (xg_clear_under_internal_border)
29979         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
29980         Only queue_draw if not cairo.  Change args to x_clear_area.
29981         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
29982         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
29983         (xg_print_frames_dialog): New functions for printing.
29984         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
29985         (xg_print_frames_dialog): Declare.
29986         * src/image.c: Add defined (USE_CAIRO) for PNG.
29987         Add !defined USE_CAIRO for W32 PNG code.
29988         (x_clear_image): If cairo, destroy the surface in cr_data.
29989         (png_load): Add new cairo compatible implementation.
29990         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
29991         * src/xfns.c: New section Printing.
29992         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
29993         (x-print-frames-dialog): New printing functions.
29994         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
29995         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
29996         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
29997         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
29998         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
29999         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
30000         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
30001         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
30002         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
30003         Declare.
30004         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
30005         (max_fringe_bmp, fringe_bmp): New variables.
30006         (x_gc_get_ext_data, x_extension_initialize)
30007         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
30008         (x_set_cr_source_with_gc_foreground)
30009         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
30010         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
30011         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
30012         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
30013         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
30014         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
30015         (x_update_begin): Create cairo surface if needed.
30016         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
30017         (x_update_end): Paint cairo drawing surface to xlib surface.
30018         (x_clear_under_internal_border, x_after_update_window_line): Adjust
30019         arguments to x_clear_area.
30020         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
30021         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
30022         of XSetClipMask.
30023         (x_set_glyph_string_clipping)
30024         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
30025         instead of XSetClipRectangles.
30026         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
30027         Use x_fill_rectangle instead of XFillRectangle.
30028         (x_draw_glyph_string_foreground)
30029         (x_draw_composite_glyph_string_foreground)
30030         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
30031         instead of XDrawRectangle.
30032         (x_draw_relief_rect): Add code for USE_CAIRO.
30033         Call x_reset_clip_rectangles instead of XSetClipMask.
30034         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
30035         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
30036         instead of XSetClipMask.
30037         (x_draw_image_foreground, x_draw_image_foreground_1):
30038         x_draw_rectangle instead of XDrawRectangle.
30039         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
30040         XFillRectangle.
30041         (x_draw_image_glyph_string): If img has cr_data, use it as
30042         a cairo surface.
30043         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
30044         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
30045         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
30046         x_reset_clip_rectangles instead of XSetClipMask.
30047         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
30048         (x_clear_area1): New function that calls XClearArea.
30049         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
30050         non-cairo.
30051         (x_clear_frame): x_clear_window instead of XClearWindow.
30052         (x_scroll_run): Set frame garbaged if cairo.
30053         (XTmouse_position): Initialize *part to 0.
30054         (x_scroll_bar_create): Adjust arguments to x_clear_area.
30055         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
30056         x_fill_rectangle instead of XFillRectangle.
30057         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
30058         arguments to x_clear_area.
30059         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
30060         (handle_one_xevent): Adjust arguments to x_clear_area.
30061         Destroy cairo surface for frame if ConfigureNotify.
30062         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
30063         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
30064         x_reset_clip_rectangles instead of XSetClipMask.
30065         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
30066         x_reset_clip_rectangles instead of XSetClipMask.
30067         (x_clear_frame_area): Adjust arguments to x_clear_area.
30068         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
30069         (x_term_init): Call x_extension_initialize if cairo.
30070         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
30071         x_cr_destroy_fringe_bitmap for cairo.
30072         (x_initialize): Call x_cr_init_fringe for cairo.
30073         * src/xterm.h: Add include of cairo header files.
30074         (x_bitmap_record): Add img if cairo.
30075         (x_gc_ext_data): New struct for cairo.
30076         (x_display_info): Add ext_codes for cairo.
30077         (x_output): Add cr_context and cr_surface for cairo.
30078         (x_clear_area): Change arguments from Display*/Window to frame pointer.
30079         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
30080         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
30081         (x_cr_draw_frame, x_cr_export_frames): Declare.
30083 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
30085         Fix integer-valued `mouse-highlight' (Bug#20590)
30086         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
30088 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
30090         MS-Windows followup for ASCIIfication of curved quotes
30091         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
30092         test for curved quotes being displayable, after switching the
30093         terminal encoding.  (Bug#20545)
30095 2015-05-17  Jan D  <jan.h.d@swipnet.se>
30097         Add comment that x_shift_glyphs_for_insert is never called
30098         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
30099         Add comment that this function is never called.
30101 2015-05-16  Glenn Morris  <rgm@gnu.org>
30103         * src/lisp.mk: Remove from repository and generate at build-time.
30104         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
30105         (shortlisp_filter): New variable.
30106         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
30107         (distclean): Remove lisp.mk.
30108         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
30109         * lisp/loadup.el: Tweak layout to make it easier to parse.
30110         * make-dist: Do not distribute src/lisp.mk.
30112 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
30114         Display shorter dates in Git annotate output
30115         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
30116         format (when not overridden with vc-git-annotate-switches).
30117         (vc-git-annotate-time): Support the short format, as well as ISO
30118         8601 that has been used until now (bug#5428).
30120 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
30122         ASCIIfy curved quotes on displays lacking them
30123         * lisp/international/mule-cmds.el (set-locale-environment):
30124         If curved quotes don't work, display straight ASCII approximations
30125         (Bug#20545).
30127 2015-05-16  Glenn Morris  <rgm@gnu.org>
30129         Small src/Makefile simplification
30130         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
30131         * src/Makefile.in (lisp): Derive from shortlisp.
30132         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
30134 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
30136         * lisp/help-mode.el (help-go-forward): Doc fix.
30137         (Bug#20577)
30139         * doc/lispref/debugging.texi (Profiling): Improve indexing.
30140         (Bug#20576)
30142 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
30144         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
30145         have one fewer `not'.
30147         * lisp/vc/vc-git.el (vc-git-diff-switches)
30148         (vc-git-annotate-switches, vc-git-resolve-conflicts)
30149         (vc-git-program, vc-git-root-log-format): Remove the redundant
30150         :group declarations.
30152 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
30154         Removes the predicate from lisp-complete-symbol (Bug#20456)
30155         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
30156         and remove it from the docstring.
30158 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
30160         Add new option vc-git-resolve-conflicts
30161         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
30162         (vc-git-find-file-hook): Add to after-save-hook only when the
30163         above is non-nil.
30164         (vc-git-resolve-when-done): Update to honor the new variable.
30165         (Bug#20292)
30167 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
30169         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
30170         (tabulated-list-init-header): Document new behavior.
30171         (tabulated-list-print-fake-header): Do nothing if
30172         `tabulated-list--header-string' is nil.
30173         (tabulated-list--header-string): Add a docstring.
30174         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
30175         * etc/NEWS: Document it.
30177 2015-05-15  Leo Liu  <sdl.web@gmail.com>
30179         Revert "Fix cps--gensym"
30180         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
30181         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
30183 2015-05-15  Glenn Morris  <rgm@gnu.org>
30185         Replace AC_SUBST_FILE in configure with include in Makefiles
30186         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
30187         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
30188         (AUTO_DEPEND): New output variable.
30189         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
30190         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
30191         (lwlib_deps_frag): Replace by conditional include.
30192         * lwlib/autodeps.mk: Remove file.
30193         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
30194         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
30195         (oldxmenu_deps_frag): Replace by conditional include.
30196         * oldXMenu/autodeps.mk: Remove file.
30197         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
30198         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
30199         (lisp_frag): Replace by an include.
30200         (deps_frag): Replace by conditional include.
30201         * src/autodeps.mk: Remove file.
30203         Tweak japanese.el's loading of dependencies
30204         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
30205         * lisp/language/japanese.el: Use require rather than load.
30206         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
30207         Provide a feature.
30208         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
30209         Provide a feature in the generated file.
30211 2015-05-15  Jan D  <jan.h.d@swipnet.se>
30213         Fix NS warnings
30214         * src/nsmenu.m (ns_popup_dialog)
30215         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
30216         * src/nsfns.m (Fx_create_frame): Remove unused variables.
30217         (Fns_read_file_name): Initialize fname, remove ret.
30218         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
30219         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
30220         Remove unused variable.
30221         (init): Add parantesis in if.
30222         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
30224 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
30226         Fix a enum conversion warning in macfont.m
30227         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
30228         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
30230 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
30232         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
30233         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
30235 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
30237         * lisp/cus-start.el: Add ns-confirm-quit.
30239         Fix warnings on OSX 10.10
30240         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
30241         OSX versions.
30242         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
30243         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
30244         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
30245         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
30246         setScalesWhenResized for OSX < 10.6.
30247         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
30248         * src/nsterm.m (ns_copy_bits): New function that does not use
30249         deprecated NSCopyBits.
30250         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
30251         (runAlertPanel): New function.
30252         (applicationShouldTerminate:): Call runAlertPanel.
30253         (initFrameFromEmacs, toggleFullScreen:): Only call
30254         useOptimizedDrawing for OSX < 10.10.
30255         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
30256         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
30257         (draggingEntered:): Returns NSDragOperation.
30258         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
30260 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
30262         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
30263         (package--init-file-ensured): New variable.
30264         (package-initialize, package--ensure-init-file): Use it.
30266 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
30268         Honor :fore/background for XBM on NS (Bug#14969)
30269         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
30270         initFromXBM takes bg, fg args, remove flip arg.
30271         (ns_image_from_XBM): Add bg, fg args.
30272         * src/image.c (x_create_bitmap_from_data)
30273         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
30274         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
30275         initFromXBM.  Remove flip arg.
30276         (initFromSkipXBM): Move code to initFromXBM.
30277         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
30278         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
30279         always false.
30280         Remove bit flipping (bitPat, swt), generated incorrect images when
30281         width/height wasn't a multiple of 8.
30282         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
30283         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
30284         remove flip arg.
30286 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
30288         * lisp/emacs-lisp/package.el: Be more careful with the init file.
30289         (package--ensure-init-file): Check that user-init-file is set,
30290         exists, is readable, and is writable.  (Bug#20584)
30291         Also expand the docstring.
30293 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
30295         Sync with upstream verilog-mode revision 6232468
30296         * lisp/progmodes/verilog-mode.el
30297         (verilog-font-lock-grouping-keywords-face)
30298         (verilog-highlight-grouping-keywords): Fix use of face when
30299         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
30300         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
30301         parent is reset, bug906.  Reported by Ken Schmidt.
30302         (verilog-auto-inout-module): Add fourth regexp argument to
30303         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
30304         Reported by John Tillema.
30305         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
30306         modport if signal attachment is itself a modport.  Reported by
30307         Matthew Lovell.
30308         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
30309         always_comb and always_latch, bug844.  Reported by Greg Hilton.
30310         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
30311         with many curly-bracket pairs, bug663.
30312         (verilog-set-auto-endcomments): Fix end comments for functions of
30313         type void, etc.  Reported by Alex Reed.
30314         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
30315         caused by indent-line-to deleting tabls pre 24.5.
30316         (verilog-nameable-item-re): Fix nameable items that can have an
30317         end-identifier to include endchecker, endgroup, endprogram,
30318         endproperty, and endsequence.  Reported by Alex Reed.
30319         (verilog-label-be): When auto-commenting a buffer, consider
30320         auto-comments on all known keywords (not just a subset thereof).
30321         Reported by Alex Reed.
30322         (verilog-auto-end-comment-lines-re)
30323         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
30324         Automatically comment property/endproperty blocks to match other
30325         similar blocks like sequence/endsequence, function/endfunction, etc.
30326         Reported by Alex Reed.
30327         (verilog-set-auto-endcomments): Detect the function- or task-name
30328         when auto-commenting blocks that lack an explicit portlist.
30329         Reported by Alex Reed.
30330         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
30331         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
30332         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
30333         is nil, fix indenting initial/final to match always statements,
30334         bug825.  Reported by Tim Clapp.
30335         (verilog-extended-complete-re): Fix indentation of DPI-C imports
30336         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
30337         Mao and Jason Forkey.
30338         (verilog-read-decls): Fix parsing typed interfaces.  Fix
30339         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
30340         Fix localparam not being ignored in AUTOINSTPARAM,
30341         bug889.  Reported by Shannon Hill.
30342         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
30343         bug793.  Reported by Pierre-David Pfister.
30344         (verilog-auto-arg-format, verilog-auto-arg-ports):
30345         Add verilog-auto-arg-format to support newlines in AUTOARG.
30346         Reported by Jie Xiao.
30347         (verilog-batch-execute-func): Do not batch re-auto files loaded by
30348         Local Variables.  Fix printing "no changes to be saved" with
30349         verilog-batch.  Reported by Dan Dever.
30350         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
30351         interface-only modules, bug721.  Reported by Dean Hoyt.
30352         Author: Alex Reed <acreed4@gmail.com>
30353         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
30354         Don't treat '<keyword>:<identifier>' as the start of a labeled
30355         statement, bug905.  Reported by Enzo Chi.
30356         (verilog-directive-re, verilog-compiler-directives)
30357         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
30358         directives (plus some extras) when determining indentation, bug
30359         901.  Reported by Bernd Beuster.
30360         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
30361         iff expression doesn't start with word-character, bug900.
30362         (verilog-optional-signed-range-re, verilog-optional-signed-re):
30363         Fix incorrect indentation/alignment of unsigned declarations,
30364         bug897.
30365         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
30366         always constructs, bug895.
30367         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
30368         Reported by Eric Mastromarchi.
30369         (verilog-beg-of-statement): Fix indenting for some forms of
30370         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
30371         continued assignment incorrect if first line ends with ']', bug437.
30372         Reported by Dan Dever.  Fix indention of cover inside an
30373         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
30374         blocks, bug842.
30375         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
30376         Reported by Kaushal Modi.
30377         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
30378         (verilog-backward-token): Fix indenting sensitivity lists with
30379         named events, bug840.  Reed.
30380         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
30381         nil not honoring 'forever', 'foreach', and 'do' keywords.
30383 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
30385         Check for invalid GTK+ monitor scales
30386         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
30387         INT_MAX for too-large scales.  All callers changed to assume the
30388         result is valid (Bug#20432).
30389         (xg_frame_set_char_size, xg_update_scrollbar_pos):
30390         Calculate scale only if needed.
30391         Show ASCII approximations instead.
30393 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
30395         Fix daemon crashes when linum-mode is turned on early on
30396         * src/window.c (Fwindow_end): Don't try calling display engine
30397         functions on initial-frame frame.  (Bug#20565)
30399         Fix selective diff browsing in Ediff
30400         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
30401         Go to the beginning of the region before searching for the
30402         ediff-regexp-focus-* regexps.  (Bug#20568)
30404 2015-05-14  Jan D  <jan.h.d@swipnet.se>
30406         Fixes bug#20142
30407         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
30408         arrive in the main loop, even for Gtk 3 (Bug#20142).
30410         Don't access display after i/o error (Bug#19147).
30411         * src/xterm.c (x_connection_closed): Add third arg ioerror.
30412         If ioerror, set display to 0 (Bug#19147).
30413         (x_error_quitter): Call x_connection_closed with third arg false.
30414         (x_io_error_quitter): Call x_connection_closed with third arg true.
30416         Handle GTK_SCALE, fixes Bug#20432.
30417         * src/gtkutil.c (xg_get_gdk_scale): New function.
30418         (xg_frame_set_char_size)
30419         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
30420         (xg_get_default_scrollbar_height)
30421         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
30422         when setting sizes (Bug#20432).
30424 2015-05-13  Leo Liu  <sdl.web@gmail.com>
30426         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
30428 2015-05-13  Glenn Morris  <rgm@gnu.org>
30430         Fix bootstrap (void function cl-member).
30431         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
30432         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
30434 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
30436         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
30437         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
30438         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
30439         Avoid defalias for closures which are not immutable.
30440         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
30441         the dispatchers table with various entries.
30442         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
30443         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
30445 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
30447         Improve tagging of C bindings in DEFVAR_*
30448         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
30449         from DEFVAR_*.
30451 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
30453         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
30455 2015-05-12  Glenn Morris  <rgm@gnu.org>
30457         * lisp/progmodes/tcl.el (tcl-filter):
30458         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
30460         Add basic VC push support
30461         * lisp/vc/vc.el (vc-push): New autoloaded command.
30462         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
30463         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
30464         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
30465         (vc-bzr-push): New.
30466         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
30467         (vc-git-pull): Reimplement using vc-git--pushpull.
30468         (vc-git-push): New.
30469         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
30470         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
30471         * doc/emacs/maintaining.texi (Pulling / Pushing):
30472         Rename from "VC Pull".  Mention pushing.
30473         (VC With A Merging VCS, VC Change Log): Update xrefs.
30474         (Branches): Update menu.
30475         * doc/emacs/emacs.texi: Update menu.
30476         * etc/NEWS: Mention this.
30478 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
30480         Improve the seq pcase pattern and the `seq-let' macro
30481         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
30482         object is a sequence, and binds each element of ARGS to the
30483         corresponding element of the sequence.
30485 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
30487         Fix tags created from DEFVAR_* declarations in C
30488         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
30489         to make tags extracted from DEFVAR_* declarations more accurate.
30491         Add a test suite for etags
30492         * test/etags/: New test suite, adapted from
30493         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
30494         whose original author is Francesco Potortì <pot@gnu.org>.
30496         Fix tagging of symbols in C enumerations
30497         * lib-src/etags.c (consider_token): Don't tag symbols in
30498         expressions that assign values to enum constants.  See
30499         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
30500         for details.
30501         (C_entries): Reset fvdef to fvnone after processing a preprocessor
30502         conditional and after a comma outside of parentheses.
30504 2015-05-12  Glenn Morris  <rgm@gnu.org>
30506         * lisp/url/url-handlers.el (url-file-name-completion)
30507         (url-file-name-all-completions): Silence compiler.
30509         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
30511         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
30513 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
30515         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
30516         (cl--generic-mandatory-args): Remove.
30517         (cl--generic-split-args): New function.
30518         (cl-generic-define, cl--generic-lambda): Use it.
30519         (cl-generic-define-method): Use it as well, and add support for
30520         context args.
30521         (cl--generic-get-dispatcher): Handle &context dispatch.
30522         (cl--generic-cache-miss): `dispatch-arg' can now be a
30523         context expression.
30524         (cl--generic-dispatchers): Pre-fill.
30525         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
30526         New test.
30528 2015-05-11  Glenn Morris  <rgm@gnu.org>
30530         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
30532 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
30534         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
30535         * lisp/term/rxvt.el: Require term/xterm.
30536         (rxvt-function-map): Use xterm-rxvt-function-map.
30537         (rxvt-standard-colors): Move before first use.
30538         (terminal-init-rxvt): Use xterm--push-map and
30539         xterm-register-default-colors.
30540         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
30541         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
30542         Move shared bindings between rxvt and xterm to it.
30543         (xterm-function-map): Use it.  Move the xterm-paste binding to
30544         xterm-rxvt-function-map (bug#20444).
30545         (xterm-standard-colors): Move before first use.
30546         (xterm--push-map): New function.
30547         (xterm-register-default-colors): Take standard colors as argument.
30548         (terminal-init-xterm): Use it.  Adjust call to
30549         xterm-register-default-colors.
30551 2015-05-11  Glenn Morris  <rgm@gnu.org>
30553         * lisp/term/x-win.el: Quieten --without-x compilation.
30554         (x-own-selection-internal, x-disown-selection-internal)
30555         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
30556         Declare.
30558         * Makefile.in (emacslog): Remove srcdir.
30559         (ChangeLog): Update for the above.
30561 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
30563         python.el: better limit for looking-back calls
30564         * lisp/progmodes/python.el (python-shell-accept-process-output):
30565         Use last comint prompt start as limit for looking-back.
30567 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
30569         CEDET (srecode-insert-fcn): Fix use of oref on a class
30570         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
30571         on a class.  Reported by Pierre Lorenzon.
30572         (srecode-template-inserter-point): Remove declaration.
30574         CEDET (srecode-create-dictionary): Avoid obsolete object name
30575         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
30576         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
30578 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
30580         C-x 8 shorthands for curved quotes, Euro, etc.
30581         Although C-x 8 lets you insert arbitrary Unicode characters,
30582         it's awkward to use this to insert commonly used symbols such as curved
30583         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
30584         characters commonly found in English text and in basic math.
30585         For example, assuming the Alt key works on your keyboard and iso-transl
30586         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
30587         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
30588         (Bug#20499)
30589         * doc/emacs/mule.texi (Unibyte Mode):
30590         A few other printing characters now work too.
30591         * etc/NEWS: Document this.
30592         * lisp/international/iso-transl.el (iso-transl-char-map):
30593         Also support the following characters:
30594         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
30596 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
30598         Add xref-find-regexp
30599         * lisp/progmodes/xref.el (xref-find-function): Describe the
30600         `matches' action.
30601         (xref-find-regexp): New command, using it.
30602         (xref-collect-references): Rename to xref-collect-matches.
30603         (xref--collect-reference): Rename to xref--collect-match.
30604         (xref-collect-matches, xref--collect-match): Accept new argument,
30605         KIND.  Update accordingly.
30606         (xref--regexp-to-extended): New function.
30607         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
30608         `matches' action.
30609         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
30610         * lisp/progmodes/etags.el (etags-xref-find):
30611         Support the `matches' action.
30612         (etags--xref-find-matches): New function.
30614 2015-05-10  Glenn Morris  <rgm@gnu.org>
30616         * Makefile.in: Fixes for recent change-history changes.
30617         (change-history-nocommit): Update footer regexp.
30618         Ensure output script stays executable.
30620 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
30622         New version of `seq-let' based on a pcase pattern
30623         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
30624         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
30626 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
30628         Add basic HTML5 tags and a template
30629         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
30630         (html-tag-alist): Add HTML5 tags.
30631         (html-tag-help): Add new tags descriptions.
30632         (html-navigational-links): Template for nav links.
30633         (html-html5-template): Template for a HTML5 page.
30635 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
30637         semantic/symref/grep: Don't use word boundaries
30638         * lisp/cedet/semantic/symref/grep.el
30639         (semantic-symref-perform-search): Instead of wrapping input in
30640         word boundaries, check that the characters before and after are
30641         not word constituents.
30643         semantic/symref/grep: Support regexp search
30644         * lisp/cedet/semantic/symref.el
30645         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
30646         the search type is regexp.
30647         * lisp/cedet/semantic/symref/grep.el
30648         (semantic-symref-perform-search): Support the regexp search type.
30649         Pass -E to Grep when it's used.
30651         semantic-symref-regexp: Allow to input an arbitrary string
30652         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
30653         Allow to input an arbitrary string interactively.
30655         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
30656         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
30657         Remove tag-symbol-match-p from the default value
30658         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
30660         Declare find-tag obsolete
30661         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
30662         xref-find-definitions.
30664 2015-05-10  Jan D  <jan.h.d@swipnet.se>
30666         Draw composite string correctly (Bug#20537)
30667         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
30668         New function.
30669         (ns_draw_glyph_string): Call it.
30671 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
30673         Avoid infloop in ERC
30674         * lisp/simple.el (line-move-to-column): Ignore field boundaries
30675         while computing line beginning position.  (Bug#20498)
30677 2015-05-08  Glenn Morris  <rgm@gnu.org>
30679         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
30680         * build-aux/gitlog-to-emacslog: Check called from right directory.
30681         (srcprefix): Remove.
30683         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
30684         * Makefile.in (ChangeLog): No longer pass "distprefix".
30685         * make-dist: Update "make ChangeLog" syntax for the above change.
30687         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
30688         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
30690         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
30692         Add command-line option-parsing to gitlog-to-emacslog
30693         * build-aux/gitlog-to-emacslog: Add command-line options.
30694         By default, refuse to remove an existing output file.
30695         * Makefile.in (CHANGELOG): Update default.
30696         (ChangeLog): Do not test for existing file.
30697         (change-history-nocommit): Ensure temp file does not exist.
30699         Quieten --without-x compilation
30700         * lisp/term/common-win.el: Provide a feature.
30701         * lisp/term/x-win.el (term/common-win): Require it.
30703         * lisp/dired-aux.el (dired-do-print): Require lpr.
30705         Quieten compilation, eg in --without-x builds
30706         * lisp/dired-aux.el (lpr-printer-switch):
30707         * lisp/frame.el (tool-bar-height):
30708         * lisp/linum.el (font-info):
30709         * lisp/window.el (font-info, overflow-newline-into-fringe)
30710         (tool-bar-height):
30711         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
30712         * lisp/gnus/gnus-util.el (iswitchb-mode):
30713         * lisp/mail/rmailmm.el (libxml-parse-html-region):
30714         * lisp/net/nsm.el (gnutls-peer-status)
30715         (gnutls-peer-status-warning-describe):
30716         * lisp/net/shr.el (libxml-parse-xml-region):
30717         * lisp/url/url-http.el (gnutls-peer-status): Declare.
30719 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
30721         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
30722         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
30723         `subclass' since they're never called with a class.
30724         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
30725         srecode-dictionary-child-p.
30727 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
30729         * lisp/help.el (help--binding-locus): Document argument POSITION.
30730         (Bug#20530)
30732 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
30734         Merge from gnulib
30735         * doc/misc/texinfo.tex: Get latest version.
30737 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
30739         ffap.el (ffap-read-file-or-url): Fix completing-read call
30740         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
30741         `completing-read' should be a symbol.
30743 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
30745         Verify file modifications by other programs
30746         * src/filelock.c (lock_file): Check whether the file was modified
30747         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
30749         Fix keyboard macros that include function keys
30750         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
30751         keys in the macro before returning.  (Bug#20454)
30753 2015-05-08  Glenn Morris  <rgm@gnu.org>
30755         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
30756         "Copyright-paperwork-exempt".  (Bug#20324)
30758         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
30759         (log-edit-rewrite-tiny-change): New variable.
30760         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
30761         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
30762         * etc/NEWS: Mention this.
30764         * lisp/calc/calc.el (math-zerop): Declare.
30766         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
30768 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
30770         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
30771         Support the case when BINDINGS is a single tuple.  (Bug#20525)
30773         * etc/NEWS: Fix typo in previous commit
30774         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
30776 2015-05-07  Jan D  <jan.h.d@swipnet.se>
30778         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
30779         Output URL to Gtk+ bug (Bug#20452).
30781         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
30783 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
30785         * lisp/emacs-lisp/package.el: New "external" package status.
30786         An external package is any installed package that's not built-in
30787         and not from `package-user-dir', which usually means it's from an
30788         entry in `package-directory-list'.  They are treated much like
30789         built-in packages, in that they cannot be through the Package Menu
30790         deleted and are not considered for upgrades.
30791         (package-desc-status): Identify if a package is installed outside
30792         `package-user-dir'.
30793         (package-menu--print-info-simple)
30794         (package-menu--status-predicate): Add support for it.
30795         * etc/NEWS: Document it.
30797 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30799         * lisp/mail/rmail.el: Use lexical-binding.
30800         (rmail-bury): Remove unused var `buffer-to-bury'.
30801         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
30802         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
30803         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
30804         (rmail-insert-inbox-text): Remove unused var `movemail'.
30805         (rmail-add-mbox-headers): Remove unused var `limit'.
30806         (rmail-undelete-previous-message): Remove unused var `value'.
30807         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
30808         `resent-reply-to'.
30809         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
30810         (rmail-restore-desktop-buffer): Rename arguments.
30812 2015-05-06  Glenn Morris  <rgm@gnu.org>
30814         * Makefile.in (change-history-commit): Add missing piece of previous.
30816         Avoid unnecessary bumping of Makefile.in's timestamp
30817         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
30818         (emacslog): New variable.
30819         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
30820         (unchanged-history-files): Use $emacslog rather than Makefile.in.
30821         (change-history-nocommit): Store hash in $emacslog.
30822         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
30823         * admin/update_autogen (changelog_files): Update for the above.
30825         * Makefile.in: Don't always insist on removing existing "ChangeLog".
30826         (CHANGELOG): New variable.
30827         (no-ChangeLog): Remove.
30828         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
30829         (change-history-nocommit): Use a temp file rather than insisting
30830         on deletion of any existing "ChangeLog".
30832         * build-aux/gitlog-to-emacslog: Allow specification of output.
30834         * admin/update_autogen: Add option to update ChangeLog.
30835         (usage): Mention -H.
30836         (changelog_flag, changelog_n, changelog_files): New variables.
30837         (main): Check for -H, and maybe run change-history-nocommit.
30839 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30841         * lisp/subr.el (delete-dups): Pre-size the hashtable.
30843         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
30844         cl--arglist-args is defined (bug#20517).
30846 2015-05-06  Glenn Morris  <rgm@gnu.org>
30848         * Makefile.in (change-history-nocommit): New.
30850 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
30852         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
30853         timer when it is non-nil
30854         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
30856 2015-05-06  Glenn Morris  <rgm@gnu.org>
30858         Quieten CEDET compilation
30859         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
30860         Invert fboundp test to quieten on current Emacs.
30861         * lisp/cedet/ede/config.el (ede-shell-run-something)
30862         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
30863         (semanticdb-refresh-table): Declare.
30864         (ede-preprocessor-map): Require semantic/db.
30866         Quieten cc-mode compilation
30867         * lisp/progmodes/cc-awk.el (c-forward-sws):
30868         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
30869         Declare.
30871 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
30873         * lisp/subr.el (delete-dups): Avoid nreverse.
30875 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
30877         * lisp/subr.el (delete-dups): Make it destructive again.
30879 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
30881         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
30883 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30885         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
30886         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
30887         (testcover--read): Rename from testcover-read.  Change calling
30888         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
30889         is gone.
30890         (testcover-start): Use add-function.  Move edebug-all-defs binding to
30891         testcover--read.
30892         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
30893         (testcover-mark): Remove unused var `item'.
30894         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
30896 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
30898         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
30899           use a hash table.  This can result in ~500 times speed-up for typical
30900           collections of size 5000, like that of `load-library'.
30902 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30904         CEDET: Avoid `oref' on classes in a few more cases
30905         * lisp/cedet/ede/generic.el (ede-find-target):
30906         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
30907         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
30908         var `prefix'.
30910         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
30911         (grepflags, greppattern): Declare.
30912         (semantic-symref-perform-search): Remove unused var `pat'.
30914         CEDET (srecode-compile-inserter): Avoid `oref' on classes
30915         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
30916         Avoid `oref' on classes (bug#20491).
30917         (srecode-compile-split-code): Remove unused var `key'.
30919 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
30921         Clean up pulse.el a little
30922         * lisp/cedet/pulse.el (pulse): Remove.
30923         (pulse-momentary-timer): Save instead of the stop time.
30924         (pulse-momentary-highlight-overlay):
30925         Call pulse-momentary-unhighlight first thing.
30926         Treat pulse-momentary-overlay as a single value, not a list.
30927         Save the created timer.  Only pass the stop time to the timer.
30928         (pulse-tick): Update accordingly.
30929         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
30930         single value.  Cancel the timer.
30932 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
30934         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
30935         Support the biblatex journaltitle field.
30937 2015-05-05  Glenn Morris  <rgm@gnu.org>
30939         Minor declare-function improvement
30940         * lisp/emacs-lisp/bytecomp.el
30941         (byte-compile-macroexpand-declare-function):
30942         Handle declarations after calls.  (Bug#20509)
30944         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
30946         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
30948 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
30950         Pulse using a timer
30951         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
30952         (pulse-momentary-highlight-overlay): Set up the timer instead of
30953         calling `pulse'
30954         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
30955         (pulse-tick): New function.
30956         (pulse-momentary-unhighlight): Cut off the stop time.
30957         (pulse-delay): Update the docstring WRT to not using sit-for.
30959         Add semantic/symref/grep file patterns for ruby-mode
30960         * lisp/cedet/semantic/symref/grep.el
30961         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
30962         Clarify the docstring.
30964         Don't require match
30965         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
30966         match.  That doesn't work for every command, and some identifier
30967         completion tables are bound to be imperfect anyway.
30969 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
30971         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
30972         (semantic-grammar--template-expand): New function.
30973         (semantic-grammar-header, semantic-grammar-footer): Use it.
30974         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
30975         (semantic-grammar-file-regexp): Refine regexp.
30976         (semantic-grammar-eldoc-get-macro-docstring):
30977         Use elisp-get-fnsym-args-string when available.
30978         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
30979         instead of the old eldoc-* names.
30980         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
30981         from elisp-mode.el.  Tweak calling convention.
30982         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
30983         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
30984         elisp--get-fnsym-args-string.
30985         (elisp--highlight-function-argument): Add `prefix' arg.
30986         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
30987         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
30989 2015-05-05  Glenn Morris  <rgm@gnu.org>
30991         * lisp/help-fns.el (describe-function-1):
30992         Handle builtins with advertised calling conventions.  (Bug#20479)
30994 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
30996         Merge branch 'seq-let'
30998         Update `seq-let' documentation
30999         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
31000         with the support of  `&rest'.
31002         Add support for &rest in `seq-let'
31003         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
31004         in the argument list.
31005         * test/automated/seq-tests.el: Add a test for parsing and binding
31006         `&rest' in `seq-let'.
31008 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
31010         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
31011         Add missing increment (Bug#20467).
31012         (eieio-object-value-create): Adjust to new slots representation
31013         (Bug#20467).
31014         (eieio-object-value-create): Fix missed adjustment to new
31015         representation of slots metadata.
31017 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
31019         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
31021 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
31023         Work around "Attempt to modify read-only object"
31024         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
31025         elisp--xref-find-definitions, to work around "Attempt to modify
31026         read-only object" error.
31028         Only skip some variables that have function counterparts
31029         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
31030         Only skip minor-mode-named variable if it's defined in a Lisp
31031         file, and it's in minor-mode-list (bug#20506).
31032         * test/automated/elisp-mode-tests.el
31033         (elisp-xref-finds-both-function-and-variable)
31034         (elisp-xref-finds-only-function-for-minor-mode): New tests.
31036 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
31038         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
31039         previous change.
31040         (xref--insert-xrefs): Buttonize the whole line, including the
31041         number at the beginning.
31043         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
31044         Make sure we're inside the let bindings.
31045         * test/automated/elisp-mode-tests.el
31046         (elisp-completes-functions-after-let-bindings): New test.
31048 2015-05-04  Glenn Morris  <rgm@gnu.org>
31050         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
31051         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
31052         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
31053         Remove outdated declarations.
31055         Replace instances of "(eval-when-compile (autoload ...))"
31056         * lisp/gnus/gnus-art.el (nneething-get-file-name):
31057         Declare rather than autoload.
31058         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
31059         Remove pointless autoload.
31060         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
31061         (gnus-topic-create-topic, gnus-topic-enter-dribble):
31062         Declare rather than autoload.
31063         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
31064         (mailcap-extension-to-mime): Autoload at run-time.
31065         * lisp/gnus/mm-util.el (latin-unity-massage-name)
31066         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
31067         (latin-unity-representations-present-region):
31068         Declare rather than autoload.
31069         * lisp/gnus/mml-smime.el (epg-make-context)
31070         (epg-passphrase-callback-function): Autoload at run-time.
31071         (epg-context-set-signers, epg-context-result-for)
31072         (epg-new-signature-digest-algorithm)
31073         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
31074         (epg-sign-string, epg-encrypt-string)
31075         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
31076         (epg-configuration, epg-expand-group, epa-select-keys):
31077         Declare rather than autoload.
31078         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
31079         Autoload at run-time.
31080         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
31081         (gnus-registry-get-id-key, gnus-registry-action):
31082         Declare rather than autoload.
31083         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
31084         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
31085         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
31086         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
31087         (spam-stat-split-fancy): Remove pointless autoloads.
31088         * lisp/net/mairix.el: Load gnus-util when compiling.
31089         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
31090         (message-field-value): Declare rather than autoload.
31091         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
31092         Check gnus-alive-p is fbound.
31093         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
31094         (vm-check-for-killed-summary, vm-error-if-folder-empty)
31095         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
31096         Declare rather than autoload.
31098         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
31100         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
31101         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
31103         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
31105         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
31107         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
31108         * lisp/emacs-lisp/package.el (epg-signature-status):
31109         Fix declarations.
31111         * lisp/play/gametree.el (gametree-show-children-and-entry)
31112         (gametree-apply-layout, gametree-mouse-show-subtree)
31113         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
31115         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
31116         Handle cl-defgeneric, cl-defmethod.
31118 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
31120         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
31121         Highlight both type and symbol name.
31123         Insert, highlight and align line numbers in xref output
31124         * lisp/progmodes/etags.el (xref-location-line): Specialize for
31125         xref-etags-location.
31126         * lisp/progmodes/xref.el (xref-location-line): New generic method.
31127         (xref-file-location): Add reader for the line slot.
31128         (xref--location-at-point): Skip to the `xref-location' property.
31129         (xref--collect-reference): Drop the line number from description.
31130         (xref--insert-xrefs): Insert, highlight and align line numbers.
31132 2015-05-04  Daniel Colascione  <dancol@dancol.org>
31134         * lisp/simple.el (save-mark-and-excursion--save)
31135         (save-mark-and-excursion--restore): Fix previous commit
31136         (255a011f0ecf004b31c59945b10154b10fac3af1).
31138 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
31140         Don't pulse the indentation, or the newline
31141         * lisp/cedet/pulse.el (pulse-lighten-highlight)
31142         (pulse-reset-face): Fall back to the inherited background
31143         attribute in FACE.
31144         (pulse-momentary-highlight-region): Add autoload cookie.
31145         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
31146         indentation, or the newline, if the line's non-empty
31147         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
31149 2015-05-04  Daniel Colascione  <dancol@dancol.org>
31151         Add `save-mark-and-excursion', which has the old
31152         `save-excursion' behavior
31153         * doc/lispref/positions.texi (Excursions):
31154         Document `save-mark-and-excursion'.
31155         * lisp/font-lock.el (font-lock-fontify-block):
31156         Use `save-mark-and-excursion' instead of `save-excursion',
31157         restoring Emacs 24 behavior.
31158         * lisp/simple.el (save-mark-and-excursion--save)
31159         (save-mark-and-excursion--restore): New functions.
31160         (save-mark-and-excursion): New user macro.
31161         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
31162         in `save-excursion' documentation.
31164 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
31166         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
31167         Classify lone symbol inside let varlist as variable.
31168         * test/automated/elisp-mode-tests.el
31169         (completest-variables-in-let-bindings): New test.
31171         Add xref-pulse-on-jump
31172         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
31173         Add autoload cookie.
31174         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
31175         (xref--maybe-pulse): New function.
31176         (xref-pop-marker-stack, xref--pop-to-location)
31177         (xref--display-position): Use it.
31178         (xref--location-at-point): Use back-to-indentation.
31180 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
31182         lisp/org/org-{macs,list}.el: Fix lexical warnings
31183         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
31184         (org-list-get-next-item, org-list-get-prev-item)
31185         (org-list-get-children): Mark unused arg `struct'.
31186         (org-list-use-alpha-bul-p): Remove unused var `bul'.
31187         (org-toggle-checkbox): Mark unused var.
31188         (org-update-checkbox-count): Remove unused var `box-num'.
31189         (org-adapt-indentation): Declare.
31190         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
31191         (org-list-send-list): Remove unused var `txt'.
31192         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
31193         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
31194         * lisp/org/org-macs.el: Use `declare'.
31195         (org-with-limited-levels): Declare dyn-bound vars.
31197 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
31199         Fix minor issues with CEDET on MS-Windows
31200         * lisp/cedet/semantic/symref/idutils.el
31201         (semantic-symref-parse-tool-output-one-line): Fix the search
31202         regexp to match MS-Windows file names with drive letters.
31203         (Bug#19468)
31204         * lisp/cedet/semantic/symref/grep.el
31205         (semantic-symref-grep-use-template): Remove "--color=always" from
31206         Grep switches on MS-Windows.
31207         (semantic-symref-grep-shell): Use shell-file-name as the default
31208         value, so this works not only on Posix platforms.
31209         (semantic-symref-perform-search): Use shell-quote-argument instead
31210         of literal '..' for portable quoting of Grep command-line
31211         argument.  Use shell-command-switch instead of a literal "-c".
31212         * lisp/cedet/semantic/bovine/gcc.el
31213         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
31214         for an absolute file name in a portable way.
31216 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
31218         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
31219         (package-import-keyring, package-refresh-contents)
31220         (package-compute-transaction, package--save-selected-packages)
31221         (package-install-from-archive, package-delete)
31222         (package-menu--perform-transaction): Use `inhibit-message' instead.
31223         (package--compile): Set `warning-minimum-level' to :error.
31225 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
31227         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
31228         (terminal-init-screen): Use it (bug#20356).
31229         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
31230         (xterm--extra-capabilities-type): New const.
31231         (xterm-extra-capabilities): Use it.
31232         (xterm--version-handler): Lower the pseudo-version for `screen'.
31234 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
31236         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
31237         Always insert a newline at the end (to avoid mouse-face background
31238         tail at the last line).
31240         elisp-completion-at-point: Prioritize being quoted over funpos
31241         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
31242         Only consider function position when not inside quoted form
31243         (bug#20425).
31244         * test/automated/elisp-mode-tests.el: New file.
31246         Stop vc-print-log from jumping to the top
31247         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
31248         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
31249         is not specified.
31250         (vc-incoming-outgoing-internal): Always pass nil.
31251         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
31252         call it, and don't set vc-sentinel-movepoint (bug#15322).
31253         (vc-print-root-log): Don't fetch the root working revision, nor
31254         pass it to vc-print-log-internal.
31256 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
31258         Fix display of keyboard layouts for right-to-left scripts
31259         * lisp/international/quail.el (quail-insert-kbd-layout):
31260         Force left-to-right paragraph direction.
31262 2015-05-02  K. Handa  <handa@gnu.org>
31264         * src/cmds.c (internal_self_insert): When we insert spaces for
31265         padding, set point before the padding spaces, not after them.
31267 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
31269         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
31271 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
31273         Fix etags-xref-find for references
31274         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
31275         Use `cl-mapcan'.
31276         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
31277         directory if no tags tables are loaded (bug#19468).
31279 2015-05-02  Philipp Stephani  <phst@google.com>
31281         Update the options in whitespace-style defcustom
31282         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
31283         `repeat' because the option is really set-like.  Add missing
31284         options.  Reorder options to match the order in the
31285         documentation.  (Bug#20346)
31287 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
31289         Fix error diagnostics of c-macro-expand
31290         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
31291         too early if no start-marker string was found -- that generally
31292         means cpp exited abnormally, and we still want to show its error
31293         messages to the user.
31295         Don't require Texinfo 5.0 for Emacs documentation
31296         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
31297         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
31298         "@codequoteundirected on", respectively, to avoid requiring
31299         Texinfo 5.x for Emacs documentation.
31301 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
31303         * lisp/files.el (pwd):
31304         When called with a prefix argument, insert the current default
31305         directory at point.
31307 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
31309         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
31310         * lisp/isearch.el (isearch-mode-map): Don't inhibit
31311         function-key-map remapping for backspace (bug#20466).
31313 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
31315         Implement xref-find-references in etags and elisp-mode
31316         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
31317         (elisp-xref-find): Use it.
31318         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
31319         * lisp/progmodes/xref.el (xref-collect-references):
31320         (xref--collect-reference): New functions.
31322 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
31324         Prefer plain characters to Texinfo circumlocutions
31325         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
31326         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
31328         Fix single-quoting style in PDF manuals
31329         The PDF versions of the GNU manuals used curved single quotes to
31330         represent grave accent and apostrophe, which made it a pain to cut
31331         and paste code examples from them.  Fix the PDF versions to use
31332         grave accent and apostrophe for Lisp source code, keystrokes, etc.
31333         This change does not affect the info files, nor does it affect
31334         ordinary uses of curved single quotes in PDF.
31335         * doc/emacs/docstyle.texi: New file, which specifies treatment for
31336         grave accent and apostrophe, as well as the document encoding.
31337         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
31338         * doc/lispintro/emacs-lisp-intro.texi:
31339         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
31340         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
31341         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
31342         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
31343         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
31344         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
31345         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
31346         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
31347         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
31348         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
31349         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
31350         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
31351         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
31352         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
31353         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
31354         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
31355         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
31356         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
31357         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
31358         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
31359         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
31360         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
31361         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
31362         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
31363         * doc/misc/woman.texi:
31364         Use it instead of '@documentencoding UTF-8', to lessen the need for
31365         global changes like this in the future.
31366         * doc/emacs/Makefile.in (EMACS_XTRA):
31367         * doc/lispintro/Makefile.in (srcs):
31368         * doc/lispref/Makefile.in (srcs):
31369         Add dependency on docstyle.texi.
31370         * doc/misc/Makefile.in (style): New macro.
31371         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
31372         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
31373         Use it.
31375 2015-05-01  Glenn Morris  <rgm@gnu.org>
31377         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
31379         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
31380         (help-fns--signature): Declare.
31382         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
31384 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
31386         New macro seq-let, providing destructuring support to seq.el
31387         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
31388         to `cl-destructuring-bind' but works on all sequence types supported
31389         by `seq.el'.  Bump version number to 1.6.
31390         * test/automated/seq-tests.el: Add tests for seq-let.
31391         * doc/lispref/sequences.texi: Add documentation for seq-let.
31393 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
31395         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
31397 2015-05-01  Glenn Morris  <rgm@gnu.org>
31399         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
31401 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
31403         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
31404         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
31405         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
31406         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
31407         (Bug#20445).
31409 2015-05-01  K. Handa  <handa@gnu.org>
31411         * lisp/international/mule-cmds.el (input-method-use-echo-area):
31412         Change :type to 'boolean.
31414 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
31416         Start using proportional fonts in eww by default
31417         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
31418         it seems to work well.
31420         Fix links in tables in shr
31421         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
31422         makes (some) links in tables not work.
31424 2015-05-01  Jan D  <jan.h.d@swipnet.se>
31426         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
31428 2015-04-30  Glenn Morris  <rgm@gnu.org>
31430         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
31431         Update for 2015-02-08 change to indirect-function.
31433         * lisp/term/ns-win.el (ns-get-selection-internal):
31434         Remove declaration for function deleted 2014-10-21.
31436         * lisp/dom.el: Load subr-x when compiling, for when-let.
31438         Silence some compilation warnings
31439         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
31440         * lisp/emulation/cua-base.el (delete-active-region):
31441         * lisp/net/net-utils.el (w32-get-console-output-codepage):
31442         * lisp/term/ns-win.el (ns-own-selection-internal)
31443         (ns-disown-selection-internal, ns-selection-owner-p)
31444         (ns-selection-exists-p, ns-get-selection):
31445         Declare for compiler.
31447         Function declaration updates prompted by 'make check-declare'
31448         * lisp/emacs-lisp/package.el (lm-homepage):
31449         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
31450         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
31451         * lisp/gnus/mml.el (libxml-parse-html-region):
31452         * lisp/gnus/nnrss.el (libxml-parse-html-region):
31453         * lisp/net/eww.el (libxml-parse-html-region):
31454         * lisp/net/shr.el (libxml-parse-html-region):
31455         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
31456         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
31457         * lisp/vc/vc-git.el (vc-annotate-convert-time):
31458         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
31459         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
31460         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
31461         Update declaration.
31463         Remove compatibility code for 20-year old function renaming
31464         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
31465         Make it an obsolete alias.
31466         (idlwave-shell-filter): Change all uses to comint-output-filter.
31468 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
31470         Add ace-window face config
31471         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
31472         configuration.
31474 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
31476         Unclutter 'make doc' output a bit
31477         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
31478         Use make subst rather than sh IFS to split target string apart.
31479         This makes 'make' output easier to follow.
31481         Merge from gnulib
31482         * doc/misc/texinfo.tex: Update from gnulib.
31484 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
31486         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
31487         (package-menu--print-info): Obsolete.
31488         (package-menu--print-info-simple): New function.
31489         (package-menu--refresh): Use it, simplify code, and improve
31490         performance.
31491         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
31492         Tiny performance improvement.
31494         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
31496 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
31498         Omit -Wstrict-overflow workaround in GCC 5
31499         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
31500         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
31502         Merge from gnulib
31503         This incorporates:
31504         2015-04-29 extern-inline: no need for workaround in GCC 5.1
31505         2015-04-26 file-has-acl: port to CentOS 6
31506         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
31508 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
31510         Set next-error-* in xref--xref-buffer-mode
31511         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
31512         Set `next-error-function' and `next-error-last-buffer'.
31513         (xref--next-error-function): New function.
31514         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
31516 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
31518         python.el: Fix warnings on looking-back calls missing LIMIT
31519         * lisp/progmodes/python.el (python-shell-accept-process-output):
31520         Pass LIMIT arg to looking-back.
31522 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
31524         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
31525         (package--download-and-read-archives): Use pushnew instead of
31526         append.  If something terrible happened during a previous
31527         download, simply refreshing should now make things work again.
31529 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
31531         Introduce etags-xref-find-definitions-tag-order
31532         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
31533         New variable.
31534         (etags--xref-find-definitions): Use it (bug#19468).
31536 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
31538         PATH- and completion-related fixes in Eshell on MS-Windows
31539         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
31540         MS-Windows, prepend "." to list of directories produced from PATH,
31541         as Windows always implicitly searches the current directory first.
31542         (eshell-force-execution): Make it have a non-nil default value on
31543         MS-Windows and MS-DOS.
31544         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
31545         eshell-force-execution is non-nil, complete on readable files and
31546         directories, not only executables.  When running on MS-Windows,
31547         prepend "." to list of directories produced from PATH, as Windows
31548         always implicitly searches the current directory first.
31550 2015-04-29  Sam Steingold  <sds@gnu.org>
31552         Bury RCIRC buffers when there is no activity
31553         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
31554         (rcirc-bury-buffers): New function.
31555         (rcirc-next-active-buffer): When there is no new activity, use
31556         `rcirc-bury-buffers' to hide all RCIRC buffers.
31558 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
31560         Fix DBUS query result parsing for secrets-search-items
31561         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
31562         parsing.  The function assumed that return value of the
31563         SearchItems method called on a collection is a list of two lists,
31564         however this is true only when no collection is specified.  GNOME
31565         had used to incorrectly return a list of two lists in both cases,
31566         but this was already fixed:
31567         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
31568         incorrect information in the secrets-search-items’ docstring.
31569         (Bug#20449)
31571 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
31573         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
31574         Use `inhibit-message' instead of hiding the previous message
31575         with (message nil).
31577 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
31579         Remove the deprecated INTERNAL_FIELD macro by expanding it
31580         * src/lisp.h (INTERNAL_FIELD): Remove.
31581         (DEFVAR_KBOARD): Modify accordingly.
31582         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
31583         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
31584         * src/buffer.c (compact_buffer): Use BVAR.
31586 2015-04-29  Glenn Morris  <rgm@gnu.org>
31588         Replace an obsolete function alias
31589         * lisp/isearch.el (isearch-yank-x-selection):
31590         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
31591         (mouse-drag-secondary-moving):
31592         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
31593         Replace obsolete alias x-get-selection with gui-get-selection.
31595 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
31597         * lisp/mail/rmailsum.el: Use lexical-binding.
31599 2015-04-29  Glenn Morris  <rgm@gnu.org>
31601         * test/automated/package-test.el (package-test-update-archives-async):
31602         Skip test on hydra.nixos.org.
31604 2015-04-28  Glenn Morris  <rgm@gnu.org>
31606         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
31607         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
31608         (foldout-mouse-hide-or-exit): Use new names for outline functions.
31610         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
31611         Update for 2014-06-26 hideif.el change.
31613         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
31614         (rmail--decode-and-apply): New function.
31615         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
31617         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
31619 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
31621         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
31622         (package-menu--refresh): Delegate obsolete-hiding to
31623         `package--remove-hidden'.
31624         (package--remove-hidden): Disregard high-priority package if it is
31625         older than the installed one.
31627 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
31629         Update source file encoding list
31630         Update admin/notes/unicode, along with coding system cookies in
31631         other files, so that the two match each other better.
31632         * admin/notes/unicode: lisp/language/ethio-util.el and
31633         lisp/language/ethiopic.el also use utf-8-emacs.
31634         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
31635         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
31636         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
31637         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
31638         * etc/refcards/sk-survival.tex:
31639         Add "coding: utf-8" so that this file is not mishandled in a
31640         Latin-1 or Big-5 locale.
31641         * lisp/international/robin.el, lisp/org/ox-ascii.el:
31642         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
31643         * lisp/language/ethio-util.el: Fix trailer.
31645 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
31647         Fix synchronous invocation of Ispell
31648         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
31649         value to ispell-process-directory before calling ispell-init-process.
31650         Don't call set-process-coding-system if ispell-async-processp is nil.
31651         (Bug#20448)
31653 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
31655         * lisp/emacs-lisp/package.el: Skip space and comments in init file
31656         (package--ensure-init-file): Insert snippet at first
31657         non-whitespace non-comments line.  Respects local-vars at the top
31658         of the file.
31660 2015-04-28  Glenn Morris  <rgm@gnu.org>
31662         * lisp/mail/rmail.el (rmail-copy-headers):
31663         Handle rmail-nonignored-headers being nil.  (Bug#18878)
31665         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
31667         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
31668         Don't get confused by a bzrlib version mismatch warning.
31670 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
31672         Change default location of EUDC options file
31673         * etc/NEWS: Document change to EUDC options file's default location.
31674         * lisp/net/eudc-vars.el (eudc-options-file): Use
31675         `locate-user-emacs-file' to change default options file location.
31677 2015-04-27  Glenn Morris  <rgm@gnu.org>
31679         * test/automated/package-test.el (package-test-update-archives-async):
31680         Try to handle the test server script dying.
31682 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31684         * lisp/saveplace.el (save-place-mode): New minor mode.
31685         (save-place): Redefine as an obsolete alias.
31687         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
31688         * lisp/midnight.el: Use lexical-binding.
31689         (midnight-mode): Make it a proper minor mode.
31690         (midnight-buffer-display-time): Make arg non-optional.
31691         (midnight-find): Remove.
31692         (clean-buffer-list-kill-never-regexps)
31693         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
31694         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
31695         contain functions.
31696         (clean-buffer-list): Use cl-find.
31697         Allow clean-buffer-list-kill-never-regexps to contain functions.
31699 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
31701         Bump version of seq.el to 1.5
31702         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
31703         from seq-doseq.  Bump version number of seq.el.
31705 2015-04-27  Glenn Morris  <rgm@gnu.org>
31707         * lisp/mail/rmail.el (rmail-reply):
31708         Decode subject before matching "Re:" prefix.  (Bug#20396)
31710 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
31712         * lisp/emacs-lisp/package.el: Small improvements
31713         (package--with-work-buffer-async): More informative error.
31714         (package-install-user-selected-packages): Rename to
31715         `package-install-selected-packages'.
31717 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31719         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
31720         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
31721         (eieio--class-make): Remove leftover `tag'.
31723 2015-04-27  Glenn Morris  <rgm@gnu.org>
31725         * lisp/gnus/message.el (gnus-extract-address-components):
31726         Remove bogus declaration that was masking previous problem.
31728 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
31730         * lisp/gnus/message.el (message-insert-formatted-citation-line):
31731         Fix typo.  (Bug#20318)
31733 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31735         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
31737         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
31738         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
31739         the buffer in yet another frame.
31740         (reftex-toc-visit-location): Make sure toc-window has focus at the end
31741         when `final' is nil.
31742         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
31743         silence warnings.  Use `--' to clarify that it's internal.
31744         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
31745         (reftex-toc-promote): Clarify unused argument.
31746         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
31747         Add `reftex--' prefix.  Fix all users.
31748         (reftex-toc-promote-prepare): Use _ for dummy variable.
31749         (reftex-toc-restore-region): Rename `m.
31751 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
31753         Fix a typo in bibtex.el
31754         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
31755         last change.  (Bug#20429)
31757         Fix redisplay of frame after loading new fonts
31758         * src/xdisp.c (redisplay_internal): When retrying redisplay of
31759         a frame because new fonts were loaded, disable all redisplay
31760         optimizations on that frame by calling SET_FRAME_GARBAGED.
31761         (Bug#20410)
31763 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31765         * lisp/info.el (Info-menu): Properly provide the `default'
31766         (Bug#20391)
31768         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
31769         Catch errors from documentation (bug#20418).
31770         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
31772 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
31774         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
31775         Remove redundant ":group 'package".
31777 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
31779         Fix a typo in rmail.el
31780         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
31781         last commit.  (Bug#20429)
31783 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
31785         Introduce xref-prompt-for-identifier
31786         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
31787         (xref--read-identifier): Use it
31788         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
31790 2015-04-26  João Távora  <joaotavora@gmail.com>
31792         `tex-insert-quote' after single `'' opens quotes instead of closing
31793         Without this, it's very hard to precede double quotes with the
31794         apostrophe character, i.e. insert the sequence '``
31795         (quote-backquote-backquote), commonly useful in portuguese, for
31796         instance.
31797         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
31798         preceding chars making `tex-insert-quote' be in the "opening" context.
31800 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
31802         Pass `id' to `completing-read' as def instead of initial input
31803         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
31804         `completing-read' as the default value instead of initial input
31805         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
31807 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
31809         Don't freeze with unreadable processes
31810         Don't freeze if an exiting process can't be read from.  (Bug#19860).
31811         This fixes a bug I introduced in
31812         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
31813         "* process.c: Add sanity checks for file descriptors."
31814         Dmitry Gutov did most of the legwork in finding the problem.
31815         * src/process.c (wait_reading_process_output):
31816         Treat non-running processes that can't be read from
31817         the same as other non-running processes.
31819 2015-04-25  Alan Mackenzie  <acm@muc.de>
31821         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
31822         * lisp/subr.el (remove-yank-excluded-properties): Put
31823         `with-silent-modifications' around only the last three lines of code.
31825 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
31827         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
31828         (package--all-keywords): Deleted variable.
31830         * etc/NEWS: Document package-hiding functionality.
31832 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
31834         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
31836         Clarify the doc string of 'replace-regexp-in-string'
31837         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
31839         Improve doc string of 'insert-buffer-substring'
31840         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
31842         MS-Windows followup for the recent gnulib update
31843         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
31844         acl-internal.c.
31846 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
31848         Spelling fixes
31850         Merge from gnulib
31851         This incorporates:
31852         2015-04-24 file-has-acl: new module, split from acl
31853         2015-04-24 manywarnings: add GCC 5.1 warnings
31854         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
31855         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
31856         2015-04-15 acl: On Linux, check for acls without libacl
31857         2015-04-14 tempname: avoid unused parameter warnings (trivial)
31858         * lib/acl-internal.c: New file, from gnulib.
31859         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
31860         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
31861         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
31862         Update from gnulib.
31864         Port --enable-gcc-warnings to GCC 5.1 x86-64
31865         * lib-src/ebrowse.c (dump_sym):
31866         * lib-src/hexl.c (main):
31867         * src/ccl.c (ccl_driver):
31868         * src/character.c (string_escape_byte8):
31869         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
31870         * src/gnutls.c (Fgnutls_boot):
31871         * src/gtkutil.c (xg_check_special_colors):
31872         * src/image.c (x_build_heuristic_mask):
31873         * src/print.c (safe_debug_print, print_object):
31874         * src/term.c (produce_glyphless_glyph):
31875         * src/xdisp.c (get_next_display_element)
31876         (produce_glyphless_glyph):
31877         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
31878         Don't use a signed format to print an unsigned integer, or vice
31879         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
31880         * src/image.c (png_load_body, jpeg_load_body):
31881         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
31883 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
31885         Add new faces to tsdh-light-theme
31886         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
31887         definitions for Info-quoted, ace-jump-face-foreground,
31888         hl-paren-face, show-paren-match, and show-paren-mismatch.
31890 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
31892         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
31894 2015-04-24  Glenn Morris  <rgm@gnu.org>
31896         * build-aux/gitlog-to-emacslog:
31897         Use raw log format rather than wrapped one.
31899 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
31901         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
31902         (seq-doseq): Fix out-of-scope binding.
31903         Don't call `seq-length at every iteration.
31904         Reduce `if's from 3 to 2 per iteration.
31905         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
31907 2015-04-24  Glenn Morris  <rgm@gnu.org>
31909         * lisp/textmodes/text-mode.el (text-mode-hook):
31910         Move text-mode-hook-identify to default.
31912         * lisp/mouse.el (minor-mode-menu-from-indicator):
31913         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
31915         * lisp/help-fns.el (describe-function): More type checking.
31916         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
31918         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
31919         (Bug#20325)
31921 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
31923         shr: strip leading whitespace when expanding URLs
31924         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
31926 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
31928         Clarify "co-authored" some more
31930         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
31932         Clarify doc strings of functions that search for properties
31933         * src/textprop.c (Fnext_char_property_change)
31934         (Fprevious_char_property_change)
31935         (Fnext_single_char_property_change)
31936         (Fprevious_single_char_property_change, Fnext_property_change)
31937         (Fnext_single_property_change, Fprevious_property_change)
31938         (Fprevious_single_property_change): Clarify doc strings wrt return
31939         value and the optional LIMIT argument.  (Bug#20411)
31941 2015-04-24  Glenn Morris  <rgm@gnu.org>
31943         * test/automated/message-mode-tests.el (message-mode-propertize):
31944         Handle non-writable HOME; eg on hydra.nixos.org.
31946 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
31948         Avoid starting threads by w32-shell-execute
31949         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
31950         local file names, before invoking ShellExecute.  (Bug#20220)
31952 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
31954         Fix following doc-links in `widget-documentation-link-action'
31955         * lisp/wid-edit.el (widget-documentation-link-action): Make
31956         following doc-links less simplistic (Bug#20398).
31958 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
31960         Improve EUDC manual
31961         * doc/misc/eudc.texi (Troubleshooting):
31962         New LDAP troubleshooting subsection.
31964 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
31966         Omit needless "\ " after multibyte then newline
31967         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
31968         (print_object): When print-escape-multibyte is non-nil and a
31969         multibyte character is followed by a newline or formfeed, followed
31970         by a hex digit, don't output a needless "\ " before the hex digit.
31971         * test/automated/print-tests.el (print-hex-backslash): New test.
31973 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
31975         Add a new `inhibit-message' variable
31976         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
31977         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
31978         `inhibit_message' is non-zero.
31979         * etc/NEWS: Add an entry.
31980         * doc/lispref/display.texi: Add an entry for `inhibit-message',
31981         mention it in `message'.
31983 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
31985         Fix last fix in `display-buffer-record-window'.
31986         * lisp/window.el (display-buffer-record-window): Fix last fix.
31988 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
31990         Minor edits in CONTRIBUTE
31991         * CONTRIBUTE: Rearrange instructions about log messages.
31992         Use "Git" capitalized all over.
31993         Use 2 spaces between sentences.
31995 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
31997         * lisp/files.el (basic-save-buffer): Fix argument.
31999         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
32000         In case `(and (null custom-file) init-file-had-error)' do the same
32001         thing we'd do if `(null user-init-file)', which is to either error out
32002         or return nil.  This is in line with `custom-save-all' which would
32003         throw an error in that situation.  (Bug#20355)
32005         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
32006         (package-menu-hide-low-priority): New variable, see its doc.
32007         (package-archive-priorities): Update doc.
32008         (package-desc-priority): New function.
32009         (package-desc-priority-version): Use it.
32010         (package--remove-hidden): New function.
32011         (package-menu--refresh): Use it.
32013         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
32014         (package-menu--hide-obsolete): New variable.
32015         (package--remove-hidden): Use it.
32016         (package-menu-hide-obsolete): New interactive function to toggle
32017         the variable.
32018         (package--quick-help-keys): Document it.
32019         (package-menu-async): Add :version tag.
32020         (package-menu-mode-map): Bind package-menu-hide-obsolete.
32021         (package-desc-status): Indicate non-installed obsolete packages as
32022         avail-obso.
32023         (package-menu-mark-install): Allow installation of avail-obso.
32024         (package-menu--status-predicate): Sort avail-obso with available.
32026 2015-04-22  Alan Mackenzie  <acm@muc.de>
32028         On C-y, stop some text property entries being written into buffer-undo-list
32029         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
32030         `with-silent-modifications'.
32032 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
32034         In display-buffer-record-window record selected window if necessary
32035         * lisp/window.el (display-buffer-record-window): Store selected window
32036         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
32038 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
32040         Fix reftex-citation bug
32041         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
32042         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
32043         integration is enabled and there are no citations in the document
32044         so far.
32046 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
32048         Add or reset based on the presence of MERGE_HEAD
32049         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
32050         `vc-git-resolve-when-done' to `after-save-hook' in either case.
32051         (vc-git-conflicted-files): Add a TODO.
32052         (vc-git-resolve-when-done): Depending on the presence of
32053         MERGE_HEAD, either update the resolved file in the index, or
32054         remove it from there.  (Bug#20292)
32056 2015-04-21  Glenn Morris  <rgm@gnu.org>
32058         * lisp/custom.el (custom-declare-group): No need to purecopy
32059         custom-current-group-alist members following recent change to set
32060         it to nil before dumping.
32062         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
32063         (Bug#20399)
32065 2015-04-21  Daniel Colascione  <dancol@dancol.org>
32067         Unbreak no-op buffer save message
32068         * lisp/files.el (basic-save-buffer): Accept called-interactively as
32069         an argument instead of directly invoking called-interactively-p,
32070         which will always yield nil in that context.
32072 2015-04-21  Alan Mackenzie  <acm@muc.de>
32074         CC Mode: Do nothing in before/after-change-functions for text
32075         property changes
32076         Fixes bug#20266.
32077         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
32078         yank-handled-properties buffer local, and remove 'category from it.
32079         (c-called-from-text-property-change-p): New function.
32080         (c-before-change): Don't do anything if a call of the new function
32081         returns non-nil.
32082         (c-after-change): Don't do much if a call of the new function returns
32083         non-nil.
32084         (c-extend-after-change-region): Put changes to text property 'fontified
32085         inside c-save-buffer-state.
32087 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
32089         Fix byte-compiler warnings about looking-back
32090         * lisp/vc/log-view.el (log-view-end-of-defun-1):
32091         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
32092         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
32093         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
32094         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
32095         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
32096         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
32097         * lisp/org/org.el (org-insert-heading, org-sort-entries):
32098         * lisp/org/org-mouse.el (org-mouse-end-headline)
32099         (org-mouse-context-menu):
32100         * lisp/org/org-clock.el (org-clock-cancel):
32101         * lisp/man.el (Man-default-man-entry):
32102         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
32103         (rmail-ensure-blank-line):
32104         * lisp/mail/footnote.el (Footnote-delete-footnote):
32105         * lisp/mail/emacsbug.el (report-emacs-bug):
32106         * lisp/info.el (Info-follow-reference, Info-fontify-node):
32107         * lisp/info-look.el (info-lookup-guess-custom-symbol):
32108         * lisp/help-fns.el (help-fns--key-bindings):
32109         * lisp/files.el (hack-local-variables):
32110         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
32111         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
32112         (viper-complete-filename-or-exit):
32113         * lisp/emulation/viper-cmd.el (viper-backward-indent):
32114         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
32115         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
32116         * lisp/cus-edit.el (custom-face-edit-value-create):
32117         * lisp/calendar/todo-mode.el (todo-set-item-priority)
32118         (todo-filter-items-1, todo-convert-legacy-files)
32119         (todo-prefix-overlays): Add explicit second arg to looking-back.
32121 2015-04-20  Glenn Morris  <rgm@gnu.org>
32123         Avoid non-nil current-load-list at startup
32124         * src/process.c (init_process_emacs): Move Fprovide statement...
32125         (syms_of_process): ... to here.
32127         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
32129         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
32130         in emacs -Q.
32132 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
32134         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
32135         (Bug#20330)
32137 2015-04-20  Glenn Morris  <rgm@gnu.org>
32139         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
32141         Tweak exec-path in uninstalled case
32142         * src/callproc.c (init_callproc): If running uninstalled, do not
32143         include eventual installation libexec directory in exec-path.
32145 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
32147         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
32148         cache keywords.
32149         (package-menu-filter): Accept a list of keywords.
32150         (package--all-keywords): New variable to cache known keywords.
32151         (package-all-keywords): Populate it if necessary.
32152         (package-refresh-contents): Reset it.
32154         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
32155         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
32156         as special keywords which match agains package archive and status
32157         respectively.
32158         * etc/NEWS: Document it.
32160 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
32162         Describe and index "empty overlays".
32163         * doc/lispref/display.texi (Overlays): Improve indexing.
32164         (Managing Overlays): Describe "empty" overlays.
32165         (Overlay Properties, Finding Overlays): Add cross-reference to
32166         where empty overlays are described.
32168 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
32170         Spelling fixes
32172         Quote 'like this' in top-level files
32173         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
32174         Prefer to single-quote 'like this' (instead of the older style
32175         `like this').
32176         * configure.ac: Fix some space-before-tab problems that 'git commit'
32177         complained about.
32179         Use bool for boolean in textprop.c, undo.c
32180         * src/textprop.c (soft, hard): Now constants instead of macros.
32181         (validate_plist): Rewrite to avoid need for boolean local.
32182         (interval_has_all_properties, interval_has_some_properties)
32183         (interval_has_some_properties_list, add_properties)
32184         (remove_properties, get_char_property_and_overlay)
32185         (Fnext_single_char_property_change)
32186         (Fprevious_single_char_property_change, add_text_properties_1)
32187         (Fremove_text_properties, Fremove_list_of_text_properties)
32188         (copy_text_properties):
32189         * src/tparam.c (tparam1):
32190         * src/undo.c (record_change, record_property_change)
32191         (syms_of_undo):
32192         Use 'true' and 'false' for booleans.
32194 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
32196         * lisp/vc/vc-git.el (vc-git-find-file-hook):
32197         Call `smerge-start-session' even when dealing with a stash
32198         conflict (bug#20292).
32200 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
32202         Add option to eshell/clear to clear scrollback.
32203         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
32204         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
32205         scrollback contents are cleared.
32206         * etc/NEWS: Describe change.
32207         * doc/misc/eshell.texi: Add entry for `clear'.
32209 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
32211         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
32212         where either will do.
32214 2015-04-19  Steve Purcell  <steve@sanityinc.com>
32216         Assume package archive-contents are UTF8-encoded
32217         * lisp/emacs-lisp/package.el (package--read-archive-file):
32218         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
32219         downloaded and cached archive-contents files, so that non-ASCII
32220         characters in package descriptions are displayed correctly in the
32221         `list-packages' menu.  (Bug#20231)
32223 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
32225         Abort when looking at stashed changes
32226         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
32227         stashed changes (bug#20292).
32229 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
32231         Refactor low-level printing for simplicity
32232         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
32233         PRINTPREPARE; doable now that we assume C99.  All callers changed.
32234         (PRINTCHAR): Remove, as it adds more mystery than clarity.
32235         All callers changed.
32236         (strout): Assume that caller computes length.  All callers changed.
32237         (print_c_string): New function.
32238         (write_string, write_string_1): Compute length instead of asking
32239         the caller to compute it.  All callers changed.
32240         (write_string): Simplify by using write_string_1.
32241         (write_string_1): Simplify by using print_c_string.
32242         (Fterpri): Compute default val more clearly.
32243         (Fprin1_to_string, print_object):
32244         Assume C99 to avoid unnecessary nesting.
32245         (print_object): Prefer print_c_string to multiple printchar, or
32246         to calling strout with -1 length.  Coalesce into sprintf when
32247         this is easy.
32249 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
32251         Prefer "Bug#1234" in commit messages (Bug#20325)
32252         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
32253         as this isn't useful for Git.
32254         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
32256 2015-04-18  Glenn Morris  <rgm@gnu.org>
32258         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
32259         (Bug#19506)
32261 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
32263         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
32264         Do not use `chomp' as a function.  (Bug#19505)
32266 2015-04-18  Glenn Morris  <rgm@gnu.org>
32268         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
32270         * doc/emacs/misc.texi (Sorting): Small edit.
32271         (Bug#19896)
32273         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
32275 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
32277         css-mode.el: Support multi-line comment filling
32278         (Bug#20256)
32279         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
32280         comment filling.
32281         (css-adaptive-fill): New function.
32282         (css-mode): Set `adaptive-fill-function'.
32283         (scss-mode): Set `comment-continue'.
32285 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
32287         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
32288         Better error messages.
32290 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
32292         Minor improvements in Bulgarian input methods
32293         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
32294         Replace U+042C with U+045D, as the former character is not used in
32295         the modern Bulgarian language.
32296         (Bug#20350)
32298 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
32300         Improve EUDC manual
32301         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
32302         authentication schemes.  Add index items.  Shorten example server
32303         name.
32305 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
32307         Don't show both feature and function with the same name
32308         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
32309         Don't show both feature and function with the same name.
32311         (elisp--xref-identifier-location): Skip variable, if it's also
32312         a function
32313         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
32314         Avoid returning both the variable and the function for the same
32315         minor mode.
32317 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
32319         Fix fontification of keywords clobbered by the prompt
32320         * lisp/comint.el (comint-output-filter): Remove the uses of
32321         with-silent-modifications I introduced as part of the last change.
32322         This fixes, e.g., erratically missing highlighting when running
32323         ./configure --help; ./configure in a shell-mode buffer with
32324         compilation-shell-minor-mode turned on.
32326 2015-04-17  Glenn Morris  <rgm@gnu.org>
32328         * admin/authors.el (authors-valid-file-names)
32329         (authors-renamed-files-alist): Additions.
32331 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
32333         * lisp/indent.el (indent-region): Don't deactivate the mark.
32334         (Bug#20357)
32336 2015-04-17  Sam Steingold  <sds@gnu.org>
32338         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
32340 2015-04-16  Leo Liu  <sdl.web@gmail.com>
32342         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
32344 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
32346         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
32347         Don't use `pcomplete' any more.
32349 2015-04-16  Glenn Morris  <rgm@gnu.org>
32351         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
32353 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
32355         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
32356         * configure.ac (LIBJPEG): Leave it empty for MinGW.
32358 2015-04-16  Glenn Morris  <rgm@gnu.org>
32360         * lisp/replace.el (query-replace-from-to-separator):
32361         Delay initialization to avoid rogue setting after startup.
32363 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
32365         Pre-4.6 GCC succeeds with unknown option
32366         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
32367         (Bug#20338)
32369 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
32371         '[:graph:]' now excludes whitespace, not just ' '
32372         * doc/lispref/searching.texi (Char Classes):
32373         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
32374         sans whitespace (not sans space).
32375         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
32376         not just space.
32377         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
32379 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
32381         * lisp/subr.el (substitute-key-definition-key, special-form-p)
32382         (macrop): Drop deprecated second arg to indirect-function.
32383         (looking-back): Make the second arg non-optional.
32385         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
32386         command is actually sent to the shell.
32388 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
32390         Port jpeg configuration to Solaris 10 with Sun C
32391         * configure.ac: Check for jpeglib 6b by trying to link it, instead
32392         of relying on cpp magic that has problems in practice.  Check for
32393         both jpeglib.h and jerror.h features.  Remove special case for
32394         mingw32, which should no longer be needed (and if it were needed,
32395         should now be addressable by hotwiring emacs_cv_jpeglib).
32396         (Bug#20332)
32398 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
32400         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
32401         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
32402         Move to elisp-mode.el.
32403         (lisp-mode-variables): (Re)move elisp-specific settings.
32404         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
32405         from lisp-mode-variables.
32406         (elisp--font-lock-flush-elisp-buffers): New function, moved from
32407         lisp-mode.el.
32409         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
32410         Avoid pathological slowdown at top-level in large file.
32412 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
32414         Standardize names of ChangeLog history files
32415         Suggested by Glenn Morris in:
32416         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
32417         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
32418         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
32419         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
32420         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
32421         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
32422         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
32423         Remove.
32425         Split top-level entries into pre- and post-April 7
32426         This more clearly distingiushes pre-April-7 ChangeLog entries (which
32427         are for top-level files only) from post-April-7 entries (which are
32428         about files at all levels.  Problem reported by Glenn Morris in:
32429         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
32430         * ChangeLog.1: Move post-April-7 entries from here ...
32431         * ChangeLog.2: ... to this new file.
32432         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
32434 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
32436         Fix recent cus-start changes that added customize-rogues
32437         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
32438         vars early.
32439         * lisp/loadup.el ("cus-start"): Move to the end to reduce
32440         customize-rogue.
32442 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
32444         Define cl-concatenate as an alias to seq-concatenate
32445         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
32446           code by making cl-concatenate an alias to seq-concatenate.
32448 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
32450         * src/lread.c (intern_1): Make sure we'd find the symbol we add
32451         (Bug#20334)
32452         * src/xfaces.c (resolve_face_name): Don't use `intern' with
32453         Lisp_Strings.
32455 2015-04-15  Glenn Morris  <rgm@gnu.org>
32457         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
32459 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
32461         Clean up gnus-uu saving code slightly
32462         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
32463         save-restriction/widen calls make more sense.
32465 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
32467         Make [:graph:] act like [:print:] sans space
32468         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
32469         [:graph:] so that it matches everything that [:print:] does,
32470         except for space.
32471         * doc/lispref/searching.texi (Char Classes):
32472         * etc/NEWS:
32473         * lisp/emacs-lisp/rx.el (rx):
32474         Document [:graph:] to be [:print:] sans ' '.
32475         * src/character.c, src/character.h (graphicp): New function.
32476         * src/regex.c (ISGRAPH) [emacs]: Use it.
32477         (BIT_GRAPH): New macro.
32478         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
32479         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
32480         Return BIT_GRAPH for RECC_GRAPH.
32481         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
32482         and ISPRINT if BIT_PRINT.
32484 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
32486         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
32487         Don't use call-next-method in a cl-defmethod.
32489         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
32490         (eieio--class-p): Remove, provided by cl-defstruct.
32492 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
32494         Add seq-intersection and seq-difference to the seq library
32495         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
32496         New functions.
32497         * test/automated/seq-tests.el: Add tests for seq-intersection and
32498         seq-difference.
32499         * doc/lispref/sequences.texi: Add documentation for seq-intersection
32500         and seq-difference.
32502 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
32504         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
32505         to avoid leaking internals.
32507 2015-04-14  Sam Steingold  <sds@gnu.org>
32509         package--ensure-init-file: widen requires save-restriction
32511 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
32513         Improve the commit-msg Git hook for unibyte environments
32514         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
32515         in unibyte environments.  (Suggested by Paul Eggert
32516         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
32517         [:print:], based on UTF-8 sequences of the unprintable characters.
32519         Describe problems with cursor caused by Windows Magnifier
32520         * etc/PROBLEMS: Describe the problem with cursor shape on
32521         MS-Windows due to Windows Magnifier.
32522         (Bug#20271)
32524         Make [:print:] support non-ASCII characters correctly
32525         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
32526         (BIT_PRINT): New bit mask.
32527         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
32528         * src/character.c (printablep): New function.
32529         * src/character.h (printablep): Add prototype.
32530         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
32531         of 'print', 'alnum', and 'alphabetic'.
32532         * doc/lispref/searching.texi (Char Classes): Document the new
32533         behavior of [:print:].
32534         * etc/NEWS: Mention the new behavior of [:print:].
32536         Assign correct general-category and names to surrogates
32537         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
32538         surrogates.  This avoids assigning them the default
32539         general-category of 'Cn', i.e. unassigned codepoints.
32540         (unidata-get-name): Give surrogates synthetic names.
32542 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
32544         Assume C89 offsetof in xterm.c, xlwmenu.c
32545         * lwlib/xlwmenu.c (offset):
32546         * src/xterm.c (cvt_string_to_pixel_args):
32547         Use offsetof, not XtOffset.
32549 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
32551         Assume C89 offsetof in widget.c
32552         * src/widget.c (XtOffset): Remove; no longer needed.
32553         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
32555         Fix think-o in previous patch
32556         * src/window.c (count_windows, get_leaf_windows):
32557         Don't optimize count_windows incorrectly.
32559 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
32561         Avoid some int overflows in window.c
32562         * src/print.c (print_object):
32563         * src/window.c (sequence_number):
32564         * src/window.h (struct window.sequence_number):
32565         Don't assume window sequence number fits in int.
32566         * src/window.c (window_select_count):
32567         * src/window.h (struct window.use_time, window_select_count):
32568         Don't assume window use time fits in int.
32569         * src/window.c (Fsplit_window_internal):
32570         Don't assume user-supplied integer, or sum, fits in int.
32571         (Fset_window_configuration, count_windows, get_leaf_windows)
32572         (save_window_save, Fcurrent_window_configuration):
32573         Use ptrdiff_t for object counts.
32574         (Fset_window_configuration): Omit unused local 'n'.
32575         (count_windows): Simplify by writing in terms of get_leaf_windows.
32576         (get_leaf_windows): Don't store through FLAT if it's null.
32577         (extract_dimension): New static function.
32578         (set_window_margins, set_window_fringes, set_window_scroll_bars):
32579         Use it to avoid undefined behavior when converting user-supplied
32580         integer to 'int'.
32582 2015-04-13  Glenn Morris  <rgm@gnu.org>
32584         Minor doc copyedits
32585         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
32586         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
32588 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
32590         [Gnus] Catch the invalid-operation that idna.el will issue
32591         * lisp/gnus/gnus-art.el (gnus-use-idna):
32592         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
32593         * lisp/gnus/message.el (message-use-idna):
32594         Catch the invalid-operation that idna.el will issue.
32596 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
32598         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
32600 2015-04-13  Sam Steingold  <sds@gnu.org>
32602         package--ensure-init-file: widen before looking for
32603         "(package-initialize)"
32605 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
32607         Change diff-switches default to `-u' (Bug#20290)
32608         * doc/emacs/files.texi (Comparing Files): Document the new default
32609         value of `diff-switches'.
32610         * doc/emacs/trouble.texi (Sending Patches): Document the preference
32611         for unified diff format.  Escape the plus in the suggested `-F' regexp
32612         value.
32613         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
32615 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32617         (gnus-group--setup-tool-bar-update): Fix last change
32618         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
32619         cursor-sensor-functions should be a list of functions.
32621 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
32623         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
32624         Use gmm-called-interactively-p.
32626 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32628         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
32629         (Bug#20321)
32630         * lisp/cus-start.el (read-buffer-function): Don't advertise
32631         iswitchb-read-buffer any more.
32632         (iswitchb): Don't tweak this obsolete group any more.
32634 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
32636         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
32638         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
32639         Adding a string after a constructor's argument list will use
32640         that string as the constructor function docstring.  If this string
32641         is absent but the struct itself was given a docstring, use that as
32642         the constructor's docstring.
32643         Fixes bug#17284.
32645 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32647         Deprecate `intangible' and `point-entered' properties
32648         * lisp/emacs-lisp/cursor-sensor.el: New file.
32649         * lisp/simple.el (pre-redisplay-functions): New hook.
32650         (redisplay--pre-redisplay-functions): New function.
32651         (pre-redisplay-function): Use it.
32652         (minibuffer-avoid-prompt): Mark obsolete.
32653         (redisplay--update-region-highlight): Adapt it to work as a function on
32654         pre-redisplay-functions.
32655         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
32656         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
32657         than point-entered to make the prompt intangible.
32658         * lisp/forms.el: Move `provide' calls to the end.
32659         (forms-mode): Don't use `run-hooks' on a local var.
32660         (forms--make-format, forms--make-format-elt-using-text-properties):
32661         Use cursor-intangible rather than `intangible'.
32662         (forms-mode): Enable cursor-intangible-mode.
32663         * lisp/isearch.el (isearch-mode): Use defvar-local.
32664         (cursor-sensor-inhibit): Declare.
32665         (isearch-mode): Set cursor-sensor-inhibit.
32666         (isearch-done): Set it back.
32667         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
32668         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
32669         any more.
32670         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
32671         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
32672         Add Edebug spec.
32673         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
32674         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
32675         inhibit-point-motion-hooks any more.
32676         (ses--cell-at-pos, ses--curcell): New functions, extracted from
32677         ses-set-curcell.
32678         (ses-set-curcell): Use them.
32679         (ses-print-cell, ses-setup): Use cursor-intangible instead of
32680         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
32681         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
32682         Use ses--cell-at-pos.
32683         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
32684         extracted from ses-command-hook.  Make them work with multiple windows
32685         displaying the same buffer.
32686         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
32687         Enable cursor-intangible-mode.
32688         (ses-command-hook): Remove cell highlight and mode-line update code.
32689         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
32690         Update for new name of text-property holding the cell name.
32691         (ses-rename-cell): Don't mess with mode-line-process.
32692         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
32693         cursor-sensor-functions property instead of point-entered.
32694         (erc-insert-timestamp-right, erc-format-timestamp):
32695         Use cursor-intangible rather than `intangible'.
32696         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
32697         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
32698         cursor-sensor-mode if needed.
32699         (erc-echo-timestamp): Adapt to calling convention of
32700         cursor-sensor-functions.
32701         (erc-insert-timestamp-right): Remove unused vars `current-window' and
32702         `indent'.
32703         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
32704         (gnus-update-group-mark-positions): Remove unused `topic' var.
32705         (gnus-group-insert-group-line): Remove unused var `header'.
32706         (gnus-group--setup-tool-bar-update): New function.
32707         (gnus-group-insert-group-line): Use it.
32708         (gnus-group-update-eval-form): Declare local
32709         dynamically-bound variables.
32710         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
32711         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
32712         (gnus-group-prepare-topics, gnus-topic-update-topic)
32713         (gnus-topic-change-level, gnus-topic-catchup-articles)
32714         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
32715         Use inhibit-read-only.
32716         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
32717         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
32718         * lisp/textmodes/reftex-index.el (reftex-display-index):
32719         Use cursor-intangible-mode if available.
32720         (reftex-index-post-command-hook): Check cursor-intangible.
32721         * lisp/textmodes/reftex-toc.el (reftex-toc):
32722         Use cursor-intangible-mode if available.
32723         (reftex-toc-recenter, reftex-toc-post-command-hook):
32724         Check cursor-intangible.
32725         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
32726         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
32727         (sgml-tags-invisible): Use with-silent-modifications and
32728         inhibit-read-only.  Enable cursor-sensor-mode.
32729         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
32730         calling convention of cursor-sensor-functions.
32731         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
32732         (table-point-entered-cell-hook, table-point-left-cell-hook):
32733         Don't autoload.
32734         (table-cell-entered-state): Remove var.
32735         (table--put-cell-point-entered/left-property)
32736         (table--remove-cell-properties):
32737         Use cursor-sensor-functions rather than point-entered/left.
32738         (table--point-entered/left-cell-function): Merge
32739         table--point-entered-cell-function and table--point-left-cell-function
32740         and adjust to calling convention of cursor-sensor-functions.
32742         Update ldef-boots.el
32744         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
32746         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
32748         Collapse successive char deletions in the undo log
32749         * src/cmds.c (remove_excessive_undo_boundaries): New function,
32750         extracted from Fself_insert_command.
32751         (Fdelete_char, Fself_insert_command): Use it.
32752         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
32753         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
32755         xterm and OSC 52: Add NEWS entry, and tweak the code
32756         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
32757         to top-level.
32758         (terminal-init-xterm-activate-set-selection): Set a terminal property.
32759         (xterm--set-selection): Use it instead of checking the value of
32760         `terminal-initted'.  Don't use string-bytes.
32762 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
32764         xterm.el: Implement OSC-52 functionality for setting the X selection
32765         * lisp/term/xterm.el (xterm-max-cut-length): New var.
32766         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
32767         New funs.
32768         (terminal-init-xterm, xterm--version-handler): Use them.
32770 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32772         Remove left over code from when we used an obsolete/loaddefs.el file
32773         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
32774         when we used an obsolete/loaddefs.el file.
32776         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
32777         (semanticdb-without-unloaded-file-searches): Use declare.
32778         (semantic-fw-add-edebug-spec): Remove.
32780         * lisp/completion.el (completion-lisp-mode-hook):
32781         Use completion-separator-chars rather than local key binding.
32783         * src/*.c: Set deactivate_mark buffer-locally
32784         (Bug#20260)
32785         * src/insdel.c (prepare_to_modify_buffer_1):
32786         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
32787         buffer-locally.
32789 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32791         python.el: Keep symmetry on sexp navigation with parens
32792         (Bug#19954)
32793         * lisp/progmodes/python.el
32794         (python-nav--forward-sexp): Add argument skip-parens-p.
32795         (python-nav-forward-sexp, python-nav-backward-sexp)
32796         (python-nav-forward-sexp-safe)
32797         (python-nav-backward-sexp-safe): Use it.
32798         * test/automated/python-tests.el
32799         (python-nav-forward-sexp-1): Fix test.
32801 2015-04-12  João Távora  <joaotavora@gmail.com>
32803         Don't use `setq-local' in Gnus code
32804         This might break upstream builds with older Emacsen
32805         * lisp/gnus/message.el (message-mode): Use `set' and
32806         `make-local-variable' instead of `setq-local'.
32808 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
32810         Update Makefile.in's .PHONY dependencies
32811         * Makefile.in (change-history-commit, master-branch-is-current)
32812         (no-ChangeLog): Now phony.
32814         Remove configure's --with-mmdf option
32815         * configure.ac (MAIL_USE_MMDF): Remove.
32816         * etc/NEWS: Document this.
32817         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
32818         (Bug#20308)
32820         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
32821         That way, 'make install' won't think it's a man page.
32822         Reported by Ashish SHUKLA in:
32823         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
32825         Improve 'make change-history' prereq tests
32826         * Makefile.in (gen_origin): Fix to match what's in the master branch.
32827         (no-ChangeLog, master-branch-is-current): New rules.
32828         (change-history): Depend on them, to avoid similar future problems.
32829         Escape the local-variables string to pacify Emacs when editing
32830         Makefile.in.
32832 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
32834         * test/automated/package-test.el (with-package-test):
32835         Kill Packages buffer.
32837         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
32838         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
32839         "Upgrade" last, and use capitalized instead of all-caps.
32841         * lisp/emacs-lisp/package.el: Completely silence async operations.
32842         (package--make-autoloads-and-stuff): Silence autoloads.
32843         (package--save-selected-packages): New function, silences
32844         `customize-save-variable'.
32845         (package--user-selected-p, package-install-from-buffer)
32846         (package-delete, package-install): Use it.
32847         (package-install-from-archive)
32848         (package-menu--perform-transaction): Silence.
32849         (package-menu-execute): Feedback when operation starts.
32851         Use delay-mode-hooks when visiting the init-file
32852         * lisp/emacs-lisp/package.el (package--ensure-init-file):
32853         delay-mode-hooks.
32854         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
32856         * lisp/files.el: Only message when saving if save-silently is nil.
32857         (save-silently): New variable.
32858         (files--message): New function.
32859         (find-file-noselect, save-buffer, basic-save-buffer)
32860         (basic-save-buffer-2, save-some-buffers, not-modified)
32861         (append-to-file): Use them.
32863 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
32865         Support debug declarations in pcase macros
32866         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
32867         (pcase-UPAT): Use it.  Remove "`".
32868         (pcase--edebug-match-macro): New function.
32869         (pcase-defmacro): Support debug declarations.
32870         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
32871         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
32872         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
32873         Add debug declaration.
32875         pcase.el: Edebug support for `app' and vector patterns
32876         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
32877         (pcase-UPAT): Use it.  Support `app' patterns.
32878         (pcase-QPAT): Support vector patterns.
32880         edebug.el: Disambiguate vector specifications
32881         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
32882         `(vector ...)' as a vector specification, not as a sublist.
32884         (gnus-summary-refer-thread): Don't clobber unread articles
32885         This fixes a bug where `A T' causes "random" articles to become marked
32886         as read.
32887         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
32888         gnus-newsgroup-unreads remains sorted.
32890         mouse-sel.el: Fix mouse-sel-get-selection-function
32891         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
32892         Use gui--last-selected-text-primary instead of no longer existing
32893         gui-last-selected-text.
32895         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
32897         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
32899 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
32901         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
32903         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
32904         right buffer.
32906         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
32907         (byte-compile--interactive): New var.
32908         (byte-compile--message): New function.
32909         (byte-compile-log-1, byte-force-recompile)
32910         (byte-recompile-directory, byte-recompile-file)
32911         (byte-compile-file, compile-defun)
32912         (byte-compile-file-form-defmumble, byte-compile)
32913         (byte-compile-file-form-defalias, display-call-tree): Use it.
32915         * lisp/files.el: Don't message when nothing happened.
32916         (save-some-buffers, basic-save-buffer): Before messaging to say
32917         "nothing was saved" check if (called-interactively-p 'any).
32919 2015-04-12  João Távora  <joaotavora@gmail.com>
32921         Summary: Improve sexp-based movement in message-mode
32922         Works by giving citations and smileys a different syntax.  This helps
32923         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
32924         sexp-based movement.
32925         * lisp/gnus/message.el (message--syntax-propertize): New function.
32926         (message-mode): Set syntax-related vars.
32927         (message-smileys): New variable.
32928         * test/automated/message-mode-tests.el: New file
32930 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
32932         Use bool for boolean in window.c
32933         * src/window.c: Omit unnecessary static function decls.
32934         (adjust_window_count, select_window, Fselect_window)
32935         (window_body_width, Fwindow_body_height, Fwindow_body_width)
32936         (set_window_hscroll, check_window_containing, Fwindow_at)
32937         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
32938         (unshow_buffer, replace_window, recombine_windows)
32939         (add_window_to_list, candidate_window_p, next_window)
32940         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
32941         (Fget_buffer_window, Fdelete_other_windows_internal)
32942         (replace_buffer_in_windows_safely, set_window_buffer)
32943         (Fset_window_buffer, Fforce_window_update)
32944         (temp_output_buffer_show, make_parent_window)
32945         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
32946         (resize_frame_windows, Fsplit_window_internal)
32947         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
32948         (Fresize_mini_window_internal, mark_window_cursors_off)
32949         (window_scroll, window_scroll_pixel_based)
32950         (window_scroll_line_based, scroll_command, Fscroll_other_window)
32951         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
32952         (Fmove_to_window_line, Fset_window_configuration)
32953         (delete_all_child_windows, apply_window_adjustment)
32954         (set_window_fringes, set_window_scroll_bars)
32955         (Fset_window_vscroll, foreach_window, foreach_window_1)
32956         (compare_window_configurations, Fcompare_window_configurations):
32957         Prefer 'bool', 'true', and 'false' for booleans.
32958         * src/window.h (WINDOW_MODE_LINE_LINES)
32959         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
32961 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
32963         Speed up byte-compilation and autoload generation by avoiding mode-hooks
32964         This prevents emacs-lisp-mode-hook from being run everytime an
32965         autoload file is generated, which can account for a fraction of
32966         package installation time depending on the hooks the user has
32967         configured.
32968         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
32969         * lisp/emacs-lisp/autoload.el (autoload-find-file)
32970         (autoload-find-generated-file): Use delay-mode-hooks.
32972         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
32973         (package-menu-refresh): Respect async and do new package checking.
32974         (list-packages): Use `package-menu-refresh' instead of repeating code.
32976         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
32977         (package--quick-help-keys): New variable.
32978         (package--prettify-quick-help-key): New function.
32979         (package-menu-quick-help): Use it.
32981         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
32982         (package--build-compatibility-table): Require finder.
32984         * test/automated/package-test.el: Fix new test.
32986         * lisp/emacs-lisp/package.el: Silence async operations.
32987         (package--silence): New variable.
32988         (package--message): New function.
32989         (package-import-keyring, package-refresh-contents)
32990         (package-compute-transaction, package-install, package-delete)
32991         (package-menu--perform-transaction, package-menu-execute): Use it.
32993         * test/automated/package-test.el: Test async functionality.
32994         (package-test-update-archives-async): New test.
32996 2015-04-11  Daiki Ueno  <ueno@gnu.org>
32998         Utilize `make-process' in epg.el
32999         * lisp/epg.el (epg-error-output): Abolish.
33000         (epg-context): New slot `error-buffer'.
33001         (epg--start): Use `make-process' and `make-pipe-process'.
33002         (epg--process-filter): Remove code separating stderr from stdout.
33003         (epg-wait-for-completion): Simplify `error-output' handling.
33004         (epg-reset): Dispose error buffer.
33006 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
33008         * .gitignore: Ignore doc temps and outputs.
33010         Port commit-msg to MSYS Bash+Gawk
33011         See Eli Zaretskii in:
33012         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
33013         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
33014         (cent_sign, print_at_sign, at_sign): Revert previous change.
33015         (print_at_sign): Prepend "BEGIN".
33016         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
33018         Port commit-msg to broken MS-Windows shell
33019         * build-aux/git-hooks/commit-msg (cent_sign):
33020         Just use UTF-8 here rather than ASCII + printf, as the latter fails
33021         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
33022         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
33024 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
33026         Support GnuTLS v3.4 and later on MS-Windows
33027         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
33028         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
33029         GnuTLS DLL to load according to value of libgnutls-version.
33030         (Bug#20294)
33032 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
33034         Minor quoting etc. fixes to misc manuals
33035         Fix some minor quoting and spacing issues.  Distinguish more
33036         clearly among grave accent and apostrophe (which are ASCII) and
33037         single quote (which is not).  Prefer the standard terms
33038         "apostrophe" and "grave accent" to alternative names that can be
33039         confusing.  Use apostrophes to single-quote ASCII text.
33040         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
33041         rather than approximating it in ASCII with grave accent.
33043 2015-04-11  Daiki Ueno  <ueno@gnu.org>
33045         Respect more keyword args in `make-process'
33046         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
33047         keywords as documented.
33049 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
33051         Extract ChangeLog entries when committing a directory
33052         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
33053         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
33054         Add a FIXME comment.
33055         (log-edit-changelog-entries): Extract from
33056         `log-edit-changelog-entries', handle FILE being a directory
33057         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
33059 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
33061         Fix problems found by --enable-gcc-warnings
33062         * src/process.c (create_process, Fmake_pipe_process)
33063         (Fmake_network_process): Omit unused locals.
33065         Fix commit-msg to handle scissors lines
33066         * build-aux/git-hooks/commit-msg:
33067         Ignore every line after a scissors line, such as a line generated
33068         by 'git commit -v'.  Problem reported by Johan Bockgård in:
33069         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
33071         port commit-msg to Gawk 3.0.4 (1999)
33072         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
33073         (print_at_sign, at_sign): New vars.  Use them to avoid problems
33074         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
33075         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
33077         Have commit-msg report commit failure
33078         * build-aux/git-hooks/commit-msg: If the commit is aborted,
33079         say so.  Simplify by doing this at the end.  Problem reported
33080         by Eli Zaretskii in:
33081         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
33083 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
33085         Clean up LDAP Configuration section of EUDC manual
33086         * doc/misc/eudc.texi: Combine indices.
33087         (LDAP Configuration): Use command markup.  Add index entries.
33088         Change formatting.  Wrap long lines.  Add noindent markup.
33090 2015-04-10  Daiki Ueno  <ueno@gnu.org>
33092         Add facility to collect stderr of async subprocess
33093         * src/w32.h (register_aux_fd): New function declaration.
33094         * src/w32.c (register_aux_fd): New function.
33095         * src/process.h (struct Lisp_Process): New member stderrproc.
33096         * src/process.c (PIPECONN_P): New macro.
33097         (PIPECONN1_P): New macro.
33098         (Fdelete_process, Fprocess_status, Fset_process_buffer)
33099         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
33100         (Fcontinue_process): Handle pipe process specially.
33101         (create_process): Respect p->stderrproc.
33102         (Fmake_pipe_process): New function.
33103         (Fmake_process): Add new keyword argument :stderr.
33104         (wait_reading_process_output): Specially handle a pipe process when
33105         it gets an EOF.
33106         (syms_of_process): Register Qpipe and Smake_pipe_process.
33107         * doc/lispref/processes.texi (Asynchronous Processes): Document
33108         `make-pipe-process' and `:stderr' keyword of `make-process'.
33109         * lisp/subr.el (start-process): Suggest to use `make-process' handle
33110         standard error separately.
33111         * test/automated/process-tests.el (process-test-stderr-buffer)
33112         (process-test-stderr-filter): New tests.
33113         * etc/NEWS: Mention new process type `pipe' and its usage with the
33114         `:stderr' keyword of `make-process'.
33116 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
33118         Minor quoting etc. fixes to lispref manual
33119         * doc/lispref/tips.texi (Documentation Tips):
33120         Distinguish more clearly among grave accent, apostrophe,
33121         and single quote.
33122         * doc/lispref/README, doc/lispref/buffers.texi:
33123         * doc/lispref/commands.texi, doc/lispref/control.texi:
33124         * doc/lispref/customize.texi, doc/lispref/display.texi:
33125         * doc/lispref/elisp.texi, doc/lispref/files.texi:
33126         * doc/lispref/frames.texi, doc/lispref/hash.texi:
33127         * doc/lispref/help.texi, doc/lispref/internals.texi:
33128         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
33129         * doc/lispref/markers.texi, doc/lispref/modes.texi:
33130         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
33131         * doc/lispref/os.texi, doc/lispref/positions.texi:
33132         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
33133         * doc/lispref/text.texi, doc/lispref/tips.texi:
33134         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
33135         Use American-style double quoting in ordinary text,
33136         and quote 'like this' when single-quoting in ASCII text.
33137         Also, fix some minor spacing issues.
33139 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
33141         Handle symlinked test directory in tramp-tests.el
33142         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
33143         (tramp--test-check-files): Use `file-truename' for directories.
33145 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
33147         Fix 'recenter' when visual-line-mode is turned on
33148         * src/window.c (Frecenter): Use the same code for GUI and TTY
33149         frames alike; use vmotion only for "initial" frames.  This is
33150         because vmotion doesn't support visual-line-mode.  Rewrite the
33151         'iarg >= 0' case to use move_it_* functions instead of using
33152         vmotion, for the same reason.  Fix the clipping of the argument
33153         value to support scroll-margin in all cases and avoid unwarranted
33154         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
33155         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
33156         which see.
33158 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
33160         * lisp/abbrev.el (define-abbrev-table): Refine last change.
33162         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
33163         use of c[ad]+r", so as to keep the "cl-" prefix on all
33164         cl-lib definitions.
33166         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
33167         Use inhibit-point-motion-hooks.
33169         * lisp/cedet/semantic: Remove some dead code.
33170         * lisp/cedet/semantic/util-modes.el
33171         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
33172         any more.
33173         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
33174         not supported any more.
33175         (semantic-safe): Use `declare'.
33176         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
33177         (semantic-tag-intangible-p): Remove unused functions.
33178         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
33179         Remove unused function.
33181         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
33182         (gnus-article-hide-text, gnus-article-unhide-text)
33183         (gnus-article-unhide-text-type): Remove special handling of
33184         `intangible' since that property is not used any more.
33185         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
33187 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
33189         Use the VC root in `log-edit-listfun'
33190         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
33191         `log-edit-listfun'.
33193 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
33195         Fix description of Unix time, mention new function.
33196         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
33197         Unix time.
33198         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
33199         (Basic Operations on Units): Mention `calc-convert-exact-units'.
33201 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
33203         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
33205 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
33207         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
33208         Don't add newline after the last entry.
33210 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
33212         css-mode.el: Add "not" pseudo-class
33213         (Bug#20267)
33214         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
33215         list of CSS pseudo-classes.
33217 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
33219         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
33221 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
33223         Stop messing with the EMACS env var
33224         * doc/emacs/misc.texi (Interactive Shell): Remove description of
33225         EMACS env var.
33227 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
33229         Adapt 'make change-history' to coding cookie
33230         * Makefile.in (change-history): Adjust to change of format of
33231         ChangeLog file, which now has a coding cookie before an indented
33232         copyright notice.
33234 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
33236         Adapt 'make change-history' to coding cookie
33237         * Makefile.in (change-history): Adjust to change of format of
33238         ChangeLog file, which now has a coding cookie before an indented
33239         copyright notice.
33241         gitlog-to-changelog coding cookie and mv -i
33242         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
33243         for copyright notice prototype, so that we get a proper "coding:"
33244         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
33245         existing ChangeLog.  Problems reported by Eli Zaretskii in:
33246         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
33248         Merge from gnulib
33249         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
33250         2015-04-09 gitlog-to-changelog: port to MS-Windows
33252 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
33254         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
33255         (Bug#20212)
33257 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
33259         Stop messing with the EMACS env var
33260         (Bug#20202)
33261         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
33262         * lisp/comint.el (comint-exec-1):
33263         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
33264         * lisp/progmodes/compile.el (compilation-start): Same and bring
33265         INSIDE_EMACS's format in line with other users.
33267         css-mode.el (css-smie-rules): Fix indentation after complex selectors
33268         (Bug#20282)
33269         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
33270         inner structure of selectors.
33272 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
33274         python.el: Indent docstring lines to base-indent
33275         (Bug#19595)
33276         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
33277         an initial patch.
33278         * lisp/progmodes/python.el
33279         (python-indent-context): Add :inside-docstring context.
33280         (python-indent--calculate-indentation): Handle :inside-docstring.
33281         (python-indent-region): Re-indent docstrings.
33282         * test/automated/python-tests.el (python-indent-region-5)
33283         (python-indent-inside-string-2): Fix tests.
33285         python.el: Increase native completion robustness
33286         (Bug#19755)
33287         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
33288         this and providing useful ideas.
33289         * lisp/progmodes/python.el
33290         (python-shell-completion-native-output-timeout): Increase value.
33291         (python-shell-completion-native-try-output-timeout): New var.
33292         (python-shell-completion-native-try): Use it.
33293         (python-shell-completion-native-setup): New readline setup avoids
33294         polluting current context, ensures output when no-completions are
33295         available and includes output end marker.
33296         (python-shell-completion-native-get-completions): Trigger with one
33297         tab only.  Call accept-process-output until output end is found or
33298         python-shell-completion-native-output-timeout is exceeded.
33300 2015-04-08  Samer Masterson  <samer@samertm.com>
33302         * lisp/eshell: Make backslash a no-op in front of normal chars
33303         (Bug#8531)
33304         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
33305         (eshell-parse-backslash): Return escaped character after backslash
33306         if it is special.  Otherwise, if the backslash is not in a quoted
33307         string, ignore the backslash and return the character after; if
33308         the backslash is in a quoted string, return the backslash and the
33309         character after.
33310         * test/automated/eshell.el (eshell-test/escape-nonspecial)
33311         (eshell-test/escape-nonspecial-unicode)
33312         (eshell-test/escape-nonspecial-quoted)
33313         (eshell-test/escape-special-quoted): Add tests for new
33314         `eshell-parse-backslash' behavior.
33316 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
33318         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
33319         after the file name.
33320         (Bug#20276)
33322 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
33324         Minor quoting etc. fixes to Emacs manual
33325         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
33326         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
33327         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
33328         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
33329         * doc/emacs/indent.texi, doc/emacs/macos.texi:
33330         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
33331         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
33332         * doc/emacs/search.texi, doc/emacs/trouble.texi:
33333         * doc/emacs/vc1-xtra.texi:
33334         Use American-style double quoting in ordinary text,
33335         and quote 'like this' when single-quoting in ASCII text.
33336         Also, fix some minor spacing issues.
33338         Minor quoting etc. fixes to elisp intro
33339         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
33340         American-style double quoting in ordinary text.  In ASCII text,
33341         consistently quote 'like this' instead of `like this', unless
33342         Emacs requires the latter.
33344 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
33346         * CONTRIBUTE: Mention log-edit-insert-changelog.
33348         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
33350 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
33352         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
33354 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
33356         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
33357         Fix inheritance of initargs.  (Bug#20270)
33359 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
33361         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
33362         while dowloading information.
33364         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
33365         (package--ensure-init-file): Check file contents before visiting.
33366         (package-initialize): Call it.
33367         (package-install-from-buffer, package-install): Don't call it.
33369 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
33371         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
33372         (Bug#17517)
33374 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
33376         * lisp/net/tramp-cache.el (tramp-flush-file-property):
33377         Fix nasty scoping bug.
33379 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
33381         Add notice to visual commands section
33382         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
33383         such as git call less with its -F option which omits pagination if
33384         the contents is less than one page long.  This interferes with
33385         eshell's visual (sub-)commands.
33387 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
33389         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
33390         environment variable expansion in file names.  (Bug#19839)
33392 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
33394         Prefer double-quote to accent-grave in man pages
33396 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
33398         (Bug#20257)
33399         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
33401 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
33403         Update etc/PROBLEMS.
33404         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
33405         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
33406         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
33407         respectively); other minor updates and tweaks.  (Bug#20011)
33409 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
33411         Add doc strings for some Isearch state vars
33412         * lisp/misearch.el (multi-isearch-buffer-list)
33413         (multi-isearch-file-list): Add doc strings.
33414         (Bug#20232)
33416 2015-04-07  Alan Mackenzie  <acm@muc.de>
33418         Always mark "<" and ">" in #include directives with text properties.
33419         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
33420         "anchored matcher" with an invocation of
33421         c-make-font-lock-search-function to allow fontification when there's
33422         no trailing space on an "#include <..>" line.
33424 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
33426         Generate a ChangeLog file from commit logs
33427         * .gitignore: Add 'ChangeLog'.
33428         * build-aux/gitlog-to-changelog: New file, from Gnulib.
33429         * build-aux/gitlog-to-emacslog: New file.
33430         * CONTRIBUTE: Document the revised workflow.
33431         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
33432         instead of just special cases.
33433         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
33434         (ChangeLog, unchanged-history-files, change-history)
33435         (change-history-commit): New rules.
33436         * admin/admin.el (make-manuals-dist--1):
33437         Don't worry about doc/ChangeLog.
33438         * admin/authors.el: Add a FIXME.
33439         * admin/make-tarball.txt:
33440         * lisp/calendar/icalendar.el:
33441         * lisp/gnus/deuglify.el:
33442         * lisp/obsolete/gulp.el:
33443         * lwlib/README:
33444         Adjust to renamed ChangeLog history files.
33445         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
33446         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
33447         Remove obsolete discussion of merging ChangeLog files.
33448         New section "Maintaining ChangeLog history".
33449         * build-aux/git-hooks/pre-commit:
33450         Reject attempts to commit files named 'ChangeLog'.
33451         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
33452         * make-dist: Make and distribute top-level ChangeLog if there's a
33453         .git directory.  Distribute the new ChangeLog history files
33454         instead of scattered ChangeLog files.  Distribute the new files
33455         gitlog-to-changelog and gitlog-to-emacslog.
33456         (Bug#19113)
33458         Rename ChangeLogs for gitlog-to-changelog
33459         This patch was implemented via the following shell commands:
33460         find * -name ChangeLog |
33461         sed 's,.*,git mv & &.1,
33462         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
33463         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
33464         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
33465         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
33466         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
33467         sh
33468         git commit -am"[this commit message]"
33470 This file records repository revisions from
33471 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
33472 commit 0ffc9cef49b0fceb3c5e904837ea5675fe4306ac (inclusive).
33473 See ChangeLog.1 for earlier changes.
33475 ;; Local Variables:
33476 ;; coding: utf-8
33477 ;; End:
33479   Copyright (C) 2015-2016 Free Software Foundation, Inc.
33481   This file is part of GNU Emacs.
33483   GNU Emacs is free software: you can redistribute it and/or modify
33484   it under the terms of the GNU General Public License as published by
33485   the Free Software Foundation, either version 3 of the License, or
33486   (at your option) any later version.
33488   GNU Emacs is distributed in the hope that it will be useful,
33489   but WITHOUT ANY WARRANTY; without even the implied warranty of
33490   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
33491   GNU General Public License for more details.
33493   You should have received a copy of the GNU General Public License
33494   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.