Merge from origin/emacs-25
[emacs.git] / ChangeLog.2
blob3f3d558b561d0bb40e9e60bb9d3c6b1552d3df00
1 2016-09-26  Nicolas Petton  <nicolas@petton.fr>
3         * Version 25.1 released.
5 2016-09-26  Nicolas Petton  <nicolas@petton.fr>
7         * etc/AUTHORS: Regenerate the AUTHORS file
9 2016-09-26  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-26  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-26  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-26  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-26  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-26  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-09-26  Nicolas Richard  <youngfrog@members.fsf.org>
56         * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in docstring.
58 2016-09-26  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-09-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-09-26  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-09-26  Paul Eggert  <eggert@cs.ucla.edu>
101         * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
103 2016-09-26  Nicolas Petton  <nicolas@petton.fr>
105         * etc/AUTHORS: Update the AUTHORS file
107 2016-09-26  Philipp Stephani  <phst@google.com>
108 2016-08-22  Philipp Stephani  <phst@google.com>
110         Some assorted documentation clarifications
112         * src/fileio.c (Fwrite_region): Clarify that END is ignored if
113         START is nil.
114         * src/editfns.c (Fbuffer_size): Add short discussion about
115         narrowing.
116         * src/callproc.c (Fcall_process_region): Discuss behavior when
117         START and END are not buffer positions.
119 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
121         Improve commentary in src/character.h
123         * src/character.h (BYTES_BY_CHAR_HEAD, MULTIBYTE_LENGTH)
124         (MULTIBYTE_LENGTH_NO_CHECK, STRING_CHAR_AND_LENGTH): Remove stale
125         info from commentary and improve it.
127 2016-08-22  Dmitry Gutov  <dgutov@yandex.ru>
129         * etc/NEWS: Mention the change in json-encode-string.
131         The change was made to fix bug#20154, and came up again in bug#24239.
133 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
135         * src/doc.c (Fsubstitute_command_keys): Another fix for smart quotes.
137         (Bug#24206)
139 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
141         Avoid segfaults due to quoting in 'substitute-command-keys'
143         * src/doc.c (Fsubstitute_command_keys): Correct character counts
144         when the input string is unibyte.  (Bug#24206)
146 2016-08-22  Martin Rudalics  <rudalics@gmx.at>
148         In NEWS describe new handling of window margins (Bug#24193)
150         * etc/NEWS: Describe new handling of margins when splitting or
151         resizing windows (Bug#24193).
153 2016-08-22  Martin Rudalics  <rudalics@gmx.at>
155         Facultatively ignore margins when splitting and resizing windows (Bug#24193)
157         Provide a new window parameter 'min-margins' which allows to
158         ignore the actual widths of a window's margins when splitting or
159         resizing that window horizontally.  This should serve as a
160         workaround for handling the problems raised by Bug#24193.
162         * lisp/window.el (window--min-size-1): Handle new window
163         parameter 'min-margins'.
164         (split-window): Fix text of error messages.
165         * doc/lispref/windows.texi (Window Parameters): Describe new
166         parameter 'min-margins'.
168 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
170         Document CATEGORY arg to modify-category-entry
172         * src/category.c (Fmodify_category_entry): Document CATEGORY argument.
174 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
176         Document char-script-table's effect on word motion
178         * doc/lispref/positions.texi (Word Motion): Talk about
179         char-script-table (Bug #10494).
181 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
183         Further fix for 'url-http-create-request' and multibyte strings
185         * lisp/url/url-http.el (url-http-create-request): Run
186         url-mime-charset-string through url-http--encode-string.
187         (Bug#24117)
189 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
191         Fix docstring of eval-expression
193         * lisp/simple.el (eval-expression): Fix the docstring to reflect the
194         fact that the prefix argument does not affect formatting for
195         integers (Bug #20691).
197 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
199         Clarify when 'cursor' property is in effect
201         * doc/lispref/text.texi (Special Properties): Minor copyedits.
202         (Bug#24179)
204 2016-08-22  Dmitry Gutov  <dgutov@yandex.ru>
206         Convert the remaining strings to unibyte before concatenating
208         * lisp/url/url-http.el (url-http--encode-string): New function.
209         (url-http-create-request): Use it to convert ASCII to unibyte.
210         (Bug#24117)
212 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
214         Fix bug with handling the bidi cache
216         * src/xdisp.c (redisplay_window): Save and restore the state of
217         the bidi cache before reusing the iterator after calls to
218         try_window and try_window_reusing_current_matrix.
220 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
222         * doc/lispref/text.texi (Change Hooks): Minor copyedits.
224 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
226         Clarify documentation of before/after-change-functions
228         * doc/lispref/text.texi (Change Hooks): Clarify that the hooks are
229         not called in balanced pairs.
231 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
233         Document use of vectors in keymaps
235         * doc/lispref/keymaps.texi (Format of Keymaps): Mention vector
236         format (Bug #14797).
238 2016-08-22  Alan Third  <alan@idiocy.org>
240         Post AppDefined events from the main thread ONLY (bug#23934)
242         * src/nsterm.h: Make nextappdefined var not just GNUStep.
243         * src/nsterm.m (ns_send_appdefined, sendFromMainThread): Remove GNUStep
245 2016-08-22  John Wiegley  <johnw@newartisans.com>
247         Update to the AUTHORS file for Bob Weiner
249                 * etc/AUTHORS: Update the packages attributed to Bob Weiner
251 2016-08-22  John Wiegley  <johnw@newartisans.com>
253         Revert "Fix local printer set to left aligned string formatter."
255         This reverts commit 8a38e948b039516e70176ebe20c5349e2ade6ac5.
257 2016-08-22  John Wiegley  <johnw@newartisans.com>
259         Revert "Fix ses-delete-blanks to delete only blanks + documentation."
261         This reverts commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d.
263 2016-08-22  John Wiegley  <johnw@newartisans.com>
265         Revert "Fix English."
267         This reverts commit b275cc76f0c5ab49e81445fcc3420c8772aefd42.
269 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
271         Improve doc strings of 'gud-gdb' and 'gdb'
273         * lisp/progmodes/gdb-mi.el (gdb):
274         * lisp/progmodes/gud.el (gud-gdb): Doc fix.  (Bug#24125)
276 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
278         Fix doc string of 'minibuffer-message-timeout'
280         * src/keyboard.c (syms_of_keyboard) <minibuffer-message-timeout>:
281         Doc fix.  (Bug#24123)
283 2016-08-22  Vincent Belaïche  <vincentb1@users.sourceforge.net>
285         Fix English.
287         * doc/misc/ses.texi (Nonrelocatable references): Fix grammatically
288           incorrect English.
290 2016-08-22  Vincent Belaïche  <vincentb1@users.sourceforge.net>
292         Fix ses-delete-blanks to delete only blanks + documentation.
294         * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
295         'ses-range' modifier as an alternative to 'ses+'.
296         (Advanced Features): Add a refernce to node 'Nonrelocatable
297         references' concerning function 'ses-rename-cell'.
298         (Standard formula functions): Mention the '!' 'ses-range'
299         modifier as an alternative to 'ses-delete-blanks'.
300         (More on cell printing): Fix fallback printer
301         definition.  Minor editorial formatting changes.
302         (Nonrelocatable references): Document the use of
303         'ses-rename-cell' as a better way to make cell reference
304         non-relocatable.
305         (The data area): Document the presence of local printer
306         definitions in the data area.
308         * lisp/ses.el (ses-delete-blanks): Do not remove
309         *error*.  Any error in an argument should propagate into the
310         using formula rather than being silently hidden !
312 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
314         profiler: document prefix arg for tree expansion
316         * doc/lispref/debugging.texi (Profiling):
317         * lisp/profiler.el (profiler-report-toggle-entry): Document use of
318         prefix argument to expand whole call trees.
320 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
322         Clarify usage of eshell-visual-options
324         * lisp/eshell/em-term.el (eshell-visual-options): Add second option to
325         example usage (Bug #19627).
327 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
329         Fix comment in files-in-below-directory
331         * doc/lispintro/emacs-lisp-intro.texi (Files List): Comment should not
332         say append, since the code is adding to front of list (Bug #21589).
334 2016-08-22  Vincent Belaïche  <vincentb1@users.sourceforge.net>
336         Fix local printer set to left aligned string formatter.
338         * lisp/ses.el (ses-local-printer-compile): Add missing case
339         for left-aligned string formatter.
341 2016-08-22  Nicolas Petton  <nicolas@petton.fr>
343         Bump Emacs version to 25.1 for the first RC
345         * README:
346         * configure.ac:
347         * lisp/ldefs-boot.el:
348         * msdos/sed2v2.inp: Bump Emacs version to 25.1.
350 2016-08-22  Nicolas Petton  <nicolas@petton.fr>
352         * etc/AUTHORS: Update the AUTHORS file
354         ;; * ChangeLog.2: ChangeLog update.
356 2016-08-22  Nicolas Petton  <nicolas@petton.fr>
357 2016-08-05  Nicolas Petton  <nicolas@petton.fr>
359         * admin/authors.el (authors-valid-file-names): Addition.
361 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
363         Warn about Cairo-related problems
365         * etc/NEWS: Warn about known problems in the Cairo build.
366         (Bug#23925)
368 2016-08-05  Paul Pogonyshev  <pogonyshev@gmail.com>
370         Don't let completion break `declare' handling
372         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Fix to not alter
373         `defun-declarations-alist' by side effect (Bug #23648).
375 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
377         Adjust match data before calling after-change-funs
379         It's important to adjust the match data in between calling
380         before-change-functions and after-change-functions, so that buffer
381         change hooks will always see match-data consistent with buffer content.
382         (Bug #23917)
384         * src/insdel.c (replace_range): Add new parameter ADJUST_MATCH_DATA, if
385         true call update_search_regs.  Update all callers (except
386         Freplace_match) to pass 0 for the new parameter.
387         * src/search.c (update_search_regs): New function, extracted from
388         Freplace_match.
389         (Freplace_match): Remove match data adjustment code, pass 1 for
390         ADJUST_MATCH_DATA to replace_range instead.
392 2016-08-05  Mark Oteiza  <mvoteiza@udel.edu>
394         Do not show string-rectangle preview if minibuffer is empty
396         * lisp/rect.el (rectangle--string-preview): Remove condition that sets
397         preview string to the default replacement string.
399 2016-08-05  Achim Gratz  <Stromeko@nexgo.de>
401         * etc/PROBLEMS: Add entry about selection problems under Plasma 5.
403         Bug#24013
405 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
407         Port to glibc 2.24 (pre-release) + ppc64
409         Backport from master (Bug#24033).
410         Inspired by a suggestion by Florian Weimer in:
411         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
412         * src/emacs.c (main) [__PPC64__]:
413         Special case for __PPC64__, which needs ASLR disabled in
414         dumped Emacs too.
416 2016-08-05  Katsumi Yamaoka  <yamaoka@jpl.org>
418         * lisp/net/shr.el (shr-fill-line): Withdraw the last commit (4157159).
420         * lisp/net/shr.el (shr-fill-line):
421         Preserve text properties in folded lines (bug#24034).
423 2016-08-05  Robert Cochran  <robert-git@cochranmail.com>  (tiny change)
425         Expand FIXME near definition of fboundp
427         This expansion of the FIXME is so that future developers are aware of
428         the potential problems of aliasing fboundp to symbol-function without
429         taking backwards compatibility into account.
431         * src/data.c (fboundp): Note potential backwards compatibility issues in
432         FIXME.
434 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
436         kill-rectangle should mention killed-rectangle
438         * lisp/rect.el (kill-rectangle): Mention `killed-rectangle' in docstring
439         and warning message, rather than kill ring (Bug#19773).
441 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
443         Avoid assertion violations in nhexl-mode
445         * src/bidi.c (bidi_resolve_neutral): Convert an assertion to real
446         code executed in all builds.  (Bug#24001)
448 2016-08-05  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
450         Use memmove instead of memcpy on overlapping regions
452         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
453         use memmove instead of memcpy (bug#19213).
456         This is a backport from trunk.
457         (cherry picked from commit 354f9f0fc6cc05ed98883447f9b2f37943d79160)
459 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
461         Document buffer-swap-text+save-excursion interaction
463         * doc/lispref/buffers.texi (Swapping Text):
464         * src/buffer.c (Fbuffer_swap_text): Add warning about interaction of
465         `buffer-swap-text' and `save-excursion' (Bug #4655).
467 2016-08-05  Stefan Monnier  <monnier@iro.umontreal.ca>
469         Fix eieio vs cl-generic incompatibilities found in Rudel (bug#23947)
471         * lisp/emacs-lisp/cl-generic.el (cl-generic-apply): New function.
472         * lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Fix incorrect
473         mapping between cl-no-applicable-method and EIEIO's no-applicable-method.
474         * lisp/emacs-lisp/eieio-core.el (eieio--class-precedence-c3):
475         `class' is not a symbol but a class object.
477 2016-08-05  Stefan Monnier  <monnier@iro.umontreal.ca>
479         Include cl-generic in package--builtin-versions (bug#22817)
481         * lisp/emacs-lisp/cl-generic.el (package--builtin-versions):
482         Add ourselves manually.  Don't merge since there's a better fix on master.
484 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
486         Improve timing in `tramp-test29-environment-variables'
488         * test/automated/tramp-tests.el
489         (tramp-test--shell-command-to-string-asynchronously):
490         Add additional `accept-process-output' call.
491         (tramp-test29-environment-variables): Remove additional sleep calls.
493 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
495         Add test for handling environment variables in Tramp
497         * test/automated/tramp-tests.el
498         (tramp-test--shell-command-to-string-asynchronously): New defun.
499         (tramp-test29-environment-variables): New test.
500         (tramp-test30-vc-registered)
501         (tramp-test31-make-auto-save-file-name)
502         (tramp-test32-special-characters)
503         (tramp-test32-special-characters-with-stat)
504         (tramp-test32-special-characters-with-perl)
505         (tramp-test32-special-characters-with-ls, tramp-test33-utf8)
506         (tramp-test33-utf8-with-stat, tramp-test33-utf8-with-perl)
507         (tramp-test33-utf8-with-ls)
508         (tramp-test34-asynchronous-requests)
509         (tramp-test35-recursive-load, tramp-test36-unload): Rename.
511 2016-08-05  Glenn Morris  <rgm@gnu.org>
513         * lisp/emacs-lisp/package.el (describe-package-1)
514         (package-status-external): Fix face references.  (Bug#23927)
516 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
518         Improve documentation of search functions
520         Make the documentation of the search functions more accurate,
521         complete, and uniform; in particular, extend the description of
522         the effect when the 'count' parameter is a negative number to all
523         of these functions.
525         * src/search.c (Fsearch_backward, Fsearch_forward)
526         (Fre_search_backward, Fre_search_forward)
527         (Fposix_search_backward, Fposix_search_forward):
528         * lisp/isearch.el (word-search-backward, word-search-forward)
529         (word-search-backward-lax, word-search-forward-lax): Improve doc
530         strings as described above.
532         * doc/lispref/searching.texi (String Search, Regexp Search)
533         (POSIX Regexps): Use 'count' instead of 'repeat' as the name of
534         the fourth parameter of the *-search-{forward,backward} functions
535         and improve documentation as described above.
537 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
539         Delete environment variables in Tramp when needed
541         * lisp/net/tramp-sh.el (tramp-get-env-with-u-option): New defun.
542         (tramp-sh-handle-start-file-process)
543         (tramp-sh-handle-process-file, ): Use it.  (Bug#23952)
545 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
547         Add "New in Emacs 25" section to the FAQ
549         * doc/misc/efaq.texi (Latest version of Emacs): Update for later
550         versions.
551         (New in Emacs 25): New node.
552         (Status of Emacs): Add it to the menu.
554 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
556         Fix 'vertical-motion' in non-interactive sessions
558         * src/indent.c (Fvertical_motion): Don't return uninitialized
559         value in non-interactive session.  This fixes random errors in
560         batch mode, see
561         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00609.html
562         and
563         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00500.html
564         for the details.
566 2016-08-05  Andreas Schwab  <schwab@linux-m68k.org>
568         Fix memory leak in imagemagick-types
570         * src/image.c (Fimagemagick_types): Use AcquireExceptionInfo to
571         avoid memory leak.
573 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
575         Update ELisp manual to match 'string-collate-equalp' doc string
577         * doc/lispref/strings.texi (Text Comparison): Remove reference to
578         sorting from the description of 'string-collate-equalp'.  (Bug#23902)
580 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
582         Clarify docstring of find-feature-regexp
584         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Explain that `%s'
585         is optional (Bug #23520).
587 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
589         Add details to cl-lib defining macros' docstrings
591         * lisp/emacs-lisp/cl-macs.el (cl-defun, cl-defmacro): Add terse summary
592         of supported arglist forms (Bug #22462).
594 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
596         Clarify doc string of 'save-buffer'
598         * lisp/files.el (save-buffer): Clarify that backups might not be
599         made even if this command is invoked with 2 or 3 "C-u"s.
600         (Bug#3702)
602 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
604         Un-confuse doc string of 'string-collate-equalp'
606         * src/fns.c (Fstring_collate_equalp): Remove confusing text from
607         doc string.  (Bug#23902)
609 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
611         Clarify documentation of 'mouse-on-link-p'
613         * lisp/mouse.el (mouse-on-link-p): Clarify the form of the POS
614         argument.  (Bug#23899)
616 2016-08-05  Phillip Lord  <phillip.lord@russet.org.uk>
618         Fix missing undo-boundary on revert-buffer.
620         * lisp/simple.el (undo-auto--undoable-change-no-timer): New function.
621         * src/fileio.c (insert-buffer-contents): Call
622           undo-auto--undoably-changed-buffers before changes.
624         Addresses Bug#23785.
626         Do not merge to master as c98bc98 also addresses the same bug.
628 2016-08-05  Martin Rudalics  <rudalics@gmx.at>
630         Amend last addition to etc/PROBLEMS
632         * etc/PROBLEMS: Mention GTK+ problem with unexpected frame widenings
634 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
636         Fix open-network-stream responsiveness
638         Problem reported by Christer Ekholm (Bug#23864).
639         Backport from master.
640         * src/process.c (wait_reading_process_output):
641         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
642         when wait == INFINITY and got_output_end_time is invalid.
643         In this case the code should break, not continue.
645 2016-08-05  Phillip Lord  <phillip.lord@russet.org.uk>
647         Fix missing point information in undo
649         * src/undo.c (record_insert): Use record_point instead of
650           prepare_record, and do so unconditionally.
651           (prepare_record): Do not record first change.
652           (record_point): Now conditional on state before the last command.
653           (record_delete): Call record_point unconditionally.
654           (record_property_change): Use prepare_record.
655           (record_marker_adjustments): Use prepare_record.
657         Addresses Bug# 21722
659 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
661         Avoid crashes when buffer modification hooks clobber match data
663         * src/search.c (Freplace_match): Error out if buffer modification
664         hooks triggered by buffer changes in replace_range, upcase-region,
665         and upcase-initials-region clobber the match data needed to be
666         adjusted for the replacement.  (Bug#23869)
668 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
670         Note combine-and-quote-strings doesn't shell quote
672         * doc/lispref/processes.texi (Shell Arguments):
673         * lisp/subr.el (combine-and-quote-strings): Add a note that
674         combine-and-quote-strings doesn't protect arguments against shell
675         evaluation (Bug #20333).
677 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
679         Explain when package-initialize isn't called
681         * doc/lispref/os.texi (Startup Summary): Explain that package-initialize
682         is not called when options -q, -Q, or --batch were passed (Bug #19151).
684 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
686         Fix escaping in sh-indent-after-continuation docstr
688         * lisp/progmodes/sh-script.el (sh-indent-after-continuation): Properly
689         escape backslashes in docstring (Bug#23046).
691 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
693         Clarify the documentation of back-references in replacements
695         * doc/emacs/search.texi (Regexp Replace): Clarify that \D starts
696         with \1, not \0.
698         * lisp/replace.el (query-replace-regexp)
699         (query-replace-regexp-eval, replace-regexp): Doc fix (Bug#23884)
701 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
703         Clarify lexical binding with symbol args behavior
705         * doc/lispref/variables.texi (Lexical Binding): Clarify that symbol
706         arguments always refer to dynamic values (Bug #23781).  Remove mention
707         of obsolete restriction regarding lexical binding for defun and
708         defmacro, this no longer applies since 61b108cc 2012-05-29 "*
709         lisp/emacs-lisp/byte-run.el (defmacro, defun): Move from C...".
711 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
713         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
715 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
717         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23865)
719 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
721         Avoid assertion violations when rendering some fonts
723         * src/dispextern.h (FONT_TOO_HIGH): Don't consider a font "too
724         high" if its pixel_size value is zero.  This avoids assertion
725         violations at the end of x_produce_glyphs.
727 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
729         Document more details of package activation
731         * doc/emacs/package.texi (Package Installation): Explain that package
732         activation adds to load-path (Bug #21704).
734 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
736         Fixup warning message regarding HOME a bit more
738         * src/w32.c (init_environment): The manual section title is "Windows
739         HOME" (Bug #11612).  Move newline so warning fits in 80 character lines.
741 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
743         * lisp/leim/quail/indian.el ("bengali-probhat"): Change indicator to BngPB.
745 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
747         Fix input method "probhat" for Bengali
749         Author: উৎসব রায় <uroybd@gmail.com>
751         * lisp/leim/quail/indian.el ("bengali-probhat"): Fix entry.
753 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
755         Add to elisp-completion-at-point's docstring
757         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Document
758         position dependent behavior (Bug #19854).
760 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
761             Eli Zaretskii  <eliz@gnu.org>
763         Give more helpful warning about setting HOME
765         * src/w32.c (init_environment): Improve warning message that pops when
766         Emacs sets HOME according to existence of C:\.emacs (Bug #11612).
768 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
770         Fix slow redisplay in term-mode
772         * lisp/term.el (term-mode): Move the setting of
773         bidi-paragraph-direction from 'ansi-term' to here, since term-mode
774         is also affected.  Do not merge to master, since there the problem
775         is solved in bidi.c by changing the regexps that delimit a
776         paragraph.  (Bug#23801)
778 2016-08-05  উৎসব রায়  <uroybd@gmail.com>
780         New input method "probhat" for Bengali
782         * lisp/leim/quail/indian.el ("probhat"): New input method.
783         (Bug#23822)
785         * etc/NEWS: Mention the new input method.
787 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
788             Drew Adams  <drew.adams@oracle.com>
790         Update docs for `customize-mode'
792         * lisp/cus-edit.el (customize-mode): This function works with both major
793         and minor modes, make docstring and prompt reflect that (Bug #23649).
795         * doc/lispref/modes.texi (Derived Modes): Remove note about
796         customize-mode being experimental; it has been around since Emacs
797         22 (Bug #11299).
799 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
801         Fix documentation of 'assoc-string' and 'compare-strings'
803         * src/minibuf.c (Fassoc_string): Clarify how CASE-FOLD affects the
804         string comparison.  (Bug#23833)
805         * src/fns.c (Fcompare_strings): Fix the description of how
806         IGNORE-CASE affects the comparison.
808         * doc/lispref/strings.texi (Text Comparison): Clarify how
809         CASE-FOLD affects the string comparison in 'assoc-string'.  Fix
810         the description of how IGNORE-CASE affects the comparison in
811         'compare-strings'.
813 2016-08-05  Dmitry Gutov  <dgutov@yandex.ru>
815         Error on multibyte characters in HTTP request
817         * lisp/url/url-http.el (url-http-create-request): Check the
818         constructed request in the end to verify that it does not contain
819         multibyte characters (bug#23750).
821 2016-08-05  Katsumi Yamaoka  <yamaoka@jpl.org>
823         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
824         Mask keys that launch `widget-button-click' (bug#22157).
826 2016-08-05  Dmitry Gutov  <dgutov@yandex.ru>
828         Unset GIT_DIR when calling Git commands
830         * lisp/vc/vc-git.el (vc-git--call, vc-git-command):
831         Unset GIT_DIR (bug#23769).
833 2016-08-05  Phillip Lord  <phillip.lord@russet.org.uk>
835         Ensure undo-boundary after insert-file-contents.
837         * src/fileio.c: Record undoable change during insert-file-contents.
839         Addresses Bug #23785.
841 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
843         Clarify documentation of 'line-spacing' and 'line-height'
845         * doc/lispref/display.texi (Line Height): Clarify how the line
846         height is determined via variables and text properties.  (Bug#23806)
848 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
850         Fix removal of variables from process-environment
852         * src/callproc.c (add_env): Fix comparison of a variable with a
853         value against the same variable without a value.  (Bug#23779)
855 2016-08-05  Glenn Morris  <rgm@gnu.org>
857         * admin/authors.el (authors-ignored-files, authors-valid-file-names)
858         (authors-renamed-files-alist): Additions.
860         * admin/authors.el (authors-aliases, authors-fixed-case): Additions.
862 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
864         Fix documentation of completion functions
866         So that the described behavior matches the code (and docstrings).
868         * doc/lispref/minibuf.texi (Basic Completion): Symbol keys of hash table
869         collections are used like string keys, not ignored (Bug #10416).
871 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
873         Clarify documentation of 'font-lock-maximum-decoration'
875         * doc/emacs/display.texi (Font Lock): Explain how to make the
876         customization of 'font-lock-maximum-decoration' effective for an
877         existing buffer.  (Bug#23783)
879 2016-08-05  Glenn Morris  <rgm@gnu.org>
881         * doc/misc/cl.texi (Usage): Add some more details.
883 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
885         Fbackward_prefix_chars: stay within buffer bounds
887         The commit 1fd3172d "(Fbackward_prefix_chars): Set point properly while
888         scanning" (1998-03-18), moved the check against of the position against the
889         buffer beginning out the loop condition so that we might end up checking
890         the syntax of characters before the beginning of the buffer.  This can
891         cause segfaults or trigger a "Point before start of properties" error in
892         `update_interval' (called indirectly from `char_quoted').
894         * src/syntax.c (Fbackward_prefix_chars): Stop the loop when beginning of
895         buffer is reached (Bug #3552, Bug #17132, Bug #19379).
897 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
899         Fix ifdef-vs-if typo with RANDR13_LIBRARY
901         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
902         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
903         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00198.html
905         (cherry picked from commit dce99f222f1ca33265cd56ddb157817be1dc078e)
907 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
909         Fix last todo-mode change
911         * lisp/calendar/todo-mode.el (todo-read-category): Return the
912         keymap in order to use its defined key bindings.
914 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
916         Improve last todo-mode fix
918         * lisp/calendar/todo-mode.el (todo-read-category): Use
919         set-keymap-parent instead of copy-keymap, and default (as
920         previously) to the global binding (for rationale, see
921         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00217.html).
923 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
925         Fix todo-mode use of minibuffer completion keymap (bug#23695).
927         * lisp/calendar/todo-mode.el (todo-read-category): Don't
928         override minibuffer-local-completion-map globally (bug#23695).
929         Bind <SPC> key to self-insert-command.
931 2016-08-05  Glenn Morris  <rgm@gnu.org>
933         * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23764)
935         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
936         Avoid mangling autoloads with unspecified arguments.  (Bug#21299)
938 2016-08-05  Glenn Morris  <rgm@gnu.org>
940         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
941         autoloads as aliases.  (Bug#21299)
943 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
945         Minor grammar fix (bug#23746)
947         * doc/lispref/processes.texi (Synchronous Processes):
948         Another minor grammar fix (bug#23746).
950 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
952         Doc fixes for grammar and typos (bug#23746)
954         * doc/emacs/files.texi (Customize Save):
955         * doc/emacs/frames.texi (Window Dividers):
956         * doc/emacs/misc.texi (Printing):
957         * doc/lispref/compile.texi (Compiler Errors):
958         * doc/lispref/keymaps.texi (Changing Key Bindings):
959         * doc/lispref/loading.texi (Named Features):
960         * doc/lispref/markers.texi (Marker Insertion Types):
961         * doc/lispref/modes.texi (Mode Hooks):
962         * doc/lispref/text.texi (Undo):
963         * src/floatfns.c (Fldexp):
964         * src/xfaces.c (syms_of_xfaces):
965         Minor doc fixes for grammar and typos (bug#23746).
967 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
969         * doc/lispref/processes.texi (Process Buffers): Minor rewording.  (Bug#23446)
971 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
973         Add cross-reference to ELisp manual
975         * doc/lispref/commands.texi (Classifying Events): Add
976         cross-reference to "Motion Events".  (Bug#23756)
978 2016-08-05  Stefan Monnier  <monnier@iro.umontreal.ca>
979 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
981         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
983         Don't rewrite (funcall 'f ...) to (f ...).
985 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
987         Restore initial undo boundary with viper
989         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Add back last undo
990           boundary if it has been removed.
992         Addresses Bug#22295.
994 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
996         Revert "Fix viper undo breakage from undo-boundary changes"
998         This reverts commit c0139e32f1f3bb287b04e02a69a7848d6a040003.
1000 2016-06-19  Ken Brown  <kbrown@cornell.edu>
1002         Fix dbus crash on 32-bit Cygwin
1004         * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store
1005         connection address.  (Bug#23741)
1006         (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection
1007         address.
1009 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
1011         Bump version to 25.0.95
1013         * README:
1014         * configure.ac:
1015         * lisp/ldefs-boot.el:
1016         * msdos/sed2v2.inp: Bump Emacs version to 25.0.95.
1018 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
1020         * etc/AUTHORS: Update the AUTHORS file
1022 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
1024         add entries to authors.el
1026         * admin/authors.el (authors-renamed-files-alist): Add char-fold files.
1028 2016-06-19  Jules Tamagnan  <jtamagnan@gmail.com>
1030         Fix eldoc-related freezes in python mode
1032         * lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
1033         (python-eldoc-function-timeout)
1034         (python-eldoc-function-timeout-permanent): New defcustoms.
1035         (python-eldoc-function): If python-eldoc--get-doc-at-point times
1036         out, effectively turn off ElDoc in current buffer.  (Bug#23609)
1038 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
1040         Handle mouse leaving initial window in `mouse-set-region' (Bug#23707)
1042         * lisp/mouse.el (mouse-set-region): If the mouse ends up in
1043         another window or on the menu bar, use `window-point' of
1044         selected window instead of `posn-point' of the event end
1045         (Bug#23707).
1047 2016-06-19  Marco Wahl  <marcowahlsoft@gmail.com>
1049         org.el: Fix bindings of < and > for calendar scrolling
1051         [This patch taken from upstream Org repo with 8b63dc9 dated
1052         2014-10-20 (Bug#23725).]
1053         * lisp/org/org.el (org-read-date-minibuffer-local-map):
1054         Switch to the current calendar API for scrolling the calendar.
1056 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
1058         Fix undo boundary in recursive edit (Bug#23632)
1060          * src/keyboard.c (recursive_edit_1): specbind
1061            undo-auto--undoably-changed-buffers.
1062          * lisp/simple.el (undo-auto--undoably-changed-buffers):
1063            fix docstring.
1065 2016-06-19  Glenn Morris  <rgm@gnu.org>
1067         Doc fixes re alist-get.  (Bug#23548)
1069         * lisp/subr.el (alist-get): Doc fix.
1070         * doc/lispref/lists.texi (Association Lists): Improve alist-get.
1072 2016-06-19  Glenn Morris  <rgm@gnu.org>
1074         * lisp/progmodes/python.el (inferior-python-mode):
1075         Avoid tabs.  (Bug#23616)
1077         * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>: Doc fix.
1079 2016-06-19  Tino Calancha  <f92capac@gmail.com>
1081         * lisp/help-fns.el (describe-function-1):
1082         Fix handling of file name for aliases.  (Bug#21950)
1084         * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
1086         * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
1088 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1090         Fix crash in syntax.c after GC
1092         Problem reported by Vincent Belaïche (Bug#23704).
1093         * src/syntax.c (skip_chars): Recompute pointers into the
1094         buffer after every call to update_syntax_table_forward,
1095         as it can GC.
1097 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1099         Improve squiggly heredoc support in non-SMIE Ruby mode
1101         * lisp/progmodes/ruby-mode.el (ruby-parse-partial): Support
1102         squiggly heredocs here, too (port from upstream).
1104 2016-06-19  Stephen Berman  <stephen.berman@gmx.net>
1106         Fix doc string quoting
1108         * lisp/files.el (shell-quote-wildcard-pattern):
1109         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
1110         * lisp/subr.el (replace-regexp-in-string):
1111         * lisp/view.el (view-mode):
1112         * src/nsfns.m (syms_of_nsfns):
1113         * src/syntax.c (Fbackward_prefix_chars):
1114         Fix quoting problems in doc strings (Bug#23696).
1116 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
1118         Fix mouse dragging of vertical dividers with scroll bars on left (Bug#23690)
1120         * lisp/mouse.el (mouse-drag-line): With scroll bars on the left
1121         adjust trailing edge of window on the left when dragging the
1122         vertical divider of the mode line.  (Bug#23690)
1124 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1126         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
1128         (Bug#23641)
1130 2016-06-19  Glenn Morris  <rgm@gnu.org>
1132         * test/automated/viper-tests.el (viper-test-undo-kmacro):
1133         Delete temp-file at end.
1135         * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
1137         * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
1139         * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table):
1140         Fix typo.  (Bug#23654)
1142 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
1144         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
1146 2016-06-19  Bill Wohler  <wohler@newt.com>
1148         Correct cl-flet usage (Bug#22317)
1150         * lisp/mh-e/mh-compat.el: Rename mh-cl-flet to mh-flet and convert alias to
1151         macro using patch from Katsumi Yamaoka <yamaoka@jpl.org>.
1152         * lisp/mh-e/mh-thread.el (mh-thread-set-tables):
1153         * lisp/mh-e/mh-show.el (mh-gnus-article-highlight-citation):
1154         * lisp/mh-e/mh-mime.el (mh-display-with-external-viewer):
1155         (mh-mime-display, mh-press-button, mh-push-button):
1156         (mh-display-emphasis): Call mh-flet instead of mh-cl-flet.
1158 2016-06-19  Bill Wohler  <wohler@newt.com>
1160         Release MH-E manual version 8.6
1162         * doc/misc/mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH):
1163         Update for release 8.6.
1165 2016-06-19  Mike Kupfer  <m.kupfer@acm.org>
1167         Update MH-E's documentation about HTML renderers
1169         * doc/misc/mh-e.texi (HTML): Remove the footnote with the minimum Gnus
1170         version (we are no longer trying to support multiple Emacs
1171         releases). Sort the table of HTML renderers by name (the previous
1172         ordering was based on a 10-year-old survey). Add shr and gnus-w3m to
1173         the table. Remove the entry for w3 (no longer available).  Update
1174         existing entries so that they are more consistent about what features
1175         are discussed, and to reflect recent testing (Debian 8). Small tweaks
1176         to existing text.
1178 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1180         Fx the we->the typo
1182         * doc/emacs/trouble.texi (Sending Patches):
1183         Fix the typo (bug#23657).
1185 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1187         Restore frames into the current display by default
1189         * lisp/desktop.el (desktop-restore-in-current-display):
1190         Default to t, not nil (Bug#23604).
1191         * etc/NEWS: Mention the change.
1193 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
1195         * lisp/recentf.el (recentf-open-files-item): Quick fix for (bug#22434).
1197         etc/TODO: Remove out-of-place issue
1199 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1201         Clarify doc string of 'file-name-sans-extension'
1203         * lisp/files.el (file-name-sans-extension, file-name-extension):
1204         Clarify in the doc strings what is the extension, and which
1205         leading period doesn't count.  (Bug#23643)
1207 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1209         Fix the MSDOS build
1211         * msdos/sed1v2.inp (PAXCTL_dumped, PAXCTL_notdumped): Define to
1212         empty, and remove the lines which use them in recipes, as that
1213         causes weird error message from Make and breaks the MSDOS build.
1215 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
1217         * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Call
1218         substitute-command-keys to undo help--docstring-quote. (Bug#23634)
1220 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1222         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
1224 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1226         Fix infloop in 'number-sequence'
1228         * lisp/subr.el (number-sequence): Avoid overflow leading to an
1229         infloop.  (Bug#23627)
1231         * test/automated/subr-tests.el (number-sequence-test): New test.
1233 2016-06-19  Glenn Morris  <rgm@gnu.org>
1235         * lisp/emacs-lisp/find-func.el (find-function-library):
1237         Update for symbol-function no longer erroring.  (Bug#23626)
1239 2016-06-19  Glenn Morris  <rgm@gnu.org>
1241         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
1242         (w32-get-valid-locale-ids): Improve declarations.
1244 2016-06-19  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1246         Correct old cell name unbinding when renaming cell.
1248         Bug is to unbind old cell names when renaming a cell with
1249         'makunbound'. when the old cell name is of A1 type, then
1250         'kill-local-variable' must be used instead, so that only the current
1251         spreadsheet is affected. When the old cell name is a renamed cell,
1252         then 'ses--unbind-cell-name' must be used in order to remove the old
1253         name from the name hashmap.
1255         * lisp/ses.el (ses-rename-cell): check consistency of cell symbol from
1256         text-property and from array object. Instead of 'makunbound', use
1257         either 'ses--unbind-cell-name' or 'kill-local-variable' depending on
1258         whether the cell old name is a named cell or an A1 type cell
1260 2016-06-19  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1262         Document problem: slow screen refresh on missing font.
1264         See discussion of bug#22519 for more on this.
1266 2016-06-19  Glenn Morris  <rgm@gnu.org>
1268         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
1270 2016-06-19  Glenn Morris  <rgm@gnu.org>
1272         * build-aux/gitlog-to-emacslog: Handle empty generated ChangeLog.
1274         This is relevant for M-x add-release-logs right after M-x authors.
1276 2016-06-19  Glenn Morris  <rgm@gnu.org>
1278         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
1280 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1282         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
1284 2016-06-19  Glenn Morris  <rgm@gnu.org>
1286         * admin/authors.el (authors): First update the ChangeLog.
1288         * admin/make-tarball.txt: Related updates.
1290 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1292         Rename vc-stay-local back to vc-cvs-stay-local
1294         * lisp/vc/vc-cvs.el (vc-cvs-stay-local): Rename back from
1295         vc-stay-local (bug#19548).  Improve the docstring.
1296         (vc-cvs-stay-local-p): Update accordingly.
1298 2016-06-19  Glenn Morris  <rgm@gnu.org>
1300         * doc/emacs/files.texi (Comparing Files):
1301         * doc/emacs/trouble.texi (Sending Patches): Fix external xrefs.
1303         * doc/misc/eww.texi (Advanced): Fix xref.
1305 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1307         Fix cross-references between manuals
1309         * doc/misc/viper.texi (Viper Specials):
1310         * doc/misc/url.texi (Tramp):
1311         * doc/misc/sem-user.texi (Smart Jump):
1312         * doc/lispintro/emacs-lisp-intro.texi (Finding More):
1313         * doc/misc/efaq.texi (Replacing text across multiple files): Fix
1314         cross-references between manuals.  (Bug#23612)
1315         * doc/lispintro/emacs-lisp-intro.texi (etags): Node deleted: no
1316         longer relevant to Emacs Lisp programming.
1318 2016-06-19  Glenn Morris  <rgm@gnu.org>
1320         * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to avoid ".".
1322         * admin/admin.el (add-release-logs): Also update etc/HISTORY.
1324 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1326         Avoid aborting due to errors in arguments of 'set-face-attribute'
1328         * src/xfaces.c (Finternal_set_lisp_face_attribute): Check the
1329         FRAME argument before using it.  This avoids gratuitous aborts in
1330         Emacs built with --enable-checking when the luser was unlucky
1331         enough to get the argument list in wrong order.
1333 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
1335         Add automated test for viper-tests.el
1337 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
1339         Fix viper undo breakage from undo-boundary changes
1341         * lisp/simple.el (undo-auto-disable-boundaries): New variable
1342         * lisp/emulation/viper-init.el (viper-undo-in-complex-command,
1343           viper-undo-needs-adjustment): Rename
1344           variable to reflect new purpose,
1345           (viper-buffer-undo-list-mark): Remove
1346         * lisp/emulation/viper-cmd.el (viper-set-complex-command-for-undo):
1347           Add undo using `undo-boundary', disable default undo-boundary
1348           addition.
1349         * lisp/emulation/viper-cmd.el
1350           (viper-complete-complex-command-for-undo,viper-adjust-undo):
1351           Change function name, remove old undo list manipulation.
1352         * lisp/emulation/viper-cmd.el (viper-undo,viper-repeat,
1353           viper-change-state-to-vi,viper-change-state):
1354           Update for function name change.
1356         Addresses Bug #22295
1358 2016-06-19  Kaushal Modi  <kaushal.modi@gmail.com>
1360         Fix reference to obsolete fn ps-eval-switch
1362         lpr-eval-switch is functionally the same as ps-eval-switch,
1363         which was obsoleted in 2cdeb903c57126d3ad5f0cbd72e182584b76ee29.
1364         So use that instead (Bug#19717).
1365         * lisp/printing.el (pr-switches): Use lpr-eval-switch instead of
1366         ps-eval-switch.
1368 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1370         Do not trash symlinks to init file
1372         If the user’s init file is a symbolic link, do not break the link
1373         when initializing the package system.  Problem reported by Jackson
1374         Hamilton (Bug#23050).
1375         * lisp/emacs-lisp/package.el (package--ensure-init-file):
1376         Bind find-file-visit-truename when visiting the init file, and
1377         save and restore the buffer name the way cus-edit does in a
1378         similar situation (Bug#454).
1380 2016-06-19  Alan Mackenzie  <acm@muc.de>
1382         Don't print the "decomposition" line for control chars in what-cursor-position
1384         This is a temporary workaround for bug #23594, where the decomposition line
1385         for linefeed corrupted the display on a Linux virtual terminal.
1387         * lisp/descr-text.el (describe-char): Remove `decomposition' from the list of
1388         character code properties printed for control characters.
1390 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1392         Bring back xterm pasting with middle mouse
1394         Problem reported by Jan Synáček.
1395         Solution suggested by Stefan Monnier (Bug#23519).
1396         * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
1397         (xterm--pasted-text): New decl.
1398         (isearch-xterm-paste): New function.
1399         * lisp/term/xterm.el (xterm--pasted-text): New function,
1400         taken from xterm-paste internals.
1401         (xterm-paste): Use it.
1403 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1405         Provide workaround for xftfont rendering problem
1407         * src/xftfont.c (syms_of_xftfont) <xft-font-ascent-descent-override>:
1408         New variable.
1409         (xftfont_open): Use it to work around problems with rendering some
1410         fonts.  (Bug#23360)
1412 2016-06-19  Jun Hao  <jun_hao@aol.com>
1414         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
1416         (Bug#17693)
1418 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1420         Mention GTK+ problems in etc/PROBLEMS
1422         * etc/PROBLEMS (GDK_SCALE, GDK_DPI_SCALE): Mention the possible
1423         problems this could create and the workaround.  (Bug#23587)
1425 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
1427         * lisp/emacs-lisp/package.el (package-refresh-contents):
1429         Don't change the value of `package-check-signature'.
1430         (package-check-signature): Use `epg-find-configuration'
1431         instead of `executable-find'.
1433 2016-06-19  Daiki Ueno  <ueno@gnu.org>
1435         Revert "epg: Add a way to detect gpg1 executable for tests"
1437         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
1439 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1441         Avoid errors with Czech and Slovak input methods
1443         * lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
1444         (slovak-prog-3): Remove the kp-* key bindings, they are not needed
1445         and cause errors in "C-u C-x =".
1446         * lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
1447         (czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
1448         (Bug#23559)
1450 2016-06-19  Daiki Ueno  <ueno@gnu.org>
1452         epg: Add a way to detect gpg1 executable for tests
1454         Fixes bug#23561.
1456         * test/automated/epg-tests.el
1457         (epg-tests-program-alist-for-passphrase-callback): New
1458         constant.
1459         (epg-tests-find-usable-gpg-configuration): New function,
1460         renamed from `epg-tests-gpg-usable'.  All callers changed.
1461         (epg-tests-gpg-usable): Remove.
1463         * lisp/epg-config.el (epg-config--program-alist): Factor out
1464         constructor element to...
1465         (epg-config--configuration-constructor-alist): ...here.
1466         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
1467         and add PROGRAM-ALIST argument.
1469 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
1471         * lisp/emacs-lisp/package.el: Fix free variable warnings.
1473         (package--with-response-buffer): Replace two usages of
1474         `macroexp-let2*' with `let'.
1476 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
1478         * lisp/emacs-lisp/package.el (package--with-response-buffer):
1480         Fix some macro locals leaking into body.  (Bug#22440)
1482         * test/automated/package-test.el (package-test-signed):
1483         Manually check all possible values of `package-check-signature'.
1485 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1487         Improve documentation of 'server-name'
1489         * doc/emacs/misc.texi (Emacs Server): Fix example of setting
1490         'server-name'.  Mention how to do that with daemon sessions.
1491         (Bug#23576)
1493 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1495         Modernize ASLR advice in etc/PROBLEMS
1497         * etc/PROBLEMS (Segfault during 'make'): Modernize advice for
1498         seccomp, Docker, and NetBSD (Bug#23529).
1500 2016-06-19  Juri Linkov  <juri@linkov.net>
1502         * lisp/char-fold.el: Rename from character-fold.el.
1504         * lisp/replace.el (replace-char-fold): Rename from replace-character-fold.
1505         * test/automated/char-fold-tests.el: Rename from character-fold-tests.el.
1506         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00529.html
1508 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
1510         Bump version to 25.0.94
1512         * README:
1513         * configure.ac:
1514         * msdos/sed2v2.inp: Bump Emacs version to 25.0.94.
1516 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
1518         etc/AUTHORS: Update the AUTHORS file
1520 2016-06-19  Alan Third  <alan@idiocy.org>
1522         Fix bug#23462: Crash when iconifying frame on OS X.
1524         * src/nsterm.m (x_iconify_frame): Block input while miniaturize is
1525         running.
1527 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1529         Avoid shrinking windows with Gtk+ 3.20.3
1531         Problem reported by Matthias Clasen (Bug#23144).
1532         This was fixed in a different way in master.
1533         Do not merge to master.
1534         * src/xterm.c (handle_one_xevent) [GTK_CHECK_VERSION (3, 20, 3)]:
1535         Do not call xg_frame_resized in the MapNotify case.
1537 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1539         Fix bug in default setting of 'ps-paper-type'
1541         * lisp/international/mule-cmds.el (set-locale-environment): Don't
1542         inherit the value of locale from previous examination of different
1543         environment variables, which didn't look at LC_PAPER, and so using
1544         that value would effectively ignore the setting of LC_PAPER.
1545         (Bug#23544)
1547 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
1549         Properly reject malformed or empty package sigs
1551         Problem report and fix by Lizzie Dixon (Bug#23513).
1552         * lisp/emacs-lisp/package.el (package--check-signature-content):
1553         Report an error if no good signatures OR if a fatal error.  Not AND.
1555 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1557         Remove buggy non-native image scrolling
1559         This never worked, and could cause infinite recursion.
1560         Problem reported by Glenn Morris (Bug#22465).
1561         * lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
1562         All uses removed.
1564 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1566         * doc/misc/texinfo.tex: Sync from gnulib.
1568 2016-06-19  Glenn Morris  <rgm@gnu.org>
1570         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
1571         (find-alias-regexp): Fix :version.
1573 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1575         Do not mistake colon at the end of regexp for slash symbol
1577         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
1578         Check the parse state in the "Symbols with special characters"
1579         rule (bug#23515).
1581 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1583         Make package-install-from-buffer not move point
1585         * lisp/emacs-lisp/package.el (package-install-from-buffer):
1586         Use save-excursion here (bug#22616).
1588 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1590         Redo the fix for bug#21839
1592         * lisp/help.el (help-add-fundoc-usage): Undo the previous change.
1593         (help--make-usage-docstring): Escape newlines when printing.
1595         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
1596         Ditto (bug#21839).
1598 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1600         Don't treat JS spread as contination method call
1602         * lisp/progmodes/js.el (js--indent-operator-re):
1603         Allow only one dot (bug#23492).
1605         * test/indent/js.js (default): Add a corresponding example.
1607 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1609         Allow newlines inside cl function arglists
1611         * lisp/help.el (help-add-fundoc-usage): Allow newlines inside
1612         ARGLIST (bug#21839).
1614 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1616         Publicize cl--generic-all-functions
1618         * lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
1619         Rename from cl--generic-all-functions.  Update both callers.
1621         * lisp/cedet/semantic/db-el.el
1622         (semanticdb-find-tags-external-children-of-type-method):
1623         And use it here (bug#23042).
1625 2016-06-19  Alan Mackenzie  <acm@muc.de>
1627         Add some "safe-local-variable" declarations for compatibility with master.
1629         These enable C files from the master repository to be visited in Emacs 25
1630         without generating irritating questions about configuration variable safety.
1632         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
1633         functions.
1634         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
1635         safe-local-variable property c-string-list-p.
1636         (c-macro-names-with-semicolon): give the safe-local-variable property
1637         c-string-or-string-list-p.
1639 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1641         Fix doc string in `insert'
1643         * src/editfns.c (Finsert_and_inherit): The before-insertion
1644         markers do not move.
1645         (Finsert): Ditto.
1647 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1649         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
1651 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1653         Say 'All results processed' at the end
1655         * lisp/progmodes/xref.el (xref--query-replace-1):
1656         Say 'All results processed' at the end if the user hadn't
1657         cancelled the process (bug#23284).
1659 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1661         Document automatic adjustment of process' logical window dimensions
1663         * doc/lispref/processes.texi (Process Buffers): Document
1664         'set-process-window-size' and
1665         'window-adjust-process-window-size-function'.
1667         * etc/NEWS: Mention the new functionality and variable.
1669         * src/process.c (Fset_process_window_size): Improve the doc string.
1671 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
1673         tramp-sh.el: Work around a stat bug (backport from master)
1675         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
1676         stat versions which produce shell quoted output.  See also
1677         coreutils Bug#23422.
1679         (cherry picked from commit 6aad36ace9953b9672b13be68416d205532d5e59)
1681 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1683         Doc fixes for fclist and grep
1685         A newline is needed between two fc-list calls.
1686         egrep and fgrep have been withdrawn from POSIX,
1687         so document grep -E and grep -F instead.
1689 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1691         Minor doc fixes for quoting
1693         * doc/lispref/control.texi (Signaling Errors):
1694         * doc/lispref/display.texi (Displaying Messages):
1695         Don’t say that formats “generate”.  Try to word more clearly.
1696         * etc/NEWS: Coalesce near-duplicate entries.
1698 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1700         `nreverse' the marker pairs list
1702         * lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
1703         the marker pairs list for each buffer before returning.
1705 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1707         Use save-excursion in xref-location-marker more
1709         * lisp/progmodes/elisp-mode.el (xref-location-marker): Use
1710         save-excursion, in order not to alter the value of point if the
1711         buffer is currently open in the background (problem reported by
1712         Robert Weiner).
1714         * lisp/progmodes/etags.el (xref-location-marker): Same.
1716 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1718         shell-quote-argument DIR when appropriate
1720         * lisp/progmodes/project.el (project-file-completion-table):
1721         `shell-quote-argument' DIR as well.
1723         * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
1724         `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
1725         pointing out the problem.  Assert that DIR doesn't start with `~'.
1727 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1729         Rework xref-query-replace-in-results
1731         * lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
1732         all xrefs from the buffer first, then delegate most of the
1733         processing to the value returned by xref--buf-pairs-iterator.
1734         (xref--buf-pairs-iterator): New function.  Return an "iterator"
1735         which partitions returned markers into buffers, and only processes
1736         markers from one buffer at a time.  When an xref is out of date,
1737         skip it with a message instead of signaling error (bug#23284).
1738         (xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
1739         CR from both strings before comparing.
1740         (xref--query-replace-1): Remove the variable current-buf, no need
1741         to track it anymore.  Simplify the filter-predicate and search
1742         functions accordingly.  Iterate over buffer-markers pairs returned
1743         by the iterator, and call `perform-replace' for each of them.  Use
1744         multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
1745         time after the first, in order not to jump between windows.
1747         * test/automated/xref-tests.el
1748         (xref--buf-pairs-iterator-groups-markers-by-buffers-1)
1749         (xref--buf-pairs-iterator-groups-markers-by-buffers-2)
1750         (xref--buf-pairs-iterator-cleans-up-markers): New tests.
1752 2016-06-19  Juri Linkov  <juri@linkov.net>
1754         * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
1756         to set minibuffer-local value of text-property-default-nonsticky.
1757         (Bug#23418, bug#23127)
1759 2016-06-19  Stephen Berman  <stephen.berman@gmx.net>
1761         Fix todo-mode bug involving archived items (bug#23447)
1763         * lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
1764         from Todo Categories mode to a category with only archived items
1765         and todo-skip-archived-categories is non-nil, make sure the
1766         archive file buffer is in Todo Archive mode to prevent
1767         todo-category-select from raising an error, and don't set
1768         todo-current-todo-file, since that makes todo-show display the
1769         archived category.  Remove a no-op call to kill-buffer, which is
1770         already called in todo-insert-category-line.
1772 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1774         Handle "empty line" regexp in xref searches
1776         * lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
1777         match if re-search-forward doesn't move point (bug#23426).
1779         * test/automated/xref-tests.el
1780         (xref-collect-matches-finds-an-empty-line-regexp-match):
1781         Uncomment test.
1783 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1785         Add tests for xref-collect-matches
1787         * test/automated/xref-tests.el: New file.  Add tests for
1788         xref-collect-matches.
1790 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1792         Use grep-find-ignored-directories instead of vc-directory-exclusion-list
1794         * lisp/dired-aux.el (dired-do-find-regexp):
1795         Use grep-find-ignored-directories instead of
1796         vc-directory-exclusion-list.  The result should be functionally
1797         similar (the former uses the latter as the default value), but it
1798         should be more consistent and appropriate WRT user
1799         customizations.
1800         (dired-do-find-regexp-and-replace): Update the docstring.
1802         * lisp/dired.el: Update the corresponding autoloads.
1804         * doc/emacs/dired.texi (Operating on Files): Update the
1805         documentation accordingly.
1807 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1809         Clear buffer-undo-list when showing xrefs
1811         * lisp/progmodes/xref.el (xref--show-xref-buffer): Clear
1812         buffer-undo-list and temporarily bind it to t while rendering the
1813         buffer contents.
1815 2016-06-19  Alan Mackenzie  <acm@muc.de>
1817         Note the quote translation in `message' in section "incompatible changes".
1819         * etc/NEWS: Note that `message' translates quotes, that the translation
1820         cannot be disabled, and that `format' can be used to get the old
1821         behavior back.
1823 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1825         * etc/NEWS: Mention (message "%s" (format ...)).
1827 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1829         (Common Keywords): Correct what missing :group means
1831         * doc/lispref/customize.texi (Common Keywords): Correct what
1832         missing :group means.
1834 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1836         Improve documentation of Dired's 'A' and 'Q' commands
1838         * lisp/dired-aux.el (dired-do-find-regexp)
1839         (dired-do-find-regexp-and-replace): Mention
1840         'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
1841         also the fact that REGEXP should be palatable by Grep.  (Bug#23426)
1842         * lisp/dired.el: Update the corresponding autoload forms.
1844         * doc/emacs/dired.texi (Operating on Files): Mention
1845         'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
1846         (Bug#23429)
1848 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1850         Doc fixes for quoting
1852         * doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
1853         * doc/lispref/control.texi, doc/lispref/display.texi:
1854         * doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
1855         * src/callint.c, src/doprnt.c, src/editfns.c:
1856         Document quoting a bit more systematically.
1857         Problem reported by Alan Mackenzie (Bug#23425).
1859 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1861         posnp doc clarification
1863         * lisp/subr.el (posnp): Mention that a posn object is returned
1864         from `event-start' (bug#18211).
1866 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1868         Mention what a missing :group does
1870         * doc/lispref/customize.texi (Common Keywords): Document that
1871         a missing :group reuses the group from the preceding item (bug#21601).
1873 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1875         Fix documentation of dired-aux search/replace commands
1877         * lisp/dired-aux.el (dired-do-find-regexp)
1878         (dired-do-find-regexp-and-replace): Doc fixes.  (Bug#23429)
1879         * lisp/dired.el: Update the corresponding autoload forms.
1881 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1883         Fix quoting problem in cc-engine debug message
1885         * lisp/progmodes/cc-engine.el (c-replay-parse-state-state):
1886         Use "%s" format to pass through ‘'’ unscathed (Bug#23425), and
1887         likewise for ‘`’, and ‘%’.
1889 2016-06-19  Philipp Stephani  <phst@google.com>
1891         Add electric-quote-string unit test
1893         * test/automated/electric-tests.el (electric-quote-string): New test.
1895 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1897         Don’t electrically quote ‘'’ in Python
1899         Problem reported by Philipp Stephani (Bug#23387).
1900         * lisp/electric.el (electric-quote-post-self-insert-function):
1901         Do not requote a string starter or ender.
1903 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
1905         `nreverse' Grep hits before passing them to xref--convert-hits
1907         * lisp/progmodes/xref.el (xref-collect-matches): `nreverse' hits
1908         before passing them to xref--convert-hits.  Fixes a regression
1909         from cc0b7132.
1911 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1913         * doc/misc/texinfo.tex: Sync from gnulib.
1915 2016-06-19  Juri Linkov  <juri@linkov.net>
1917         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
1919         (Bug#23410)
1921 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
1923         tramp.texi: Revert last change due to backward compatibility
1925         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
1927 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1929         cua-prefix-override-inhibit-delay doc fix
1931         * lisp/emulation/cua-base.el
1932         (cua-prefix-override-inhibit-delay): Typo fix in doc string
1933         (bug#23401).
1935         (cherry picked from commit 2b4c099822811ede787fc6e575bfbb17b3cc0681)
1937 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1939         global-eldoc-mode doc fix
1941         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
1942         specific about what "applicable" means (bug#23071).
1944         (cherry picked from commit 25e95b5dd8cd92e03788e589bf99a4b399f03114)
1946 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1948         normal-top-level-add-subdirs-to-load-path doc fix
1950         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
1951         Doc fix (bug#21962).
1953         (cherry picked from commit 28aaa6d20586e3330a23b017a65e56dd6461c003)
1955 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1957         isearch-search-fun-function doc tweak
1959         * lisp/isearch.el (isearch-search-fun-function): Mention what
1960         the STRING parameter is (bug#21552).
1962         (cherry picked from commit cafc2a5940cdc523cfea6dcf1cf540f48367c62a)
1964 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1966         Fill some imenu--index-alist doc lines
1968         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
1970         (cherry picked from commit 4b7bb8f596550628eaa83b82c0f7eabe59a84964)
1972 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1974         Fmarker_position doc string clarification
1976         * src/marker.c (Fmarker_position): Clarify the doc string
1977         (bug#21231).
1979         (cherry picked from commit eeac7c57273cec3f9408b18392dd2bafe3be4450)
1981 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1983         Further define-obsolete-* doc fixups
1985         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
1986         Fix up last change.
1987         (define-obsolete-variable-alias): Ditto.
1989         (cherry picked from commit 28e9f4390d8391c2c36be4ef515cf3a2c679a5a5)
1991 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
1993         Describe WHEN in all the define-obsolete- macros
1995         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
1996         Say more verbosely what WHEN is (bug#21225).
1997         (define-obsolete-function-alias): Describe the WHEN parameter.
1998         (define-obsolete-variable-alias): Ditto.
2000         (cherry picked from commit 247c388f160581d207e41ca5926990bbf69d4a0f)
2002 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2004         Mention with-silent-modifications in the lispref manual
2006         * doc/lispref/text.texi (Changing Properties): Document
2007         with-silent-modifications (bug#21171).
2009         (cherry picked from commit fcd0d854eef6e439d51e8f07cf734d5e34e502b3)
2011 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2013         with-silent-modifications doc clarification
2015         * lisp/subr.el (with-silent-modifications): Rearrange the doc
2016         string a bit so that the most pertinent information is at the
2017         top (bug#21171).
2019         (cherry picked from commit e0e70f030e69d9696a963a86f5f7caaff4df06eb)
2021 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2023         clear-visited-file-modtime doc string fix
2025         * lisp/files.el (clear-visited-file-modtime): Fix possibly
2026         confusing doc string wording (bug#21169).
2028         (cherry picked from commit 1aaeaf1450756a71c9254a2a5b174c72084ca67a)
2030 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2032         Document mode mode line variables
2034         * doc/lispref/modes.texi (Mode Line Variables): Document
2035         `mode-line-front-space, `mode-line-misc-info',
2036         `mode-line-end-spaces' (bug#21014).
2038         (cherry picked from commit bf7a630b0a5d3900f2afb0e7a881ce62e2b9f935)
2040 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2042         Add a cross ref to Optional Mode Line
2044         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
2045         reference to the Emacs mode line node that explains things
2046         like `display-time-string' (bug#21002).
2048         (cherry picked from commit a3151a28789f413af73b14fbba557b2a587fca53)
2050 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2052         Add a doc string to display-time-string
2054         * lisp/time.el: Add a doc string to `display-time-string',
2055         because it's referred to in the manual, and is too mysterious
2056         otherwise (bug#21002).
2058         (cherry picked from commit 45559c584e5a4ddeed1539b028b50b95baa372f8)
2060 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2062         custom-buffer-style doc fix
2064         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
2065         value (bug#20724).
2067         (cherry picked from commit bcf0291d0cd02095b0809b1eb91f1e5c5c2ac5e3)
2069 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2071         Rearrange the doc of query-replace slightly
2073         * lisp/replace.el (query-replace): Move the mention of the
2074         interactive prefix arg earlier so that users can find it
2075         (bug#20654).
2077         (cherry picked from commit bcc10761c3b968fa4534718116a0a601ed7da389)
2079 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2081         apropos-print doc fix
2083         * lisp/apropos.el (apropos-print): Document the undocumented
2084         parameters (bug#20520).
2086         (cherry picked from commit 0714d7387812a151f59993ac77c7321724ef79b1)
2088 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2090         completion-table-with-predicate doc string fix
2092         * lisp/minibuffer.el (completion-table-with-predicate): t ->
2093         non-nil in the doc string (bug#20460).
2095         (cherry picked from commit b6a4d162208f239bc7804696d611ae52c686f138)
2097 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2099         Fill the completion-table-with-predicate doc string
2101         * lisp/minibuffer.el (completion-table-with-predicate): Fill
2102         the doc string (bug#20460).
2104         (cherry picked from commit 207a31432c1ed8b548003a3e4af32c49aa3441e9)
2106 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2108         replace-match-maybe-edit doc clarification
2110         * lisp/replace.el (replace-match-maybe-edit): Say what
2111         MATCH-DATA is (bug#20304).
2113         (cherry picked from commit 139874ba53c2e2de9868f8e5234d6ea2bcb97af8)
2115 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2117         add-timeout doc fix
2119         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
2120         value (bug#20181).
2122         (cherry picked from commit 921b40476f597c84d7c34aa289cd43caeb389c4a)
2124 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2126         Extremely minor doc fix in Choosing Window
2128         * doc/lispref/windows.texi (Choosing Window): There's only one
2129         action alist, I think (bug#20158).
2131         (cherry picked from commit 6c7e7f421d02d9290d6d1d85320737371160aef7)
2133 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2135         Transform mentions of `eval-after-load' to `with-eval-after-load'
2137         * doc/lispref/loading.texi (Hooks for Loading): Update text to
2138         not mention `eval-after-load' (bug#20038).
2140         (cherry picked from commit 9392193be56eebdfac702a0bbb5e954088371c7a)
2142 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2144         cursor-type doc fix
2146         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
2147         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
2149         (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
2151 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2153         Add a link from Tool Bar to Images
2155         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
2156         Images node (bug#19722).
2158         (cherry picked from commit da5d0786163a91400eced4fddba4a92b652458d1)
2160 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2162         (default-mode-line-format): More explicit obsolete info
2164         * lisp/subr.el (default-mode-line-format): Be more explicit in
2165         how default values are now handled (bug#19424).
2167         (cherry picked from commit 9dc5f6d830e72420dc4d41c8f6ca1ca6b28609c0)
2169 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2171         Fcompare_buffer_substrings doc string clarification
2173         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
2174         doc string clarification (bug#19255).
2176         (cherry picked from commit aa692acbb598a1cc8219ed7a87dde25fd7626ba5)
2178 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2180         insert-file-contents-literally doc fix
2182         * lisp/files.el (insert-file-contents-literally): Say that the
2183         parameters are explained in the other function (bug#18317).
2185         (cherry picked from commit b6481b19bc9592492b1f70dfecb4de6256f537fe)
2187 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2189         Fix custom types for cursor-in-non-selected-windows
2191         * lisp/cus-start.el (standard): Use the same custom types for
2192         cursor-in-non-selected-windows as for cursor-type (bug#19214).
2194         (cherry picked from commit b66bc0cced786e0320e1c3b0758bd3c434d4e8b5)
2196 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2198         Doc clarification to mwheel-scroll
2200         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
2201         does not apply to Windows (bug#19209).
2203         (cherry picked from commit 696052b5fdfbc5c25dff3c6b081aebe70f6d06c7)
2205 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2207         Clarify the doc of eval-expression-print-format
2209         * lisp/simple.el (eval-expression-print-format): Doc
2210         clarification (bug#19114).
2212         (cherry picked from commit cd193a871f5a8e1c81ba86fc398ac382fa814383)
2214 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2216         Explictly explain that package-initialize loads the packages
2218         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
2219         in saying that `package-initialize' obviates adjusting the
2220         path or requiring the packages, as this is a question that
2221         apparently comes up now and then (bug#18829).
2223         (cherry picked from commit 619e0aedb2f3dbfe6821ac34e2d25b4e5c181117)
2225 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2227         Have the doc strings of `load-path' and `require' mention each other
2229         * src/fns.c (Frequire): Mention `load-path' and fill the doc
2230         string (bug#18829).
2232         * src/lread.c (syms_of_lread): Mention that `require' uses
2233         `load-path'.
2235         (cherry picked from commit 3eca9a03816f95da0030665223c0b5262f223ba7)
2237 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2239         Doc fix for insert-pair-alist
2241         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
2242         COMMAND-CHAR is (bug#18809).
2244         (cherry picked from commit 2824c587e9749a8f350f1d3dddd65176b4561dcb)
2246 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2248         Move doc of backup-directory-alist to the Backup node
2250         * doc/emacs/files.texi (Backup): Move the documentation of
2251         `backup-directory-alist' here from the "Single or Numbered
2252         Backups" node, because it doesn't seem to have much to do with
2253         numbering (bug#18692).
2255         (cherry picked from commit e77b8d84b4161f2cf8720dec2bf44a3e50134398)
2257 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2259         Tiny doc clarification for create-fontset-from-fontset-spec
2261         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
2262         Clarify what the optional part is (bug#18686).
2264         (cherry picked from commit c05d186455ce9907eeb6b21ea4227e453996c681)
2266 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2268         Fill the doc string of font-lock-keywords
2270         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
2271         reorganise some explanations (bug#21427).
2273         (cherry picked from commit c05716d3a26ea7518b89eacfccaf70c9d0731df7)
2275 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2277         Doc fix for font-lock-remove-keywords
2279         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
2280         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
2282         (cherry picked from commit bc00dcf12983cd399127d0eea39647f29778eb02)
2284 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2286         Clarify whitespace-style doc string
2288         * lisp/whitespace.el (whitespace-style): Doc clarification
2289         (bug#18296).
2291         (cherry picked from commit d96c720d0cca7c9ffbb4c712ad315bb707d6625c)
2293 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2295         Doc fixed for next-error-buffer-p
2297         * lisp/simple.el (next-error-buffer-p): Clarify doc string
2298         (bug#18202).
2300         (cherry picked from commit a10eb168cc96db9f0dab2d75550cbd8f08be2363)
2302 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2304         Tiny doc fix
2306         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
2307         (and fill) (bug#18201).
2309         (cherry picked from commit 2ef0040e2363a669d9b93df935d31c98fa130132)
2311 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2313         Doc fix
2315         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
2316         slightly (bug#18092).
2318         (cherry picked from commit 6b769c81d024f7eeb90b167e7df6f87d859614d4)
2320 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2322         delsel doc touch ups
2324         * lisp/delsel.el (delete-selection-helper): Use non-nil
2325         instead of t and clarify function return values (bug#18089).
2327         (cherry picked from commit d7a5b5be9a5869bcd233434ec3103dd1976d7df7)
2329 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2331         Doc fixes for menu-bar.el
2333         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
2334         REGION parameter (bug#18028).
2335         (clipboard-kill-region): Ditto.
2337         (cherry picked from commit 33d2c67bff0992ecbc0fe38556683242b9d1a4ae)
2339 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2341         Doc fix
2343         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
2345         (cherry picked from commit 6baca4911ec901579749dbf7596011d90fea3781)
2347 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2349         Minor doc clarification
2351         * lisp/subr.el (y-or-n-p): Document the return value from "n"
2352         (bug#18024).
2354         (cherry picked from commit 5d1f3192d484edee92caa46cd7d699da3e920259)
2356 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2358         Fill font-lock-mode doc string
2360         * lisp/font-core.el (font-lock-mode): Fill the text to make it
2361         narrower (bug#18008).
2363         (cherry picked from commit 27abf372836532c57be2e9e3ed23413729cc07fc)
2365 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2367         Wrap the auto-generated doc string
2369         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
2370         string to make it less likely that we get overlong lines
2371         (bug#17999).
2373         (cherry picked from commit 323b69664914d687fd4b48593479cea223dfbcb4)
2375 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2377         Clarify hi-lock-find-patterns
2379         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
2380         (bug#17989).
2382         (cherry picked from commit 552e90ce7dff3a7107243fdf71c4de3af443e13a)
2384 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2386         Add a doc string to `winner-mode'
2388         * lisp/winner.el (winner-mode): Add a doc string based on the
2389         comments in the file (bug#17716).
2391         (cherry picked from commit 2c3ab9b6e39a3d600e7d82deacc24effaec051bb)
2393 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2395         Doc fix for align-newline-and-indent
2397         * lisp/align.el (align-newline-and-indent): Mention that
2398         alignment is done by `align' (bug#17707).
2400         (cherry picked from commit 340a224ec3e01706112a07164da9a9f3f369a5aa)
2402 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2404         Doc fix for `kbd'
2406         * lisp/subr.el (kbd): Describe more fully the format of the
2407         parameter (bug#17039).
2409         (cherry picked from commit 3a33afe25d8518f194fa4706eaccdb2a786a0348)
2411 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2413         Doc tweak
2415         * lisp/simple.el (use-empty-active-region): Doc tweak.
2416         There's only one region (bug#16513).
2418         (cherry picked from commit 35fb7897f161d5e5a87e039dc1e427094640b0c8)
2420 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2422         Link from (emacs)Exiting to (lisp)Killing Emacs
2424         * doc/emacs/entering.texi (Exiting): Link to the lispref
2425         manual for further customizations (bug#15445).
2427         (cherry picked from commit bc5f27aa099cdde02ca66e71501b89300685ab28)
2429 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2431         find-lisp doc touchups
2433         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
2434         string (bug#15047).
2435         (find-lisp-find-files): Clarify doc.
2437         (cherry picked from commit e4c7657b0d1a31d64ca24bc64b5480cd7687e332)
2439 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2441         Don't have the manual claim that it lists all CL incompatibilities
2443         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
2444         incompatibilities isn't exhaustive, so don't say that it is
2445         (bug#15171).
2447         (cherry picked from commit fb685bc91a72508c97ce7e30f970d4157677f371)
2449 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2451         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
2453         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
2454         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
2455         (bug#14554).
2457         (cherry picked from commit e4c26271f2c2fe08f8490e25c63a436ab2a804ca)
2459 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2461         Doc string change to enable-recursive-minibuffers
2463         * src/minibuf.c (syms_of_minibuf): Mention
2464         minibuffer-depth-indicator-mode in the doc string to
2465         enable-recursive-minibuffers (bug#14147).
2467         (cherry picked from commit 23ba488a5e8290c4de91e0ff4161641efa364c0d)
2469 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2471         Clarify the `interactive' doc string slightly
2473         * src/callint.c (Finteractive): Clarify the doc string slightly
2474           (bug#14577).
2476         (cherry picked from commit cd993be60da2d12db0d390001373d486c1091c47)
2478 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2480         Clarify some doc strings
2482         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
2483         Clarify doc string (bug#8693).
2484         (syntax-propertize): Clarify doc string.
2486         (cherry picked from commit ad3ef417f3c40f086de9c547d6272e5685595e42)
2488 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2490         Add some concept index entries for custom types
2492         * doc/lispref/customize.texi (Composite Types): Add concept
2493         index entries for restricted-sexp, radio and choice (bug#7385).
2495         (cherry picked from commit 388bb723fa078158d3148de05e942f9c01e95dd8)
2497 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2499         Mention `lisp-indent-function' in the lispref manual
2501         * doc/lispref/macros.texi (Indenting Macros): Mention
2502         `lisp-indent-function' (bug#3393).
2504         (cherry picked from commit a1627691a896b2afaa264f93534178bc763564c9)
2506 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
2508         Clarify doc string of internal compilation function
2510         * lisp/progmodes/compile.el (compilation-get-file-structure):
2511         Clarify doc string (bug#3137).
2513         (cherry picked from commit 123191decb7428db3b32a6c01631fa755088393a)
2515 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2517         Use ‘T *restrict’ proto, not ‘T[restrict]’
2519         * src/fns.c (sort_vector_copy): Use a different way to attempt to
2520         work around GCC 3.0-and-earlier incompatibility with C99, one that
2521         does not have problems with modern non-GCC compilers.
2523 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2525         Fix documentation of 'url-retrieve-synchronously'
2527         * doc/misc/url.texi (Retrieving URLs): Update argument list of
2528         'url-retrieve-synchronously'.  (Bug#23411)
2530 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2532         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
2534 2016-06-19  Leo Liu  <sdl.web@gmail.com>
2536         Fix last change to isearch-update (bug#23406)
2538         * lisp/isearch.el (isearch-update): Remove (setq cursor-sensor-inhibit
2539           nil) ie remove the original (unless (boundp 'cursor-sensor-inhibit)
2540           ...) form.
2542 2016-06-19  Leo Liu  <sdl.web@gmail.com>
2544         Autoload cursor-sensor-inhibit (bug#23406)
2546         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-inhibit): Autoload.
2547         * lisp/isearch.el (isearch-update): Remove boundp check.
2549 2016-06-19  Phillip Lord  <phillip.lord@newcastle.ac.uk>
2551         org-map-entries: Fix org-agenda-prepare-buffers call
2553         * lisp/org/org.el (org-map-entries): Check that buffer-file-name is non-nil
2554           before passing to org-agenda-prepare-buffers.
2556         This is a backport of commit 44c8cd7136e3fcd1e6bfa08895cac437b7a691fa
2557         from upstream org-mode. Addresses bug #23365.
2559 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2561         Followup for last commit in the user manual
2563         * doc/emacs/basic.texi (Moving Point): Clarify that
2564         set-goal-column has buffer-local effect.  (Bug#23405)
2566 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2568         Improve doc string of 'set-goal-column'
2570         * lisp/simple.el (set-goal-column): Doc fix.  (Bug#23405)
2572 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2574         Fix the MSDOS build
2576         * config.bat:
2577         * msdos/sedlisp.inp:
2578         * msdos/sedlibmk.inp:
2579         * msdos/sedleim.inp:
2580         * msdos/sedadmin.inp:
2581         * msdos/sed6.inp:
2582         * msdos/sed3v2.inp:
2583         * msdos/sed2v2.inp:
2584         * msdos/sed1v2.inp: Adapt to Emacs 25.
2586         * src/process.c (remove_slash_colon): Move out of "#ifdef
2587         subprocesses" block, as it its called unconditionally.  Move
2588         ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
2589         reference variables only defined in that block.
2590         * src/msdos.h: Provide prototypes for IT_set_frame_parameters,
2591         faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
2592         dos_keysns, dos_keyread, run_msdos_command, and
2593         syms_of_win16select, to avoid compiler warnings.
2594         * src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
2595         'environ', depending on the DJGPP version.
2596         Remove declarations of externally-visible Lisp objects, like
2597         Qbackground_color and Qreverse.
2598         (run_msdos_command): First argument is not signed, not unsigned.
2599         Use SYS_ENVIRON.
2600         (sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
2601         the latter doesn't work when 'time_t' is an unsigned data type.
2602         This caused idle timers to behave incorrectly: they only fired
2603         after a keyboard input event.
2604         * src/frame.c (adjust_frame_size) [MSDOS]: Account for
2605         FRAME_TOP_MARGIN that isn't counted in the frame's number of
2606         lines, but dos_set_window_size needs it to be added.
2607         * src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
2608         * src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
2609         that works around compilation errors with older GCC versions.
2610         * src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
2611         Objects.
2612         * src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
2613         no-op implementations for 'lock_file' and 'unlock_file'.
2614         (Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
2615         ifdefs in all users of filelock.c functionality.
2616         * src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
2617         * src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
2618         warnings.
2619         * src/dosfns.h: Provide prototypes for dos_cleanup,
2620         syms_of_dosfns, and init_dosfns.
2621         * src/deps.mk (atimer.o): Depend on msdos.h.
2622         (emacs.o): Depend on dosfns.h.
2623         * src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
2624         warnings.
2626         * lisp/window.el (window--adjust-process-windows): Skip the body
2627         if 'process-list' is not available.  This avoids failure to start
2628         up on MS-DOS.
2629         * lisp/vc/diff.el (diff-no-select): Test 'make-process', not
2630         'start-process', as the latter is now available on all platforms.
2631         * lisp/textmodes/ispell.el (ispell-async-processp): Replace
2632         'start-process' with 'make-process' in a comment.
2633         * lisp/term/internal.el (IT-unicode-translations): Modify and add
2634         a few translations to display Info files with Unicode markup.  Fix
2635         an ancient off-by-one mismatch error with Unicode codepoints.
2636         * lisp/progmodes/compile.el (compilation-start): Test
2637         'make-process', not 'start-process', as the latter is now
2638         available on all platforms.
2639         * lisp/man.el (Man-build-man-command, Man-getpage-in-background):
2640         Test 'make-process', not 'start-process', as the latter is now
2641         available on all platforms.
2642         * lisp/international/mule-cmds.el (set-coding-system-map): Test
2643         'make-process', not 'start-process', as the latter is now
2644         available on all platforms.
2645         * lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
2646         fix.
2647         (eshell-execute-pipeline): Test 'make-process', not
2648         'start-process', as the latter is now available on all platforms.
2650 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
2652         Remove \= from format string (bug#18190)
2654         * lisp/emacs-lisp/eieio.el (defclass): Remove \= from format
2655         string.
2657 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2659         Fix variable-pitch font on MS-Windows
2661         * lisp/faces.el (variable-pitch) [w32]: Name a variable-pitch font
2662         explicitly, to avoid Emacs picking up a bold-italic variant on
2663         some MS-Windows systems.  See this thread for details:
2664         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00746.html.
2666 2016-06-19  Alan Mackenzie  <acm@muc.de>
2668         Restore follow-scroll-up/down to scrolling by the combined size of all windows
2670         Also rename the current follow-scroll-up/down functions to
2671         follow-scroll-up-window and follow-scroll-down-window.  These scroll by the
2672         height of the current window.
2674         This fixes bug #23347.
2676         * lisp/follow.el (follow-mode): Tweak the doc string.
2677         (follow-scroll-up-arg, follow-scroll-down-arg): new functions, extracted from
2678         follow-scroll-up/down.
2679         (follow-scroll-up-window, follow-scroll-down-window): Functions renamed from
2680         follow-scroll-up/down.
2681         (follow-scroll-up, follow-scroll-down): Restore the historic functionality.
2683 2016-06-19  Alan Mackenzie  <acm@muc.de>
2685         Revert unneeded change which harms syntactic parsing.  This fixes bug #23308.
2687         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache): User
2688         c-state-old-cpp-end as an argument to c-with-all-but-one-cpps-commented-out
2689         regardless of the value of `here'.
2691 2016-06-19  Alan Mackenzie  <acm@muc.de>
2693         Correct indentation of ids in a C++ enum after a protection keyword.
2695         Also correct the misfontification of the last enum identifier.
2697         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): setq
2698         c-last-identifier-range to nil to ensure that only types recognized by this
2699         macro are set for fontification as types.
2700         (c-backward-typed-enum-colon): Function renamed from
2701         c-backward-colon-prefixed-type.  On finding a colon in the backward search,
2702         check it is preceded by an identifier rather than a keyword.
2704 2016-06-19  Glenn Morris  <rgm@gnu.org>
2706         * lisp/window.el (window--process-window-list): No-op if no processes.
2708         This avoids an issue with save-selected-window (from walk-windows)
2709         failing if frame.el is not loaded, eg if the terminal is resized
2710         during startup of a -nw CANNOT_DUMP build.  (Bug#23369).
2712 2016-06-19  Paul Eggert  <eggert@penguin.cs.ucla.edu>
2714         Port dumping to NetBSD with PaX
2716         Problem reported by Thomas Klausner (Bug#23371).
2717         * configure.ac (PAXCTL_dumped, PAXCTL_notdumped): New vars.
2718         Set them to setfattr and/or paxctl commands appropriate for
2719         GNU/Linux and/or NetBSD; the latter prefers paxctl +a.  Search
2720         for paxctl only if setfattr is not found.
2721         * src/Makefile.in (PAXCTL_dumped, PAXCTL_notdumped):
2722         New vars, replacing PAXCTL_if_present and SETFATTR_if_present.
2723         All uses changed.
2725 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
2727         Don't mistake `for' inside a function for a part of array comprehension
2729         * lisp/progmodes/js.el (js--indent-in-array-comp): Also check the
2730         depth in parens between the bracket and `for' (bug#23391).
2732         * test/indent/js.js: Add a corresponding example.
2734 2016-06-19  Anders Lindgren  <andlind@gmail.com>
2736         Fix bug#22891: wrong terminal width when a fringe width is zero.
2738         When either fringe width is zero, Emacs reserved one column for a
2739         continuation glyph. Terminal windows does not take this into
2740         account when the frame is resized.
2742         * lisp/window.el (window-adjust-process-window-size): Use
2743         `window-max-chars-per-line' instead of `window-body-width'.
2744         * lisp/term.el (term-window-width): Remove function. (It does the
2745         same as `window-max-chars-per-line' but without recent bug fixes.)
2746         (term-mode): Use `window-max-chars-per-line' instead of
2747         `term-window-width'.
2749         Backport
2751         (cherry picked from commit 5b5403289888efe8783ae6a405845b925f544ec1)
2753 2016-06-19  Leo Liu  <sdl.web@gmail.com>
2755         Improve last change to vc-git-mode-line-string
2757         * lisp/vc/vc-git.el (vc-git-mode-line-string): Better fix that caches
2758           the result.
2760 2016-06-19  Stephen Berman  <stephen.berman@gmx.net>
2762         Todo mode doc bug fix
2764         * lisp/calendar/todo-mode.el (todo-show): Correct obsolete and no
2765         longer correct information in doc string.
2767 2016-06-19  Leo Liu  <sdl.web@gmail.com>
2769         Fix revision calculation in vc-git-mode-line-string
2771         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use
2772           vc-git-working-revision because vc-working-revision needs to decide
2773           the backend and may return nil.
2775 2016-06-19  Jorgen Schaefer  <contact@jorgenschaefer.de>
2777         Add Python 3.5 keyword "await"
2779         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
2780         keyword.
2782 2016-06-19  Lele Gaifax  <lele@metapensiero.it>
2784         Add new keywords of Python 3.5
2786         Python 3.5, released in mid September 2015, introduced a few new
2787         keywords to better support asynchronous code, "async" and "await"
2788         in particular. See https://www.python.org/dev/peps/pep-0492/ for
2789         details. (Bug#21783)
2790         * lisp/progmodes/python.el (python-rx-constituents): Add async
2791         def/for/with as block-start and async def as defun.
2792         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
2793         def/for/with as keyword.
2794         * test/automated/python-tests.el (python-indent-after-async-block-1,
2795         python-indent-after-async-block-2, python-indent-after-async-block-3,
2796         python-nav-beginning-of-defun-3): New tests to test indentation and
2797         navigation for the async keyword.
2799 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
2801         Partially revert previous change.
2803         This commit partially reverts 0f332848cdb2ed6d46771914a911cbca194cd51a.
2804         * lisp/rect.el (rectangle--highlight-for-redisplay): Use region face.
2805         This function is for rectangle-mark-mode, not string-rectangle.
2807 2016-06-19  Paul Eggert  <eggert@penguin.cs.ucla.edu>
2809         Say why text-quoting-style is not a user option
2811         * doc/lispref/help.texi (Keys in Documentation):
2812         * etc/NEWS: Document why text-quoting-style is not a
2813         customizable variable (Bug#23372).
2815 2016-06-19  Glenn Morris  <rgm@gnu.org>
2817         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
2818         Future-proof against non-time-values.
2820 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2822         Don't mention ~/.emacs.bmk literally in doc strings
2824         * lisp/bookmark.el (bookmark-save-flag, bookmark-load): Don't
2825         mention "~/.emacs.bmk" explicitly as the default bookmark file in
2826         the doc strings.  (Bug#23350)
2828 2016-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2830         * etc/NEWS: Explain why multicolor font display is disabled on OS X Cocoa.
2832 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2834         Port to Ubuntu 16.04 --enable-gcc-warnings
2836         * src/image.c (gif_load) [HAVE_GIF]: Fix pointer signedness problem.
2838 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2840         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
2842 2016-06-19  Tino Calancha  <f92capac@gmail.com>
2844         Don't kill ~/ if it's the top level directory
2846         * lisp/dired-aux.el (dired-kill-subdir): Don't kill ~/ if it's
2847         the top level directory (bug#23017).
2849 2016-06-19  Tino Calancha  <f92capac@gmail.com>  (tiny change)
2851         describe-char: fix insert char documentation
2853         * lisp/descr-text.el (describe-char):
2854         Only 'ucs-names' entries can be inserted by unicode name (Bug#23325).
2856 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
2858         (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
2860         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use `substring'
2861         instead of `replace-regexp-in-string', because REV can be nil
2862         (e.g. when FILE is a directory, bug#23344), and we actually know
2863         we only need the first 4 characters.
2865 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
2867         Bump version to 25.0.93
2869         * README:
2870         * configure.ac:
2871         * msdos/sed2v2.inp: Bump Emacs version to 25.0.93.
2873 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
2875         * etc/AUTHORS: Update the AUTHORS file
2877         * admin/update_autogen: Use #!/usr/bin/env bash
2879         * admin/authors.el (authors-ignored-files): Additions.
2881 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
2883         In x_set_window_size restore do_pending_window_change calls
2885         * src/xterm.c (x_set_window_size):
2886         * src/w32term.c (x_set_window_size): Restore
2887         do_pending_window_change calls after their stupid removal on
2888         2015-08-31.
2890 2016-06-19  Ilya Zakharevich  <ilya@math.berkeley.edu>
2892         Fix Alt-modified keys on some European MS-Windows keyboards
2894         * src/w32fns.c (deliver_wm_chars): If the reported character is
2895         ASCII, AND Meta modifier is a candidate, behave as if Meta is
2896         present, i.e. fall back to the legacy code.  (Bug#23251)
2898 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2900         Document 'help-go-forward'
2902         * doc/emacs/help.texi (Help Mode): Document and index
2903         'help-go-forward'.  (Bug#23323)
2905 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2907         Revert "Allow to customize names of executables used by grep.el"
2909         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
2911 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2913         Revert "Don't use 'find-program'"
2915         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
2917 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2919         Revert "Use 'grep-find-program' in check-declare.el"
2921         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
2923 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2925         Clarify documentation of 'dired-mark-files-containing-regexp'
2927         * doc/emacs/dired.texi (Marks vs Flags): Clarify that for files
2928         visited in buffers, 'dired-mark-files-containing-regexp' searches
2929         the buffer rather than the file on disk.  (Bug#22694)
2931         * lisp/dired.el (dired-mark-files-containing-regexp): Clarify that
2932         for files visited in buffers, 'dired-mark-files-containing-regexp'
2933         searches the buffer rather than the file on disk.  (Bug#22694)
2935 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2937         Make tmm-menubar work in correct order again
2939         * lisp/tmm.el (tmm-prompt): Don't reverse 'tmm-km-list' right at the
2940         beginning; instead, pass a reversed copy to 'tmm--completion-table'.
2941         (Bug#23309)
2942         (tmm-menubar): Fix an off-by-one error in determining the menu
2943         item when the function is called with a non-nil 'x-position'
2944         argument.
2946 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
2948         Remove the Meta-CVS VC backend
2950         * lisp/obsolete/vc-mcvs.el: Remove the file (bug#20475).
2952         * lisp/vc/log-view.el (log-view-extract-comment): Remove the MCVS
2953         reference.
2955         * doc/misc/efaq-w32.texi (Version control): Same.
2957 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
2959         Fix Bug#23276
2961         * lisp/autorevert.el (auto-revert-handler): Ignore errors
2962         coming from `revert-buffer'.  (Bug#23276)
2964 2016-06-19  Reto Zimmermann  <reto@gnu.org>
2966         Sync with upstream vhdl mode v3.38.1.
2968         * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
2969         (vhdl-mode): No longer set comment-padding.
2970         (vhdl-begin-p): Handle missing space between keyword and parenthesis.
2971         (vhdl-beginning-of-statement-1): Fix indentation for "else generate".
2972         (vhdl-template-else, vhdl-template-elsif): Support generate statement.
2973         (vhdl-re-search-forward, vhdl-re-search-backward): Save match data.
2975 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2977         Tweak configure.ac syntax in recent module patch
2979         * configure.ac: Use proper Autoconf parenthesization in
2980         recent HAVE_MODULES patch.  Although this doesn’t fix any bugs,
2981         the previous syntax was confusing.
2983 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2985         Port to GCC 5.3.1 20160406 (Red Hat 5.3.1-6)
2987         * src/indent.c (Fvertical_motion): Pacify --enable-gcc-warnings
2988         when using the April 6 Fedora patch to GCC.
2990 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
2992         Make sh-electric-here-document-mode accessible in sh-mode-hook. (Bug#3226)
2994         * lisp/progmodes/sh-script.el (sh-mode-hook): Add
2995         sh-electric-here-document-mode as an option and the default value.
2996         (sh-mode): Mention sh-mode-hook in docstring.
2997         (sh-mode): Remove sh-electric-here-document-mode invocation.
2999 2016-06-19  Glenn Morris  <rgm@gnu.org>
3001         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
3003 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
3005         Make use of rectangle-preview custom variable.
3007         lisp/rect.el (rectangle--string-preview): Only create a preview if
3008         rectangle-preview is non-nil (Bug#23248).
3010 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
3012         Make use of rectangle-preview face.
3014         * lisp/rect.el (rectangle--string-preview):
3015         (rectangle--highlight-for-redisplay): Replace 'region with
3016         'rectangle-preview (Bug#23248).
3018 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3020         Use 'grep-find-program' in check-declare.el
3022         * lisp/emacs-lisp/check-declare.el (check-declare-directory): Use
3023         'grep-find-program', not 'find-program'.
3025 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3027         Improve "C-h S" for cl-lib symbols
3029         * lisp/info-look.el: Add cl.info lookup to emacs-lisp-mode related
3030         manuals.  (Bug#23289)
3032 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3034         Fix minor issues with removing left or right fringes
3036         * lisp/window.el (window-max-chars-per-line): Account for
3037         'left-fringe-width' and 'right-fringe-width' variables.
3039         * doc/lispref/windows.texi (Window Sizes): Document the effect on
3040         window text width when setting the width of one or both fringes to
3041         zero.
3042         * doc/emacs/display.texi (Fringes): Document the effect on window
3043         text width when setting the width of one or both fringes to zero.
3044         (Bug#22891)
3046 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3048         Speed up redisplay in ansi-term mode
3050         * lisp/term.el (ansi-term): Force L2R 'bidi-paragraph-direction'.
3051         (Bug#20611)
3053 2016-06-19  Philipp Stephani  <phst@google.com>
3055         Simplify 8-bit character handling by terminal for 'raw-text'
3057         * lisp/international/mule.el (set-keyboard-coding-system): Treat
3058         'raw-text' as another coding type that requires 8-bit characters.
3059         * lisp/xt-mouse.el (xterm-mouse--read-coordinate): Use 'no-conversion'
3060         instead of 'latin-1'.
3062 2016-06-19  Glenn Morris  <rgm@gnu.org>
3064         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
3066 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3068         Fix w32 memory-management problem when extending buffer text
3070         * src/w32heap.c (mmap_realloc): Only attempt extending a region if
3071         the following region has the same allocation base.  Also, use the
3072         original allocation base and enlarged size to commit reserved
3073         memory, to ensure that the allocation base stays at its original
3074         value.  This fixes several hard-to-debug problems whereby part of
3075         buffer text was overwritten with binary nulls, because
3076         mmap_realloc copied only part of buffer text when extending it.
3077         See
3078         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00325.html
3079         and http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#55 for two
3080         examples of the related problems.
3082 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
3084         Fix Bug#20637.  Do not merge to master
3086         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
3087         Use `vc-backend' instead of `vc-responsible-backend'.  (Bug#20637)
3089         * test/automated/vc-tests.el (vc-test--state)
3090         (vc-test--working-revision): Deactivate now failing checks.
3092 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3094         substitute-command-keys keeps quotes’ text props
3096         Problem reported by Clément Pit--Claudel (Bug#23254).
3097         * src/doc.c: Include intervals.h.
3098         (Fsubstitute_command_keys): If the only substitutions are for
3099         quotes, copy the source string’s text properties too, since no
3100         substring lengths have changed.
3102 2016-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3104         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
3106 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3108         Add semantic-symref-filepattern-alist entry for lisp-interaction-mode
3110         * lisp/cedet/semantic/symref/grep.el
3111         (semantic-symref-filepattern-alist):
3112         Add entry for lisp-interaction-mode
3113         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#47)
3115 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3117         Perform xref searches without visiting unopened files
3119         * lisp/progmodes/xref.el (xref-collect-references): Instead of
3120         calling `semantic-symref-find-references-by-name', use
3121         `semantic-symref-instantiate' and `semantic-symref-perform-search'
3122         directly.  Ask for `line-and-text' results (bug#23223).
3123         (xref-collect-matches): Include the line text in the "hit"
3124         structure.
3125         (xref--convert-hits): New function, split off from
3126         `xref-collect-references' and `xref-collect-matches', to convert
3127         "hits" to xref instance list.  Create a temporary buffer here, to
3128         use it for post-processing all hit lines.
3129         (xref--collect-matches): Use a different approach for non-visited
3130         files.  Insert the line text into the temp buffer, apply the
3131         file's major mode the best we can without reading its whole
3132         contents, syntax-propertize, and search in the result.
3133         (xref--collect-matches-1): Extract, to handle the common logic
3134         between two cases.
3135         (xref--find-buffer-visiting): New function, a wrapper around
3136         `find-buffer-visiting' to amortize its cost.
3138         * lisp/cedet/semantic/symref/idutils.el
3139         (semantic-symref-idutils--line-re): New constant.
3140         (semantic-symref-parse-tool-output-one-line): Support result type
3141         `line-and-text'.
3143         * lisp/cedet/semantic/symref/grep.el
3144         (semantic-symref-grep--line-re)
3145         (semantic-symref-parse-tool-output-one-line): Same.
3147         * lisp/cedet/semantic/symref/cscope.el
3148         (semantic-symref-cscope--line-re)
3149         (semantic-symref-parse-tool-output-one-line): Same.
3151         * lisp/cedet/semantic/symref/global.el
3152         (semantic-symref-global--line-re)
3153         (semantic-symref-parse-tool-output-one-line): Same.
3155 2016-06-19  Phillip Lord  <phillip.lord@newcastle.ac.uk>
3157         Revert "Prevent bootstrap autoload backup files"
3159         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
3161 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3163         Improve time zone documentation
3165         * doc/lispref/os.texi (Time Zone Rules):
3166         New section, mostly with material moved here from other sections.
3167         * doc/emacs/cmdargs.texi (General Variables):
3168         * doc/lispref/os.texi (Time Conversion, Time Parsing):
3169         Xref new section.
3170         * etc/NEWS, etc/PROBLEMS:
3171         * lisp/org/org.el (org-timestamp-format):
3172         * src/editfns.c (Fformat_time_string, Fdecode_time)
3173         (Fencode_time, Fcurrent_time_string, Fcurrent_time_zone)
3174         (Fset_time_zone_rule):
3175         When documenting time zone rule strings, mention the TZ
3176         environment variable in preference to mentioning the
3177         sort-of-internal function set-time-zone-rule.
3179 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
3181         Prevent bootstrap autoload backup files
3183          * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
3184            backups in newly created file.
3186           (autoload-ensure-default-file): Function split into two.
3187           (autoload-ensure-file-writeable): New function from split.
3189           (Bug#23203)
3191 2016-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3193         Disable multicolor fonts on OS X since they are not supported on free systems
3195         * src/macfont.m (macfont_list): Don't use color bitmap fonts.
3197 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3199         Capitalize “Universal Time” in documentation
3201         It’s a proper noun.
3202         * lisp/vc/add-log.el (add-log-time-zone-rule): Also, fix typo by
3203         mentioning ‘format-time-string’ instead of ‘set-time-zone-rule’.
3205 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3207         Don't use 'find-program'
3209         * lisp/progmodes/project.el (project-file-completion-table): Use
3210         'grep-find-program', rather than the obsolete 'find-program'.
3212 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3214         Sync with gnulib
3216         This is for picky compilers whose stdint.h fails our C11 tests.
3217         Problem reported for clang by Philipp Stephani (Bug#23261).
3218         This incorporates:
3219         2016-04-11 stdint: port to strict C11 left shift
3220         * doc/misc/texinfo.tex, lib/stdint.in.h: Copy from gnulib.
3222 2016-06-19  Leo Liu  <sdl.web@gmail.com>
3224         Fix last change on 2016-01-02
3226         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Move
3227           `cl-errs-re' before `lisp--el-match-keyword'; don't use `prepend'
3228           which highlights `cl-errs-re' even in comments or strings.
3230 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3232         Port run-prolog EMACS to SWI-Prolog 7.2.3
3234         * lisp/progmodes/prolog.el (prolog-ensure-process):
3235         Work around incompatibility of SWI-Prolog 7.2.3 and earlier
3236         with the new way of dealing with the EMACS and INSIDE_EMACS
3237         environment variables.
3239 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3241         Avoid crashes due to unreasonably large or small text scaling
3243         * lisp/face-remap.el (text-scale-min-amount)
3244         (text-scale-max-amount): New functions.
3245         (text-scale-set, text-scale-increase): Use them to limit the text
3246         scaling to a reasonable range of values.  (Bug#23259)
3248 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3250         Improve documentation of 'with-eval-after-load'
3252         * lisp/subr.el (with-eval-after-load): Doc fix.  (Bug#23258)
3254 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3256         Improve handling of non-ASCII characters in Git log messages
3258         * lisp/vc/vc-git.el (vc-git-commits-coding-system): Now a defcustom.
3259         (vc-git-log-output-coding-system): New defcustom.
3260         (vc-git-print-log, vc-git-command, vc-git--call): Use
3261         'vc-git-log-output-coding-system' for reading stuff from Git.
3262         Don't override values of 'coding-system-for-read/write' if they
3263         are bound by caller -- this allows the user to force an encoding
3264         via "C-x RET c".
3265         (vc-git-checkin): On MS-Windows, pass the log message via a
3266         temporary file, to work around the limitations on passing
3267         non-ASCII characters via command-line arguments.  Force using the
3268         'locale-coding-system' for Git command-line arguments.  This fixes
3269         problems with non-ASCII commit log messages on MS-Windows.
3270         (Bug#23076)
3272         * etc/NEWS: Mention the new vc-git related defcustoms.
3274 2016-06-19  Philipp Stephani  <phst@google.com>
3276         Remove undefined behavior in OS X dumper.
3278         Found by Address Sanitizer.
3280         * src/unexmacosx.c (unexec_write): Use Mach virtual memory API to
3281         avoid undefined behavior when reading arbitrary memory.
3283 2016-06-19  Joakim Verona  <joakim@verona.se>
3285         Fix clipping of xwidgets
3287         * src/xwidget.c (x_draw_xwidget_glyph_string): Use window_box
3288         instead of calculating the clipping borders manually.  Suggested
3289         by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
3291 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3293         Improve Lisp-level documentation of tooltips
3295         * doc/lispref/display.texi (Tooltips): New section.  (Bug#23246)
3296         (Display): Update the chapter menu.
3297         * doc/lispref/text.texi (Special Properties): Make the "tooltip"
3298         index entry more concrete.  Change the cross-reference to point to
3299         "Tooltips" in the ELisp manual.
3300         * doc/lispref/elisp.texi (Top): Update the master menu.
3301         * doc/emacs/frames.texi (Tooltips): Include more customization
3302         variables.  Add a cross-reference to the ELisp manual.
3304 2016-06-19  Glenn Morris  <rgm@gnu.org>
3306         Faces names should not end in "-face".
3308         * lisp/rect.el (rectangle-preview): Rename from rectangle-preview-face.
3309         * lisp/vc/vc-hooks.el (vc-state-base): Rename from vc-state-base-face.
3311 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3313         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
3315 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3317         Comint and compile no longer set EMACS
3319         This mostly restores the change that I reverted on March 23,
3320         fixing most of Bug#20202.  The only part of the change that is
3321         still reverted is the change to M-x term, where compatibility with
3322         current Bash constrains us from moving too quickly (Bug#20484).
3323         Problem reported by Phillip Lord in: http://bugs.gnu.org/20484#108
3324         * etc/NEWS: Document this.
3325         * lisp/comint.el (comint-exec-1):
3326         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
3327         * lisp/progmodes/compile.el (compilation-start):
3328         Don’t set EMACS=t in the subsidiary process.
3330 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
3332         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
3334 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3336         Allow to customize names of executables used by grep.el
3338         * lisp/progmodes/grep.el (grep-find-program): Renamed from
3339         'find-program', which was a variable.  All uses changed.
3340         (grep-xargs-program): Renamed from 'xargs-program', which was a
3341         variable.  All uses changed.
3342         (grep-program): Now a defcustom rather than a simple variable.
3343         (Bug#23219)
3345 2016-06-19  Alan Third  <alan@idiocy.org>
3347         Set locale encoding to UTF-8 when run from OS X GUI.
3349         * src/nsterm.m (ns_init_locale): Append .UTF-8 when setting LANG.
3351 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3353         Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
3355         * lisp/ffap.el (ffap-guess-file-name-at-point): Ignore errors
3356         while 'ffap-guesser' runs.  (Bug#23218)
3358 2016-06-19  Marcin Borkowski  <mbork@mbork.pl>
3360         Avoid infinite loop in 'studlify-word'
3362         * lisp/play/studly.el (studlify-region): Call
3363         'forward-word-strictly' and 'backward-word-strictly' instead of
3364         'forward-word' and 'backward-word'.  (Bug#19940)
3366 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3368         Don’t recommend obsolete EMACS env var
3370         * doc/misc/efaq.texi (Escape sequences in shell output):
3371         Remove long-obsolete (and now-confusing) notes about
3372         the EMACS environment variable in Emacs 21.1 and earlier.
3373         * doc/misc/efaq.texi (^M in the shell buffer):
3374         * etc/PROBLEMS:
3375         Remove obsolescent recommendation to consult the EMACS environment
3376         variable.
3378 2016-06-19  Glenn Morris  <rgm@gnu.org>
3380         * lisp/emacs-lisp/package.el: Change from a few days ago needs seq.
3382         * lisp/emacs-lisp/seq.el: Load cl-lib, not cl-extra.
3384 2016-06-19  Leo Liu  <sdl.web@gmail.com>
3386         Fix "Beginning of buffer" error in forward-page
3388         * lisp/textmodes/page.el (forward-page): Check before move to prevent
3389           "Beginning of buffer" error.
3391 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3393         Add a `transient' project type
3395         * lisp/progmodes/project.el (project-roots): Implement for the
3396         `transient' project type (bug#23224).
3397         (project-current): Instead of signaling an error, return a
3398         transient project instance rooted in the chosen directory.
3400 2016-06-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3402         Revert "Backport HTTPS proxy fix"
3404         This reverts commit 2d1a6054b161bd1055d4feb11c8c5ac95543f5db.
3406         It's too late in the Emacs 25 release cycle to add things like this to
3407         Emacs 25.1.  It's border line new feature.
3409 2016-06-19  Tao Fang  <fangtao0901@gmail.com>
3411         Backport HTTPS proxy fix
3413         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
3415         Backport:
3417 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3419         Fix stability confusion in sort-tests
3421         Problem reported by Philipp Stephani (Bug#23205).
3422         * test/automated/sort-tests.el:
3423         (sort-tests--insert-words-sort-and-compare):
3424         Don’t assume that reversing a sorted list is the same
3425         as sorting with the reverse predicate.  This is not true
3426         for stable sorts when items compare equal.
3428 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3430         Avoid describe-key error with lambdas
3432         Problem reported by Sho Takemori (Bug#22716).
3433         * lisp/cedet/mode-local.el (describe-mode-local-overload)
3434         (xref-mode-local-overload): Use function-overload-p instead
3435         of assuming the argument is a symbol.
3437 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
3439         * lisp/emacs-lisp/package.el (package-install-selected-packages):
3441         Skip unavailable packages.
3443 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3445         Sync with gnulib
3447         This incorporates:
3448         2016-04-03 stdint: detect good enough pre-C++11 stdint.h in C++ mode
3449         2016-04-01 stddef: support configuring with g++
3450         * doc/misc/texinfo.tex, lib/stddef.in.h, m4/stdint.m4:
3451         Copy from gnulib.
3453 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3455         Fix doc for Universal Time
3457         * doc/lispref/os.texi (Time of Day, Time Conversion):
3458         Be more careful about distinguishing UTC (which is not valid for
3459         pre-1961 time stamps) and UT (which is).
3460         (Time Parsing): Remove stray obsolete paragraph about a
3461         UNIVERSAL argument for ‘format-time-string’.
3463 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
3465         Handle Bug#23186
3467         * lisp/net/tramp.el (tramp-encoding-command-switch)
3468         (tramp-encoding-command-interactive):
3469         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
3470         `tramp-encoding-shell' could be nil.  (Bug#23186)
3472 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3474         More format-time-string change fixups
3476         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
3477         * lisp/org/org.el (org-timestamp-format):
3478         Fix doc to match new format-time-string behavior.
3479         * lisp/org/ox-icalendar.el (org-icalendar-convert-timestamp):
3480         Use (not (not X)) to treat non-nil values of utc arg as UTC.
3482 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3484         make-xwidget unused arg cleanup
3486         * doc/lispref/display.texi (Xwidgets): Remove stray refs.
3487         * src/xwidget.c (syms_of_xwidget): Qwebkit, not Qwebkit_osr.
3489 2016-06-19  Joakim Verona  <joakim@verona.se>
3491         Remove unused arguments from make-xwidget
3493         The arguments BEG and END were unused, and are now removed.
3495         * doc/emacs/display.texi (Xwidgets): Document the change
3496         * lisp/xwidget.el (make-xwidget, xwidget-insert)
3497         (xwidget-webkit-new-session): Reflect changed arguments
3498         * src/xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments
3500 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3502         Document incompatible changes in 'format-time-string'
3504         * etc/NEWS: Mention the incompatible change in the interpretation
3505         of the 3rd argument to 'format-time-string'.  (Bug#21943)
3507 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3509         Improve documentation of byte-code objects
3511         * doc/lispref/compile.texi (Byte-Code Objects): Document the
3512         integer format of the argument descriptor.  (Bug#23061)
3514 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3516         Adapt calls to 'format-time-string' to changes in Emacs 25
3518         * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): Use t as the
3519         last argument to format-time-string.  (Bug#23128)
3520         * lisp/gnus/gmm-utils.el (gmm-format-time-string): Use t as the
3521         last argument to format-time-string, when the TZ argument is not a
3522         number, per the doc string.
3524 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3526         Improve vc-diff with Git backend
3528         * lisp/vc/vc-git.el (vc-git-command): Don't override
3529         coding-system-for-read/write if they are already bound.
3530         Suggested by joaotavora@gmail.com (João Távora).  (Bug#20892)
3531         (vc-git-print-log): Don't override coding-system-for-read if it's
3532         already bound.
3534 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3536         (js--continued-expression-p): Special-case unary plus and minus
3538         * lisp/progmodes/js.el (js--continued-expression-p): Make an
3539         effort to recognize unary plus and minus, in the contexts where
3540         they make sense (https://github.com/mooz/js2-mode/issues/322).
3542 2016-06-19  Alan Mackenzie  <acm@muc.de>
3544         Prevent C++ Mode wrongly fontifying some identifiers near templates as types
3546         This fixes debbugs #7917.
3548         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): Accept 'maybe
3549         (from c-forward-type) as sufficient to record an id.  Record type id as well
3550         as ref ids.
3551         (c-forward-name): Bind c-last-identifier-range around the call to
3552         c-forward-<>-arglist to prevent it getting corrupted.  Don't automatically
3553         assume an identifier is a type when a template ">" is followed by a "(".
3554         (c-forward-type): Don't automatically assume an identifier is a type when a
3555         template ">" is followed by a "(".
3557         * lisp/progmodes/cc-fonts.el (c-font-lock-<>-arglists): Don't fontify an
3558         identifier as a type when its associated ">" is followed by a "(".
3560 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3562         Avoid crashes due to insanely large columns in tabulated-list-format
3564         * src/xdisp.c (append_stretch_glyph, produce_xwidget_glyph)
3565         (produce_image_glyph): Limit the pixel width of the produced glyph
3566         to SHRT_MAX.  (Bug#23178)
3567         (append_composite_glyph, append_glyph, append_glyphless_glyph):
3568         Add assertions to verify that the pixel width of the glyph will
3569         never overflow a 'short'.
3570         * src/term.c (append_composite_glyph): Add assertion to verify
3571         that the pixel width of the glyph will never overflow a 'short'.
3573 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
3575         Teach M-x disassemble a default argument.
3577         Adopts default argument in the same way as `describe-function'.
3578         * lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
3579         if any.
3581 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3583         Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
3585         * lisp/vc/vc-annotate.el (vc-annotate): Force DOS EOL decoding on
3586         MS-Windows and MS-DOS, when processing the output of "svn annotate".
3588 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
3590         Fix OS X specific settings in tramp-tests
3592         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
3594         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
3596         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
3597         (tramp--test-utf8): Improve settings of coding systems.
3598         Do not use `tramp--test-darwin-p' anymore.  (Bug#22145)
3600 2016-06-19  Alan Mackenzie  <acm@muc.de>
3602         Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
3604         * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
3605         superfluous invocations of c-self-bind-state-cache.
3607         * lisp/progmodes/cc-defs.el: (c-self-bind-state-cache): Copy and terminate
3608         markers correctly.
3610         * lisp/progmodes/cc-engine.el (c-record-parse-state-state): Terminate stale
3611         markers.
3613 2016-06-19  Alan Mackenzie  <acm@muc.de>
3615         Merge branch 'emacs-25' of /home/acm/emacs/emacs.git/emacs-25 into emacs-25
3617 2016-06-19  Xue Fuqiao  <xfq.free@gmail.com>
3619         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
3621         The example was removed by Chong Yidong on Mar 5, 2012.
3623 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3625         * doc/man/emacsclient.1: Document +line:column option.
3627 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3629         Fix rare problems with echo-area display and multiple frames
3631         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
3632         around the call to x_consider_frame_title, to prevent
3633         resize_mini_window from undoing echo-area display.  (Bug#23124)
3635 2016-06-19  Alan Mackenzie  <acm@muc.de>
3637         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
3639         This would happen when that variable already has a buffer local binding.  Such
3640         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
3642         * lisp/replace.el (query-replace-read-from): Move the binding of
3643         text-property-default-nonsticky to inside of a new with-current-buffer buffer
3644         form with the minibuffer as argument.
3646 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3648         Remove prog-indentation-context
3650         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
3651         (prog-first-column, prog-widen): Remove, as discussed in
3652         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
3654         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
3655         to them.
3657         * etc/NEWS: Ditto.
3659         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
3660         Remove the compatibility aliases and all uses.
3662         Do not merge to master.
3664 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3666         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
3668 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3670         Don't start the 'midnight' timer twice
3672         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
3673         timer twice when activating the mode the first time.  (Bug#23123)
3675 2016-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3677         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
3679 2016-06-19  Stephen Berman  <stephen.berman@gmx.net>
3681         Fix todo-mode category movement
3683         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
3684         category's existing categories sexp instead of invoking
3685         todo-update-categories-sexp in file moved to, in order to take
3686         archived items into account.  If the moved category has archived
3687         items, handle the source archive buffer properly.  Remove
3688         superfluous code.
3690 2016-06-19  Glenn Morris  <rgm@gnu.org>
3692         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
3694 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3696         Ignore non-nil. non-cons values of unread-command-events
3698         * src/keyboard.c (requeued_events_pending_p, read_char)
3699         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
3700         unread command events to be processed.  (Bug#22976)
3702 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3704         Improve documentatuon of 'truncate-partial-width-windows'
3706         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
3707         Clarify in the doc string how the width of partial-width windows
3708         is computed for the purposes of truncation decision.  (Bug#4338)
3710         * doc/emacs/windows.texi (Split Window): Clarify how the width of
3711         windows is calculated for the purposes of truncation decision.
3712         * doc/emacs/display.texi (Line Truncation): Remove a redundant
3713         index entry.
3715 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3717         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
3719 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3721         Fix 'dired-goto-file' in Dired buffers produced by find-dired
3723         * lisp/dired.el (dired-goto-file): Try looking for the file as a
3724         relative name with leading sub-directories, before looking for the
3725         basename alone.  (Bug#23089)
3727 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
3729         Fix map-put and map-delete for alists (Bug#23105)
3731         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
3732         expression to a new symbol.
3733         * test/automated/map-tests.el: Add a regression test.
3735 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3737         Minor copyedits of documentation for temporary displays
3739         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
3740         Minor changes in wording.
3741         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
3742         index entries for 'display-buffer'.
3744         * etc/NEWS: Minor rewording of the entry about temporary displays.
3746 2016-06-19  Philipp Stephani  <phst@google.com>
3748         Add customization option for using UTF-8 coordinates in xt-mouse
3750         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
3751         (xterm-mouse--read-coordinate): New function to replace
3752         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
3753         (xterm-mouse--read-number-from-terminal): Adapt to new name.
3754         (xterm-mouse-tracking-enable-sequence)
3755         (xterm-mouse-tracking-disable-sequence): Replace constants with
3756         functions, mark constants as obsolete.
3757         (xterm-mouse--tracking-sequence): New helper function.
3758         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
3759         enable UTF-8 only if customization option says so; store UTF-8
3760         flag in terminal parameter.  (Bug#23009)
3762         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
3764 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3766         Minor doc string fixes in replace.el
3768         * lisp/replace.el (query-replace, query-replace-regexp)
3769         (query-replace-regexp-eval, map-query-replace-regexp)
3770         (replace-string, replace-regexp): Clarify in doc strings that
3771         these commands operate from point to the end of the buffer's
3772         accessible portion.  (Bug#23067)
3774 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3776         Fix scrolling upwards with 'xwidget-webkit-browse-url'
3778         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
3779         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
3780         (Bug#22918)
3782 2016-06-19  K. Handa  <handa@gnu.org>
3784         Fix display of Indic scripts
3786         * src/ftfont.c (ftfont_shape_by_flt): For combining characters out
3787         of the range U+300...U+36F, use the "combining" FLT only with
3788         non-OTF fonts.
3790 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3792         Fix splash screen display at startup
3794         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
3795         window displayed by "emacs -q" has enough space to show the whole
3796         text even if it includes 2 lines talking about recovering crashes
3797         sessions.  (Bug#23074)
3799         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
3800         error when computing the window-height from frame-height.
3802         * etc/NEWS: Mention the change.
3804 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
3806         Describe temporary displays in Emacs manual
3808         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
3809         * doc/emacs/windows.texi (Window Choice): Minor fixes.
3810         (Temporary Displays): New subsubsection describing display of
3811         temporary buffers and `temp-buffer-resize-mode'.
3813 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3815         Avoid stray As next to IDLW icons
3817         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
3818         Use "" for empty labels, not "a", as the latter now displays stray
3819         "A"s (Bug#18997).
3821 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3823         Avoid GTK 3 crash with icons and masks
3825         Problem reported by Mosè Giordano (Bug#18997).
3826         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
3827         (xg_get_pixbuf_from_pix_and_mask): Do not use
3828         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
3829         invoke XGetPixel directly.  This is slow but speed is not
3830         important here.  Also, fail for unusual situations (not TrueColor,
3831         or images that are not 8 bits per sample) instead of displaying
3832         junk or crashing.
3834 2016-06-19  Juri Linkov  <juri@linkov.net>
3836         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
3838         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
3840 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3842         Define make_save_ptr_ptr unconditionally
3844         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
3845         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
3846         Philipp Stephani <phst@google.com>.  (Bug#23101)
3848 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3850         Preserve current buffer when popping up TTY menus
3852         * src/term.c (tty_menu_show): Be sure to save and restore the
3853         current buffer around TTY menu pop-ups.  (Bug#23101)
3855 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3857         Improve font selection by family on MS-Windows
3859         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
3860         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
3861         This avoids rejecting many font families whose members are shown
3862         by 'font-family-list', in particular 'courier' requested by
3863         info.el.  Without this change, many values of ':family' attribute
3864         of a face have no effect on MS-Windows, because they are rejected
3865         due to bogus mismatch of the charset.
3867 2016-06-19  Paul Eggert  <eggert@penguin.cs.ucla.edu>
3869         Comint, term, and compile now set EMACS
3871         This fixes directory tracking in ansi-term, at the expense of
3872         breaking some usages of 'configure'.  Setting EMACS is meant to be
3873         a somewhat temporary measure, until Bash 4.4 comes out and is
3874         common.  (Bug#20484).
3875         * etc/NEWS: Document this.
3876         * lisp/comint.el (comint-exec-1):
3877         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
3878         * lisp/progmodes/compile.el (compilation-start):
3879         * lisp/term.el (term-exec-1):
3880         Go back to setting the EMACS environment variable, for backward
3881         compatibility to Bash 4.3 and earlier.
3883 2016-06-19  Paul Eggert  <eggert@penguin.cs.ucla.edu>
3885         Ignore more merges when generating ChangeLog
3887         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
3888         not merely those from master and emacs-NN.  The ChangeLog entries
3889         they generate are not that useful.
3891 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3893         Sync with gnulib
3895         This incorporates:
3896         2016-03-22 gitlog-to-changelog: suppress ignored chatter
3897         2016-03-21 sys_select: port to new Cygwin
3898         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
3899         * lib/sys_select.in.h: Copy from gnulib.
3901 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3903         Resurrect GNUS-NEWS autogeneration
3905         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
3906         GNUS-NEWS section to match current file locations and procedure.
3907         * etc/GNUS-NEWS: Regenerate by using new procedure.
3908         * lisp/Makefile.in (update-gnus-news): New rule, containing a
3909         procedure for building GNUS-NEWS.  The old procedure got lost
3910         somehow when Gnus was merged into Emacs.
3912 2016-06-19  Anders Lindgren  <andlind@gmail.com>
3914         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
3916         * src/nsterm.m (ns_screen_margins): New function.
3917         (ns_screen_margins_ignoring_hidden_dock): New function.
3918         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
3919         ([EmacsWindow zoom:]): Take all screen margins (except those
3920         originating from a hidden dock) into account.
3922 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3924         Fix bug in displaying header line with a box face
3926         * src/xdisp.c (get_next_display_element): Handle the case when a
3927         display string acquires the box face from an underlying string,
3928         not from the buffer.  (Bug#23091)
3930 2016-06-19  Kaushal Modi  <kaushal.modi@gmail.com>
3932         Fix an Isearch var to be a string (Bug#23038)
3934         * lisp/isearch.el (isearch--describe-regexp-mode): The `description' var
3935           needs to always be a string.  Add the missing default case for the
3936           cond form that ensures that.
3938         Before this bug fix, for the events when `regexp-function' and
3939         `search-default-mode' both were nil, `description' also stayed nil.  So
3940         when `space-before' was non-nil, the "non-string" `description'
3941         (with a value of nil) got passed as an argument to
3942         `replace-regexp-in-string' (where a string was expected).  That caused
3943         the error described in Bug#23038.
3945 2016-06-19  Leo Liu  <sdl.web@gmail.com>
3947         Fix (args-out-of-range 1) error in cursor-sensor--detect
3949         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
3950           hard-code (point-min) as 1 which fails in narrowed buffers.
3952 2016-06-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3954         Render empty <ul><li><ul> correctly
3956         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
3957         correctly (bug#22964).
3958         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
3960         Backport:
3962 2016-06-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3964         Ignore invalid base64 encoded embedded images
3966         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
3967         encoded embedded images (bug#22928).
3968         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
3970         Backport:
3972 2016-06-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3974         Fix <p> and <div> newlines with or without <li> in shr
3976         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
3977         a <li>, if we are, and don't insert newlines there.
3978         (shr-ensure-paragraph): When mixing newlines and paragraph
3979         ensurements, don't insert too many blank lines.
3980         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
3981         new line.
3982         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
3984         Backport:
3986 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3988         Avoid errors in 'newline'
3990         * lisp/simple.el (newline): Don't barf if invoked with
3991         non-positive argument in the middle of a line.  (Bug#22490)
3993 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
3995         Fix Bug#23032
3997         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
3998         remote file names.  (Bug#23032)
4000 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4002         Adjudicate review comments in abbrevs.texi
4004         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
4005         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
4006         default values of variables.  Suggested by Steve Byrne
4007         <sbb@penguinis.org>.  (Bug#23016)
4009         * admin/release-process (Check manuals): Mark files reviewed by
4010         Steve Byrne.
4012 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4014         Fixup the "normal" matcher; highlight global var symbols, too
4016         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
4017         operator name symbols with the "normal" matcher (it actually
4018         needed updating).  Highlight global variable symbols, too.
4020 2016-06-19  Marcin Borkowski  <mbork@mbork.pl>
4022         Honor prefix arg in doc-view-next-line-or-next-page
4024         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
4025         prefix argument into consideration when continuous scrolling is
4026         not in effect (i.e., by default) (bug#19559).
4028 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4030         Port to strict C99 offsetof
4032         * src/bidi.c (bidi_copy_it):
4033         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
4034         Use only a single identifier as the second argument of offsetof.
4035         Found by using clang -pedantic.
4037 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4039         Port to GTK with strict C11 compiler
4041         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
4042         Cast from function type to void * where the C standard requires this.
4043         This works around a problem in the prototypes for
4044         g_signal_handler_find and g_signal_handlers_block_by_func, which
4045         use gpointer instead of GCallback.  Found by using gcc -pedantic.
4047 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4049         Port to GTK with strict C99 compiler
4051         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
4052         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
4053         * src/emacsgtkfixed.c (EmacsFixedPrivate):
4054         * src/emacsgtkfixed.h (EmacsFixedClass):
4055         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
4057 2016-06-19  Anders Lindgren  <andlind@gmail.com>
4059         Avoid screen artifacts with new OS X visible bell after scrolling
4061         * src/nsterm.m (EmacsBell): Save NSView when displaying the
4062         visible bell and set `needsDisplay' when removed.
4063         (hide_bell): Trace.
4064         (ns_copy_bits): Trace.
4066 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
4068         Suppress some Tramp tests for OSX, do not merge with master
4070         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
4071         (tramp--test-utf8): Use it.  (Bug#22145)
4073 2016-06-19  Glenn Morris  <rgm@gnu.org>
4075         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
4076         Move definitions before use.
4078         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
4080         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
4082 2016-06-19  Glenn Morris  <rgm@gnu.org>
4084         Address compilation warnings due to 2016-01-03 mml refactoring.
4086         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
4087         (message-options-get): Autoload.
4088         (message-options-set): Declare.
4089         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
4090         Simplify default value.
4091         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
4092         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
4093         No longer a need for password-cache.
4095 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
4097         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
4099         (bug#22960).
4101 2016-06-19  Glenn Morris  <rgm@gnu.org>
4103         * lisp/dired-x.el (dired-omit-here-always): Correct error message
4104         for 2016-01-25 change.
4106         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
4107         removed 2016-01-30.
4109         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
4111 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4113         Avoid segfaults due to frame image cache being absent
4115         * src/image.c (cache_image): If the frame doesn't have an image
4116         cache, create it.  (Bug#23028)
4118 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4120         Improve documentation of glyphless-character display
4122         * doc/emacs/display.texi (Text Display): Document and index the
4123         'glyphless-char' face.
4125 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4127         Support safe navigation operator in non-SMIE indentation code
4129         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
4130         Support safe navigation operator in non-SMIE indentation code.
4131         Cherry-picked from
4132         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
4134 2016-06-19  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
4136         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
4138         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
4139         assume xsd:base64Binary values are UTF-8 strings.
4140         (soap-decode-xs-basic-type): Likewise.
4141         (soap-invoke): Document xsd:base64Binary handling.
4143 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4145         Fix Ruby's operator precedence
4147         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
4148         Rearrange the smie-precs->prec2 form.
4150 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4152         (ruby-interpolation-inside-another-interpolation): New failing test
4154         * test/automated/ruby-mode-tests.el
4155         (ruby-interpolation-inside-another-interpolation):
4156         New failing test.
4158 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4160         Port to clang 3.7.0 on x86-64
4162         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
4163         not done conditionally.  This helps clang, which needs
4164         -Wunknown-warning-option later when configured with warnings.
4165         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
4166         smart enough to figure this out on its own if warnings are enabled.
4167         (lisp_time_struct): Redo for clarity, and to pacify clang.
4168         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
4169         uninitialized locals.  This avoids undefined behavior and pacifies
4170         clang.
4172 2016-06-19  Glenn Morris  <rgm@gnu.org>
4174         * test/automated/package-test.el (package-test-signed): Tweak skip
4175         condition, for hydra.
4177 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4179         Sync with gnulib
4181         This incorporates:
4182         2016-03-15 time_rz: port to clang -Wunused-const-variable
4183         2016-03-15 select: port more to Intel 2016.1.150 compiler
4184         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
4186 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4188         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
4190         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
4191         nil.
4193         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
4194         loading window.el.  (Bug#22975)
4196 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4198         Do not tokenize a comment before continuation as ';'
4200         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
4201         Account for a comment right after point.
4203 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4205         Don't misindent arguments of a method call inside continuation
4207         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
4208         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
4209         Simplify the traversal loop.
4211 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
4213         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
4215         (read_key_sequence): Test it here, as before.
4216         (bug#22825).
4218 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4220         ASCII-only etc/NEWS etc.
4222         * etc/NEWS, nextstep/README: Revert the recently-added curved
4223         quotes, and stick to ASCII.  This typically involves replacing
4224         curved with straight quotes.  Since etc/NEWS is viewed so often by
4225         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
4226         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
4228 2016-06-19  Alan Mackenzie  <acm@muc.de>
4230         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
4232         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
4234         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
4235         rather than just using the cache variable c-state-cache.
4236         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
4237         to c-parse-state from other uses of the parse state cache.
4239         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
4240         c-self-bind-state-cache around the processing, replacing flawed bindings of
4241         c-state-cache.
4243 2016-06-19  Alan Mackenzie  <acm@muc.de>
4245         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
4247         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
4249         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
4250         rather than just using the cache variable c-state-cache.
4251         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
4252         to c-parse-state from other uses of the parse state cache.
4254         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
4255         c-self-bind-state-cache around the processing, replacing flawed bindings of
4256         c-state-cache.
4258 2016-06-19  Kaushal Modi  <kaushal.modi@gmail.com>
4260         Fix Isearch prompt when invoked with an argument
4262         * lisp/isearch.el (isearch--describe-regexp-mode): With
4263         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
4264         now displays "Regexp I-search: " again.  But if the user has set
4265         `search-default-mode' to t, and then does C-s, the minibuffer now
4266         displays "I-search: " because the default search mode is now regexp
4267         mode.  Comments have been added to explain the priority of conditions
4268         in the `cond' form.  (Bug#22991)
4270 2016-06-19  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
4272         Fix a typo in the Emacs manual
4274         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
4275         in a command name.
4277 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4279         Curved quotes in etc/NEWS etc.
4281         * etc/NEWS, nextstep/README: Prefer curved quotes in the
4282         recently-changed text documentation.  See:
4283         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00860.html
4285 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4287         Fix some single quotes in documentation
4289         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
4290         when documenting quoting styles.
4291         * etc/NEWS, nextstep/README: In these plain text files, quote
4292         'like this' consistently, rather than also (sometimes) ‘like this’
4293         or (more often) `like this'.
4295 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4297         Make lisp-completion-at-point's argument optional
4299         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
4300         the argument optional, like it was before the rename.
4302 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4304         Tweak the left precedence of '=>'
4306         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
4307         precedence of '=>', to improve indentation and sexp navigation.
4309 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4311         Indent '.' relative to the first sibling expression
4313         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
4314         Indent '.' relative to the first sibling expression, instead of the
4315         parent token (bug#17213).
4317 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4319         Make '.' associative, for easier sexp navigation
4321         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
4322         Make '.' associative, for easier sexp navigation.
4324 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
4326         Revert "Simplify "Visit New File" to "New File""
4328         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
4330 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
4332         Simplify "Visit New File" to "New File"
4334         * doc/emacs/files.texi, lisp/menu-bar.el (menu-bar-file-menu),
4335           lisp/startup.el(normal-mouse-start-screen,
4336           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
4337           File".
4339 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4341         Update Unicode notes for importing a new Unicode version
4343         * admin/notes/unicode: Mention the need to update otf-script-alist
4344         in fontset.el when importing data files from a new Unicode
4345         version.
4347 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4349         Import new data files from Unicode 9.0.0beta
4351         * admin/unidata/UnicodeData.txt:
4352         * admin/unidata/Blocks.txt:
4353         * admin/unidata/BidiMirroring.txt:
4354         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
4355         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
4356         'coding-system-for-read' to 'utf-8, as various Unicode data files
4357         now actually use non-ASCII characters.
4358         (unidata-setup-list, unidata-get-name): Support the new Tangut
4359         Ideographs block.
4361         * lisp/international/characters.el (standard-case-table): Add new
4362         characters from Unicode 9.0.0.
4363         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
4364         Cyrillic Extended-C block.
4365         (char-width-table): Update ranges per Unicode 9.0.0.
4366         * lisp/international/fontset.el (script-representative-chars): Add
4367         new scripts defined by Unicode 9.0.0.
4368         (otf-script-alist): Add new OTF script tags.
4369         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
4370         Unicode 9.0.0 additions.
4372 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4374         Avoid errors in forms-mode when default major mode is text
4376         * lisp/forms.el (forms-mode): Bind
4377         change-major-mode-with-file-name to nil when calling
4378         set-visited-file-name.  (Bug#22982)
4380 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4382         Avoid crashes at startup on systems that CANNOT_DUMP
4384         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
4385         boolean variable.
4386         (init_iterator, reseat_to_string)
4387         (Fcurrent_bidi_paragraph_direction)
4388         (Fbidi_find_overridden_directionality): Use
4389         redisplay--inhibit-bidi instead of purify-flag, to determine when
4390         it's safe to reorder bidirectional text.
4392         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
4393         beginning of the file.  Reset to nil when charprop.el is
4394         successfully loaded, or when we are going to dump, whichever
4395         happens last.  (Bug#22975)
4397 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4399         Fix documentation of seq.el functions
4401         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
4402         cross-references.  Fix formatting.  (Bug#22992)
4404 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4406         Support Ruby 2.3.0's safe navigation operator
4408         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
4409         (ruby-smie--backward-token): Tokenize '&.' as '.'.
4410         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
4412         * test/indent/ruby.rb: Add an example using safe navigation
4413         operator.  Fix a syntax error in existing example.
4415 2016-06-19  John Wiegley  <johnw@newartisans.com>
4417         Update Emacs manual section related to character folding
4419         * doc/emacs/search.texi: Character folding is not on by default.
4421 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4423         Update admin/notes/unicode
4425         * admin/notes/unicode: Update the list of files from the UCD we
4426         are using.  Mention the possible need to change 'ucs-names' when
4427         importing a new version of the Unicode Standard.
4429 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4431         Add symref-filepattern entries for c?perl-mode
4433         * lisp/cedet/semantic/symref/grep.el
4434         (semantic-symref-filepattern-alist): Add entries for perl-mode and
4435         cperl-mode.
4437 2016-06-19  Ken Raeburn  <raeburn@raeburn.org>
4439         Don't use XRANDR 1.3 extensions if the server doesn't support them.
4441         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
4442         version number.
4443         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
4444         after querying the X server.
4445         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
4446         XRRGetScreenResourcesCurrent if the server doesn't support at least
4447         RANDR version 1.3.  Conditionalize the code blocks on compiling
4448         against library version 1.3 or better, rather than feature tests for
4449         each function.
4450         * configure.ac: Stop testing for those two functions.
4452 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4454         Sync with gnulib
4456         This incorporates:
4457         2016-03-08 intprops: make .h file license match module
4458         2016-03-08 acl: fix missing return on Cygwin
4459         2016-03-05 extern-inline: port to PGI CC
4460         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
4461         * m4/extern-inline.m4:
4462         Copy from gnulib.
4464 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4466         Rework C source files to avoid ^(
4468         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
4469         at the start of a line unless it starts a function.  This change
4470         is a short-term hack; in the longer run we plan to fix cc-mode’s
4471         performance for C files that have ‘(’ at the start of a line in a
4472         comment or string.
4474 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4476         By default, etags produces unqualified Perl tag names
4478         * lib-src/etags.c (Perl_functions): Produce unqualified names,
4479         unless -Q was specified.
4480         (print_help): Update the description of -Q.
4482         * doc/man/etags.1: Update the documentation of -Q.
4484         * test/etags/ETAGS.good_1:
4485         * test/etags/ETAGS.good_2:
4486         * test/etags/ETAGS.good_3:
4487         * test/etags/ETAGS.good_4:
4488         * test/etags/ETAGS.good_5:
4489         * test/etags/CTAGS.good: Adapt the expected test results to the
4490         changed Perl functionality.
4492 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4494         Indent methods with keyword names correctly
4496         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
4497         Rename to ruby-smie--before-method-name.  Now also check if we're
4498         after a 'def' keyword.  Update both callers.
4500 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4502         Propertize character literals and special global variables differently
4504         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
4505         character literals and global variables with special names with
4506         prefix and symbol syntax classes, for SMIE to tokenize them
4507         together automatically.
4508         (ruby-font-lock-keywords): Fix an old regression in highlighting
4509         character literals.
4511 2016-06-19  John Wiegley  <johnw@newartisans.com>
4513         Change how /etc/NEWS presents character folding
4515         * NEWS: Note that character folding is no longer the default.
4517 2016-06-19  John Wiegley  <johnw@newartisans.com>
4519         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
4521         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
4523 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
4525         Properly handle lambda as read function (bug 22961)
4527         * src/lread.c (readchar): Be more strict about checking for
4528         string in cons for read_vector.
4529         (unreadchar): Likewise.
4531 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4533         Propertize operator symbol names with symbol syntax class
4535         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
4536         Do it here.
4537         (ruby-font-lock-keywords): Instead of handling them here.  Leave
4538         highlighting them to the "normal" matcher, because now we can.
4539         (ruby-smie--forward-token, ruby-smie--backward-token):
4540         Likewise, don't special-case operator symbols anymore.
4541         (ruby-smie--args-separator-p): Simplify the regexp, match operator
4542         names with \s_.
4543         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
4544         at EOL the same way: check if the character has been assigned the
4545         symbol syntax class by syntax-propertize.
4547 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4549         Stop recognizing :#{} as symbol in ruby-mode
4551         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
4552         the weird part that recognized colon followed by interpolation
4553         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
4554         syntax error in any modern version of Ruby.  Fix nearby bug reference.
4556 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4558         Allow using the left shift operator without spaces on both sides
4560         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
4561         ruby-verify-heredoc, reverse the meaning of the return value, and
4562         short-circuit if preceded by a symbol not separated by whitespace.
4564         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
4565         (ruby-no-heredoc-class-self): New tests.
4567 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
4569         Properly handle unquoting in wdired (bug 22938)
4571         The recorded old names are not quoted, don't unquote them.
4573         * lisp/wdired.el (wdired-normalize-filename): Add argument
4574         unquotep, only unquote if non-nil.
4575         (wdired-get-filename): Don't unquote the old file name.
4576         (wdired-get-previous-link): Always unquote.
4578 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4580         Allow splat operator before percent literal
4582         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
4583         Allow splat operator before percent literal.
4585 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4587         Don't apply the return value of goto-char as syntax class
4589         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
4590         apply the return value of goto-char as syntax class.
4592 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4594         Guard against nested percent literals
4596         * lisp/progmodes/ruby-mode.el
4597         (ruby-syntax-propertize-percent-literal):
4598         Don't check the syntax status.
4599         (ruby-syntax-propertize): Check it here.  And also guard against
4600         being in a larger percent literal.
4602         * test/automated/ruby-mode-tests.el
4603         (ruby-no-nested-percent-literals): New test.
4605 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4607         Recognize iuwu-mod after an escaped newline
4609         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
4610         newline is escaped.
4611         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
4612         correctly.
4614 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
4616         Fix symbolic mode string conversion for s and t
4618         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
4619         ?t.
4620         (file-modes-symbolic-to-number): Default to a for ts permissions.
4622 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4624         Update 'ucs-names' database
4626         * lisp/international/mule-cmds.el (ucs-names): Update used and
4627         unused ranges from the latest UnicodeData.txt.
4629 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4631         Improve doc string of 'shell-command'
4633         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
4634         for.  (Bug#22926)
4636 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4638         Make the code in movemail_strftime more general
4640         * lib-src/movemail.c (movemail_strftime): Transform the format
4641         string passed by the caller instead of using a separate format
4642         string.
4644 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4646         Speed up redisplay of binary files with long series of nulls
4648         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
4649         for a character needed for resolving the type of a series of BN
4650         and ET characters, as required by rule W5 of UAX#9, if the results
4651         of the resolution are known in advance, because we are at level
4652         zero, and the previous strong character was L.
4653         (bidi_resolve_neutral): Partially resurrect the optimization for a
4654         long series of control characters in an otherwise strictly L2R
4655         text.
4656         (bidi_level_of_next_char): Don't enter the loop that searches for
4657         a paragraph separator if the current character is already at base
4658         embedding level.  (Bug#22739)
4660 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4662         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
4664         Remove the highlighting support for quoting 'like this' inside
4665         Lisp docstrings.  This part of
4666         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
4667         unintentional, considering substitute-command-keys gives wrong
4668         output for such usage.
4669         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
4670         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
4671         straight quotes as symbol.
4673 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4675         Restore leading space in movemail pop output
4677         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
4678         (strftime) [WINDOWSNT]: New macro.
4679         (mbx_delimit_begin): Go back to previous version of this code,
4680         now that there’s a special-purpose WINDOWSNT implementation
4681         that should do the right thing.  That way, the output continues
4682         to use leading space rather than leading zero for day of month.
4684 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4686         Fix bidi-paragraph-direction in Rmail view buffer
4688         * lisp/mail/rmail.el (rmail-show-message-1): Reset
4689         bidi-paragraph-direction to nil before formatting the message for
4690         display.
4692 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4694         Don't misindent computed property generator methods
4696         * lisp/progmodes/js.el (js--looking-at-operator-p):
4697         Don't misindent computed property generator methods
4698         (https://github.com/mooz/js2-mode/issues/317).
4700 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4702         Fix mbox files produced by movemail on MS-Windows
4704         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
4705         format specifiers, as at least the MS-Windows version of strftime
4706         doesn't support %e and %T.
4708 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4710         doc string file descriptor exhaustion fix
4712         * src/doc.c (get_doc_string): Move newly-added check to a better
4713         location (Bug#22814).
4715 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
4717         Fix Bug#22814
4719         * src/doc.c (get_doc_string): Raise an error in case too many
4720         files are open.  (Bug#22814)
4722 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
4724         Fix insertion of edited servers in the dribble file
4726         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
4727         insert explicit newlines, because they're quoted (bug#22903).
4729         Backport:
4731         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
4733 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
4735         Fix previous fix of enlarge-/shrink-window
4737         * lisp/window.el (enlarge-window, shrink-window): Consistently
4738         signal user-error instead of error.  Resize minibuffer window by
4739         delta lines instead of pixels.  When a window cannot be resized,
4740         signal an error only when this function was invoked by a command
4741         in the enlarge-/shrink-window group (this restores the behavior
4742         before the fix of bug#22723 for the non-interactive case).
4744 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
4746         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
4748 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
4750         Complete temperature units in calc-convert-temperature
4752         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
4753         temperature units in math-standard-units.
4755 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4757         Make sure to use case-sensitive search
4759         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
4760         use case-sensitive search.
4762 2016-06-19  Ulf Jasper  <ulf.jasper@web.de>
4764         Prevent infinite loop on not-well-formed xml. (Bug#16344)
4766         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
4767         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
4768           test cases for Bug#16344.
4770 2016-06-19  Alan Third  <alan@idiocy.org>
4772         Add the missing test case for the previous patch
4774         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
4775         any processing.
4776         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
4777         DABBREV--SUBSTITUTE-EXPANSION.
4778         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
4780 2016-06-19  Alan Third  <alan@idiocy.org>
4782         Use the correct dabbrev expansion
4784         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
4785         any processing.
4786         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
4787         DABBREV--SUBSTITUTE-EXPANSION.
4788         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
4790 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
4792         Bump version to 25.0.92
4794         * README:
4795         * configure.ac:
4796         * msdos/sed2v2.inp: Bump version to 25.0.92.
4798 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
4800         * etc/AUTHORS: Update the AUTHORS file
4802 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
4804         authors.el updates
4806         * admin/authors.el (authors-ignored-files): Addition.
4808 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
4809 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4811         Fix Bug#22859
4813         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
4814         event in case of kqueue and file1 is nil.  (Bug#22859)
4816 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4818         Fix reordering of bidi text in an isolate inside an override
4820         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
4821         of FSI with either LRI or RLI, as determined by the first strong
4822         directional character in the isolate.  This prevents failure to
4823         isolate when the FSI...PDI text is inside a directional override.
4824         (Bug#22786)
4826 2016-03-04  Alan Mackenzie  <acm@muc.de>
4828         Document c-guess-basic-syntax in the CC Mode manual.
4830         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
4831         pxrefs to Custom Line-Up and Other Indentation.
4832         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
4833         Syntactic Analysis.
4835 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4837         Fix targets in test/automated/Makefile.in
4839         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
4840         empty target and target all.
4842 2016-03-04  Leo Liu  <sdl.web@gmail.com>
4844         Comment on last change to define-derived-mode
4846         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
4848 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4850         Allow binding `url-mime-accept-string'
4852         * lisp/url/url-http.el (url-http): Allow binding
4853         `url-mime-accept-string' (bug#22855).
4855         Backport:
4857         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
4859 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4861         Also allow setting the paragraph direction to nil
4863         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
4864         setting the paragraph direction to nil ("auto").
4866 2016-03-04  Anders Lindgren  <andlind@gmail.com>
4868         Made the new OS X visible bell more visible.
4870         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
4871           "caution" image five times, as the image in its original size
4872           was hard to see.
4874 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4876         Use the correct background color when filling nested <divs>
4878         * lisp/net/shr.el (shr-face-background): Return the first
4879         background, because that's the one that's visible (bug#22680).
4881         Backport:
4883         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
4885 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4887         Make <div> in <li> not insert extra newlines
4889         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
4890         extra newlines (bug#19587).
4892         Backport:
4894         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
4896 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
4898         Uncomment the next-error-function integration in xref
4900         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
4901         Uncomment the next-error-function integration
4902         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
4904 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
4906         Remove the word "valid", to avoid ambiguity
4908         * doc/emacs/maintaining.texi (Identifier Search)
4909         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
4911 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4913         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
4915 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4917         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
4919         * etc/NEWS:
4920         * etc/PROBLEMS: Mention this.
4922         * lisp/autorevert.el (global-auto-revert-mode): Set
4923         `auto-revert-use-notify' to nil.  (Bug#22814)
4925 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
4927         * etc/TODO: Minor quoting and grammar fixes.
4929 2016-03-04  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
4931         Fix ModelSim error parsing
4933         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
4934         ModelSim error parsing (bug#5768).
4936 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4938         Make parse-time-string-chars faster
4940         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
4941         up the code (backport:).
4943 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4945         Add a eww command to toggle paragraph direction
4947         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
4948         command and keystroke.
4950         * doc/misc/eww.texi (Advanced): Mention the `D' command.
4952 2016-03-04  Glenn Morris  <rgm@gnu.org>
4954         * nextstep/WISHLIST: Merge into etc/TODO and remove.
4956         * etc/TODO: Merge in items from nextstep/WISHLIST.
4957         * nextstep/README: Update for this change.
4959 2016-03-04  Andreas Schwab  <schwab@linux-m68k.org>
4961         Fix char signedness issue in bidi code
4963         * src/dispextern.h (struct bidi_t): Change type of resolved_level
4964         and isolate_level to signed char.  (Bug#22830)
4966 2016-03-04  Andreas Schwab  <schwab@linux-m68k.org>
4968         * lib-src/pop.c (socket_connection): Fix format string.
4970 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4972         Avoid inflooping in thing-at-point-looking-at
4974         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
4975         with regular expressions whose matching doesn't move point.
4976         (Bug#22756)
4977         Describe the argument DISTANCE in the doc string.
4979 2016-03-04  Leo Liu  <sdl.web@gmail.com>
4981         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
4983 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4985         etc/PROBLEMS: Mention problems with using file descriptors
4987         * etc/PROBLEMS: Mention problems with using file descriptors
4988         of kqueue file notification library.
4990 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>
4992         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
4994 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4996         Remove unneeded workaround in xftfont.c
4998         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
4999         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
5000         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
5002 2016-03-04  Stefan Monnier  <monnier@iro.umontreal.ca>
5004         * lisp/saveplace.el (save-place-local-mode): New minor mode
5006         (toggle-save-place): Define as obsolete alias.
5007         (save-place--setup-hooks): New function.
5008         (save-place-mode): Use it.
5010 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5012         Fix redisplay on a TTY after 'make-frame'
5014         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
5015         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
5017 2016-03-04  Alan Mackenzie  <acm@muc.de>
5019         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
5021         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
5022         `syntax-after' to ensure syntax-table text properties are respected.
5024 2016-03-04  Magnus Henoch  <magnus.henoch@gmail.com>
5026         Input method polish-slash should not use keyboard translation
5028         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
5029         polish-slash should not use keyboard translation (bug#19081).
5031 2016-03-04  Chris Feng  <chris.w.feng@gmail.com>
5033         Fix an assertion
5035         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
5036         implies start == 0) separately.
5038 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5040         Fix 'toggle-save-place'
5042         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
5043         support save-place in the buffer.  Autoload the command.
5045 2016-03-04  Stefan Monnier  <monnier@iro.umontreal.ca>
5047         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
5049         * src/keyboard.c (read_key_sequence): Don't inadvertently set
5050         immediate_echo when we don't want any echo-keystrokes.
5051         (echo_keystrokes_p): Move earlier.
5053 2016-03-04  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
5055         Minor fixes in calculator.el
5057         * lisp/calculator.el (calculator-mode-map): Bind `E' for
5058         `calculator-exp'.
5059         (calculator-last-input): Fix a bug with pressing F1.
5060         (Bug#20764)
5062 2016-03-04  Anders Lindgren  <andlind@gmail.com>
5064         Update HISTORY section in readme for the NextStep interface.
5066         * nextstep/README: Update HISTORY after suggestion
5067         from former maintainer Adrian Robert.
5069 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5071         Improve documentation of 'save-place-mode'
5073         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
5074         turning on 'save-place-mode' globally.
5076         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
5077         on the mode in all buffers.
5079 2016-03-04  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
5081         Allocate glyph matrices for the initial frame
5083         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
5085         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
5087 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
5089         Fix white space in last checkin
5091 2016-03-04  Dima Kogan  <gnuplot@dima.secretsauce.net>
5093         Make `insert-pair' always leave the cursor where documented
5095         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
5096         insert-pair states that after insertion, the point ends up
5097         after the opening character. This was not true if the pair was
5098         inserted to surround a region (bug#16949).
5100 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>
5102         etc/NEWS: Mention the new second parameter to `package-install'
5104         * etc/NEWS: Mention the new second parameter to
5105         `package-install' (bug#22784).
5107 2016-03-04  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
5109         Highlight assignments in Makefiles more correctly
5111         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
5112         Highlight assignments preceded by a TAB character correctly
5113         (bug#20787).
5116         Backport:
5118         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
5120 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5122         Improve documentation of focus-related hooks
5124         * doc/lispref/commands.texi (Focus Events): Mention focus-related
5125         hooks.  (Bug#21728)
5127 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5129         Further improve doc string of 'disable-point-adjustment'
5131         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
5132         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
5134 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
5136         Further adaptions in file-notify-tests.el for w32notify
5138         * test/automated/file-notify-tests.el
5139         (file-notify--test-read-event-timeout, file-notify--test-timeout):
5140         Decrease values.
5141         (file-notify-test03-autorevert)
5142         (file-notify-test04-file-validity)
5143         (file-notify-test05-dir-validity): Run tests also for w32notify.
5144         (file-notify-test08-watched-file-in-watched-dir):
5145         Adapt expected events for w32notify.
5147 2016-03-04  Jan Tatarik  <jan.tatarik@gmail.com>
5149         Don't bug out on localised dates in gnus-icalendar
5151         * lisp/gnus/gnus-icalendar.el
5152         (gnus-icalendar-event:org-timestamp): Don't bug out on
5153         localised dates.
5155 2016-03-04  Drew Adams  <drew.adams@oracle.com>
5157         (ls-lisp-insert-directory): Make -B work
5159         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
5160         (bug#20776).
5162         Backport:
5164         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
5166 2016-03-04  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
5168         Make buttons in header lines work
5170         * lisp/help-mode.el (help-button-action): `help-xref-button' in
5171         header line doesn't work (bug#21024).
5173         Backport:
5175         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
5177 2016-03-04  Christopher Wellons  <wellons@nullprogram.com>
5179         Make setf for frame-height/width work again
5181         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
5182         frame-height/width work again (bug#21979).
5184 2016-03-04  Łukasz Stelmach  <stlman@poczta.fm>
5186         Encode header strings before printing
5188         * lisp/ps-print.el (ps-generate-header-line): Encode the
5189         header strings to avoid problems with non-ASCII headers
5190         (bug#22611).
5192         Backport:
5194         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
5196 2016-03-04  Nicolas Richard  <youngfrog@members.fsf.org>
5198         (cl-union): Do not ignore :test argument when lists are equal.
5200         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
5202         * test/automated/cl-seq-tests.el: New file (bug#22729).
5204 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
5206         Add `isearch' to `basic-faces'
5208         * doc/lispref/display.texi (Basic Faces): Mention the isearch
5209         and lazy-highlight faces.
5211         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
5212         group, too (bug#22760).
5214 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
5216         Make $, : and @ "prefix characters" in ruby-mode
5218         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
5219         syntax classes of $, : and @ to "prefix character"
5220         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
5221         (ruby-syntax-propertize): Undo that specifically for colons
5222         followed by an opening paren or bracket.
5223         (ruby-font-lock-keyword-beg-re): Include colon character.
5224         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
5225         not being a symbol constituent anymore.
5227 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
5229         Make find-tag-default-bounds more strict
5231         * lisp/subr.el (find-tag-default-bounds): Delegate to
5232         bounds-of-thing-at-point (bug#22692).
5234 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
5236         Minor fixes in filenotify.el
5238         * lisp/filenotify.el (top): Require 'cl-lib.
5239         (file-notify--rm-descriptor)
5240         (file-notify--event-watched-file): Use cl-caadr.
5241         (file-notify-callback): Handle also `ignore' events from inotify.
5243 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
5245         Additional fixes for file notification
5247         * lisp/filenotify.el (top): Require 'cl when compiling.
5248         (file-notify--event-watched-file): New defun.
5249         (file-notify--rm-descriptor, file-notify-callback):
5250         Handle case of several monitors running in parallel.
5252         * test/automated/file-notify-tests.el
5253         (file-notify--test-event-test): Simplify test.
5254         (file-notify--test-with-events): Get rid of outer definition.
5255         Check also results of tests performed in callbacks.
5256         (file-notify-test02-events): No wrapping when calling
5257         `file-notify-rm-watch'.  No special checking for callback tests.
5258         (file-notify-test07-backup): Adapt expected events for gfilenotify.
5259         (file-notify-test08-watched-file-in-watched-dir): Improve.
5261 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5263         Fix documentation of 'global-disable-point-adjustment'
5265         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
5266         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
5268 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5270         Set file modes of pinentry socket for extra safety
5272         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
5273         (pinentry-start): Change the file modes of the socket file to 0700.
5274         This is just for extra safety since the parent directory is already
5275         protected with `server-ensure-safe-dir'.
5277 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5279         Clarify GnuPG version compatibility chapter
5281         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
5282         description a bit clearer.
5284 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5286         Revert "Change the default socket location for pinentry"
5288         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
5289         It turned out that the address is fixed in Pinentry itself.
5291 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
5293         Kill off xref--display-history
5295         Now that the core workflow keeps the xref window visible, there's
5296         less value in storing this history.  And it never was
5297         comprehensive enough to undo scrolling changes.
5298         * lisp/progmodes/xref.el (xref--display-history)
5299         (xref--save-to-history, xref-quit): Remove.
5300         (xref--show-pos-in-buf): Update accordingly.
5301         (xref--xref-buffer-mode-map): Remove xref-quit binding.
5303 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
5305         Keep the xref buffer visible until the user quits it explicitly
5307         * lisp/progmodes/xref.el (xref--pop-to-location):
5308         Rename WINDOW argument to ACTION.
5309         (xref--with-dedicated-window): New macro.
5310         (xref--show-pos-in-buf): Rename from `xref--display-position'.
5311         Add and handle new argument, SELECTED.  Use the above macro.
5312         (xref--show-location): Add SELECTED argument.
5313         (xref-show-location-at-point): Make an effort to avoid the
5314         original window when showing the location.
5315         (xref-goto-xref): Don't quit the xref window (bug#20487 and
5316         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
5317         (xref--query-replace-1): Use xref--with-dedicated-window as well.
5318         (xref--next-error-function): Call xref--show-location instead of
5319         xref--pop-to-location.
5320         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
5321         Only pass that value to xref--pop-to-location.  Pass the current
5322         selected window to xref-show-xrefs-function as the `window'
5323         property.
5324         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
5325         to DISPLAY-ACTION as well.
5327 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5329         Change the default socket location for pinentry
5331         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
5332         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
5333         ~/.emacs.d/pinentry.
5334         (pinentry-start): Change the file modes of the socket file to 0700.
5335         This is just for extra safety since the parent directory is already
5336         protected with `server-ensure-safe-dir'.
5338 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5340         Mention how to enable pinentry feature
5342         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
5343         * lisp/net/pinentry.el: Likewise.
5345 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
5347         Sync with gnulib
5349         This incorporates:
5350         2016-02-10 stdalign: port to older HP and IBM cc
5351         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
5353 2016-03-04  David Engster  <deng@randomsample.de>
5355         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
5357         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
5358           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
5359           not an idle hook, so it's not appropriate to call it there. It will
5360           already be called in the `semantic-idle-work-core-handler', which
5361           runs when Emacs is actually idle.
5363 2016-03-04  David Engster  <deng@randomsample.de>
5365         Restore point when writing semantic table to disk
5367         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
5368           `semantic-fetch-tags' in `save-excursion', since it might move point
5369           in current buffer. (Bug #22287)
5371 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5373         Mention pinentry.el in epa manual
5375         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
5376         describing the differences between three GnuPG branches, and how
5377         to enable pinentry.el.
5378         (Caching Passphrases): Add xref to the compatibility chapter.
5380 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
5382         Fix Bug#22736
5384         * lisp/filenotify.el (file-notify-callback): Use the proper
5385         descriptor when calling the callback.  (Bug#22736)
5387         * test/automated/file-notify-tests.el
5388         (file-notify--test-event-handler): Deactivate trace.
5389         (file-notify-test08-watched-file-in-watched-dir): Bind
5390         `file-notify--test-tmpfile' temporarily in `dir-callback'.
5392 2016-03-04  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
5394         Grammar fix in doc string
5396         * lisp/custom.el (defgroup): Grammar fix in doc string.
5398 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5400         Naming fix for consistency
5402         * lisp/epg-config.el (epg-find-configuration): Rename from
5403         `epg-configuration-find' to be consistent with other epg-* functions.
5404         Change all callers.
5406 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5408         Prefer customized value for GnuPG executable
5410         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
5411         configuration if it is already set with custom.  (Bug#22747)
5413 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5415         Fix memory reservation on MS-Windows
5417         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
5418         units.  This avoids leaving gaps in reserved memory regions that
5419         no one can use, since memory reservation must produce 64KB-aligned
5420         addresses.  (Bug#22526)
5422 2016-03-04  Anders Lindgren  <andlind@gmail.com>
5424         Update NextStep readme and add wish list.
5426         * nextstep/README: Rewritten from scratch. New sections on
5427         "History", "Overview of Cocoa and Objective-C", "Guidelines",
5428         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
5429         * nextstep/WISHLIST: New file containing list of issues and ideas
5430         associated with the NS port of Emacs.
5432 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
5434         Report also result in `file-notify--test-event-handler'
5436 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
5438         Improve file-notify-test08-watched-file-in-watched-dir
5440         * test/automated/file-notify-tests.el (file-notify--test-desc2):
5441         New variable.
5442         (file-notify--test-cleanup): Use it.
5443         (file-notify--test-event-handler): Enable trace.
5444         (file-notify-test08-watched-file-in-watched-dir): Tag it as
5445         :expensive-test.  Rewrite callbacks to use
5446         `file-notify--test-event-handler'.  Read events in loop.  Check
5447         `file-notify--test-results'.
5448         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
5450 2016-03-04  Stephen Berman  <stephen.berman@gmx.net>
5452         Fix todo-mode item date editing bugs
5454         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
5455         range error by making sure the value of the numerical month date
5456         component cannot be nil.  Prevent wrong type error on trying to edit
5457         day number in February by making sure numerical instead of string
5458         value of the year component is passed to todo-read-date.
5459         (todo-read-date): When using the numerical month date component make
5460         sure to use `*' for an arbitrary month instead of its numerical value.
5462 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5464         Fix "[:upper:]" for non-ASCII characters
5466         * src/regex.c (re_match_2_internal): Support [:upper:] and
5467         [:lower:] for non-ASCII characters.  (Bug#18150)
5469 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
5471         Allow customising the article mode cursor behavior
5473         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
5475         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
5476         (gnus-article-mode): Use it.
5478 2016-03-04  Ari Roponen  <ari.roponen@gmail.com>
5480         Use pop-to-buffer-same-window in woman.el
5482         * lisp/woman.el (woman-really-find-file): Work around going to
5483         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
5484         (WoMan-find-buffer): Ditto.
5486 2016-03-04  Tassilo Horn  <tsdh@gnu.org>
5488         New filenotify test for bug#22736
5490         * test/automated/file-notify-tests.el
5491         (file-notify-test08-watched-file-in-watched-dir):
5492         (file-notify--test-desc1): New filenotify test for bug#22736
5494 2016-03-04  Marcin Borkowski  <mbork@mbork.pl>
5496         Report critical battery errors
5498         * lisp/battery.el (battery-pmset): Report critical battery
5499         errors (bug#18157).
5501 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
5503         Make eww message toggling message clearer
5505         * lisp/net/eww.el (eww-toggle-fonts): Make the message
5506         clearer.
5508 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
5510         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
5512 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
5514         Fix bugs in window resizing code
5516         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
5517         parenthesis.
5518         (shrink-window, enlarge-window): Fix bug#22723 where windows
5519         with preserved size would not get resized.  Also now signal an
5520         error when the window cannot be shrunk or enlarged as requested.
5522 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5524         Fix decoding DOS EOL in a unibyte buffer
5526         * src/coding.c (decode_eol): Loop over bytes, not characters.
5527         (Bug#5251)
5529 2016-03-04  Alan Mackenzie  <acm@muc.de>
5531         Correct c-parse-state cache manipulation error.
5533         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
5534         comparison bound.  Amend comments.
5536 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5538         Take advantage of new GnuPG version check function
5540         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
5541         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
5542         is usable.
5544 2016-03-04  Daiki Ueno  <ueno@gnu.org>
5546         Make GnuPG version check robuster
5548         We changed the default gpg program to "gpg2" from "gpg" in the commit
5549         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
5550         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
5551         series.  Check the actual version of "gpg2" at run time, and properly
5552         divert to "gpg" if necessary.
5553         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
5554         (epg-config--program-alist): New variable.
5555         (epg--configurations): New variable.
5556         (epg-configuration-find): New function.
5557         (epg-config--make-gpg-configuration): New function.
5558         (epg-config--make-gpgsm-configuration): New function.
5559         (epg-configuration): Mark as obsolete.
5560         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
5562 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
5564         Fix x-load-color-file pointer signedness
5566         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
5567         For sscanf and int *, use %d, not %u.
5568         Problem found on Ubuntu 15.10 x32, which lacks X support.
5570 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
5572         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
5574 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
5576         Follow convention for greek letter constants.
5578         * lisp/calc/calc-units.el (math-standard-units):
5579         Add "sigma" and alias σ to it.
5581 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
5583         Add Stefan-Boltzmann constant to calc units table.
5585         * lisp/calc/calc-units.el (math-standard-units):
5586         Add Stefan-Boltzmann constant.
5588 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
5590         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
5592 2016-03-04  Glenn Morris  <rgm@gnu.org>
5594         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
5596         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
5597         Prefill with relevant elements for term/xterm.
5599 2016-03-04  Tassilo Horn  <tsdh@gnu.org>
5601         Fix soffice UserInstallation-URL for Windows
5603         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
5604         UserInstallation-URL when calling soffice on Windows.
5606 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
5608         Fix display of <pre> elements
5610         * lisp/net/eww.el (eww-display-html): Remove CRLF before
5611         parsing so that <pre> elements don't render with ^M at the end
5612         of the lines.
5614 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5616         Minor fixes in global-auto-composition-mode
5618         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
5619         Produce prettier names of globalized minor modes.
5620         * lisp/composite.el (global-auto-composition-mode): Make it a
5621         globalized mode.  (Bug#22682)
5623 2016-03-04  Alan Mackenzie  <acm@muc.de>
5625         Allow arithmetic operators inside C++ template constructs.
5627         Fixes debbugs #22486.  This corrects the previous patch with this message
5628         which was empty.
5630         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
5631         variable.
5632         (c-<>-notable-chars-re): New language variable.
5634         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
5635         c-<>-notable-chars-re in place of the former fixed string in searching for
5636         places to stop and examine.
5637         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
5638         multichar operator in place of the former c->-op-without->-cont-regexp.
5639         Add code to skip forwards over a balanced parenthesized expression.
5641 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5643         Avoid crashes in semi-malformed 'condition-case'
5645         * src/eval.c (internal_lisp_condition_case): Treat a handler
5646         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
5648 2016-03-04  Alan Mackenzie  <acm@muc.de>
5650         Allow arithmetic operators inside C++ template constructs.
5652         Fixes debbugs #22486.
5654         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
5655         variable.
5656         (c-<>-notable-chars-re): New language variable.
5658         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
5659         c-<>-notable-chars-re in place of the former fixed string in searching for
5660         places to stop and examine.
5661         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
5662         multichar operator in place of the former c->-op-without->-cont-regexp.
5663         Add code to skip forwards over a balanced parenthesized expression.
5665 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5667         Fix regression with 'recent-keys' and keyboard macros
5669         * src/keyboard.c (record_char): Don't record in 'recent_keys'
5670         events that come from executing keyboard macros.  (Bug#22674)
5672 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5674         Fix wording in a doc-view.el comment
5676         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
5677         "illegal" for something that is not against the law.
5679 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
5681         CONTRIBUTE cleanups and updates
5683         * CONTRIBUTE: Mention URLs and info nodes more consistently,
5684         avoiding possibly-confusing punctuation adjacent to a URL, and
5685         giving full shell commands for 'info'.  Start with a brief but
5686         complete how-to, for people who want to get started right away.
5687         Then briefly discuss how to join the development process in the
5688         typical order.  Omit needless words.  Update some of the
5689         now-obsolete file names, info node names, and quoting styles.
5690         Better document emacs-NN branches and how they are merged.
5691         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
5692         and trunk to master.  This file still needs work.
5694 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
5696         Port USE_STACK_LISP_OBJECTS fix to Clang
5698         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
5699         Recent versions of Clang claim to be GCC 4.2.1 but do not have
5700         the GCC bug.
5702 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
5704         Port to x86 GCC 4.3.1 and earlier
5706         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
5707         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
5708         for GCC 4.3.1 and earlier.
5710 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5712         Fix point movement under 'scroll-conservatively'
5714         * src/xdisp.c (redisplay_window): Correct a typo in computing the
5715         effective number of text lines in a window.  (Bug#22637)
5717 2016-03-04  Thomas Plass  <thomas.plass@arcor.de>
5719         Replace colon in file name (not legal on Windows)
5721         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
5722         name (not legal on Windows). [tiny change]
5724 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5726         Fix a typo in edt.texi
5728         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
5729         "Herbert J. Skuhra" <herbert@mailbox.org>.
5731 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
5733         Make 'mmap_realloc' on MS-Windows more reliable
5735         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
5736         committing fails, return NULL.  Don't call GetLastError twice for
5737         the same API error.
5738         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
5739         before calling VirtualQuery, to avoid using garbled values if the
5740         call fails.  If committing more pages from the same block fails,
5741         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
5742         if the call to VirtualAlloc to commit more pages fails.
5743         (Bug#22526)
5745 2016-03-04  Oscar Fuentes  <ofv@wanadoo.es>
5747         Grep alias `all' shall not match parent directory
5749         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
5750           directory for `all'. Fixes bug#22577
5752 2016-03-04  Nicolas Petton  <nicolas@petton.fr>
5754         Bump version to 25.0.91
5756         * README:
5757         * configure.ac:
5758         * msdos/sed2v2.inp: Bump version to 25.0.91.
5760 2016-03-04  Nicolas Petton  <nicolas@petton.fr>
5762         * etc/AUTHORS: Update the AUTHORS file
5764 2016-03-04  Glenn Morris  <rgm@gnu.org>
5765 2016-02-15  Glenn Morris  <rgm@gnu.org>
5767         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
5769 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5771         Index tilde characters in names of backup files
5773         * doc/emacs/files.texi (Backup Names): Improve indexing.
5774         (Bug#22625)
5776 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5778         Document deprecation of hi-lock-mode's 'C-x w' bindings
5780         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
5781         "C-x w" bindings of hi-lock-mode.
5783         * etc/NEWS: Mark the deprecation entry as documented.
5785 2016-02-15  Stefan Monnier  <monnier@iro.umontreal.ca>
5787         Announce that the `C-x w' bindings are deprecated
5789 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5791         Suppress GNUstep hardening
5793         Fedora 23 normally hardens GNUstep applications, which causes
5794         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
5795         Fix this by eliding the hardening options (Bug#22518).
5796         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
5797         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
5798         (GNU_OBJC_CFLAGS): Omit options like
5799         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
5801 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5803         Fix redisplay after a large insertion
5805         * src/xdisp.c (redisplay_internal): Don't accept the results of
5806         "optimization 3" if the cursor ends up in a partially visible
5807         glyph row.  (Bug22637)
5809 2016-02-15  Andreas Schwab  <schwab@linux-m68k.org>
5811         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
5813         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
5815                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
5816                 change.  (Bug#22634)
5818 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5820         * lib-src/make-docfile.c: Include stdarg.h.
5822 2016-02-15  Alan Mackenzie  <acm@muc.de>
5824         Extend gpm-mouse-mode's doc string and doc to point out limitations.
5826         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
5827         inability to transfer text between Emacs and other programs which use GPM.
5829         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
5830         between Emacs and other progrmas which use GPM.
5832 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5834         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
5836         * lisp/isearch.el: Turn char-folding back oon by default.
5838         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
5840 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
5842         Revert "Support integer image rotation and respect EXIF rotations"
5844         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
5846         This change does not work on Fedora.
5848 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
5850         Revert "Document EXIF image rotation"
5852         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
5854         This change does not work on Fedora, for instance.
5856 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5858         Document OS X LANG default
5860         * doc/emacs/cmdargs.texi (General Variables):
5861         Document OS X Language and Region system preference.
5862         Suggested by Alan Third.
5864 2016-02-15  Alan Third  <alan@idiocy.org>
5866         Set locale when run from OS X GUI
5868         * src/emacs.c (main): Call ns_init_locale.
5869         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
5870         * src/nsterm.h: Include ns_init_locale.
5872 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5874         make-docfile cleanup for I/O, etc.
5876         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
5877         (num_globals_allocated, globals): Now static.
5878         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
5879         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
5880         Use bool for boolean.
5881         (verror): New function.
5882         (fatal, error): Use it.  API is now like printf.  All callers changed.
5883         (main): Remove err_count local that was always 0.
5884         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
5885         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
5886         Return void, not 0.
5887         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
5888         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
5889         (close_emacs_globals): Use ptrdiff_t for index, not int.
5890         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
5891         opened, rather than diagnosing but exiting with status 0.
5892         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
5893         portable now.
5895 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5897         Memory-management cleanup in make-docfile
5899         I compiled it with -fsanitize=address and fixed the leaks it detected.
5900         Also, I changed it to prefer signed to unsigned integer types,
5901         and to check for integer overflow.
5902         * lib-src/make-docfile.c:
5903         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
5904         (memory_exhausted): New function.
5905         (xmalloc, xrealloc): Use it.
5906         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
5907         (uncompiled, scan_lisp_file):
5908         Prefer signed integer types to unsigned.
5909         (xstrdup): Remove.  All uses removed.
5910         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
5911         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
5912         (add_global): Use const to pacify --enable-gcc-warnings.
5913         Make a copy here, rather than relying on strdup calls later.
5914         (add_global, write_globals, scan_c_stream):
5915         Avoid integer overflow when calculating sizes.
5916         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
5917         (scan_c_stream): Check for add_global failure.
5919 2016-02-15  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
5921         Kevin Gallagher has new email address
5923         * lisp/emulation/edt.el:
5924         * lisp/emulation/edt-lk201.el:
5925         * lisp/emulation/edt-mapper.el:
5926         * lisp/emulation/edt-pc.el:
5927         * lisp/emulation/edt-vt100.el:
5928         * etc/edt-user.el:
5929         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
5931 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5933         Improve doc strings of 'forward/backward-word-strictly'
5935         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
5936         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
5937         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
5938         Mention 'subword-mode' in the doc strings.
5940         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
5941         in the doc string.  (Bug#22560)
5943 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
5945         Describe Makefile test targets in test/README
5947         * CONTRIBUTE: Move Makefile test targets to test/README.
5949         * Makefile.in:
5950         * test/README: Describe Makefile test targets.
5952 2016-02-15  Artur Malabarba  <bruce.connor.am@gmail.com>
5954         Backport: * lisp/isearch.el: Turn char-folding off by default
5956         (search-default-mode): Set default value to nil.
5958 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
5960         Document EXIF image rotation
5962         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
5964 2016-02-15  Dima Kogan  <dima@secretsauce.net>
5966         Support integer image rotation and respect EXIF rotations
5968         * src/image.c (imagemagick_load_image): Allow integer rotations in
5969         addition to floating point rotations (bug#22591).
5970         * src/image.c (imagemagick_load_image): Images that have an
5971         orientation given in EXIF and have no explicit :rotation tag are now
5972         pre-rotated.  All information such as width/height is reported for the
5973         rotated image.
5975 2016-02-15  Matthew Carter  <m@ahungry.com>
5977         Quote table names for postgres listings (sql-mode)
5979         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
5980           unquoted table names to the completion list.
5982 2016-02-15  Juri Linkov  <juri@linkov.net>
5984         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
5986         Doc fix.
5987         (replace-search, replace-highlight): Make arg `backward' optional.
5988         (Bug#18388)
5990 2016-02-15  Juri Linkov  <juri@linkov.net>
5992         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
5994         (previous-line-or-history-element): Reset temporary-goal-column.
5995         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
5997 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5999         Suppress ACL ops if configured with --disable-acl
6001         Without this patch, some ACL operations were suppressed, but not all.
6002         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
6003         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
6005 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
6007         Mention web bugs
6009         * doc/misc/emacs-mime.texi (Display Customization):
6010         Mention web bugs in the mm-html-blocked-images section.
6012 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
6014         Make mm-html-blocked-images default to "" again
6016         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
6017         Default to "" that blocks all external images.
6019         * doc/misc/emacs-mime.texi (Display Customization):
6020         Mention that mm-html-blocked-images defaults to "".
6022 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
6024         Minor alignas cleanup
6026         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
6027         over from the old way of doing things, before Bug#20862 was fixed.
6029 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
6031         Add lmalloc commentary and tweak laligned
6033         * src/alloc.c (laligned): Help compiler in a tiny way by putting
6034         the more-commonly-failing disjunct first.
6036 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
6038         Clarify documentation of key binding conventions
6040         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
6041         "punctuation characters" are reserved after "C-c".  (Bug#22604)
6043 2016-02-15  Oscar Fuentes  <ofv@wanadoo.es>
6045         * etc/NEWS: mention the `vc-faces' customization group
6047 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
6049         Sync with gnulib
6051         This incorporates:
6052         2016-02-09 stdalign: port to clang 3.7.0
6053         2016-02-06 misc: port better to gcc -fsanitize=address
6054         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
6055         Copy from gnulib.
6057 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
6059         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
6061 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
6063         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
6065         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
6066         (mm-html-blocked-images): Default to nil.
6068         * doc/misc/emacs-mime.texi (Display Customization): Mention that
6069         mm-html-inhibit-images and mm-html-blocked-images default to nil.
6071         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
6072         mm-html-blocked-images.
6074 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
6076         Increase success rate of fallback lmalloc
6078         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
6079         larger and larger sizes, to increase the probability that
6080         the allocator will return a Lisp-aligned pointer.
6082 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
6084         Make backgrounds extend to the end of the lines in shr
6086         * lisp/net/shr.el (shr-face-background): Faces can also be on
6087         the form `(:background "#fff)' (bug#22547).
6089 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
6091         Make the `R' command get the correct relative <img>s
6093         * lisp/net/eww.el (eww-readable): Preserve the base URL so
6094         that image expansions are fetched from the right place (bug#22605).
6096         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
6098         Backport:
6100 2016-02-15  Mike Kupfer  <m.kupfer@acm.org>
6102         Fix typos in emacs-mime.texi and gnus.texi
6104         * doc/misc/emacs-mime.texi (Display Customization):
6105         * doc/misc/gnus.texi (HTML): Fix typo.
6107 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
6109         * doc/misc/emacs-mime.texi (Display Customization):
6110         Doc fix for mm-html-inhibit-images.
6112 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
6114         Fix message-cross-post-followup-to group names
6116         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
6117         insert group names like "nntp+foo:zot", because those aren't valid.
6119 2016-02-15  David Edmondson  <dme@dme.org>
6121         Compare recipient and keys case-insensitively
6123         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
6124         recipient address with that from a key, do so in a case insensitive
6125         manner (bug#22603).
6127 2016-02-15  Glenn Morris  <rgm@gnu.org>
6129         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
6131 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
6133         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
6135         * doc/misc/emacs-mime.texi (Display Customization):
6136         Remove mm-inline-text-html-with-images; add documentations for
6137         mm-html-inhibit-images and mm-html-blocked-images.
6139         * lisp/gnus/gnus-art.el (gnus-article-show-images):
6140         No need to bind mm-inline-text-html-with-images.
6141         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
6142         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
6143         bind mm-html-inhibit-images and mm-html-blocked-images.
6144         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
6145         (gnus-mm-display-part, gnus-mime-display-single)
6146         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
6148         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
6149         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
6150         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
6151         mm-html-inhibit-images and mm-html-blocked-images respectively
6152         instead of gnus-inhibit-images and gnus-blocked-images.
6154         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
6155         instead of mm-inline-text-html-with-images.
6157 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
6159         Port to FreeBSD 11-CURRENT i386
6161         Problem reported by Herbert J. Skuhra in:
6162         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
6163         Instead of trying
6164         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
6165         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
6166         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
6167         (MALLOC_IS_GC_ALIGNED): New macro.
6168         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
6169         No longer needed now that alloc.c uses lmalloc and lrealloc.
6171 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
6173         Some fixes in file-notify-tests.el
6175         * test/automated/file-notify-tests.el
6176         (file-notify--test-with-events-check)
6177         (file-notify--test-with-events-explainer): New defuns.
6178         (file-notify--test-with-events): Use it.
6179         (file-notify-test07-backup): Fix docstring.  Some of the
6180         backends fire two `changed' events.  Backup by rename doesn't
6181         work for kqueue.
6183 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
6185         Fix Bug#22557
6187         * lisp/filenotify.el (file-notify-callback): Do not send a
6188         `stopped' event in case of backup by renaming.  (Bug#22557)
6190         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
6191         all targets but check and check-maybe.
6193         * test/automated/file-notify-tests.el
6194         (file-notify--test-read-event-timeout): New defconst.
6195         (file-notify--deftest-remote, file-notify--wait-for-events)
6196         (file-notify-test02-events)
6197         (file-notify-test04-file-validity)
6198         (file-notify-test06-many-events): Use it.
6199         (file-notify--test-cleanup): Make it more robust.  Delete also
6200         backup file.
6201         (file-notify-test07-backup): New test.
6203 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
6205         Fix test for dladdr
6207         Problem reported by Andreas Schwab in:
6208         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
6209         * configure.ac (dladdr): Link with LIBMODULES when checking for
6210         this function.
6212 2016-02-15  Andreas Schwab  <schwab@linux-m68k.org>
6214         Fix gnus-group-get-new-news-this-group on group with closed server
6216         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
6217         method and pass to nnimap-open-server.
6219 2016-02-15  Artur Malabarba  <bruce.connor.am@gmail.com>
6220 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
6222         * doc/lispref/sequences.texi: Add documentation for seq-map-indexed
6224 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
6226         New function seq-map-indexed
6228         * lisp/emacs-lisp/seq.el (seq-map-indexed): New function.
6229         * test/lisp/emacs-lisp/seq-tests.el: Add tests for seq-map-indexed.
6231 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
6233         * lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias.
6235 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
6237         Fix problem with wrong encoding of non-ASCII message bodies
6239         * lisp/gnus/mml.el (mml-generate-mime-1): Disable
6240         multibyteness before encoding the data.
6242 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
6244         Remove codepage setup code from mm-util
6246         * lisp/gnus/mm-util.el (mm-codepage-setup): Remove.
6247         (mm-codepage-iso-8859-list): Remove.
6248         (mm-codepage-ibm-list, mm-setup-codepage-iso-8859)
6249         (mm-setup-codepage-ibm): Remove.
6250         (mm-charset-eval-alist): Remove the code pages from the
6251         default value.
6253 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
6255         Remove compat code for older Emacsen
6257         * lisp/gnus/gnus-art.el (gnus-button-url-regexp): Remove
6258         XEmacs compat code.
6260         * lisp/gnus/gnus-sync.el (gnus-sync-json-alist-p): Remove
6261         unused compat function.
6262         (gnus-sync-json-plist-p): Ditto.
6264         * lisp/gnus/message.el (message-default-charset): Make obsolete.
6265         (message-info): Remove compat code.
6266         (message-setup-fill-variables): Remove kludge needed earlier
6267         to not overwrite `normal-auto-fill-function'.
6268         (message-split-line): Remove compat code.
6270         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Remove
6271         compat code.
6273 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
6275         Remove some compat functions from gmm-utils.el
6277         * lisp/gnus/gmm-utils.el (gmm-tool-bar-from-list): Remove
6278         compat code.
6279         (gmm-image-search-load-path): Remove.
6280         (gmm-image-load-path-for-library): Remove.
6282 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
6284         Remove the gmm-lazy and nnmail-lazy compat widgets
6286         * lisp/gnus/gmm-utils.el (gmm-lazy): Remove.
6288         * lisp/gnus/nnmail.el (nnmail-lazy): Remove.
6290 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6292         Clean up nnimap-request-move-article slightly
6294         * lisp/gnus/nnheader.el (subr-x): Require.
6296         * lisp/gnus/nnimap.el (nnimap-request-move-article): Clean up
6297         the code slightly.
6299 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6301         Use open-network-stream instead of open-protocol-stream
6303         * lisp/gnus/nnimap.el: Use open-network-stream instead of
6304         open-protocol-stream.
6306         * lisp/gnus/nntp.el: Ditto.
6308         * lisp/gnus/pop3.el: Ditto.
6310         * lisp/gnus/sieve-manage.el: Ditto.
6312         * lisp/net/network-stream.el (open-protocol-stream): Make obsolete.
6314 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6316         Remove compat code that relies on (featurep 'mule)
6318         * lisp/gnus/gnus-group.el (gnus-group-name-decode): Remove
6319         compat code.
6321         * lisp/gnus/gnus-start.el (gnus-read-descriptions-file):
6322         Remove compat code.
6324         * lisp/gnus/mm-bodies.el (mm-decode-body, mm-decode-string):
6325         Remove compat code.
6327         * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
6328         Remove compat code.
6329         (mm-w3m-standalone-supports-m17n-p): Ditto.
6331 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6333         Remove compat functions from starttls.el
6335         * lisp/gnus/starttls.el
6336         (starttls-set-process-query-on-exit-flag): Remove.
6338 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6340         Remove compat functions from smime.el
6342         * lisp/gnus/smime.el (smime-replace-in-string): Remove.
6343         (smime-make-temp-file): Remove.
6345 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6347         Remove compat code from smiley
6349         * lisp/gnus/smiley.el (smiley-style): Remove compat code.
6351 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6353         Remove compat code from rfc2047
6355         * lisp/gnus/rfc2047.el (rfc2047-encode-message-header): Remove
6356         compat code.
6357         (rfc2047-decode-string): Ditto.
6359 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6361         Remove compat function from pop3
6363         * lisp/gnus/pop3.el (pop3-set-process-query-on-exit-flag): Remove.
6365 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6367         Remove compat code in Gnus backends
6369         * lisp/gnus/nndiary.el (nndiary-error): Remove.
6371         * lisp/gnus/nndraft.el (nndraft-request-associate-buffer): Ditto.
6373         * lisp/gnus/nnfolder.el (nnfolder-read-folder): Ditto.
6375         * lisp/gnus/nnheader.el (nnheader-find-file-noselect): Ditto.
6377         * lisp/gnus/nnimap.el (nnimap-log-buffer): Remove compat code.
6379 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6381         Remove compat code from some mml files
6383         * lisp/gnus/mml-sec.el (mml-secure-passphrase-cache-expiry):
6384         Remove compat code.
6386         * lisp/gnus/mml-smime.el (mml-smime-openssl-sign-query):
6387         Always use `mail-extract-address-components', since this isn't
6388         time critical.
6389         (mml-smime-get-dns-cert): Ditto.
6391         * lisp/gnus/mml.el (mml-preview): Remove compat code.
6393 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6395         Remove compat code and compat functions from mm-util.el
6397         * lisp/gnus/mm-util.el (mm-mime-mule-charset-alist): Remove
6398         compat code.
6399         (mm-coding-system-priorities)
6400         (mm-mule-charset-to-mime-charset, mm-charset-after)
6401         (mm-mime-charset, mm-iso-8859-x-to-15-region): Remove compat code.
6402         (mm-detect-coding-region): Define unconditionally.
6403         (mm-detect-mime-charset-region): Ditto.
6404         (mm-coding-system-to-mime-charset): It's 'mime-charset now.
6405         (coding-system-name)
6406         (find-file-coding-system-for-read-from-filename)
6407         (find-operation-coding-system): Remove aliases.
6409 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6411         Remove some compat code from mm-*.el
6413         * lisp/gnus/mm-bodies.el (mm-decode-body): Ditto.
6415         * lisp/gnus/mm-decode.el (mm-tmp-directory)
6416         (mm-valid-image-format-p): Remove compat code.
6418         * lisp/gnus/mm-url.el (mm-url-insert-file-contents): Remove
6419         "Connection" "Close" workaround for older Emacsen.
6421 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6423         Remove compat code and functions from message.el
6425         * lisp/gnus/message.el (message-send-mail-function): Remove
6426         compat code.
6427         (message-dont-reply-to-names, message-mode)
6428         (message-setup-fill-variables, message-fill-paragraph)
6429         (message-remove-blank-cited-lines, message-make-from)
6430         (message-forward-rmail-make-body, message-tool-bar-gnome)
6431         (message-tab): Remove compat code.
6432         (message-completion-in-region): Remove.
6433         (message-read-from-minibuffer): Remove compat code.
6435 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6437         Declare rfc1843 instead of autoloading
6439         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Declare
6440         instead of autoload.
6442 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
6444         Avoid signaling an error in 'dired-do-find-regexp-and-replace'
6446         * lisp/dired-aux.el: Require cl-lib, so that 'cl-mapcan' is
6447         autoloaded correctly.  (Bug#22613)
6449 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
6451         Fix network-stream-tests.el for MS-Windows
6453         * test/lisp/net/network-stream-tests.el
6454         (connect-to-tls-ipv6-nowait): Skip for MS-Windows builds.
6455         (connect-to-tls-ipv4-wait): Add a 0.1 sleep-for.
6457 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6459         Remove some Message compat functions
6461         * lisp/gnus/message.el (message-kill-all-overlays): Define
6462         unconditionally.
6463         (message-window-inside-pixel-edges): Remove.
6464         (mail-dont-reply-to): Remove.
6466 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6468         Remove some Gnus compat code
6470         * lisp/gnus/gnus-art.el (gnus-mime-inline-part): Remove compat code.
6471         (gnus-mm-display-part): Ditto.
6473         * lisp/gnus/gnus-start.el (gnus-dribble-read-file): Remove
6474         compat code.
6476 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6478         Sort groups before inserting them into the group buffer
6480         * lisp/gnus/gnus-group.el (gnus-group-describe-all-groups):
6481         Sort groups before inserting them.
6483 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6485         Make "unseen" tracking work again in Gnus
6487         * lisp/gnus/gnus-sum.el (gnus-update-marks): Make "unseen"
6488         tracking work again.
6490 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6492         Remove Gnus compat functions defined in gnus.el
6494         * lisp/gnus/gnus.el (gnus-extent-detached-p): Remove.
6495         (gnus-extent-start-open, gnus-character-to-event)
6496         (gnus-assq-delete-all, gnus-add-text-properties)
6497         (gnus-put-text-property, gnus-key-press-event-p):
6499 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6501         Remove compat code from gnus-uu and win
6503         * lisp/gnus/gnus-util.el (gnus-image-type-available-p): Remove
6504         compat code.
6506         * lisp/gnus/gnus-uu.el (gnus-uu-tmp-dir): Remove compat code.
6508         * lisp/gnus/gnus-win.el (gnus-frames-on-display-list): Remove.
6510 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6512         Remove several gnus-util compat functions
6514         * lisp/gnus/gnus-util.el (gnus-set-process-query-on-exit-flag): Remove.
6515         (gnus-read-shell-command): Remove.
6516         (gnus-match-substitute-replacement): Remove.
6517         (gnus-string-match-p): Remove.
6518         (gnus-string-prefix-p): Remove.
6520 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6522         Remove the gnus-merge alias
6524         * lisp/gnus/gnus-util.el (gnus-merge): Remove.
6526 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6528         Remove the gnus-union alias
6530         * lisp/gnus/gnus-util.el (gnus-union): Remove.
6532 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6534         Remove the gnus-delete-alist alias
6536         * lisp/gnus/gnus-util.el (gnus-run-mode-hooks): Remove compat code.
6537         (gnus-delete-alist): Remove.
6539 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6541         Remove the gnus-float-time alias
6543         * lisp/gnus/gnus-util.el (gnus-completion-styles): Remove
6544         compat code.
6545         (gnus-float-time): Remove.
6547 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6549         Remove compat code from gnus-srvr, start and sum
6551         * lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Remove
6552         compat code.
6554         * lisp/gnus/gnus-start.el (gnus-check-reasonable-setup):
6555         Remove compat code.
6557         * lisp/gnus/gnus-sum.el (gnus-summary-display-arrow)
6558         (gnus-summary-make-menu-bar, gnus-summary-make-tool-bar)
6559         (gnus-recenter)
6560         (gnus-summary-limit-strange-charsets-predicate)
6561         (gnus-summary-show-thread): Remove compat code.
6563 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6565         Remove compat code from gnus-spec.el
6567         * lisp/gnus/gnus-spec.el (gnus-lrm-string-p): Remove compat code.
6568         (gnus-balloon-face-function): Remove compat code.
6570 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6572         Fix compat change in last check-in
6574         * lisp/gnus/gnus-group.el
6575         (gnus-group-name-charset-group-alist): `find-coding-system'
6576         doesn't exist in Emacs.
6578 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6580         Always use url-queue
6582         * lisp/gnus/gnus-html.el (gnus-html-schedule-image-fetching):
6583         Always use url-queue.
6585 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6587         Remove compat functions from gnus-html.el
6589         * lisp/gnus/gnus-html.el (gnus-html-encode-url-chars): Remove.
6591 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6593         Remove compat code from gnus-group.el
6595         * lisp/gnus/gnus-group.el (gnus-group-name-charset-group-alist)
6596         (gnus-group-make-tool-bar, gnus-group-update-tool-bar): Remove compat code.
6598 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6600         Define gnus-diary-kill-entire-line unconditionally
6602         * lisp/gnus/gnus-diary.el (gnus-diary-kill-entire-line):
6603         Define unconditionally.
6605 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6607         Remove compat code from gnus-cache and gnus-bookmark
6609         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-bmenu-mode-map): Ditto.
6611         * lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-name):
6612         Remove compat code.
6614 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6616         Remove compat code from gnus-art.el
6618         * lisp/gnus/gnus-art.el (gnus-article-prepare)
6619         (gnus-mime-copy-part, gnus-output-to-file)
6620         (gnus-article-reply-with-original)
6621         (gnus-button-handle-apropos-variable)
6622         (gnus-button-handle-apropos-documentation):
6624 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6626         Remove compat code from gnus-agent.el
6628         * lisp/gnus/gnus-agent.el (gnus-agent-make-mode-line-string):
6629         Remove compat code.
6631 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6633         Rewrite gmm-labels usage to use cl-labels
6635         * lisp/gnus/gmm-utils.el (gmm-tool-bar-style): Remove compat code.
6636         (gmm-labels): Remove.
6638 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6640         Remove compat code from canlock.el
6642         * lisp/gnus/canlock.el (defmacro): Remove
6644 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6646         Remove compat code from auth-source
6648         * lisp/gnus/auth-source.el (auth-source-read-char-choice):
6649         Remove compat code.
6651 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6653         Fix gnus-group.el compilation warnings about unprefixed variables
6655         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): Avoid
6656         compilation warnings by passing in the dynamic variables as
6657         explicit lexical parameters to `eval'.
6659 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
6661         Fix the :tracker slot name
6663         * lisp/gnus/registry.el (registry-lookup-secondary): The
6664         `tracker' slot is called `tracker', not `:tracker'.
6666 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6668         Fix compilation warnings in gnus-art.el
6670         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Autoload.
6671         (gnus-article-hide): Avoid compilation warnings.
6673 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6675         Fix compilation warning in gnus-score.el
6677         * lisp/gnus/gnus-score.el (gnus-art): Require to silence byte
6678         compiler.
6680 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
6682         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
6684         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
6686         This makes nnimap groups not be activated.
6688 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6690         Fix encoding problem introduced by previous patch series
6692         * lisp/gnus/rfc2047.el: Ditto (bug#22648).
6694         * lisp/gnus/rfc2231.el: Fix problem created by the
6695         mm-replace-in-string conversion.
6697 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6699         Revert "Avoid defvarring prefix-less variables"
6701         This reverts commit 303390bda34f98b400798d5383cf0d722e35ba19.
6703         The defvars are needed if we're doing lexical-binding
6705 2016-02-12  Glenn Morris  <rgm@gnu.org>
6707         * test/lisp/url/url-auth-tests.el (url-auth-test-digest-auth):
6708         Make it pass.
6710         * test/lisp/url/url-auth-tests.el
6711         (url-auth-test-digest-auth-retrieve-cache): Fix obvious typo.
6713 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6715         Finish up cl-defmethoding registry,el
6717         * lisp/gnus/registry.el (initialize-instance): Use cl-defmethod.
6719 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6721         Revert the gnus-replace-in-string change, fix arguments, reapply
6723 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6725         Silence more message.el compilation warnings
6727         * lisp/gnus/message.el (message-generate-headers): Don't use
6728         variable values directly to get the header values, because
6729         that breaks with lexical binding (without unprefixed defvars).
6731 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6733         Fix various compilation warnings in message.el
6735         * lisp/gnus/message.el (message-fix-before-sending): Use
6736         read-multiple-choice instead of gnus-multiple-choice.
6737         (mm-util): Require.
6738         (rfc2047): Require.
6739         (message-remove-blank-cited-lines): Use message instead of
6740         gnus-message.
6741         (message-send): Use y-or-n-p instead of gnus-y-or-n-p.
6743 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6745         Silence compilation warning in mm-view
6747         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Silence
6748         compilation warning.
6750 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6752         Fix epg-related compilation warnings in mml-sec
6754         * lisp/gnus/mml-sec.el: Fix compilation warnings from the epg
6755         library.
6757 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6759         rmail-dont-reply-to-names is obsolete
6761         * lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Don't bind
6762         the obsolete `rmail-dont-reply-to-names' variable.
6764 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6766         Partially revert the defmethod->cl-defmethod change in registry.el
6768         * lisp/gnus/registry.el (initialize-instance): Use defmethod,
6769         since cl-defmethod doesn't work with :after.
6770         (initialize-instance): Ditto, but with :before.
6772 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6774         Avoid obsolete function in plstore
6776         * lisp/gnus/plstore.el (plstore--insert-buffer): Use setf
6777         instead of the obsolete epg-context-set-armor.
6779 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6781         Use cl-defmethod in registry.el
6783         * lisp/gnus/registry.el: Use cl-defmethod instead of the
6784         obsolete defmethod.
6786 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6788         Make sieve-manage require sasl
6790         * lisp/gnus/sieve-manage.el: Fix compilation warning by
6791         requiring sasl.
6793 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6795         Avoid defvarring prefix-less variable
6797         * lisp/gnus/mm-uu.el (mm-uu-entry): Rename from `entry'.
6799 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6801         * lisp/gnus/mailcap.el: Remove usage of mailcap-delete-duplicates.
6803 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6805         Don't use the obsolete char-valid-p function
6807         * lisp/gnus/mm-url.el (mm-url-decode-entities): Don't use the
6808         obsolete char-valid-p function.
6810 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6812         Fix missed translation in a previous commit
6814         * lisp/gnus/mailcap.el (mailcap-mime-types): Fix missed
6815         translation of mailcap-delete-duplicates.
6817 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6819         Avoid using mm-make-temp-file
6821         * lisp/gnus/mail-source.el (mail-source-delete-crash-box): Ditto.
6823         * lisp/gnus/mm-decode.el (mm-display-external): Ditto.
6825         * lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Ditto.
6827 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6829         Fix compilation warning in gnus-start
6831         * lisp/gnus/gnus-start.el (gnus-slave-save-newsrc): Avoid
6832         mm-make-temp-file.
6834 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6836         Avoid the obsoleted defmethod
6838         * lisp/gnus/gnus-icalendar.el: Use cl-defmethod instead of
6839         defmethod.
6841 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6843         Avoid defvarring prefix-less variables
6845         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): We
6846         don't need to `defvar' the short variables to allow `eval' to
6847         use them.
6849 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6851         nnweb doesn't need unibyte buffers
6853         * lisp/gnus/nnweb.el (nnweb-retrieve-headers)
6854         (nnweb-read-overview, nnweb-request-article)
6855         (nnweb-google-reference): Unibyte buffers are not needed here.
6857 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
6859         Encode before sending from nnspool
6861         * lisp/gnus/nnspool.el (nnspool-request-post): Encode data
6862         before sending it to the news server.
6864 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6866         nnrss buffers don't have to be unibyte
6868         * lisp/gnus/nnrss.el (nnrss-insert): The buffer doesn't have
6869         to be unibyte just to receive data, I think.
6871 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6873         Don't use mm-with-unibyte-current-buffer in mml2015
6875         * lisp/gnus/mml2015.el (mml2015-mailcrypt-encrypt): Don't use
6876         mm-with-unibyte-current-buffer.
6878 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6880         Don't use mm-with-unibyte-current in mml1991
6882         * lisp/gnus/mml1991.el (mml1991-epg-sign): Don't use
6883         mm-with-unibyte-current.
6885 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6887         Don't use mm-with-unibyte-current in mml1991
6889         * lisp/gnus/mml1991.el (mml1991-pgg-sign): Don't use
6890         mm-with-unibyte-current.
6892 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6894         Don't use mm-with-unibyte-buffer in utf7
6896         * lisp/gnus/utf7.el (utf7-fragment-encode): Don't use
6897         mm-with-unibyte-buffer.
6899 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6901         Remove XEmacs compat code from Gnus helper libraries
6903         * lisp/gnus/plstore.el (plstore-called-interactively-p): Remove.
6905         * lisp/gnus/pop3.el (pop3-make-date): Remove XEmacs compat.
6907         * lisp/gnus/sieve-mode.el: Remove XEmacs compat.
6909         * lisp/gnus/spam-stat.el (spam-stat-called-interactively-p): Remove.
6911 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6913         Remove XEmacs compat code from Gnus backends
6915         * lisp/gnus/mm-view.el (mm-inline-image-xemacs): Remove.
6916         (mm-inline-image): Rename from mm-inline-image-emacs.
6918         * lisp/gnus/mml.el: Remove XEmacs compat code.
6920         * lisp/gnus/nnheader.el: Remove XEmacs compat code.
6922         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Remove
6923         XEmacs compat code.
6925         * lisp/gnus/nnir.el (nnir-run-gmane): Remove XEmacs compat code.
6927         * lisp/gnus/nnmail.el (nnmail-pathname-coding-system): Remove
6928         XEmacs compat code.
6930         * lisp/gnus/nnmairix.el: Remove XEmacs compat code.
6932         * lisp/gnus/nnrss.el: Remove XEmacs compat code.
6934         * lisp/gnus/nntp.el: Remove XEmacs compat code.
6936 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6938         Remove XEmacs compat functions from mm-util.el
6940         * lisp/gnus/mm-util.el (mm-special-display-p): Remove.
6941         (mm-decode-coding-string, mm-encode-coding-string)
6942         (mm-decode-coding-region, mm-encode-coding-region): Remove.
6943         (mm-string-to-multibyte): Remove.
6944         (mm-char-or-char-int-p): Remove.
6945         (mm-ucs-to-char): Remove compat versions of the function.
6946         (mm-read-coding-system): Remove.
6947         (mm-coding-system-p): Remove compat code.
6948         (mm-enrich-utf-8-by-mule-ucs): Remove.
6949         (mm-enable-multibyte, mm-disable-multibyte): Remove compat versions.
6950         (mm-delete-duplicates): Remove.
6951         (mm-multibyte-p): Remove compat versions.
6952         (mm-xemacs-find-mime-charset-1): Remove.
6953         (mm-xemacs-find-mime-charset): Remove.
6954         (mm-make-temp-file): Made obsolete.
6955         (mm-find-buffer-file-coding-system): Remove XEmacs compat.
6957 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6959         Remove Message and mm-decode XEmacs compat code
6961         * lisp/gnus/message.el: Remove XEmacs compat code.
6963         * lisp/gnus/mm-decode.el (mm-create-image-xemacs): Remove.
6965         * lisp/gnus/mm-util.el: Remove some XEmacs compat code.
6967 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6969         Remove som XEmacs compat code from message.el
6971         * lisp/gnus/message.el: Remove some XEmacs compat code.
6973 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6975         Remove XEmacs compat code from ietf-drums.el
6977         * lisp/gnus/ietf-drums.el (ietf-drums-syntax-table): Drop
6978         XEmacs compat.
6980 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6982         Remove XEmacs compat code from gravatar.el
6984         * lisp/gnus/gravatar.el: Remove XEmacs compat code from
6985         gravatar.el.
6987 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6989         Remove more XEmacs compat code from Gnus
6991         * lisp/gnus/gnus-util.el (gnus-bound-and-true-p): Remove.
6992         (gnus-timer--function): Remove.
6994         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Remove XEmacs
6995         19.2 compat.
6997         * lisp/gnus/gnus-win.el: Remove XEmacs compat code.
6999 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
7001         Remove more XEmacs compat functions from gnus-util.el
7003         * lisp/gnus/gnus-util.el (gnus-put-display-table): Remove.
7004         (gnus-get-display-table): Remove.
7005         (gnus-format-message): Remove.
7007 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
7009         Remove more XEmacs compat functions from Gnus
7011         * lisp/gnus/gnus-util.el (gnus-next-char-property-change): Remove.
7012         (gnus-previous-char-property-change): Remove.
7013         (gnus-graphic-display-p): Remove.
7014         (gnus-select-frame-set-input-focus): Remove.
7016 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
7018         Remove more XEmacs compat code from gnus-util
7020         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
7021         all its usages).
7022         (gnus-invisible-p): Remove.
7024 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
7026         Remove gnus-make-local-hook
7028         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
7029         all its usages).
7031 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
7033         gnus-replace-in-string -> replace-regexp-in-string
7035         * lisp/gnus/gnus-util.el (gnus-replace-in-string): Declare
7036         obsolete.  Transform all usages of it into
7037         replace-regexp-in-string.
7039         * lisp/gnus/mailcap.el (mailcap-replace-in-string): Remove.
7041 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
7043         Remove Gnus XEmacs compat
7045         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Remove comment
7046         about code that doesn't work in XEmacs.
7048         * lisp/gnus/gnus-sum.el: Remove XEmacs compat.
7050         * lisp/gnus/gnus-topic.el: Remove XEmacs compat.
7052 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
7054         Remove compat functions in gnus-spec.el
7056         * lisp/gnus/gnus-spec.el (gnus-string-width-function): Remove.
7057         (gnus-substring-function): Remove.
7058         (gnus-use-correct-string-widths): Remove.
7059         (gnus-make-format-preserve-properties): Remove.
7060         (gnus-xmas-format): Remove.
7062         * lisp/gnus/gnus-srvr.el (gnus-server-mode): Remove XEmacs compat.
7064 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
7066         Remove Gnus XEmacs compat functions
7068         * lisp/gnus/gnus-registry.el: Remove XEmacs compat.
7070         * lisp/gnus/gnus-salt.el: Remove XEmacs compat.
7072         * lisp/gnus/gnus-score.el (gnus-decay-score): Remove XEmacs compat.
7074 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
7076         Remove Gnus XEmacs compatibility
7078         * lisp/gnus/gnus-demon.el (gnus-demon-idle-since): Remove
7079         XEmacs compat.
7081         * lisp/gnus/gnus-dired.el: Remove XEmacs compat.
7083         * lisp/gnus/gnus-draft.el: Remove XEmacs compat.
7085         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-insert): Remove
7086         XEmacs compat.
7088         * lisp/gnus/gnus-group.el: Remove XEmacs compat.
7090         * lisp/gnus/gnus-html.el: Remove XEmacs compat.
7092         * lisp/gnus/gnus-ml.el: Remove XEmacs compat.
7094         * lisp/gnus/gnus-picon.el (gnus-picon-style): Remove XEmacs comment.
7096 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
7098         Don't use image-map if it isn't defined
7100         * lisp/net/shr.el (shr-image-map): Only use image-map as a
7101         parent if it's defined (bug#22614).
7103 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
7105         Check for MagickAutoOrientImage
7107         * configure.ac: Check for MagickAutoOrientImage.
7109         * src/image.c (imagemagick_load_image): Don't use
7110         MagickAutoOrientImage unless it's available.
7112 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
7114         Document EXIF image rotation
7116         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
7118 2016-02-10  Dima Kogan  <dima@secretsauce.net>
7120         Support integer image rotation and respect EXIF rotations
7122         * src/image.c (imagemagick_load_image): Allow integer rotations in
7123         addition to floating point rotations (bug#22591).
7124         * src/image.c (imagemagick_load_image): Images that have an
7125         orientation given in EXIF and have no explicit :rotation tag are now
7126         pre-rotated.  All information such as width/height is reported for the
7127         rotated image.
7129 2016-02-10  Wolfgang Jenkner  <wjenkner@inode.at>
7131         * lisp/net/shr.el (image-map): Defvar it.  (Bug#22614)
7133 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
7135         * lisp/gnus/gnus-cite.el: Remove XEmacs compat code.
7137 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7139         Remove compat code from gnus-bookmark.el
7141         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-mouse-available-p): Remove.
7142         (gnus-bookmark-remove-properties): Remove.
7144 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7146         Remove XEmacs compat code from gnus-a*.el
7148         * lisp/gnus/gnus-agent.el: Remove compat code.
7150         * lisp/gnus/gnus-art.el: Remove compat code.
7152         * lisp/gnus/gnus-async.el: Remove compat code.
7154 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7156         Remove gmm compat functions
7158         * lisp/gnus/gmm-utils.el (gmm-image-search-load-path): Remove.
7159         (gmm-write-region): Remove.
7160         (gmm-called-interactively-p): Remove.
7162 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7164         * lisp/gnus/ecomplete.el: Remove XEmacs compat code.
7166 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7168         Remove compat code from compface.el
7170         * lisp/gnus/compface.el: Remove XEmacs compat code throughout.
7172 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7174         Remove the now empty gnus-ems.el and references to it
7176 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7178         Remove Gnus compat names for mouse bindings
7180         * lisp/gnus/gnus-ems.el (gnus-widget-button-keymap): Remove.
7181         (gnus-down-mouse-2): Remove.
7182         (gnus-down-mouse-3): Remove.
7184 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7186         Drop Gnus compat functions
7188         * lisp/gnus/gnus-ems.el (gnus-mule-max-width-function): Remove.
7190         * lisp/gnus/gnus-util.el (gnus-kill-all-overlays): Move here.
7192         * lisp/gnus/gnus.el (gnus-mode-line-modified): Remove.
7194 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7196         Get rid of gnus-ems-redefine
7198         * lisp/gnus/gnus-ems.el (gnus-mouse-face-prop): Remove.
7200 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7202         * lisp/gnus/gnus-spec.el: Move definition here from gnus-ems.el.
7204 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7206         Remove Gnus compat code
7208         * lisp/gnus/gnus-ems.el (gnus-ems-redefine): Remove
7209         transitional code from ten years ago.
7211 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7213         Allow interactively scaling past :max-width etc
7215         * lisp/image.el (image--current-scaling)
7216         (image--image-without-parameters): New functions.
7217         (image--change-size): Use them to allow changing the size of a
7218         image even if it has :width/:max-width (etc.) already set.
7220 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7222         * lisp/gnus/mm-decode.el (shr-image-map): Compilation fix.
7224 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7226         Allow accessing the image commands via shr
7228         * lisp/gnus/mm-decode.el (mm-convert-shr-links): Allow
7229         accessing the image commands.
7231         * lisp/net/shr.el (shr-image-map): New map used for images.
7232         (shr-urlify): Don't overwrite image maps when applying URL maps.
7234 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7236         Use a sparse image keymap
7238         * lisp/image.el (image-map): Use a sparse keymap.
7240 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7242         Put a keymap on images created with insert-image and friends
7244         * lisp/image.el (image-save): New command.
7245         (image-rotate): Ditto.
7246         (image-map): New keymap.
7247         (insert-image): Put the image-map on all images.
7248         (insert-sliced-image): Ditto.
7249         * doc/lispref/display.texi (Showing Images): Document the
7250         image map.
7252 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7254         Fix some folding issues in read-multiple-choice
7256         * lisp/subr.el (read-multiple-choice): Fix folding when you
7257         have many items.
7259 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7261         Fix typo in last checkin
7263 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7265         Remove Gnus compat functions
7267         * lisp/gnus/gnus-ems.el (gnus-mark-active-p)
7268         (gnus-region-active-p, gnus-select-lowest-window)
7269         (gnus-summary-display-table, gnus-max-width-function): Remove
7270         compat functions.
7272 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7274         Move non-compat Gnus functions to gnus-util.el
7276         * lisp/gnus/gnus-util.el (gnus-remove-image, gnus-put-image)
7277         (gnus-create-image, gnus-image-type-available-p): Move here
7278         from gnus-ems.el, since these aren't compat functions.
7280 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7282         Omit valloc decl if redundant
7284         * src/gmalloc.c (valloc): Omit decl if malloc.h is included,
7285         to pacify --enable-gcc-warnings.
7287 2016-02-09  Wolfgang Jenkner  <wjenkner@inode.at>
7289         Restore the calloc family.
7291         * src/gmalloc.c (calloc, gcalloc, hybrid_calloc): Restore definitions.
7292         They were lost in a4817d8 but calloc is still (marginally) used in
7293         code statically liked with emacs, so hybrid_calloc is needed.
7294         Also, in the non-hybrid case, we can't get rid of calloc anyway as
7295         other libraries liked with emacs may need it.
7296         * src/conf_post.h: Restore redefinition of calloc to hybrid_calloc.
7298 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7300         Remove some Gnus compat functions
7302         * lisp/gnus/gnus-ems.el (gnus-string-mark-left-to-right)
7303         (gnus-window-inside-pixel-edges, gnus-set-process-plist)
7304         (gnus-process-plist, gnus-process-get, gnus-process-put): Remove.
7306 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7308         -
7310         -
7312 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7314         Merge from origin/emacs-25
7316         4feb962 * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
7317         cc419fb Don't inloop gnus-uu-mark-thread on the last thread
7318         51c77a2 Display non-ASCII group names better in prompts
7319         f93d669 Default to gpg2 instead of gpg
7321 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7323         Merge from origin/emacs-25
7325         9ffe7dd * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
7326         16140f7 * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
7327         3db6adb * lisp/isearch.el (search-default-mode)
7328         4ea1ea7 * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
7329         c77ffc8 Use monitor's resolution for positioning tooltips
7330         49e5749 Fix file-notify-test on MS-Windows
7331         be1d874 Fix issues found by auditing w32notify code
7332         87ae218 Extend etags Ruby support for accessors
7333         aa35257 Update publicsuffix.txt.
7334         6816bff Ensure that Gnus dribble handling allows removing entries
7335         691feae Be consistent when using encoded strings in nnimap data
7336         3ed423b Display the decoded Gnus group name
7337         5428b5b Use completion-ignore-case instead of defining command
7339 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7341         Merge from origin/emacs-25
7343         1eaf68f * test/automated/file-notify-tests.el (file-notify-test06-many-events):
7344         d333716 ; * etc/NEWS: Expand news entry for scss-mode
7345         c32c16f ; Better document changes in ls-lisp default behavior
7346         dc6eed2 Fix doc string of tls-program
7348 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7350         Merge from origin/emacs-25
7352         2c117fc * etc/NEWS: Document new mpc.el features
7353         71a0496 * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
7354         9dfece1 Correctly fontify C++ initializations which "look like" functions.
7355         4485222 Improve newsticker-treeview-selection-face
7356         4236944 Minor fix in tagging Ruby accessors by etags
7357         35fc77d Spelling fixes
7358         3dda110 Remove 'def X' from the example
7360 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7362         Minor alignas cleanup
7364         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
7365         over from the old way of doing things, before Bug#20862 was fixed.
7367 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7369         Add lmalloc commentary and tweak laligned
7371         * src/alloc.c (laligned): Help compiler in a tiny way by putting
7372         the more-commonly-failing disjunct first.
7374 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
7376         Clarify documentation of key binding conventions
7378         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
7379         "punctuation characters" are reserved after "C-c".  (Bug#22604)
7381 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
7383         * etc/NEWS: mention the `vc-faces' customization group
7385 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7387         Sync with gnulib
7389         This incorporates:
7390         2016-02-09 stdalign: port to clang 3.7.0
7391         2016-02-06 misc: port better to gcc -fsanitize=address
7392         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
7393         Copy from gnulib.
7395 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
7397         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
7399 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
7401         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
7403         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
7404         (mm-html-blocked-images): Default to nil.
7406         * doc/misc/emacs-mime.texi (Display Customization): Mention that
7407         mm-html-inhibit-images and mm-html-blocked-images default to nil.
7409         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
7410         mm-html-blocked-images.
7412 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
7414         Increase success rate of fallback lmalloc
7416         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
7417         larger and larger sizes, to increase the probability that
7418         the allocator will return a Lisp-aligned pointer.
7420 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7422         Make backgrounds extend to the end of the lines in shr
7424         * lisp/net/shr.el (shr-face-background): Faces can also be on
7425         the form `(:background "#fff)' (bug#22547).
7427 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7429         Make the `R' command get the correct relative <img>s
7431         * lisp/net/eww.el (eww-readable): Preserve the base URL so
7432         that image expansions are fetched from the right place (bug#22605).
7434         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
7436         Backport:
7438 2016-02-08  Mike Kupfer  <m.kupfer@acm.org>
7440         Fix typos in emacs-mime.texi and gnus.texi
7442         * doc/misc/emacs-mime.texi (Display Customization):
7443         * doc/misc/gnus.texi (HTML): Fix typo.
7445 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
7447         * doc/misc/emacs-mime.texi (Display Customization):
7448         Doc fix for mm-html-inhibit-images.
7450 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7452         Fix message-cross-post-followup-to group names
7454         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
7455         insert group names like "nntp+foo:zot", because those aren't valid.
7457 2016-02-08  David Edmondson  <dme@dme.org>
7459         Compare recipient and keys case-insensitively
7461         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
7462         recipient address with that from a key, do so in a case insensitive
7463         manner (bug#22603).
7465 2016-02-08  Glenn Morris  <rgm@gnu.org>
7467         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
7469 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
7471         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
7473         * doc/misc/emacs-mime.texi (Display Customization):
7474         Remove mm-inline-text-html-with-images; add documentations for
7475         mm-html-inhibit-images and mm-html-blocked-images.
7477         * lisp/gnus/gnus-art.el (gnus-article-show-images):
7478         No need to bind mm-inline-text-html-with-images.
7479         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
7480         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
7481         bind mm-html-inhibit-images and mm-html-blocked-images.
7482         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
7483         (gnus-mm-display-part, gnus-mime-display-single)
7484         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
7486         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
7487         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
7488         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
7489         mm-html-inhibit-images and mm-html-blocked-images respectively
7490         instead of gnus-inhibit-images and gnus-blocked-images.
7492         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
7493         instead of mm-inline-text-html-with-images.
7495 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
7497         Port to FreeBSD 11-CURRENT i386
7499         Problem reported by Herbert J. Skuhra in:
7500         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
7501         Instead of trying
7502         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
7503         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
7504         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
7505         (MALLOC_IS_GC_ALIGNED): New macro.
7506         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
7507         No longer needed now that alloc.c uses lmalloc and lrealloc.
7509 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
7511         Some fixes in file-notify-tests.el
7513         * test/automated/file-notify-tests.el
7514         (file-notify--test-with-events-check)
7515         (file-notify--test-with-events-explainer): New defuns.
7516         (file-notify--test-with-events): Use it.
7517         (file-notify-test07-backup): Fix docstring.  Some of the
7518         backends fire two `changed' events.  Backup by rename doesn't
7519         work for kqueue.
7521 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
7523         Fix Bug#22557
7525         * lisp/filenotify.el (file-notify-callback): Do not send a
7526         `stopped' event in case of backup by renaming.  (Bug#22557)
7528         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
7529         all targets but check and check-maybe.
7531         * test/automated/file-notify-tests.el
7532         (file-notify--test-read-event-timeout): New defconst.
7533         (file-notify--deftest-remote, file-notify--wait-for-events)
7534         (file-notify-test02-events)
7535         (file-notify-test04-file-validity)
7536         (file-notify-test06-many-events): Use it.
7537         (file-notify--test-cleanup): Make it more robust.  Delete also
7538         backup file.
7539         (file-notify-test07-backup): New test.
7541 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
7543         Fix test for dladdr
7545         Problem reported by Andreas Schwab in:
7546         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
7547         * configure.ac (dladdr): Link with LIBMODULES when checking for
7548         this function.
7550 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
7552         Fix gnus-group-get-new-news-this-group on group with closed server
7554         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
7555         method and pass to nnimap-open-server.
7557 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
7559         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
7561         While tabs in code are mostly fine because the Emacs sources have a
7562         .dir-locals file specifying tab-width, the same is not true of tabs in
7563         code examples inside docstrings.  The docstring is printed on a *Help*
7564         buffer, which can be created on any directory and won't necessarily have
7565         the same tab-width set.
7567 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7569         Don't inloop gnus-uu-mark-thread on the last thread
7571         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
7572         final thread in the summary buffer (bug#16666).
7574 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7576         Display non-ASCII group names better in prompts
7578         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
7579         group name, we have to do that before we remove the prefix.
7581 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7583         Default to gpg2 instead of gpg
7585         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
7586         it exists.  This fixes many problems with using the GPG
7587         authentication agent.
7589 2016-02-06  David Edmondson  <dme@dme.org>
7591         src/process.c Correctly convert AF_INET6 addresses
7593         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
7594         converted to a list of 16 bit quantities by
7595         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
7596         same scheme rather than expecting a (longer) list of 8 bit
7597         quantities.
7599         Backport:
7601         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
7603 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7605         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
7607 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7609         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
7611         (menu-bar-search-options-menu): New variable
7613 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7615         * lisp/isearch.el (search-default-mode)
7617         (isearch-regexp-function): Improve docstrings.
7619 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7621         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
7623         (search-default-mode): New variable.
7624         (isearch-mode, isearch-define-mode-toggle)
7625         (isearch--describe-regexp-mode): Update accordingly.
7626         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
7627         * etc/NEWS: Update accordingly.
7628         * doc/emacs/search.texi: Update accordingly.
7630 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
7632         Use monitor's resolution for positioning tooltips
7634         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
7635           the mouse pointer is to avoid placing the tooltip over the border of
7636           the monitor on multi-head displays. Fixes bug#22549.
7638 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
7640         Fix file-notify-test on MS-Windows
7642         * test/automated/file-notify-tests.el (file-notify--test-timeout):
7643         Reduce w32notify timeout to 10 sec.
7644         (file-notify-test06-many-events): Call read-event after each
7645         rename, to keep the w32notify backend happy in batch mode.
7646         (Bug#22534)
7648 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
7650         Fix issues found by auditing w32notify code
7652         * src/w32inevt.c (handle_file_notifications): Count the number of
7653         events to be returned.
7654         * src/w32notify.c (send_notifications): Don't copy to the file
7655         notification buffer more than it can hold.  (Bug#22534)
7657 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
7659         Extend etags Ruby support for accessors
7661         * lib-src/etags.c (Ruby_functions): Support accessors defined with
7662         parentheses.  (Bug#22563)
7664         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
7665         defined with parentheses.
7666         * test/etags/ETAGS.good_1:
7667         * test/etags/ETAGS.good_2:
7668         * test/etags/ETAGS.good_3:
7669         * test/etags/ETAGS.good_4:
7670         * test/etags/ETAGS.good_5:
7671         * test/etags/ETAGS.good_6:
7672         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
7674 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7676         Update publicsuffix.txt.
7678         * etc/publicsuffix.txt: Updated from
7679         https://publicsuffix.org/list/public_suffix_list.dat.
7681 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7683         Ensure that Gnus dribble handling allows removing entries
7685         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
7686         entry is on a single line.
7688 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
7690         Be consistent when using encoded strings in nnimap data
7692         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
7693         (nnimap-request-list): Use it.
7694         (nnimap-request-newgroups): Ditto.
7696 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
7698         Display the decoded Gnus group name
7700         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
7701         decoded group name in the message.
7703 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
7705         Use completion-ignore-case instead of defining command
7707         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
7708         that we get case-insensitive completion.
7709         (erc-completion-at-point): Remove.
7711 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
7713         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
7715 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
7717         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
7719         Reduce the number of iterations to 250 in case of w32notify.
7721 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
7723         Fix problems caused by new implementation of sub-word mode
7725         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
7726         New functions.
7727         (word-move-empty-char-table): New variable.
7729         * etc/NEWS: Mention 'forward-word-strictly' and
7730         'backward-word-strictly'.
7732         * doc/lispref/positions.texi (Word Motion): Document
7733         'find-word-boundary-function-table', 'forward-word-strictly', and
7734         'backward-word-strictly'.  (Bug#22560)
7736         * src/syntax.c (syms_of_syntax)
7737         <find-word-boundary-function-table>: Doc fix.
7739         * lisp/wdired.el (wdired-xcase-word):
7740         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
7741         (texinfo-copy-section-title, texinfo-start-menu-description)
7742         (texinfo-copy-menu-title, texinfo-specific-section-type)
7743         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
7744         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
7745         (texinfo-insert-@end):
7746         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
7747         (texinfo-anchor, texinfo-multitable-widths)
7748         (texinfo-multitable-item):
7749         * lisp/textmodes/tex-mode.el (latex-env-before-change):
7750         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
7751         * lisp/skeleton.el (skeleton-insert):
7752         * lisp/simple.el (count-words):
7753         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
7754         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
7755         (vhdl-update-sensitivity-list, vhdl-template-block)
7756         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
7757         (vhdl-template-default-indent, vhdl-template-for-loop)
7758         (vhdl-template-if-then-use, vhdl-template-bare-loop)
7759         (vhdl-template-nature, vhdl-template-procedural)
7760         (vhdl-template-process, vhdl-template-selected-signal-asst)
7761         (vhdl-template-type, vhdl-template-variable)
7762         (vhdl-template-while-loop, vhdl-beginning-of-block)
7763         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
7764         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
7765         (verilog-forward-sexp, verilog-beg-of-statement)
7766         (verilog-set-auto-endcomments, verilog-backward-token)
7767         (verilog-do-indent):
7768         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
7769         (vera-indent-block-closing):
7770         * lisp/progmodes/simula.el (simula-context)
7771         (simula-backward-up-level, simula-forward-down-level)
7772         (simula-previous-statement, simula-next-statement)
7773         (simula-skip-comment-backward, simula-calculate-indent)
7774         (simula-find-if, simula-electric-keyword):
7775         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
7776         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
7777         (ruby-smie--forward-token, ruby-smie--backward-token)
7778         (ruby-singleton-class-p, ruby-calculate-indent)
7779         (ruby-forward-sexp, ruby-backward-sexp):
7780         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
7781         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
7782         (perl-syntax-propertize-special-constructs)
7783         (perl-backward-to-start-of-continued-exp):
7784         * lisp/progmodes/pascal.el (pascal-indent-declaration):
7785         * lisp/progmodes/octave.el (octave-function-file-p):
7786         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
7787         * lisp/progmodes/js.el (js--forward-function-decl):
7788         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
7789         (idlwave-beginning-of-block, idlwave-end-of-block)
7790         (idlwave-block-jump-out, idlwave-determine-class):
7791         * lisp/progmodes/icon.el (icon-is-continuation-line)
7792         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
7793         * lisp/progmodes/hideif.el (hide-ifdef-define):
7794         * lisp/progmodes/f90.el (f90-change-keywords):
7795         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
7796         (cperl-linefeed, cperl-electric-terminator)
7797         (cperl-find-pods-heres, cperl-fix-line-spacing)
7798         (cperl-invert-if-unless):
7799         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
7800         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
7801         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
7802         (ada-adjust-case-skeleton, ada-create-case-exception)
7803         (ada-create-case-exception-substring)
7804         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
7805         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
7806         (ada-get-indent-if, ada-get-indent-block-start)
7807         (ada-get-indent-loop, ada-get-indent-type)
7808         (ada-search-prev-end-stmt, ada-check-defun-name)
7809         (ada-goto-decl-start, ada-goto-matching-start)
7810         (ada-goto-matching-end, ada-looking-at-semi-or)
7811         (ada-looking-at-semi-private, ada-in-paramlist-p)
7812         (ada-search-ignore-complex-boolean, ada-move-to-start)
7813         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
7814         * lisp/net/quickurl.el (quickurl-grab-url):
7815         * lisp/mail/sendmail.el (mail-do-fcc):
7816         * lisp/mail/rmail.el (rmail-resend):
7817         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
7818         * lisp/mail/mail-extr.el (mail-extract-address-components):
7819         * lisp/json.el (json-read-keyword):
7820         * lisp/files.el (insert-directory):
7821         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
7822         * lisp/completion.el (symbol-under-point, symbol-before-point)
7823         (symbol-before-point-for-complete, next-cdabbrev)
7824         (add-completions-from-c-buffer):
7825         * lisp/cedet/semantic/texi.el (semantic-up-context)
7826         (semantic-beginning-of-context):
7827         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
7828         use 'forward-word-strictly' and 'backward-word-strictly' instead
7829         of 'forward-word' and 'backward-word'.
7831 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
7833         Fix doc string of tls-program
7835         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
7837 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
7839         * etc/NEWS: Document new mpc.el features
7841 2016-02-04  Leo Liu  <sdl.web@gmail.com>
7843         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
7845 2016-02-04  Alan Mackenzie  <acm@muc.de>
7847         Correctly fontify C++ initializations which "look like" functions.
7849         Fixes bug#7579.
7851         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
7852         parameter to enable handling of "anonymous" declarators in declarations.
7854         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
7855         whether a "(" opens a parameter list of a function, or an initialization of a
7856         variable.
7858 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
7860         Improve newsticker-treeview-selection-face
7862         * newst-treeview.el (newsticker-treeview-selection-face): Improve
7863         readability for dark background.
7865 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
7867         Minor fix in tagging Ruby accessors by etags
7869         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
7870         names are not literal symbols.  (Bug#22241)
7872 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
7874         Spelling fixes
7876 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
7878         Remove 'def X' from the example
7880         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
7881         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
7882         * test/etags/CTAGS.good:
7883         * test/etags/ETAGS.good_1:
7884         * test/etags/ETAGS.good_2:
7885         * test/etags/ETAGS.good_3:
7886         * test/etags/ETAGS.good_4:
7887         * test/etags/ETAGS.good_5:
7888         * test/etags/ETAGS.good_6: Adjust accordingly.
7890 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
7892         Fix network-stream-tests on MS-Windows
7894         * test/lisp/net/network-stream-tests.el (make-local-unix-server):
7895         Skip if local sockets are not supported.
7897 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
7899         * admin/notes/bug-triage: Fix bug priorities.  Explain colors in debbugs-gnu.
7901 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
7903         Disable 'timer-list'
7905         * lisp/emacs-lisp/timer-list.el: Make 'timer-list' a disabled
7906         command.
7908 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7910         Avoid aligned_alloc static/extern collision
7912         * src/alloc.c (aligned_alloc): Define to private name when a
7913         static function, to avoid collision with lisp.h extern decl.
7914         Reported by John Yates in:
7915         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00439.html
7917 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
7919         Make `message-beginning-of-line' aware of folded headers
7921         * lisp/gnus/message.pl (message-beginning-of-header): New function which
7922         moves point to the beginning of a mail header.  The function is aware of
7923         folded headers and with non-nil argument looks for the true beginning of
7924         a header while with nil argument moves to the indented text of header's
7925         value.
7926         (message-beginning-of-line): Function is now aware of folded headers and
7927         either moves point to the indention of a header or, in visual-line-mode,
7928         searches for the beginning of the header.
7930 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
7932         Optimise ‘point in message header’ check
7934         * lisp/gnus/message.el (message-point-in-header-p): Replace two unbound
7935         regular expression matches with a single bound string match thus
7936         reducing amount of work the function is doing.
7938 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7940         Make the `R' command get the correct relative <img>s
7942         * lisp/net/eww.el (eww-readable): Preserve the base URL so
7943         that image expansions are fetched from the right place (bug#22605).
7945 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7947         Add a mode to list and cancel timers
7949         * doc/lispref/os.texi (Timers): Menton `timer-list'.
7951         * lisp/emacs-lisp/timer-list.el: New file.
7953 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7955         Add new commands to allow changing the size of images
7957         * lisp/image.el (image-increase-size, image-decrease-size):
7958         New commands.
7959         (image-change-size): New function.
7961 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7963         Allow the image scale to be a floating point number
7965         * src/image.c (compute_image_size): The scale can be a
7966         floating point number.
7968 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7970         Add an IPv6 test
7972         * test/lisp/net/network-stream-tests.el
7973         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
7975 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
7977         Use gnutls-serv instead of openssh
7979         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
7980         gnutls-serv instead of openssh.
7982 2016-02-08  Daniel Colascione  <dancol@dancol.org>
7984         Performance improvements for vc-hg
7986         Teach vc-hg how to read some Mercurial internal data structures,
7987         allowing us to avoid the need to run hg status -A, which is very slow
7988         for large repositories.  Fall back to running hg if anything looks
7989         funny.  vc-hg now puts the _working directory_ revision in the
7990         modeline instead of the file revision, which greatly improves
7991         performance and which allows us to again skip running hg in the case
7992         that we have an active bookmark.
7994         * lisp/vc/vc-hg.el (vc-hg-state): Try calling `vc-hg-statefast'
7995         (vc-hg-symbolic-revision-styles)
7996         (vc-hg-use-file-version-for-mode-line-version)
7997         (vc-hg-parse-hg-data-structures): New user preferences
7998         (vc-hg--active-bookmark-internal, vc-hg--run-log)
7999         (vc-hg--symbolic-revision, vc-hg-mode-line-string)
8000         (vc-hg--read-u8, vc-hg--read-u32-be)
8001         (vc-hg--raw-dirstate-search, vc-hg--cached-dirstate-search)
8002         (vc-hg--parts-to-string, vc-hg--pcre-to-elisp-re)
8003         (vc-hg--glob-to-pcre, vc-hg--hgignore-add-pcre)
8004         (vc-hg--hgignore-add-glob, vc-hg--hgignore-add-path)
8005         (vc-hg--slurp-hgignore-1, vc-hg--slurp-hgignore)
8006         (vc-hg--ignore-patterns-valid-p)
8007         (vc-hg--ignore-patterns-ignored-p, vc-hg--time-to-fixnum)
8008         (vc-hg--file-ignored-p, vc-hg--read-repo-requirements)
8009         (vc-hg--requirements-understood-p, vc-hg--dirstate-scan-cache)
8010         (vc-hg-state-fast): New functions.
8011         (vc-hg--hgignore-patterns, vc-hg--hgignore-filenames)
8012         (vc-hg--cached-ignore-patterns, vc-hg--dirstate-scan-cache)
8013         (vc-hg--dirstate-scan-cache): New internal variables.
8014         * lisp/vc/vc-hooks.el (vc-refresh-state): Invoke vc find-file-hook
8015         before updating modeline.
8017 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8019         Skip TLS tests if we don't have openssl
8021         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
8022         TLS tests if we don't have openssl and GnuTLS.
8024 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8026         Automatically scale images up on high-density screens
8028         * doc/lispref/display.texi (ImageMagick Images): Mention :scale.
8029         (Defining Images): Mention image-scaling-factor.
8031         * lisp/image.el (image-compute-scaling-factor): New function
8032         (bug#22172).
8033         (create-image): Use it.
8034         (image-scaling-factor): New variable.
8036         * src/image.c (compute_image_size): Take :scale into account.
8038 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8040         Ensure progress when fetching from the queue
8042         * lisp/url/url-queue.el (url-queue-check-progress): Ensure
8043         that we have progress when fetching queued requests (bug#22576).
8045 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8047         Make mail-extract-address-components return the user name more
8049         * lisp/mail/mail-extr.el (mail-extract-address-components):
8050         Return the name even if it's the same as the mailbox name (if
8051         `mail-extr-ignore-single-names' isn't set) (bug#22594).
8053 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8055         Message no longer warns about unknown top level domains
8057 2016-02-07  Jarno Malmari  <jarno@malmari.fi>
8059         Add tests for url-auth
8061         * test/lisp/url/url-auth-tests.el: New file.
8063 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8065         Add a TLS connection test
8067         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
8068         a TLS connection test.
8070 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8072         Add more network tests
8074         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
8075         New test.
8077 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8079         Add network tests
8081         * test/lisp/net/network-stream-tests.el: New suite of network tests.
8083 2016-02-07  Foo  <rasmus@gmx.us>
8085         Allow various Gnus and Message address variables to be functions
8087         * doc/misc/gnus.texi (To From Newsgroups):
8088         gnus-ignored-from-addresses can be a function.
8090         * doc/misc/message.texi (Wide Reply):
8091         message-dont-reply-to-names can be a function.
8093         * lisp/gnus/gnus-icalendar.el (gnus-icalendar-identities):
8094         message-alternative-emails can be a function.
8096         * lisp/gnus/gnus-notifications.el (gnus-notifications):
8097         message-alternative-emails can be a function (bug#22315).
8099         * lisp/gnus/gnus-sum.el
8100         (gnus-summary-from-or-to-or-newsgroups):
8101         gnus-ignored-from-addresses can be a function (bug#22315).
8103 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8105         Fix typo in Gnus regexp
8107         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Fix
8108         typo in last change to this regexp (bug#22592).
8110 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
8112         Port to FreeBSD x86
8114         Reported by Herbert J. Skuhra in:
8115         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00336.html
8116         * src/lisp.h (NONPOINTER_BITS) [__FreeBSD__]: Zero in this case too,
8117         since malloc always returns a multiple of 8 in FreeBSD.
8119 2016-02-07  Alan Mackenzie  <acm@muc.de>
8121         On leaving CC Mode, clean up by removing character properties.
8123         * lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
8124         all instances of the text properties/extents category, syntax-table,
8125         c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
8127 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8129         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Don't use
8130         the no-longer-existing message-valid-fqdn-regexp variable.
8132 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8134         Remove message-valid-fqdn-regexp, since it changes too much now
8135         * lisp/gnus/message.el (message-valid-fqdn-regexp): Remove.
8136         (message-bogus-recipient-p): Don't use it any more.
8137         (message-make-fqdn): Ditto.  Suggested by Lars-Johan Liman.
8139 2016-02-06  Paul van der Walt  <paul@denknerd.org>  (tiny change)
8141         * lisp/gnus/message.el (message-subject-re-regexp): Also match
8142         "Re :" as a "Re:" prefix (commonly used in France).
8144 2016-02-06  Adam Sjøgren  <asjo@koldfront.dk>
8146         * lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
8148 2016-02-06  David Edmondson  <dme@dme.org>
8150         src/process.c Correctly convert AF_INET6 addresses
8151         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
8152         converted to a list of 16 bit quantities by
8153         conv_sockaddr_to_lisp().  conv_lisp_to_sockaddr() should follow the
8154         same scheme rather than expecting a (longer) list of 8 bit
8155         quantities.
8157 2016-02-06  Martin Jesper Low Madsen  <martin@martinjlowm.dk>  (tiny change)
8159         * lisp/gnus/auth-source.el (auth-source-macos-keychain-search):
8160         Search for all host/port (or protocol) combinations for a match in
8161         the OS X keychain.
8163 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8165         Remove nonsensical setting of gnus-newsgroup-unseen
8167         * lisp/gnus/gnus-sum.el (gnus-update-marks): Remove nonsensical
8168         setting of gnus-newsgroup-unseen.
8170 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8172         Use underline on all terminals that support it
8174         * lisp/subr.el (read-multiple-choice): Use
8175         display-supports-face-attributes-p instead of
8176         display-graphic-p to determine whether we can use underlining.
8178 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8180         Make the nsm query say what it did after the user interaction
8182         * lisp/net/nsm.el (nsm-query): Issue a message about
8183         aborting/accepting messages (suggested by N. Jackson)
8184         (bug#22531).
8186 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
8188         Omit XLI (init) == 0 optimization in make-vector
8190         * src/alloc.c (Fmake_vector): Simplify by omitting the (XLI (init)
8191         == 0) case, as this optimization is probably not worth the hassle.
8192         Just for the record, the test for that case could have been
8193         (XLI (init) % ((EMACS_UINT) -1 / UCHAR_MAX) == 0) (!),
8194         assuming the typical platform with no padding bits and where
8195         conversion to int omits the most significant bits.
8197 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
8199         * autogen.sh: Port to dash (Bug#22556).
8201 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
8203         Minor cleanup for Tramp "doas".
8205         * doc/misc/tramp.texi (Inline methods): Add "doas" method.
8207         * etc/NEWS: Add Tramp connection method "doas".
8209         * lisp/net/tramp-sh.el (tramp-methods) <doas>:
8210         Add `tramp-remote-shell-args'.
8212 2016-02-05  Xi Lu  <lx@shellcodes.org>
8214         * lisp/net/tramp-sh.el (tramp-methods) <doas>: Add.  (Bug#22542)
8216         (tramp-default-user-alist): Add rule for "doas".
8217         (top): Completion function for "doas" is
8218         `tramp-completion-function-alist-su'.
8220 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8222         Restore the window configuration
8224         * lisp/net/nsm.el (nsm-query-user): Restore the window
8225         configuration (bug#22532).
8227 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8229         Use an X popup in read-multiple-choice if running from a mouse command
8231         * lisp/subr.el (read-multiple-choice): Use an X popup if
8232         called from a mouse action (bug#19368).
8234 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8236         Display cursor in echo area when prompting
8238         * lisp/subr.el (read-multiple-choice): Display the cursor in
8239         the echo area when prompting (bug#19368).
8241 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8243         Make NSM prompting clearer
8245         * lisp/net/nsm.el (nsm-query-user): Use read-multiple-choice
8246         to prompt in a nicer way (bug#19368).
8248 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8250         Underline read-multiple-choice-face
8252         * lisp/faces.el (read-multiple-choice-face): Also underline
8253         the choice.
8255 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8257         Make the read-multiple-choice prompt a bit prettier
8259         * doc/lispref/commands.texi (Reading One Event): Mention
8260         read-multiple-choice-face.
8262         * lisp/subr.el (read-multiple-choice): Make the prompting a bit
8263         prettier.
8265 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8267         Prefer memcpy and memset to doing it by hand
8269         * src/alloc.c (Fmake_vector):
8270         * src/ccl.c (setup_ccl_program):
8271         Use memset to clear array.
8272         * src/alloc.c (Fvector, Fmake_byte_code):
8273         * src/charset.c (Fdefine_charset_internal):
8274         Use memcpy to copy array.
8276 2016-02-04  Nicolas Petton  <nicolas@petton.fr>
8278         Do not ignore redirections of 301, 302 and 307 status codes
8280         The current version of HTTP/1.1 (RFC 7231) no longer requires
8281         confirmation on 301, 302 or 307 status codes, therefore we do not have
8282         to ignore redirects for other requests than GET and HEAD.
8284         * lisp/url/url-http.el (url-http-parse-headers): Do not ignore 301, 302
8285         and 307 redirects for other requests than GET and HEAD.
8287 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
8289         * lisp/net/eww.el (eww-switch-to-buffer): Use pop-to-buffer-same-window instead.
8291 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8293         Simplify USE_ALIGNED_ALLOC
8295         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify, now that we’ve merged
8296         in the emacs-25 changes.  Omit no-longer-needed decl for aligned_alloc.
8298 2016-02-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
8300         Honor docstring of gnus-group-get-new-news
8302         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg
8303         is t, but non-numeric, unconditionally consider all groups to need
8304         updating.
8306 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8308         New function read-multiple-choice
8310         * doc/lispref/commands.texi (Reading One Event): Document
8311         read-multiple-choice.
8313         * lisp/faces.el (read-multiple-choice-face): New face.
8315         * lisp/subr.el (read-multiple-choice): New function.
8317 2016-02-04  John Wiegley  <johnw@newartisans.com>
8319         Merge from origin/emacs-25
8321         ee73997 Make erc work better when encountering unknown prefix chars
8322         b99141d Make erc completion case-insensitive again
8323         66c4620 Make complection in erc use consistent casing
8324         8c562b2 Make /QUIT in erc more robust
8325         d93d2c5 Make tracking faces in Emacs work more reliably
8326         af6ab7e Make shr not bug out on images on non-graphical displays
8327         3311f40 Fix bookmark display widths
8328         d90ab1e Fix typo in eww-make-unique-file-name
8329         7f81825 Make it possible to TAB to input fields
8330         a43a1dc Insert complete alt texts when images are disabled
8331         56ed4e1 Allow eww text fields to grow
8332         66b315c Make erc work when subword-mode is switched on
8333         255b68f Fix IMAP doc example
8334         91557f5 Quoting fixes in doc strings and diagnostics
8335         2c0dc9f Fix warning message in hack-local-variables
8336         504696d Etags: yet another improvement in Ruby tags
8337         8784ebf Fix x-popup-menu on TTYs without a mouse
8338         8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the
8339                 pcase macro
8340         6191003 Use pop-to-buffer-same-window in eww
8341         fe321fd * autogen.sh: Revert all recent changes.
8342         74ebd4a * make-dist: Updates related to nt/.
8343         737193a * make-dist: Add modules/.
8344         3696bf2 * make-dist: Update for super-special file that can't live in etc/.
8345         a4278e2 Fix failure to compile ns-win.el in parallel builds
8346         860da4d Fix names of tags generated for Ruby accessors
8347         f6213ce Fix file-name recognition in 'etags'
8348         e42e662 Change Ruby file names and extensions recognized by 'etags'
8349         58bfb6a More improvements for Ruby support in 'etags'
8350         c04e911 Add --git-config option to autogen.sh
8351         5713466 Fix editing undo changes in eww fields
8352         51362d6 Allow the user more control of popping up the eww window
8353         ee0fbd8 Make eww-browse-url with new-window parameter work again
8354         9c3142d Clean up eww code slightly
8355         cb035f3 Don't insert nil faces in shr
8356         4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary.
8357         93f2153 Improve the custom type of some user options.
8358         9f60d7e Mark some risky calendar variables.
8359         1d07dcd Highlight two additional SCSS keywords
8360         ee8b466 Recommend enabling integrity-checking in git
8361         e639e10 Some corrections in Elisp manual
8362         d766ca8 Chatter when autogen.sh changes Git configuration
8363         3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
8364         43cb9f8 Omit unnecessary history from Lisp intro
8365         2fbd1da * etc/HISTORY: Add some more history, plus git tags.
8366         c90e1b4 Improve elisp “Security Considerations” doc
8367         cedd7ca autogen.sh now arranges for git to check hashes
8368         86ce76b ; Fix ChangeLog.2 commit ID.
8369         7b1d2b1 Fix (c & 040) typo in emergency escapes
8370         a8273da Fix display of overlay strings with 'display' and 'box' property
8371         fc48106 Fix imap-starttls-open
8372         cdecbed Fix return value of imap-starttls-open
8373         20c7e34 ; * etc/NEWS: Fix renamed command name
8374         98bdbdb Correct reference to DARWIN_OS preprocessor symbol
8375         b250d29 Spelling fix
8376         b920a0e Spelling fixes
8377         93b144b Pacify GCC on C library without glibc API
8379 2016-02-04  John Wiegley  <johnw@newartisans.com>
8381         Merge from origin/emacs-25
8383         ea26c8a * lisp/net/browse-url.el (browse-url-default-browser): Lower
8384                 priority of non-free Chrome.
8385         0fac75f Improve the custom type of some user options.
8386         2df0e04 Highlight CSS variables with variable name face
8387         3cf5e81 * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not
8388                 user-serviceable.
8389         2a5233c Mark some user options that can get evalled as risky.
8390         39b166f Disable DebPrint in sys_read on MS-Windows
8391         9fd0189 ;Fix ChangeLog entry
8392         4bb7233 Fix typos in Introduction to Emacs Lisp manual
8394 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
8396         Allow sending empty hidden values in eww
8398         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
8399         values (bug#22388).
8401         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
8403         Backport:
8405 2016-02-04  David Edmondson  <dme@dme.org>
8407         Make erc work better when encountering unknown prefix chars
8409         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
8410         instead of erroring out on unknown prefix chars (bug#22380).
8412 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
8414         Add a new command to switch between erc buffers
8416         * doc/misc/eww.texi: Document eww-switch-to-buffer and its keybinding
8417         * etc/NEWS: Mention new command
8418         * lisp/net/eww.el (eww-mode-map): Bind eww-switch-to-buffer to "s"
8419         (eww-mode-map): Add menu item
8420         (eww-switch-to-buffer): New command
8422 2016-02-04  David Edmondson  <dme@dme.org>
8424         Make erc work better when encountering unknown prefix chars
8426         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
8427         instead of erroring out on unknown prefix chars (bug#22380).
8429 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
8431         Allow sending empty hidden values in eww
8433         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
8434         values (bug#22388).
8436 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8438         Make erc completion case-insensitive again
8440         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
8441         case-insensitive again (bug#11360).
8443 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
8445         Make complection in erc use consistent casing
8447         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
8448         case in the complection consistent (bug#18509).
8450 2016-02-04  Francis Litterio  <flitterio@gmail.com>
8452         Make /QUIT in erc more robust
8454         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
8455         issuing /QUIT to disconnected servers (bug#22099).
8457 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
8459         Make tracking faces in Emacs work more reliably
8461         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
8462         faces to avoid later ambiguity (bug#22424).
8464 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8466         Make shr not bug out on images on non-graphical displays
8468         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
8469         images on non-graphical displays (bug#22327).
8471 2016-02-04  Andrew Hyatt  <ahyatt@gmail.com>
8473         Remove packages obsoleted before Emacs 24.
8475         In accordance with the policy discussed in the emacs-devel list,
8476         packages that have been obsoleted for a full major release cycle are up
8477         for deletion.
8479         This removes almost all packages that are now eligible for deletion,
8480         with the exception of "cl-compat", which seems it is likely to still be
8481         used, and "optional", which offers some functionality that doesn't have
8482         a replacement yet.
8484 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8486         Fix bookmark display widths
8488         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
8489         preparing it so that the widths are computed correctly (bug#22328).
8491 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8493         Fix typo in eww-make-unique-file-name
8495         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
8496         actually work.
8498 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8500         Make it possible to TAB to input fields
8502         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
8503         input fields (bug#22540).
8505 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8507         Insert complete alt texts when images are disabled
8509         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
8510         the complete alt/title string (bug#22293).
8512 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8514         Allow eww text fields to grow
8516         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
8517         grow when typing in stuff that's longer than the original width.
8519 2016-02-03  Dima Kogan  <dima@secretsauce.net>
8521         Make erc work when subword-mode is switched on
8523         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
8524         (erc-bounds-of-word-at-point): New functions to do word-based
8525         things when subword-mode is switched on.
8527         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
8528         (bug#17558).
8530 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
8532         Fix IMAP doc example
8534         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
8536 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8538         Quoting fixes in doc strings and diagnostics
8540         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
8541         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
8542         (mml-smime-get-ldap-cert):
8543         Follow user style preference when quoting diagnostics.
8545 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8547         Mention context when resume from emergency escape
8549         That way, if the user has been doing something else for a while,
8550         they are reminded of the situation when restarting Emacs,
8551         and are more likely to understand the two questions.
8552         * doc/emacs/trouble.texi (Emergency Escape): Document this.
8553         * src/keyboard.c (handle_interrupt): Implement this.
8555 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
8557         Fix warning message in hack-local-variables
8559         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
8560         the original buffer name in the warning message.  (Bug#21681)
8562 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
8564         Etags: yet another improvement in Ruby tags
8566         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
8567         Ruby accessor definitions.  (Bug#22241)
8569         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
8570         accessors and multiline definitions.
8571         * test/etags/ETAGS.good_1:
8572         * test/etags/ETAGS.good_2:
8573         * test/etags/ETAGS.good_3:
8574         * test/etags/ETAGS.good_4:
8575         * test/etags/ETAGS.good_5:
8576         * test/etags/ETAGS.good_6:
8577         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
8579 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
8581         Fix x-popup-menu on TTYs without a mouse
8583         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
8584         for the TTY case without a mouse.  (Bug#22538)
8586 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
8588         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
8590 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8592         Port aligned_alloc decl to Cygwin.
8594         Problem reported by Ken Brown (Bug#22522#38).
8595         * configure.ac (aligned_alloc): Check for decl too.
8596         * src/lisp.h (aligned_alloc): Declare if not already declared.
8598 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8600         autogen.sh now configures git only on request
8602         * autogen.sh (do_autoconf, do_git): New vars.
8603         Support new arguments --help, all, autoconf, git.
8604         By default, just do autoconf-related configuration, not git.
8605         Prefer 'echo' to 'cat <<EOF ...', as this tends to avoid temp files.
8606         If GNU cp is available, use it to backup .git/config before
8607         changing it.  When configuring git, chatter about what is being
8608         done, and configure git to check hashes.  Avoid some duplicate
8609         file name specification when creating git hooks.
8611         * GNUmakefile (ALL_IF_GIT): New macro.
8612         (configure): Use it.
8613         * INSTALL.REPO: Suggest './autogen.sh all'.
8615 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
8617         Use pop-to-buffer-same-window in eww
8619         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
8620         switch-to-buffer (bug#22244).
8622 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8624         * autogen.sh: Revert all recent changes.
8626 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8628         Build with C11 if available
8630         * admin/merge-gnulib (GNULIB_MODULES): Add std-gnu11.
8631         * m4/std-gnu11.m4: New file, from gnulib.
8632         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
8634 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8636         Update gnulib copy
8638         * doc/misc/texinfo.tex: Copy from gnulib.
8640 2016-02-02  Glenn Morris  <rgm@gnu.org>
8642         * make-dist: Updates related to nt/.
8644         * make-dist: Add modules/.
8646         * make-dist: Update for super-special file that can't live in etc/.
8648 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8650         Fix failure to compile ns-win.el in parallel builds
8652         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
8653         dependency on $(lispsource)/international/charprop.el.
8654         (Bug#22501)
8656 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8658         Fix names of tags generated for Ruby accessors
8660         * lib-src/etags.c (Ruby_functions): Don't include the leading
8661         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
8663         * test/etags/ETAGS.good_1:
8664         * test/etags/ETAGS.good_2:
8665         * test/etags/ETAGS.good_3:
8666         * test/etags/ETAGS.good_4:
8667         * test/etags/ETAGS.good_5:
8668         * test/etags/ETAGS.good_6:
8669         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
8671 2016-02-02  Glenn Morris  <rgm@gnu.org>
8673         * lisp/vc/add-log.el (change-log-directory-files, find-change-log):
8674         Doc tweaks.
8676 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8678         Fix file-name recognition in 'etags'
8680         * lib-src/etags.c (get_language_from_filename): If FILE includes a
8681         leading directory, compare only its basename to the known file
8682         names in lang_names[].
8684         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
8685         renaming.
8686         * test/etags/ETAGS.good_1:
8687         * test/etags/ETAGS.good_2:
8688         * test/etags/ETAGS.good_3:
8689         * test/etags/ETAGS.good_4:
8690         * test/etags/ETAGS.good_5:
8691         * test/etags/ETAGS.good_6:
8692         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
8693         to the results in Makefile due to the above etags.c fix.
8695 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8697         Change Ruby file names and extensions recognized by 'etags'
8699         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
8700         of Ruby files.
8701         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
8702         <lang_names>: Add Ruby_filenames to the Ruby entry.
8703         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
8704         (Bug#22241)
8706 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8708         Port better to platforms lacking aligned_alloc
8710         Problem reported by Ken Brown (Bug#22522).
8711         * src/lisp.h (hybrid_aligned_alloc)
8712         [HYBRID_MALLOC && !HAVE_ALIGNED_ALLOC]: New decl.
8714 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8716         Port malloc.h hygiene fix to LTO
8718         * src/alloc.c (__malloc_initialize_hook):
8719         Make it externally visible (Bug#22522).
8721 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8723         More improvements for Ruby support in 'etags'
8725         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
8726         alias_method.  Identify constants even if the assignment is not
8727         followed by whitespace.  (Bug#22241)
8729         * test/etags/ruby-src/test1.ruby: Add tests for constants,
8730         accessors, and alias_method.
8731         * test/etags/ETAGS.good_1:
8732         * test/etags/ETAGS.good_2:
8733         * test/etags/ETAGS.good_3:
8734         * test/etags/ETAGS.good_4:
8735         * test/etags/ETAGS.good_5:
8736         * test/etags/ETAGS.good_6:
8737         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
8739 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8741         Add --git-config option to autogen.sh
8743         * autogen.sh: New options --git-config, --help.
8744         (git_config): New shell var.  Alter function to respect this var.
8746 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
8748         Fix editing undo changes in eww fields
8750         * eww.el (eww-tag-form): Don't overwrite initial form data in text
8751         fields.
8752         (eww-process-text-input): Make `M-t' at the end of text fields work
8753         better (bug#19085).
8755 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8757         Allow the user more control of popping up the eww window
8759         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
8760         Michael Heerdegen) (bug#22244).
8762 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8764         Make eww-browse-url with new-window parameter work again
8766         * eww.el (eww-browse-url): Stay in the same buffer if we're
8767         already in a eww mode buffer so that eww-browse-url with a
8768         new-window parameter works (bug#22244).
8770 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8772         Clean up eww code slightly
8774         * eww.el (eww-browse-url): Clean up code slightly.
8776 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8778         Don't insert nil faces in shr
8780         * shr.el (shr-insert-table): Don't add nil faces, because that
8781         will show up in *Messages* as "Invalid face reference: nil [32
8782         times]".
8784 2016-02-01  Glenn Morris  <rgm@gnu.org>
8786         Make find-change-log prefer a VCS root, if no ChangeLog exists.
8788         * lisp/vc/add-log.el (change-log-directory-files): New option.
8789         (find-change-log): Respect change-log-directory-files.
8790         * doc/emacs/maintaining.texi (Change Log Commands):
8791         Mention change-log-directory-files.
8793 2016-02-01  Glenn Morris  <rgm@gnu.org>
8795         Improve the custom type of some user options.
8797         * lisp/autoinsert.el (auto-insert-alist):
8798         * lisp/replace.el (query-replace-from-to-separator):
8799         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
8800         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
8801         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
8802         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
8803         (prolog-mode-specificators, prolog-determinism-specificators)
8804         (prolog-directives, prolog-program-name, prolog-program-switches)
8805         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
8806         (prolog-prompt-regexp): Improve custom type.
8808 2016-02-01  Glenn Morris  <rgm@gnu.org>
8810         Mark some risky calendar variables.
8812         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
8813         Remove risky setting for deleted obsolete alias.
8814         (calendar-chinese-standard-time-zone-name)
8815         (calendar-chinese-daylight-saving-start)
8816         (calendar-chinese-daylight-saving-end):
8817         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
8818         (calendar-european-date-display-form)
8819         (calendar-american-date-display-form, calendar-date-display-form):
8820         * lisp/calendar/diary-lib.el (diary-remind-message)
8821         (diary-header-line-format):
8822         * lisp/calendar/solar.el (calendar-time-display-form)
8823         (calendar-location-name): Mark as risky.
8825 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
8827         Highlight two additional SCSS keywords
8829         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
8830         identifiers on the form !foo.
8831         (scss-bang-ids): New defconst holding SCSS identifiers on the form
8832         !foo.
8833         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
8834         `font-lock-builtin-face'.
8836         * test/indent/css-mode.css: Add bang rule test case.
8838         * test/indent/scss-mode.css: Add test cases for the introduced bang
8839         rules.
8841 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
8843         Recommend enabling integrity-checking in git
8845         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
8847         This is related to the autogen.sh changes made by Paul Eggert in
8848         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
8849         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
8850         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
8851         "Recommend these .gitconfig settings for git integrity." at
8852         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
8854 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
8856         Some corrections in Elisp manual
8858         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
8859         argument POSITION.
8860         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
8861         is an option.
8862         * doc/lispref/display.texi (Refresh Screen): Describe optional
8863         argument FRAME of `redraw-frame'.
8864         (Attribute Functions): Describe optional argument CHARACTER of
8865         `face-font'.
8866         (Defining Images): `image-load-path' is an option.
8867         (Beeping): `ring-bell-function' is an option.
8868         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
8869         argument of `set-frame-size' is optional.
8870         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
8871         is optional.
8872         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
8873         `set-transient-map'.
8874         * doc/lispref/minibuf.texi (Text from Minibuffer):
8875         `read-regexp-defaults-function' is an option.
8876         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
8877         * doc/lispref/modes.texi (Mode Line Variables):
8878         `mode-line-position' and `mode-line-modes' are variables, not
8879         options.
8880         * doc/lispref/strings.texi (Creating Strings): The START argument
8881         of `substring' is optional.
8882         * doc/lispref/text.texi (Buffer Contents): Describe optional
8883         argument NO-PROPERTIES of `thing-at-point'.
8884         (User-Level Deletion): Both arguments of
8885         `delete-trailing-whitespace' are optional.
8886         (Margins): Use @key{RET} instead of @kbd{RET}.
8887         * doc/lispref/windows.texi (Display Action Functions): Write
8888         non-@code{nil} instead of non-nil.
8889         (Choosing Window Options): The WINDOW arg of
8890         `split-window-sensibly' is optional.
8891         (Choosing Window Options): Write non-@code{nil} instead of
8892         non-nil.
8893         (Window Start and End): Both args of `window-group-end' are
8894         optional.
8896         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
8897         to POSITION to keep consisteny with doc-string.
8899 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
8901         Double static heap size.
8903         * src/sheap.h (STATIC_HEAP_SIZE): Double it, since it was too
8904         small on FreeBSD (Bug#22086).
8906 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
8908         Chatter when autogen.sh changes Git configuration
8910         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
8912 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
8914         * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
8916 2016-02-01  Michael Albinus  <michael.albinus@gmx.de>
8918         Fix Bug#20821
8920         * lisp/net/tramp.el (tramp-file-name-handler):
8921         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
8922         Use `tramp-drop-volume-letter'.  (Bug#20821)
8924 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8926         Omit unnecessary history from Lisp intro
8928         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
8929         (Conclusion): Reword so as not to talk about earlier versions
8930         of Emacs in what should be an intro.
8932 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8934         * etc/HISTORY: Add some more history, plus git tags.
8936 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8938         Improve elisp “Security Considerations” doc
8940         * doc/lispref/os.texi (Security Considerations):
8941         Mention call-process and rename-file as opposed to shell commands.
8942         Add some more cross-references.
8944 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8946         autogen.sh now arranges for git to check hashes
8948         Suggested by Karl Fogel in:
8949         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
8950         * autogen.sh: Do "git config transfer.fsckObjects true".
8952 2016-01-31  Dave Barker  <kzar@kzar.co.uk>
8954         Add ability to give rcirc servers an alias name
8956         * lisp/net/rcirc.el (rcirc-server-alist): Add :server-alias
8957         customization option.
8958         (rcirc, rcirc-connect): Take server alias into account.
8960 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8962         Fix (c & 040) typo in emergency escapes
8964         * src/keyboard.c (handle_interrupt): Fix recently-introduced
8965         typo (040 should have been ~040) that silently suppressed
8966         auto-saves after emergency escapes.  Redo comparison to avoid
8967         similar problems.
8969 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8971         Port new hybrid malloc to FreeBSD
8973         Problem reported by Wolfgang Jenkner in: http://bugs.gnu.org/22086#118
8974         * src/gmalloc.c (__malloc_initialize_hook, __after_morecore_hook)
8975         (__morecore) [HYBRID_MALLOC]: Define in this case too.
8977 2016-01-31  Wolfgang Jenkner  <wjenkner@inode.at>
8979         * configure.ac: Stop using mmap for buffers for FreeBSD.
8981 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
8983         Fix display of overlay strings with 'display' and 'box' property
8985         * src/xdisp.c (get_next_display_element): Take the box face from
8986         display stack level that comes from a buffer, not an overlay
8987         string.  (Bug#22499)
8989 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
8991         Fix imap-starttls-open
8993         * lisp/net/imap.el (imap-starttls-open): Log imap process
8994         output.  Call imap-parse-greeting.  (Bug#22500)
8996 2016-01-31  Michael Albinus  <michael.albinus@gmx.de>
8998         Merge changes from Tramp repository
9000         * doc/misc/Makefile.in (${buildinfodir}/tramp.info tramp.html):
9001         No EXTRA_OPTS needed.
9003         * doc/misc/tramp.texi: Merge changes from Emacsemacs-25
9004         branch, especially for @trampfn{}.
9005         (Top): Move @ifnottex down.
9006         (History): XEmacs support has been removed.
9007         (GVFS based methods, Remote processes): Do not use emacsgvfs flag.
9008         (Auto-save and Backup): Use both syntax versions.
9009         (File name Syntax): Remark on IPv6 adresses is valid for
9010         unified syntax only.
9012         * doc/misc/trampver.texi: Do not set emacsgvfs flag.
9014 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
9016         Fix return value of imap-starttls-open
9018         * lisp/net/imap.el (imap-starttls-open): Fix return value.
9020 2016-01-31  John Wiegley  <johnw@newartisans.com>
9022         Correct reference to DARWIN_OS preprocessor symbol
9024         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
9025           not be defined.
9027 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9029         Spelling fixes
9031         Spelling fix
9033         Spelling fixes
9035 2016-01-30  Glenn Morris  <rgm@gnu.org>
9037         * lisp/vc/add-log.el (find-change-log): Use locate-dominating-file.
9039 2016-01-30  Matthew Carter  <m@ahungry.com>
9041         Quote table names for postgres listings (sql-mode)
9043         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
9044           unquoted table names to the completion list.
9046 2016-01-30  Glenn Morris  <rgm@gnu.org>
9048         Change Smerge "Mine" and "Other" for "Upper" and "Lower.  (Bug#20878)
9050         * lisp/vc/smerge-mode.el (smerge-diff-switches)
9051         (smerge-context-menu, smerge-match-conflict, smerge-swap): Doc fixes.
9052         (smerge-upper, smerge-upper-face, smerge-keep-upper)
9053         (smerge-diff-base-upper): Rename from smerge-mine, smerge-mine-face,
9054         smerge-keep-mine, smerge-diff-base-mine.  Update all uses.
9055         (smerge-mine-face, smerge-other-face): Remove obsolete face aliases.
9056         (smerge-lower, smerge-lower-face, smerge-lower-re, smerge-keep-lower)
9057         (smerge-diff-base-lower): Rename from smerge-other, smerge-other-face,
9058         smerge-other-re, smerge-keep-other, smerge-diff-base-lower.
9059         Update all uses.
9060         (smerge-basic-map): Add "l" and "u" bindings.
9061         (smerge-mode-menu): Update menu bindings for renaming.
9062         (smerge-font-lock-keywords): Update face names.
9063         (smerge-match-names): Update names.
9064         (smerge-diff-upper-lower): Rename from smerge-diff-mine-other.
9065         (smerge-match-conflict, smerge-ediff): Rename local variables.
9066         (smerge-makeup-conflict): Relabel markers.
9067         (smerge-parsep-re): Use renamed variables.
9069 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9071         Port recent my_edata change to MS-Windows
9073         * src/lastfile.c (my_edata): Also define if WINDOWSNT.
9075 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9077         Pacify GCC on C library without glibc API
9079         Without this change, with --enable-gcc-warnings GCC would complain
9080         “error: redundant redeclaration of ‘aligned_alloc’”.
9081         * configure.ac: Simplify aligned_alloc testing.
9082         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
9083         since the simplified configure.ac no longer checks for that.
9084         Don’t declare if HAVE_ALIGNED_ALLOC.
9085         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
9087 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9089         Tell Automake the new lib/Makefile.am is OK
9091         * lib/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
9093 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9095         Make it easy to override preferred-branch test
9097         * Makefile.in (preferred-branch-is-current):
9098         Rename from emacs-25-branch-is-current.  All uses changed.
9099         (PREFERRED_BRANCH): New macro.
9101 2016-01-30  Glenn Morris  <rgm@gnu.org>
9103         * lisp/net/browse-url.el (browse-url-default-browser):
9104         Lower priority of non-free Chrome.
9106 2016-01-30  Glenn Morris  <rgm@gnu.org>
9108         Improve the custom type of some user options.
9110         * lisp/desktop.el (desktop-minor-mode-table):
9111         * lisp/man.el (Man-frame-parameters):
9112         * lisp/midnight.el (midnight-delay):
9113         * lisp/speedbar.el (speedbar-select-frame-method):
9114         * lisp/tooltip.el (tooltip-frame-parameters):
9115         * lisp/tree-widget.el (tree-widget-space-width):
9116         * lisp/type-break.el (type-break-keystroke-threshold):
9117         * lisp/woman.el (woman-imenu-generic-expression):
9118         * lisp/cedet/ede.el (ede-debug-program-function):
9119         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
9120         * lisp/emulation/viper-keym.el (viper-toggle-key):
9121         * lisp/erc/erc-networks.el (erc-server-alist):
9122         * lisp/gnus/message.el (message-deletable-headers, message-signature):
9123         * lisp/mail/mailalias.el (mail-directory-stream):
9124         * lisp/play/tetris.el (tetris-x-colors):
9125         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
9127 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
9129         Highlight CSS variables with variable name face
9131         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
9132         (css--font-lock-keywords): Highlight variables in
9133         `font-lock-variable-name-face'.
9135 2016-01-30  Glenn Morris  <rgm@gnu.org>
9137         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
9139 2016-01-30  Glenn Morris  <rgm@gnu.org>
9141         Mark some user options that can get evalled as risky.
9143         * lisp/allout.el (allout-title):
9144         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
9145         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
9146         * lisp/progmodes/gud.el (gud-tooltip-display):
9147         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
9148         Mark as risky.
9150 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9152         Disable DebPrint in sys_read on MS-Windows
9154         * src/w32.c (sys_read): Disable a debugging print that is normal
9155         when non-blocking reads are retried.
9157 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
9159         ;Fix ChangeLog entry
9161 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9163         Fix typos in Introduction to Emacs Lisp manual
9165         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
9166         (kill-new function, Digression into C)
9167         (Complete forward-sentence, Divide and Conquer, Find a File)
9168         (lengths-list-many-files, Columns of a graph, defcustom)
9169         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
9170         <dbastos@toledo.com>.
9172 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9174         Shrink static heap a bit
9176         * src/sheap.h: Include lisp.h, for Lisp_Object.
9177         (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
9178         Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
9179         conservative than the old value.
9180         (Bug#22086)
9182 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9184         Fix extern symbols defined and not used
9186         * src/alloc.c: Always include <signal.h>.
9187         (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
9188         Do not define; unused.
9189         * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
9190         * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
9191         to avoid collision with glibc.  Now static.  All uses changed.
9192         * src/lastfile.c (my_edata): Define only if
9193         ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
9194         WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
9195         (Bug#22086)
9197 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9199         Build lib/e-*.o only on platforms that need it
9201         * configure.ac (hybrid malloc): Simplify configuration.
9202         (SHEAP_OBJ): Remove; no longer needed.
9203         (HYBRID_MALLOC): New var. Subst it.
9204         (HYBRID_MALLOC_LIB): New Automake conditional.
9205         * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
9206         HYBRID_MALLOC_LIB.
9207         (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
9208         (MOSTLYCLEANFILES): Add libegnu.a.
9209         * src/Makefile.in (SHEAP_OBJ): Remove.
9210         (HYBRID_MALLOC): New macro.
9211         (base_obj): Use it to conditionally add sheap.o.
9212         (LIBEGNU_ARCHIVE): New macro.
9213         ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
9214         All uses of the latter replaced by the former.
9215         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
9216         Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
9217         * src/gmalloc.c: Update comment.
9218         * src/lisp.h (aligned_alloc)
9219         [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
9220         New decl.
9221         (Bug#22086)
9223 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9225         Include <malloc.h> when advisable
9227         This should help insulate us better from future glibc changes.
9228         It is good hygiene to include .h files for APIs that Emacs uses.
9229         Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
9230         * configure.ac: Check for malloc.h.
9231         * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
9232         not on DOUG_LEA_MALLOC.
9233         * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
9234         Remove decl (now in lisp.h).
9235         * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
9236         [emacs]: Include lisp.h.
9237         [HAVE_MALLOC_H]: Include <malloc.h>.
9238         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
9239         (__after_morecore_hook, __malloc_initialize_hook, __morecore)
9240         (__default_morecore):
9241         [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
9242         (calloc): Make it clear that the macro should not be used.
9243         Remove unused decl.
9244         (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
9245         (__morecore, __default_morecore, __after_morecore_hook)
9246         (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
9247         (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
9248         Remove later decls.
9249         (gmalloc_hook, gfree_hook, grealloc_hook):
9250         Rename from __malloc_hook, __free_hook, __realloc_hook to
9251         avoid type collision with glibc <malloc.h>.  All uses changed.
9252         (gmalloc_hook):
9253         (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
9254         Now static.
9255         (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
9256         (__malloc_initialize_hook, __after_morecore_hook):
9257         Declare with types compatible with glibc.
9258         (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
9259         Remove.  All uses removed.
9260         * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
9261         * src/ralloc.c, src/vm-limit.c:
9262         Simplify includes and include <malloc.h> if available.
9264 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9266         * src/alloc.c: Include "sheap.h".
9268         (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
9269         Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
9270         * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
9271         Declare unconditionally.
9272         * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
9273         (unexec): Don’t set or clear bss_sbrk_did_unexec;
9274         the caller now does this.
9275         (Bug#22086)
9277 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9279         Pacify --enable-gcc-warnings when HYBRID_MALLOC
9281         * src/buffer.c (init_buffer):
9282         * src/emacs.c (main):
9283         * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
9284         Use emacs_get_current_dir_name, not get_current_dir_name.
9285         * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
9286         (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
9287         * src/emacs.c: Include "sheap.h".
9288         (report_sheap_usage): Remove decl.
9289         (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
9290         Don't assume ptrdiff_t can be printed as int.
9291         * src/gmalloc.c [HYBRID_MALLOC]:
9292         Include "sheap.h" rather than declaring its contents by hand.
9293         (get_current_dir_name, gget_current_dir_name)
9294         (hybrid_get_current_dir_name): Remove.
9295         (emacs_abort): Remove duplicate decl.
9296         (aligned_alloc): Undef, like malloc etc.
9297         (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
9298         Make it a bit more efficient.
9299         (malloc_find_object_address): Remove unused decl.
9300         (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
9301         (mstats, memory_warnings): Declare only if GC_MCHECK.
9302         * src/lisp.h (emacs_get_current_dir_name):
9303         New decl, replacing get_current_dir_name.
9304         * src/sheap.c: Include sheap.h first.
9305         (STATIC_HEAP_SIZE): Remove; now in sheap.h.
9306         (debug_sheap): Now static.
9307         (bss_sbrk_buffer_end): Remove; no longer used.
9308         (bss_sbrk_ptr): Now static and private.
9309         (bss_sbrk_did_unexec): Now bool.
9310         (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
9311         (bss_sbrk): Don't treat request_size 0 as special, since the code
9312         works without this being a special case.
9313         Avoid overflow if request size exceeds INT_MAX.
9314         (report_sheap_usage): Remove; now done in emacs.c.
9315         * src/sheap.h: New file.
9316         * src/sysdep.c (get_current_dir_name): Remove macro.
9317         Include "sheap.h".
9318         (emacs_get_current_dir_name): Rename function from
9319         get_current_dir_name.  Handle HYBRID_MALLOC here;
9320         this is simpler.
9321         (Bug#22086)
9323 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9325         Report static heap usage on non-Cygwin, too
9327         * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
9328         * src/unexcw.c (unexec): ... instead of here, since sheap can be used
9329         on platforms other than Cygwin (Bug#22086).
9331 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9333         Pacify GCC on extern decls
9335         * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
9336         to pacify recent GCC (Bug#22086).
9338 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
9340         Add musl patch to support HYBRID_MALLOC on elf systems
9342         * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
9343         (__default_morecore): Here, in particular.
9344         * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
9345         New variable SHEAP_OBJ.
9346         * src/Makefile.in: Use it.
9347         (Bug#22086)
9349 2016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
9351         unexelf.c hook to support HYBRID_MALLOC on ELF
9353         * src/unexelf.c (unexec) [HYBRID_MALLOC]:
9354         Define bss_sbrk_did_unexec (Bug#22086).
9356 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
9358         Link temacs with gnulib compiled with -Demacs
9360         This is done to support HYBRID_MALLOC, since some static variables
9361         (e.g., last_environ in putenv.c) hold pointers to memory malloced
9362         before dumping (Bug#22086).
9363         * lib/Makefile.am: Add incantation to install libegnu.a.
9364         * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
9365         (temacs$(EXEEXT)): Use it.
9367 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
9369         Internal linkage for gmalloc etc. if HYBRID_MALLOC
9371         This avoids clashes with symbols if the after-dump malloc is
9372         derived from Doug Lea's implementation (Bug#22086).
9374         * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
9375         Move declarations up.  For HYBRID_MALLOC, turn all `extern'
9376         declarations below to `static' ones.
9377         (aligned_alloc): Declare for !MSDOS as well.
9378         (heapsize, _fraghead): Move resp. copy declaration downwards.
9379         For HYBRID_MALLOC, conditionalize out the other definitions,
9380         since the previous `static' declarations double as tentative
9381         definitions, anyway.
9382         (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
9383         (__realloc_hook, __memalign_hook): Conditionalize out.
9384         (cfree, memalign, valloc): Ditto.
9386 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9388         Merge from origin/emacs-25
9390         3f481ad Rename xref-query-replace to xref-query-replace-in-results
9391         62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
9392         2111e0e Comment out next-error-function integration in xref
9393         4e11ad3 Correct a use of "which" in intro.texi
9394         a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
9395         76045f7 Don't operate on menu bar of nonexistent frame
9396         c32f3bc Unbreak the GNUstep build.
9398 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
9400         Re-enable checks in member, memql, delete to complain about non-lists
9402         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
9404 2016-02-04  Martin Rudalics  <rudalics@gmx.at>
9406         Minor doc(-string) tweaks
9408         * lisp/window.el (window-in-direction): Fix doc-string typo.
9409         * doc/lispref/frames.texi (Frame Font): Mention canonical
9410         character width/height.
9411         * doc/lispref/windows.texi (Windows and Frames): Clarify
9412         handling of minibuffer window for `window-in-direction'.
9413         (Window Sizes): Minor tweaks in descriptions of
9414         `window-max-chars-per-line', `window-min-width' and
9415         `window-min-size'.
9416         (Deleting Windows): Minor tweak in `delete-window' description.
9417         (Selecting Windows): Clarify window use time description.
9418         (Cyclic Window Ordering): Minor tweak.
9419         (Switching Buffers): Clarify description of
9420         `switch-to-buffer-in-dedicated-window'.
9422 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
9424         Remove some useless-use-of eval.
9426         * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
9427         * lisp/gnus/nnrss.el (xml): Simply require it.
9428         (xml-rpc-method-call): Use declare-function.
9430 2016-01-28  Glenn Morris  <rgm@gnu.org>
9432         Don't use eval to quieten prolog.el compilation.
9434         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
9435         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
9437 2016-01-28  Glenn Morris  <rgm@gnu.org>
9439         Mark some risky prolog variables.
9441         * lisp/progmodes/prolog.el (prolog-system-version)
9442         (prolog-keywords, prolog-types, prolog-mode-specificators)
9443         (prolog-determinism-specificators, prolog-directives)
9444         (prolog-program-name, prolog-program-switches)
9445         (prolog-consult-string, prolog-compile-string)
9446         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
9447         Mark anything processed by prolog-find-value-by-system as risky.
9449 2016-01-28  Glenn Morris  <rgm@gnu.org>
9451         * lisp/custom.el (defcustom): Doc fix.
9453         * doc/lispref/customize.texi (Variable Definitions):
9454         Defcustom should always have a type.
9456 2016-01-28  Glenn Morris  <rgm@gnu.org>
9458         * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
9459         Warn if defcustom has no type.  (Bug#16276)
9461         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
9462         Fix :type.
9464         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
9466 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
9468         Fix Bug#22452
9470         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
9471         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
9472         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
9473         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
9474         Mark it as connected.
9476         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
9477         connection property "connected" is set.  (Bug#22452)
9479 2016-01-27  Glenn Morris  <rgm@gnu.org>
9481         * test/lisp/vc/vc-hg.el: Move from test/automated/.
9483         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
9485         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
9486         if not compiled with xwidgets.
9488 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9490         C-u C-x = example doc fix
9492         * doc/emacs/mule.texi (International Chars):
9493         Adjust example to match current behavior of C-u C-x =.
9495 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9497         malloc.h hygiene
9499         This attempts to future-proof Emacs a bit against possible glibc
9500         changes, by having Emacs use <malloc.h> declarations rather than
9501         coding them up by hand.  Problem noted by Florian Weimer in:
9502         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
9503         Implement this mainly by moving malloc.h-related functions from
9504         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
9505         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
9506         New function.
9507         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
9508         (alloc_unexec_pre, alloc_unexec_post): New functions.
9509         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
9510         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
9511         (__malloc_initialize_hook): Use it.
9512         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
9513         Move here from ...
9514         * src/emacs.c: ... here.
9515         (malloc_get_state, malloc_set_state): Remove extern decls.
9516         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
9517         All uses changed to similarly-named new function.
9518         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
9519         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
9520         New decls.
9522 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
9524         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
9526 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9528         Remove never-set var handle_user_signal_hook
9530         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
9531         Remove never-set var.  All uses removed.
9533 2016-01-26  Anders Lindgren  <andlind@gmail.com>
9535         Fixed NextStep fullscreen issue (bug#22468)
9537         When in fullscreen mode, `[screen visibleFrame]' sometimes
9538         includes, sometimes excludes the menu bar. This could cause
9539         a frame to be placed too low when in fullscreen mode.
9541         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
9542         (constrain_frame_rect): New parameter, isFullscreen, when true don't
9543         query the height of the menu bar.
9544         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
9545         `constrain_frame_rect'.
9546         ([EmacsView initFrameFromEmacs:]): Trace.
9547         ([EmacsView isFullscreen]): Trace.
9548         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
9549         state to `constrain_frame_rect'.
9551 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9553         * lisp/files.el: Use a fixed file name for the second dir-locals file
9555         (dir-locals-file): Revert to its original fixed value.
9556         (dir-locals-file-2): New const.
9557         (dir-locals--all-files): Don't use `file-name-all-completions'.
9558         Instead, just check for the 2 dir-locals files and return a list
9559         of the ones that exit (if any).
9561         * etc/NEWS: Document the change.
9563         * doc/emacs/custom.texi (Directory Variables): Document the change.
9565         * doc/lispref/variables.texi (Directory Local Variables): Update
9566         accordingly.
9568 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9570         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
9572         Change a variable name to be more meaningful, and reorder some of
9573         the code with no change in behavior.
9575 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9577         * lisp/files.el (dir-locals-find-file): Refactor return values
9579         Returning a cache remains unchanged, but the case of returning a
9580         file (or pattern) is now changed to return the contaning
9581         directory.
9583         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
9584         and make obsolete.
9585         (dir-locals-read-from-dir): Simplify accordingly.
9586         (hack-dir-local-variables): Simplify accordingly and rename a
9587         variable.
9589 2016-01-25  Glenn Morris  <rgm@gnu.org>
9591         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
9592         Declare.
9594         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
9596         * configure.ac (--with-cairo): Say it's experimental.
9598         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
9599         Rename using American spelling.  Update all uses.
9601 2016-01-25  Glenn Morris  <rgm@gnu.org>
9603         Yet more xwidget doc fixes.
9605         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
9606         (xwidget-insert, xwidget-webkit-browse-url)
9607         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
9608         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
9609         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9610         (xwidget-webkit-show-id-element)
9611         (xwidget-webkit-show-id-or-named-element)
9612         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
9613         (xwidget-webkit-execute-script-rv)
9614         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
9615         (xwidget-put):  Doc fixes.
9616         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9617         (xwidget-webkit-show-id-element)
9618         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
9620 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
9622         * lisp/gnus/gnus-art.el (gnus-blocked-images):
9623         Add explicit nil choice and tags.
9625 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9627         Spelling fixes
9629 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9631         (rng-c-fix-escaped-newlines): Use subst-char-in-string
9633         * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
9634         Use subst-char-in-string.
9636 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9638         * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
9640         (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
9641         (sgml-calculate-indent): Use it.
9643 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9645         * lisp/org: Fix some compiler warnings
9647         * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
9648         (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
9649         (*this*): Declare as dyn-bound.
9650         (org-babel-expand-src-block, org-babel-load-in-session)
9651         (org-babel-switch-to-session-with-code, org-babel-get-rownames):
9652         Mark unused args.
9653         (org-babel-combine-header-arg-lists): Remove unused var `args'.
9654         (org-babel-find-named-block): Remove unused var `msg'.
9656         * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
9657         Declare as dyn-bound.
9658         (org-edit-src-code): Remove unused var `lfmt'.
9659         (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
9661 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9663         * lisp/font-lock.el: Use #' to quote function symbols
9665 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9667         (font-lock-ensure-function): Fix bug#22399
9669         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
9670         font-lock-mode is not enabled (bug#22399).
9672 2016-01-25  Alan Mackenzie  <acm@muc.de>
9674         Expunge "allow" + infinitive from source and doc, part 2.
9676         Do the same for "permit", "enable", "prevent", and (where appropriate)
9677         "require".
9679         doc/misc/reftex.texi:
9680         doc/misc/url.texi:
9681         lib/get-permissions.c:
9682         lib/strftime.c:
9683         lisp/org/org-element.el:
9684         lisp/org/org-mobile.el:
9685         lisp/textmodes/reftex-vars.el:
9686         src/bidi.c:
9687         src/emacs.c:
9688         src/xdisp.c:
9689         test/etags/c-src/emacs/src/lisp.h:
9691         Expunge the likes of "This allows to do something" from the above files.
9693 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9695         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
9697         `special-mode' is already read-only.
9699 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9701         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
9703 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9705         Port "$@" to OpenIndiana ksh93
9707         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
9708         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
9709         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
9710         bug in long-dead shells, so remove the workaround.
9711         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
9712         Use plain "$@" rather than ${1+"$@"}.
9714 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9716         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
9718 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9720         Improve wording for SMB support
9722         * doc/misc/tramp.texi (External methods): Improve and modernize
9723         wording for discussion of smbclient.  There is no longer any
9724         need to mention the laundry list of old MS Windows implementations
9725         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
9727 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9729         Merge from gnulib
9731         This incorporates:
9732         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
9733         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
9734         2016-01-15 detect utimes() correctly on OS/2 kLIBC
9735         2016-01-15 openat_proc_name: port to OS/2 kLIBC
9736         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
9737         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
9738         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
9739         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
9740         2016-01-14 sig2str: list all signals on FreeBSD >= 7
9741         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
9742         2016-01-12 mktime: rename macro to avoid glibc clash
9743         2016-01-12 Port "$@" to OpenIndiana ksh93
9744         2016-01-12 Port Universal Time settings to strict POSIX
9745         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
9746         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
9747         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
9748         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
9749         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
9750         * m4/fcntl.m4, m4/utimes.m4:
9751         Copy from gnulib.
9752         * m4/gnulib-comp.m4: Regenerate.
9754 2016-01-24  Alan Mackenzie  <acm@muc.de>
9756         Expunge "allow" + infinitive without direct object from source and doc.
9758         Do the same for "permit", "enable", and "prevent".
9760         * doc/emacs/mule.texi:
9761         * doc/lispref/control.texi:
9762         * doc/lispref/display.texi:
9763         * doc/lispref/frames.texi:
9764         * doc/lispref/functions.texi:
9765         * doc/lispref/nonascii.texi:
9766         * doc/lispref/streams.texi:
9767         * doc/lispref/windows.texi:
9768         * doc/misc/dbus.texi:
9769         * doc/misc/eww.texi:
9770         * doc/misc/flymake.texi:
9771         * doc/misc/octave-mode.texi:
9772         * doc/misc/org.texi:
9773         * doc/misc/reftex.texi:
9774         * doc/misc/tramp.texi:
9775         * doc/misc/wisent.texi:
9776         * etc/NEWS:
9777         * lisp/autorevert.el:
9778         * lisp/cedet/mode-local.el:
9779         * lisp/cedet/semantic/senator.el:
9780         * lisp/cedet/semantic/wisent.el:
9781         * lisp/dos-fns.el:
9782         * lisp/frameset.el:
9783         * lisp/gnus/gnus-agent.el:
9784         * lisp/gnus/mm-util.el:
9785         * lisp/international/characters.el:
9786         * lisp/ldefs-boot.el:
9787         * lisp/mail/mailclient.el:
9788         * lisp/man.el:
9789         * lisp/mh-e/mh-search.el:
9790         * lisp/net/tramp-cmds.el:
9791         * lisp/net/tramp-gvfs.el:
9792         * lisp/org/org-crypt.el:
9793         * lisp/org/org-element.el:
9794         * lisp/org/org-feed.el:
9795         * lisp/org/org.el:
9796         * lisp/org/ox-ascii.el:
9797         * lisp/org/ox-icalendar.el:
9798         * lisp/org/ox-publish.el:
9799         * lisp/org/ox.el:
9800         * lisp/play/gamegrid.el:
9801         * lisp/play/gomoku.el:
9802         * lisp/progmodes/antlr-mode.el:
9803         * lisp/progmodes/python.el:
9804         * lisp/progmodes/vhdl-mode.el:
9805         * lisp/strokes.el:
9806         * lisp/textmodes/ispell.el:
9807         * lisp/tree-widget.el:
9808         * lisp/vc/pcvs.el:
9809         * lisp/window.el:
9810         * src/lisp.h:
9811         * src/w32.c:
9812         * src/w32heap.c:
9813         * src/w32term.c:
9814         * src/window.c:
9815         * src/xfaces.c:
9817         Replace solecisms like "This allow to do something" with a correct
9818         alternative, such as "This allow you to do something", "This allows
9819         something to be done" or "This allows the doing of something".
9821 2016-01-24  l3thal  <kwhite@gnu.org>
9823         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
9825 2016-01-24  Kelvin White  <kwhite@gnu.org>
9827         Add NEWS entry for asynchronous reconnect in ERC
9829 2016-01-24  l3thal  <kwhite@gnu.org>
9831         Add NEWS entry for asynchronous reconnect in ERC
9833 2016-01-24  Kelvin White  <kwhite@gnu.org>
9835         browse-url.el: Add 'google-chrome' to supported browsers.
9837 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9839         Port Tramp manual to latest Texinfo
9841         Otherwise, 'make pdf' did not work (Bug#22416).
9842         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
9843         (trampfn): Specialize to the case where METHOD is nonempty.
9844         The 2nd argument is now user@host, not 2nd user and 3rd host args.
9845         All uses changed.
9846         (trampf): New macro.
9848 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
9850         * eww.el (eww-render): Protect against empty content-types.
9852 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
9854         authors.el updates
9856         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
9857           Additions.
9859 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
9861         Rename xref-query-replace to xref-query-replace-in-results
9863         * lisp/progmodes/xref.el(xref-query-replace):
9864         Rename to xref-query-replace-in-results.
9865         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
9867         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
9868         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
9869         * doc/emacs/dired.texi (Operating on Files):
9870         * doc/emacs/maintaining.texi (Xref Commands)
9871         (Identifier Search, Identifier Search): Update accordingly.
9873 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
9875         Update cl-defgeneric and cl-defmethod docstrings
9877         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
9878         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
9879         (cl-defmethod): Mention that multiple dispatch arguments are
9880         allowed.  Document supported types.  (Bug#22336)
9882 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
9884         Comment out next-error-function integration in xref
9886         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
9887         Comment out next-error-function integration
9888         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
9890 2016-01-23  John Wiegley  <johnw@newartisans.com>
9892         Correct a use of "which" in intro.texi
9894 2016-01-23  Alan Mackenzie  <acm@muc.de>
9896         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
9898         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
9899         context of case labels (including "default") more rigorously.
9900         (c-guess-basic-syntax CASE 15): Consequential amendment.
9902         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
9904 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
9906         Don't operate on menu bar of nonexistent frame
9908         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
9909         is valid before redisplaying its menu. Fixes bug#22438.
9911 2016-01-23  Anders Lindgren  <andlind@gmail.com>
9913         Unbreak the GNUstep build.
9915         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
9916         predefined "caution" image. Add trace.
9917         (x_set_window_size): Remove unused variables `cols' and `rows'.
9918         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
9919         GNUstep is used.
9920         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
9921         ([EmacsWindow zoom:]): Remove unused variable `f'.
9923 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
9924             John Wiegley  <johnw@gnu.org>
9925             Michael Heerdegen  <michael_heerdegen@web.de>
9927         Improve documentation of 'pcase'
9929         * doc/lispref/control.texi (Pattern matching case statement):
9930         Reorganize, expand, and improve wording.
9932         * etc/NEWS: Mention that 'pcase' changes are documented.
9934 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9936         * etc/NEWS: Say that Cairo is experimental.
9938 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9940         Report error for PNG under Cairo
9942         * src/image.c (lookup_rgb_color): Signal a file error instead
9943         of dumping core when mishandling an image.
9945 2016-01-23  Arash Esbati  <esbati@gmx.de>
9947         Delete a spurious backquote (tiny change)
9949         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
9950         spurious backquote which raises an error with emacs 25.
9952 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9954         Pacify --enable-gcc-warnings --with-cairo
9956         Problem reported by Alexander Kuleshov in:
9957         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
9958         * src/gtkutil.c (xg_get_page_setup):
9959         Use switch rather than if-then-else.
9960         * src/image.c (COLOR_TABLE_SUPPORT):
9961         Define directly rather than via #define and optional later #undef.
9962         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
9963         Crash when the pixel is undefined, as there is a genuine bug
9964         here (Bug#22442).
9965         * src/image.c (tiff_load, gif_load, svg_load_image)
9966         (x_kill_gs_process) [USE_CAIRO]:
9967         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
9968         Omit unused locals, or move them to where they’re needed.
9969         (x_clear_area1): Now ATTRIBUTE_UNUSED.
9971 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9973         Update documentation for Dired search and replace
9975         * doc/emacs/dired.texi (Operating on Files): Update descriptions
9976         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
9977         'dired-do-find-regexp-and-replace'.
9979         * etc/NEWS: Mention xref-related changes in Dired.
9981 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
9983         Port recent xdisp.c fix to picky C compilers
9985         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
9986         putting #if inside the arguments to a standard function, which
9987         the C standard says has undefined behavior.
9989 2016-01-22  Alan Mackenzie  <acm@muc.de>
9991         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
9993         * cc-engine.el (c-forward-declarator): New function.
9994         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
9995         contained in the preceding arg list.
9997         * cc-fonts.el (c-font-lock-declarators): Use the new function
9998         `c-forward-declarator' in place of inline code.
10000 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10002         Fix the build with --enable-checking=glyphs
10004         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
10005         build without xwidget support.
10007 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10009         Document cl-generic.el
10011         * doc/lispref/functions.texi (Generic Functions): New section.
10012         (Bug#22336)
10013         (Functions): Update the chapter menu.
10014         * doc/lispref/elisp.texi: Update the master menu.
10016 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
10018         xwidgets style cleanup
10020         Adjust the newly-added Xwidgets code so that it uses a more-typical
10021         Emacs style.  This should not affect behavior, except that in
10022         a few places it adds runtime checks that Lisp arguments are of
10023         the proper type, and in one place it uses more-precise arithmetic.
10024         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
10025         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
10026         Include xwidget.h unconditionally.
10027         * src/buffer.c (Fkill_buffer):
10028         * src/dispnew.c (update_window):
10029         * src/emacs.c (main):
10030         * src/print.c (print_object):
10031         * src/window.c (Fdelete_window_internal):
10032         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
10033         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
10034         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
10035         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
10036         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
10037         Call xwidget functions and macros without worrying about
10038         HAVE_XWIDGETS when the code is a no-op on non-xwidget
10039         platforms.
10040         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
10041         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
10042         (struct it.xwidget):
10043         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
10044         Always define.
10045         * src/emacsgtkfixed.h: Omit unnecessary comment.
10046         * src/keyboard.c: Fix spacing.
10047         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
10048         Define to be a no-op if not HAVE_XWIDGETS.
10049         * src/xwidget.c: Include xwidget.h first (after config.h)
10050         to make sure that it can stand by itself.
10051         (Fmake_xwidget, Fxwidget_webkit_execute_script):
10052         Fix typo in doc string.
10053         (Fmake_xwidget): Check type of args.
10054         (Fmake_xwidget, offscreen_damage_event)
10055         (webkit_document_load_finished_cb, webkit_download_cb)
10056         (webkit_new_window_policy_decision_requested_cb)
10057         (webkit_navigation_policy_decision_requested_cb)
10058         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
10059         (xwidget_osr_event_set_embedder, xwidget_init_view):
10060         Omit unnecessary casts.
10061         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
10062         (xwidget_show_view, xwidget_hide_view)
10063         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
10064         (xwidget_touched):
10065         * src/xwidget.h (struct xwidget.kill_without_query)
10066         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
10067         Use bool for boolean.
10068         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
10069         Simplify by using list functions.
10070         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
10071         (Fxwidget_resize): Check type of integer args
10072         before doing any work.  Check that they are nonnegative.
10073         (Fxwidget_set_adjustment): Check type of integer arg.
10074         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
10075         Simplify.  Use double, not float.
10076         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
10077         (valid_xwidget_spec_p): Simplify.
10078         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
10079         * src/xwidget.h: Include lisp.h first, so that includers do
10080         not need to worry about doing that before including this file.
10081         Make this .h file safe to include even on non-HAVE_XWIDGETS
10082         configurations, to simplify the includers.
10083         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
10084         (xwidget_end_redisplay, lookup_xwidget)
10085         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
10086         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
10087         (struct glyph_matrix, struct glyph_string, struct xwidget)
10088         (struct xwidget_view, struct window):
10089         New forward or incomplete decls, so that includers need not
10090         assume the corresponding .h files are already included, or that
10091         HAVE_XWIDGETS is defined.
10092         (struct xwidget_type, xwidget_from_id): Remove; unused.
10094 2016-01-22  John Wiegley  <johnw@newartisans.com>
10096         Further corrections to the pcase docstring
10098 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10100         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
10102 2016-01-21  Stephen Leake  <stephen_leake@stephe-leake.org>
10104         In xref-collect-references, force backends to respect the 'dir' arg
10106         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
10107         to use `default-directory'.
10109 2016-01-21  John Wiegley  <johnw@newartisans.com>
10111         Minor correction to pcase docstring
10113 2016-01-21  John Wiegley  <johnw@newartisans.com>
10115         Write a new docstring for the pcase macro
10117         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
10119 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
10121         Avoid byte-compiler warning in todo-mode (bug#21953)
10123         * todo-mode.el (todo-convert-legacy-files): Add limit argument
10124         to looking-back to comply with advertised-calling-convention.
10126 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
10128         Fix desktop support in todo-mode and doc-view (bug#22377)
10130         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
10131         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
10133         * lisp/calendar/todo-mode.el (todo-modes-set-2):
10134         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
10136 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10138         No need to configure gobject-introspection
10140         It wasn’t needed for the recently-installed xwidget_mvp code; see:
10141         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
10142         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
10143         (HAVE_GIR):
10144         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
10145         Remove.  All uses removed.
10146         * configure.ac (emacs_config_features): Don’t worry about GIR.
10148 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10150         Don’t export C symbols not used elsewhere
10152         These were recently added, mostly as part of xwidget code.
10153         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
10154         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
10155         Now static functions here, not macros in emacsgtkfixed.h.
10156         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
10157         Remove.  All uses replaced by definiens.
10158         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
10159         Remove; these are now static functions in emacsgtkfixed.c.
10160         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
10161         Remove; unused.
10162         (emacs_fixed_get_type): Remove decl; no longer extern.
10163         * src/xwidget.c (offscreen_damage_event)
10164         (webkit_mime_type_policy_typedecision_requested_cb)
10165         (webkit_new_window_policy_decision_requested_cb)
10166         (webkit_navigation_policy_decision_requested_cb)
10167         (xwidget_spec_value, xwidget_view_lookup)
10168         (xwidget_start_redisplay, xwidget_touch):
10169         Now static.
10170         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
10171         Remove decls.
10173 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
10175         Support squiggly heredocs in ruby-mode
10177         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
10178         Support squiggly heredocs added in Ruby 2.3.
10180         * test/indent/ruby.rb: Add squiggly example.
10182 2016-01-20  Glenn Morris  <rgm@gnu.org>
10184         * configure.ac (emacs_config_features): Remove WEBKIT.
10186 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10188         Port to platforms with gtk3 but not webkitgtk3
10190         I ran into this problem on my Fedora 23 installation;
10191         Emacs configured but did not build when --with-xwidgets was specified.
10192         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
10193         (DOES_XWIDGETS_USE_GIR): New var.
10194         If --with-xwidgets is specified, report an error if not
10195         doable, to be consistent with the other --with options.
10196         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
10197         not work at all without webkitgtk3.  Simplify use of
10198         EMACS_CHECK_MODULES.  Output message about gobject
10199         introspection only if xwidgets are used.
10200         * etc/NEWS: Users need webkitgtk3, not merely webkit.
10201         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
10202         since this file is no longer compiled if webkitgtk3 is not available.
10204 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
10206         Fix doc string of 'isearch-search-fun-function'
10208         * lisp/isearch.el (isearch-search-fun-function)
10209         (isearch-search-string): Doc fixes.  (Bug#22411)
10211 2016-01-19  Stefan Monnier  <monnier@iro.umontreal.ca>
10213         * lisp/xwidget.el: Nitpicks
10215         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
10216         Use with-current-buffer rather than save-excursion + set-buffer.
10218 2016-01-19  Glenn Morris  <rgm@gnu.org>
10220         Don't hard-code 1 as point-min.
10222         * lisp/image-mode.el (image-display-size):
10223         * lisp/xwidget.el (xwidget-webkit-last-session)
10224         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
10226 2016-01-19  Glenn Morris  <rgm@gnu.org>
10228         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
10230 2016-01-19  Glenn Morris  <rgm@gnu.org>
10232         Trivial doc copyedits.
10234         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
10235         (Fxwidget_webkit_get_title, Fxwidget_resize)
10236         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
10237         (Fxwidget_info, Fxwidget_view_lookup)
10238         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
10240 2016-01-19  Glenn Morris  <rgm@gnu.org>
10242         Avoid advising image-display-size for xwidgets.
10244         * lisp/xwidget.el (xwidget-image-display-size): Remove.
10245         (image-display-size): Remove advice.
10246         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
10247         (image-display-size): Incorporate xwidget code directly.
10249 2016-01-19  Glenn Morris  <rgm@gnu.org>
10251         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
10253         * lisp/xwidget.el (window-configuration-change-hook)
10254         (kill-buffer-query-functions): Only modify these hooks if
10255         compiled with xwidget support.
10257 2016-01-19  Glenn Morris  <rgm@gnu.org>
10259         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
10261         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
10263         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
10265         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
10267 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
10269         * lisp/gnus/nnir.el (nnir-request-update-mark):
10270         Default to the original mark.
10271         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
10272         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
10274 2016-01-19  Glenn Morris  <rgm@gnu.org>
10276         * lisp/xwidget.el (report-xwidget-bug): Remove.
10278         (top-level): No longer require reporter.
10280 2016-01-19  Joakim Verona  <joakim@verona.se>
10281             Grégoire Jadi  <daimrod@gmail.com>
10283         Support for the new Xwidget feature.
10285         * configure.ac:
10286         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
10287         * xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
10288         * xdisp.c:
10289         (handle_display_spec, handle_single_display_spec, push_it)
10290         (pop_it, set_iterator_to_next, dump_glyph)
10291         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
10292         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
10293         (produce_xwidget_glyph, x_produce_glyphs)
10294         (get_window_cursor_type):
10295         * window.c (Fdelete_window_internal):
10296         * termhooks.h (e):
10297         * print.c (print_object):
10298         * lisp.h (ptrdiff_t):
10299         * keyboard.c (kbd_buffer_get_event, make_lispy_event)
10300         (syms_of_keyboard):
10301         * emacs.c (main):
10302         * dispnew.c (update_window, scrolling_window):
10303         * dispextern.h (g, i):
10304         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
10305         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
10306         * keyboard.c (kbd_buffer_get_event):
10307         * emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
10308         (emacs_fixed_class_init): Add case for an xwidget view.
10310         * xwidget.c, xwidget.h, xwidget.el: New files for xwidgets
10313         Various improvements to the Xwidget feature.
10314         * xwidgets.c:
10315         * emacsgtkfixed.c:
10316         * xwidget.el:
10318 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10320         Improve documentation of 'alist-get'
10322         * doc/lispref/variables.texi (Setting Generalized Variables): Add
10323         'alist-get' to the list of functions that can appear in PLACE
10324         argument of 'setf'.
10326 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10328         Minor copyedits of doc/emacs/maintaining.texi
10330         * doc/emacs/maintaining.texi (List Identifiers): More accurate
10331         description of "C-M-i" wrt tags tables.
10332         (Tags Tables): Move the definition of "tag" to a footnote.
10334 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10336         Unbreak the Cygwin-w32 build
10338         * src/w32fns.c (globals_of_w32fns): Move the initialization of
10339         resetstkoflw into a part that isn't compiled on Cygwin.
10340         (Bug#22403)
10342 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10344         * shr.el (shr-table-body): Allow tables to have text children.
10346 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
10348         Cope with multiple overlapping faces.
10350         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
10351           left.
10352           (hfy-face-resolve-face): Handle font specification as well as font
10353           name. Documentation update. (Bug#21990)
10355 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10357         Fix spurious escapes in describe-input-method
10359         Problem reported by Vincent Belaïche (Bug#22309).
10360         * lisp/international/mule-cmds.el (describe-language-environment):
10361         * lisp/international/quail.el (quail-help):
10362         Apply substitute-command-keys to doc strings before displaying them.
10364 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
10366         Bump version to 25.0.90
10368         * README:
10369         * configure.ac:
10370         * msdos/sed2v2.inp: Bump version to 25.0.90.
10372 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
10374         * etc/AUTHORS: Update the AUTHORS file
10376 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
10378         authors.el updates
10380         * admin/authors.el (authors-renamed-files-alist): Additions.
10382 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
10384         Make it possible to run make change-history on emacs-25
10386         * Makefile.in: Check if the current branch is emacs-25 instead of
10387           master.
10389 2016-01-30  lu4nx  <lx@shellcodes.org>
10391         Support Go language in 'etags'
10393         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
10394         <Go_help>: New help.
10395         <Go_suffixes>: New variable.
10396         (Go_functions): New function.
10397         <lang_names>: Add entry for Go.  (Bug#22370)
10399         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
10400         * doc/man/etags.1: Mention Go support.
10402         * etc/NEWS: Mention Go support.
10404         * test/etags/go-src/test.go:
10405         * test/etags/go-src/test1.go: New test files.
10406         * test/etags/Makefile (GOSRC): New variable.
10407         (SRCS): Add $(GOSRC).
10408         * test/etags/ETAGS.good_1:
10409         * test/etags/ETAGS.good_2:
10410         * test/etags/ETAGS.good_3:
10411         * test/etags/ETAGS.good_4:
10412         * test/etags/ETAGS.good_5:
10413         * test/etags/ETAGS.good_6:
10414         * test/etags/CTAGS.good: Adapt to addition of Go tests.
10416 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
10418         Improve Ruby support in 'etags'
10420         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
10421         singleton classes.  Remove class qualifiers from tags generated
10422         for method and constant names.  (Bug#22241)
10424         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
10425         are tagged by etags in Ruby.
10427         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
10429         * test/etags/ruby-src/test1.ruby: Add more tests.
10430         * test/etags/ETAGS.good_1:
10431         * test/etags/ETAGS.good_2:
10432         * test/etags/ETAGS.good_3:
10433         * test/etags/ETAGS.good_4:
10434         * test/etags/ETAGS.good_5:
10435         * test/etags/ETAGS.good_6:
10436         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
10437         tests.
10439 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
10441         Adjust etags test results to changes in copyright years
10443         * test/etags/CTAGS.good:
10444         * test/etags/ETAGS.good_1:
10445         * test/etags/ETAGS.good_2:
10446         * test/etags/ETAGS.good_3:
10447         * test/etags/ETAGS.good_4:
10448         * test/etags/ETAGS.good_5:
10449         * test/etags/ETAGS.good_6: Adjust to shift in characters and
10450         in line numbers.
10452 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
10454         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
10456         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
10458 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
10460         Make it possible to run make change-history on emacs-25
10462         * Makefile.in: Check if the current branch is emacs-25 instead of
10463           master.
10465 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
10467         Don't fiddle with DEFAULT
10469         * lisp/progmodes/project.el (project--completing-read-strict):
10470         Don't change DEFAULT, whether is has any matches in
10471         COLLECTION, or not.
10473 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
10475         Document xwidget commands and functions
10477         * doc/lispref/display.texi (Xwidgets): New section, describes some
10478         of the xwidget primitives.
10479         * doc/lispref/display.texi (Display): Update the chapter menu.
10480         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
10481         * doc/emacs/emacs.texi (Top): Update the master menu to include
10482         the xwidget node.
10484 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
10486         Build fix for shr.el
10488         * shr.el (seq): Require.
10490 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
10492         Improve project-find-file yet again!
10494         * lisp/progmodes/project.el (project--completing-read-strict):
10495         New function.
10496         (project-find-file-in): Use it.
10497         (project-file-completion-table): Move the default
10498         implementation inside the cl-defgeneric form.
10499         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
10501 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
10503         Don't pass DIR to 'hg status'
10505         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
10506         Don't pass DIR to 'hg status' (bug#22481).
10508 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
10510         Fix typo in previous commits
10512         * lisp/progmodes/project.el (project-find-file-in):
10513         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
10514         commit.
10516 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
10518         Improve project-find-file
10520         * lisp/progmodes/project.el (project-file-completion-table): New.
10521         (project-find-file, project-or-external-find-file): Default to filename
10522         at point.
10523         (project-file-completion-table): New, split out from
10524         project--find-file-in.
10525         (project-find-file-in): Renamed from project--find-file-in, use
10526         project-file-completion-table.
10528         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
10529         (xref--find-ignores-arguments): Add doc string.
10531 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
10533         Implement vc-mtn-find-ignore-file, fix some doc strings
10535         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
10537         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
10539         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
10541         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
10543 2016-01-23  Michael Albinus  <michael.albinus@gmx.de>
10545         Improve user name completion in Tramp
10547         * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
10548         Call also "getent passwd" or "getent group", if possible.
10549         (tramp-parse-putty): Cache the result.
10551 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
10553         * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
10555 2016-01-20  Glenn Morris  <rgm@gnu.org>
10557         Remove handling of non-string time-stamp formats, obsolete for 20 years.
10559         * lisp/time-stamp.el (time-stamp-format): Doc fix.
10560         (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
10561         (time-stamp-string): Ignore non-string formats.
10563 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
10565         Anoter fix for problematic merge from emacs-25
10567         * src/w32fns.c (globals_of_w32fns): Move initialization of
10568         resetstkoflw to a non-Cygwin part.
10570 2016-01-20  Michael Albinus  <michael.albinus@gmx.de>
10572         * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
10574 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
10576         Fix MS-Windows build broken by a botched merge from emacs-25
10578         * src/w32.c (w32_crypto_hprov): New static variable.
10579         (globals_of_w32): Initialize w32_crypto_hprov.
10580         (w32_init_crypt_random, w32_init_random): New functions.
10581         Include wincrypt.h.
10582         * src/w32.h (w32_init_random): Add prototype.
10584 2016-01-20  Vincent Belaïche  <vincentb1@users.sourceforge.net>
10586         Correct a whole bunch of bugs coming with renamed cell relocation.
10588         * lisp/ses.el (ses-localvars): rename variable
10589         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
10590         and adjust the comment about it.
10591         (ses-plist-delq): new defun.
10592         (ses--ses-buffer-list): new defvar.
10593         (ses--unbind-cell-name): new defun.
10594         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
10595         (ses-relocate-formula): Undo change of
10596         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
10597         preventing relocation for named cell --- now doing this is delegated
10598         to function `ses-relocate-symbol'.
10599         (ses-relocate-range): In docstring, undo change of
10600         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
10601         lower case as it is not a variable.
10602         (ses-relocate-all): Cell name relocation : 1) check that cell is a
10603         renamed cell by testing `ses-cell' property to :ses-named, rather than
10604         comparing name to corresponding standard name. Set rowcol of renamed
10605         cell into the hashmap --- `ses-cell' property must not be used for
10606         that as the same name can be used for different locations in different
10607         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
10608         `local-variable-p' to check if cell name is already in use in this
10609         sheet or needs initialization.
10610         (ses-relocate-all): Cell value relocation : 1) like for name
10611         relocation use the `ses-cell' property rather than comparing actual
10612         name to corresponding standard name. 2) Correct bug introduced in
10613         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
10614         made the other way round than the intention --- ie value relocation
10615         was disabled for standard cell, not for renamed cell as was the
10616         intention.
10617         (ses-relocate-all): Add loop for unbinding deleted renamed cells
10618         names.
10619         (ses-killbuffer-hook): new defun.
10620         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
10621         kill buffer hook, plus pushing current buffer if new in list.
10622         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
10623         into `ses--in-killing-named-cell-list'.
10624         (ses-rename-cell): Remove update of variable
10625         `ses--renamed-cell-symb-list', this variable is renamed to
10626         `ses--in-killing-named-cell-list', and its setting is done in
10627         functions `ses-delete-row' and , `ses-delete-column' now.
10628         (ses-rename-cell): Make cell new name a buffer local variable.
10629         (ses-rename-cell): Change correction of
10630         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
10631         computation of the range over which `cursor-intangible' property was
10632         to be updated. This correction was ok for non spilling cells, but not
10633         for cells spilling over following blank cells. Simply use
10634         `next-single-property-change' rather than computing the end column
10635         from column widths.
10637 2016-01-19  John Wiegley  <johnw@newartisans.com>
10639         Merge from origin/emacs-25
10641         3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
10642         6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
10643         2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
10644         71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
10645         f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
10646         86e4513 Fix incompatbilities with MS-Windows 2000 and older
10647         4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
10648         15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
10649         39afa42 Fix tests for active region in hideif.el
10650         05df666 Fix interactive specs in some hideif.el commands
10652 2016-01-19  John Wiegley  <johnw@newartisans.com>
10654         -
10656 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10658         Avoid stdio in SIGINT handler
10660         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
10661         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
10662         * lib/ignore-value.h: New file, from gnulib.
10663         * src/keyboard.c: Include it.
10664         (write_stdout, read_stdin): New functions.
10665         (handle_interrupt): Use them instead of printf and getchar,
10666         and avoid fflush when handling signals.
10668 2016-01-19  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
10670         Refactor mml-smime.el, mml1991.el, mml2015.el
10672         (Maybe this is the last merge from Gnus git to Emacs git)
10674         Cf. discussion on ding mailing list, messages in
10675         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
10676         Common code from the three files mml-smime.el, mml1991.el, and
10677         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
10678         to gnus-util.el.
10680         The code is supported by test cases with necessary test keys.
10682         Documentation in message.texi is updated.
10684         * doc/misc/message.texi (Security, Using S/MIME):
10685         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
10686         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
10687         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
10689         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
10690         New functions.
10692         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
10693         (epa--select-keys): Autoload.
10694         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
10695         (mml-secure-openpgp-signers): New user option;
10696         make mml1991-signers and mml2015-signers obsolete aliases to it.
10697         (mml-secure-smime-signers): New user option;
10698         make mml-smime-signers an obsolete alias to it.
10699         (mml-secure-openpgp-encrypt-to-self): New user option;
10700         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
10701         aliases to it.
10702         (mml-secure-smime-encrypt-to-self): New user option;
10703         make mml-smime-encrypt-to-self an obsolete alias to it.
10704         (mml-secure-openpgp-sign-with-sender): New user option;
10705         make mml2015-sign-with-sender an obsolete alias to it.
10706         (mml-secure-smime-sign-with-sender): New user option;
10707         make mml-smime-sign-with-sender an obsolete alias to it.
10708         (mml-secure-openpgp-always-trust): New user option;
10709         make mml2015-always-trust an obsolete alias to it.
10710         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
10711         New user options.
10712         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
10713         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
10714         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
10715         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
10716         (mml-secure-passphrase-callback, mml-secure-check-user-id)
10717         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
10718         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
10719         (mml-secure-fingerprint, mml-secure-filter-keys)
10720         (mml-secure-normalize-cust-name, mml-secure-select-keys)
10721         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
10722         (mml-secure-self-recipients, mml-secure-recipients)
10723         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
10725         * lisp/gnus/mml-smime.el: Require epg;
10726         refactor declaration and autoloading of epg functions.
10727         (mml-smime-use): Doc fix.
10728         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
10729         Obsolete.
10730         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
10731         Use format instead of gnus-format-message.
10732         (mml-smime-epg-secret-key-id-list): Remove variable.
10733         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
10734         (mml-smime-epg-find-usable-secret-key): Remove functions.
10735         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
10737         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
10738         (mml1991-passphrase-cache-expiry): Obsolete.
10739         (mml1991-epg-secret-key-id-list): Remove variable.
10740         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
10741         (mml1991-epg-find-usable-secret-key): Remove functions.
10742         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
10744         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
10745         (mml2015-passphrase-cache-expiry): Obsolete.
10746         (mml2015-epg-secret-key-id-list): Remove variable.
10747         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
10748         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
10749         (mml2015-epg-find-usable-secret-key): Remove functions.
10750         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
10751         (mml2015-epg-encrypt): Refactor.
10753 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10755         Merge from gnulib
10757         This mostly just updates copyright dates of gnulib files.
10758         It also updates to the latest version of texinfo.tex.
10760 2016-01-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10762         Move variables to inner loop, preparing for Mac port merge
10764         * src/keyboard.c (command_loop_1): Move variables `cmd',
10765         `keybuf', and `i' to inner loop.
10767 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10769         Minor improvements to (random t) documentation
10771         * doc/lispref/numbers.texi (Random Numbers):
10772         * src/fns.c (Frandom):
10773         Omit unnecessary details about randomness fallback.
10774         Say that it is a fallback.
10776 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
10778         Rename methods in Ruby etags example file
10780         * test/etags/ruby-src/test.rb: Rename the example methods to
10781         correspond to the common terminology used in Ruby.
10782         * test/etags/CTAGS.good:
10783         * test/etags/ETAGS.good_1:
10784         * test/etags/ETAGS.good_2:
10785         * test/etags/ETAGS.good_3:
10786         * test/etags/ETAGS.good_4:
10787         * test/etags/ETAGS.good_5:
10788         * test/etags/ETAGS.good_6: Adjust accordingly.
10790 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10792         Propertize backtick in 'def `(abc)' as symbol constituent
10794         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
10795         Propertize backtick in 'def `(abc)' as symbol constituent.
10796         (ruby-syntax-propertize-function):
10797         Rename to ruby-syntax-propertize.
10799 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10801         Fix scrolling under scroll-preserve-screen-position on TTY
10803         * src/window.c (window_scroll_line_based): When setting point to
10804         preserve screen coordinates, don't let cursor enter either of the
10805         two scroll margins.  (Bug#22395)
10807 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10809         Fix shr table rendering of nested tables
10811         * shr.el (shr-table-body): Don't include all tbodies in nested
10812         tables in the levels above.
10814 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10816         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
10818 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10820         Add xref-based replacements for Dired search commands
10822         * lisp/dired-aux.el (dired-do-find-regexp)
10823         (dired-do-find-regexp-and-replace): New commands.
10824         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
10826         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
10827         `Q' to the new commands.
10829         * lisp/progmodes/xref.el (xref-query-replace)
10830         (xref-collect-matches): Add progress reporters.
10831         (xref--find-ignores-arguments): Return nil for zero ignores.
10832         (xref--show-xrefs): Add an optional argument.
10833         (xref-collect-matches): Drop the assert.  'find' accepts a
10834         regular file in place of directory argument, too.
10836 2016-01-18  Alan Mackenzie  <acm@muc.de>
10838         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
10840 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10842         Improve user documentation of Xref
10844         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
10845         (Looking Up Identifiers, Identifier Search, List Identifiers):
10846         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
10847         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
10848         for the details.
10850 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10852         Fix scrolling under scroll-preserve-screen-position and margins
10854         * src/window.c (window_scroll_pixel_based): When setting point to
10855         preserve screen coordinates, don't let cursor enter either of the
10856         two scroll margins.  Fix incorrect usage of
10857         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
10858         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
10860 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10862         Unbreak the MS-Windows build
10864         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
10865         WINDOWSNT, to avoid link failure.  (Bug#22202)
10867 2016-01-18  Alan Mackenzie  <acm@muc.de>
10869         Desktop: protect users against inadvertant upgrading of desktop file.
10871         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
10873         * etc/NEWS: Add an entry about upgrading a desktop file.
10875         * lisp/desktop.el (desktop-file-version): Amend doc string.
10876         (desktop-native-file-version, desktop-io-file-version): new variables.
10877         (desktop-clear): Set desktop-io-file-version to nil.
10878         (desktop-buffer-info): make the presence of the last item on the list
10879         conditional on (>= desktop-io-file-version 208).
10880         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
10881         Amend the doc string.  Add code to determine the output file version.
10882         (desktop-create-buffer): Set desktop-io-file-version to the input file's
10883         version.
10885 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10887         Initialize GnuTLS before calling gnutls_rnd
10889         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
10890         Don’t set gnutls_global_initialized if gnutls_global_init fails.
10891         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
10892         if 2.12 or later, which has gnutls_rnd.
10893         (emacs_gnutls_global_init, gnutls_rnd): New fallback
10894         placeholder macros if before 2.12.
10895         (init_random): Initialize gnutls globals before trying to
10896         use gnutls_rnd.
10898 2016-01-17  Andreas Schwab  <schwab@linux-m68k.org>
10900         Don't use GnuTLS before it is initialized
10902                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
10904 2016-01-17  Bill Wohler  <wohler@newt.com>
10906         * mh-e.el (mh-version): Add +git to version.
10908 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10910         Port cleanup attribute to OpenBSD
10912         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
10913         sprintf, and this messes up 'configure' when it tests for the cleanup
10914         attribute.  Work around the problem by using __has_attribute directly.
10915         Problem reported by Joakim Jalap (Bug#22385).
10916         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
10917         * m4/ax_gcc_var_attribute.m4: Remove.
10918         * src/conf_post.h (__has_attribute): Provide a substitute, for
10919         non-GCC or older GCC compilers.  All uses changed to assume
10920         the substitute.  Check for the cleanup attribute.
10921         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
10923 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10925         Prefer GnuTLS when acquiring random seed
10927         This attempts to improve on the fix for Bug#22202.
10928         * configure.ac (HAVE_DEV_URANDOM): Remove.
10929         Check /dev/urandom existence at run time, not at build time,
10930         since the device could exist in the former but not the latter.
10931         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
10932         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
10933         (random_seed): New typedef.
10934         (set_random_seed): New static function.
10935         (seed_random): Use them.
10936         (init_random): Use random_seed instead of uintmax_t, so as to
10937         not consume more entropy than needed.  Prefer gnutls_rnd if it
10938         works; this avoids a redundant open of /dev/urandom on
10939         GNU/Linux with modern GnuTLS.
10941 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10943         Improve documentation of dynamic modules
10945         * doc/lispref/loading.texi (How Programs Do Loading): Update the
10946         description of searching for files in 'load' when Emacs was built
10947         with support for dynamic modules.
10949 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10951         * INSTALL: Document --with-modules.
10953 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10955         Document 'function-put'
10957         * doc/lispref/symbols.texi (Symbol Plists): Document
10958         'function-put'.  Update documentation of 'function-get'.
10960 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10962         Document 'funcall-interactively'
10964         * doc/lispref/commands.texi (Interactive Call): Document
10965         'funcall-interactively'.
10966         * doc/lispref/functions.texi (Calling Functions): Mention
10967         'funcall-interactively' and provide a cross-reference.
10969 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10971         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
10973         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
10975 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10977         Document renaming of selection-related functions
10979         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
10980         functions into the corresponding "gui-*" functions.  Make the
10981         description slightly less X-centric.
10983 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10985         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
10987 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10989         Document 'define-inline'
10991         * doc/lispref/functions.texi (Defining Functions): Document
10992         'define-inline' and related macros.
10994         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
10996 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10998         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
11000         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
11002 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
11004         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
11006         instead of manually writing a dir-locals file.
11008 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
11010         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
11012         (dir-locals-file)
11013         * lisp/files-x.el (modify-dir-local-variable)
11014         * lisp/dos-fns.el (dosified-file-name)
11015         * lisp/help-fns.el (describe-variable): Change accordingly.
11017 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
11019         Fix incompatbilities with MS-Windows 2000 and older
11021         * src/w32.c <multiByteToWideCharFlags>: New global variable.
11022         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
11023         Use it instead of the literal MB_ERR_INVALID_CHARS.
11024         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
11025         appropriate for the underlying OS version.  For details, see
11026         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
11027         * src/w32.h: Declare multiByteToWideCharFlags.
11028         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
11029         (add_tray_notification): Use multiByteToWideCharFlags instead of
11030         the literal MB_ERR_INVALID_CHARS.
11031         (_resetstkoflw_proc): New typedef.
11032         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
11033         pointer, as this function is absent in msvcrt.dll shipped with W2K
11034         and older systems.
11036 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
11038         Mention in PROBLEMS an issue with MS-Windows NT4
11040         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
11041         on Windows NT4.  For the details, see
11042         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
11044 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
11046         Ensure 8-byte aligned memory allocation on MS-Windows 9X
11048         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
11049         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
11050         (malloc_after_dump_9x, realloc_after_dump_9x)
11051         (free_after_dump_9x): New functions.  (Bug#22379)  See also
11052         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
11053         for more details about the original problem.
11055         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
11056         (free_after_dump_9x): Add prototypes.
11058 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
11060         Fix tests for active region in hideif.el
11062         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
11063         'use-region-p' to test whether to operate on region, instead of
11064         testing 'mark-active'.
11066 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
11068         Fix interactive specs in some hideif.el commands
11070         * lisp/progmodes/hideif.el (hif-evaluate-macro)
11071         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
11072         in commands that should only act on the region if it's active.
11074 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
11076         Enable test selector from command line
11078         * test/automated/Makefile.in: Change variable manipulation to avoid
11079           over-writing selector.
11081 2016-01-15  Alan Mackenzie  <acm@muc.de>
11083         Don't confuse "::" with ":" when trying to parse member initializers.
11085         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
11086         more robustly for ":" token when searching backwards for it.
11088         * lisp/progmodes/cc-langs (c-:$-multichar-token-regexp): New language
11089         variable.
11091 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11093         Ensure positive number of glyphs for margins of positive width
11095         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
11096         positive value when a non-zero width of the marginal area was
11097         requested.  (Bug#22356)
11099 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11101         Fix crashes when mini-window has non-zero margins
11103         * src/window.c (resize_frame_windows): Use 'new_size' to set
11104         minibuffer window's 'total_cols' value, as 'size' might be in
11105         pixels.  (Bug#22356)
11107 2016-01-15  Alan Mackenzie  <acm@muc.de>
11109         In comment-dwim with style `extra-line', respect indent-tabs-mode.
11111         This fixes bug #22369.
11113         * lisp/newcomment.el (comment-make-bol-ws): New function.
11114         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
11116 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11118         Make 'random' seeds cryptographically secure if possible
11120         * configure.ac: Check for "/dev/urandom".
11122         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
11123         for the seed from "/dev/urandom".
11124         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
11125         * src/fns.c (Frandom): Update the doc string to indicate that
11126         system entropy is used when available.
11127         * src/w32.c: Include wincrypt.h.
11128         (w32_init_crypt_random, w32_init_random): New functions, use the
11129         CryptGenRandom API.
11130         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
11131         * src/w32.h (w32_init_random): Add prototype.
11133         * doc/lispref/numbers.texi (Random Numbers): Document more details
11134         about 't' as the argument to 'random'.
11136         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
11137         strong seed if possible.
11139         (Bug#22202)
11141 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11143         Unhide the --no-line-directive option to 'etags'
11145         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
11146         option.  (Bug#22306)
11148         * doc/man/etags.1: Document the --no-line-directive option.
11150 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
11152         Fix picture-mode wrt double-width characters
11154         * lisp/textmodes/picture.el (picture-insert): Check the width of
11155         the character being replaced, not just that of the replacement.
11156         (Bug#1808)
11158 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
11160         Honor docstring of gnus-group-get-new-news
11162         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
11163         but non-numeric, unconditionally consider all groups to need updating.
11165 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
11167         Disallow parenthesis in non-pseudo CSS selectors
11169         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
11170         parenthesis in selectors except for in the function notation that
11171         might appear right after a pseudo-class.
11172         * test/indent/scss-mode.scss: Add a test for it.
11174 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
11176         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
11178 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
11180         check-maybe shall run only default tests
11182         * test/automated/Makefile.in (check, check-expensive): Depend on
11183         mostlyclean.
11184         (check-maybe): Re-run only default tests.
11185         (check-doit): Use code of check-maybe.
11186         (mostlyclean): Move *.log files away.
11188 2016-01-13  Mark Oteiza  <mvoteiza@udel.edu>
11190         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
11192 2016-01-13  Dmitry Gutov  <dgutov@yandex.ru>
11194         Un-obsolete tags-loop-continue
11196         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
11197         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
11199 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11201         Document obsoletion of 'intangible' and 'point-entered/left'
11203         * doc/lispref/text.texi (Special Properties): Document the new
11204         properties 'cursor-intangible' and 'cursor-sensor-functions'.
11205         Document the obsolete status of 'intangible', 'pointer-left',
11206         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
11207         * doc/lispref/display.texi (Overlay Properties): Document that
11208         'intangible' overlay property is obsolete.
11210         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
11212 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11214         Updater documentation of 'looking-back'
11216         * doc/lispref/searching.texi (Regexp Search): Update documentation
11217         of 'looking-back'.  Fix markup.
11219 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11221         Document 'pre-redisplay-functions'
11223         * doc/lispref/hooks.texi (Standard Hooks):
11224         * doc/lispref/display.texi (Forcing Redisplay): Document
11225         'pre-redisplay-functions'.
11227 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11229         Document the new deafault value of 'load-read-function'
11231         * doc/lispref/loading.texi (How Programs Do Loading): Document the
11232         change in the default value of 'load-read-function'.
11234 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11236         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
11238         * doc/lispref/nonascii.texi (Text Representations): Document
11239         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
11241 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11243         Document the new prefix-command hooks
11245         * doc/lispref/hooks.texi (Standard Hooks): Document
11246         `prefix-command-echo-keystrokes-functions' and
11247         `prefix-command-preserve-state-hook'.
11249 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11251         Fix one more misuse of time-stamp-time-zone
11253         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
11254         than the unportable "GMT" for time zone.
11256 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11258         Fix NNTP NEWGROUPS off-by-a-few-hours bug
11260         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
11261         in Universal Time, since we’re telling the server “GMT”.
11263 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11265         Update publicsuffix.txt from upstream
11267         * etc/publicsuffix.txt: Update from
11268         https://publicsuffix.org/list/effective_tld_names.dat
11269         dated 2016-01-12 11:52:01 UTC.
11271 2016-01-12  Glenn Morris  <rgm@gnu.org>
11273         Fix some declarations.
11275         * lisp/descr-text.el (internal-char-font):
11276         * lisp/cedet/mode-local.el (xref-item-location):
11277         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
11278         (epg-sub-key-capability, epg-sub-key-validity):
11279         * lisp/international/mule-util.el (internal-char-font):
11280         Fix declarations.
11282 2016-01-12  Glenn Morris  <rgm@gnu.org>
11284         Fix some custom types.
11286         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
11287         * lisp/gnus/gnus.el (gnus-valid-select-methods):
11288         * lisp/mail/rmail.el (rmail-get-coding-function):
11289         * lisp/net/newst-treeview.el (newsticker-groups-filename):
11290         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
11291         * lisp/textmodes/tildify.el (tildify-space-predicates):
11292         * lisp/url/url-tramp.el (url-tramp-protocols):
11293         Fix custom types.
11295 2016-01-12  Glenn Morris  <rgm@gnu.org>
11297         Add some missing version tags.
11299         * lisp/electric.el (electric-quote-comment)
11300         (electric-quote-string, electric-quote-paragraph):
11301         * lisp/epg-config.el (epg-gpgconf-program):
11302         * lisp/rect.el (rectangle-preview):
11303         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
11304         * lisp/emacs-lisp/package.el (package-selected-packages)
11305         (package-hidden-regexps):
11306         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
11307         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
11308         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
11309         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
11310         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
11311         (mml-smime-sign-with-sender, mml2015-always-trust)
11312         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
11313         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
11314         (browse-url-conkeror-arguments):
11315         * lisp/net/newst-reader.el (newsticker-download-logos):
11316         * lisp/progmodes/gud.el (gud-guiler-command-name):
11317         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
11318         * lisp/progmodes/project.el (project-vc):
11319         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
11320         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
11321         (python-shell-completion-native-disabled-interpreters)
11322         (python-shell-completion-native-enable)
11323         (python-shell-completion-native-output-timeout)
11324         (python-shell-completion-native-try-output-timeout):
11325         * lisp/progmodes/xref.el (xref):
11326         * lisp/term/screen.el (xterm-screen-extra-capabilities):
11327         * lisp/term/xterm.el (xterm-max-cut-length):
11328         Add missing version tags.
11330 2016-01-12  Glenn Morris  <rgm@gnu.org>
11332         * test/automated/core-elisp-tests.el
11333         (core-elisp-tests-1-defvar-in-let): Add a custom type.
11335 2016-01-12  Glenn Morris  <rgm@gnu.org>
11337         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
11339         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
11341 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11343         Merge from gnulib
11345         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
11346         It also updates to the latest version of texinfo.tex.
11347         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
11348         * build-aux/update-copyright, doc/misc/texinfo.tex:
11349         Update from gnulib.
11351 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11353         Update documentation of 'process-running-child-p'
11355         * doc/lispref/processes.texi (Input to Processes): Document the
11356         changes in return value of 'process-running-child-p'.
11358 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11360         Update documentation of 'deactivate-mark'.
11362         * doc/lispref/markers.texi (The Mark): Document that
11363         'deactivate-mark' is now buffer-local when set.
11365 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11367         Update documentation of 'completion-table-dynamic'
11369         * doc/lispref/minibuf.texi (Programmed Completion): Document the
11370         new optional argument to 'completion-table-dynamic'.
11372 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11374         Document changes in 'read-buffer' and 'read-buffer-function'
11376         * doc/lispref/minibuf.texi (High-Level Completion): Document the
11377         4th argument to 'read-buffer' and 'read-buffer-function'.
11379 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11381         Fix time-stamp-time-zone bugs introduced in July
11383         This fixes a bug introduced when the July changes to
11384         format-time-string installed, as the changes were not
11385         correctly handled in this module (Bug#22302).
11386         Also, document time stamp time zones.
11387         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
11388         (time-stamp--format): New private function.
11389         (time-stamp-string, time-stamp-string-preprocess)
11390         (time-stamp-do-number): Use it.
11391         * doc/emacs/files.texi (Time Stamps): Mention time zones.
11392         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
11394 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11396         Make piping to subprocesses more robust on MS-Windows
11398         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
11399         buffer can hold.  Don't return -1 if something has been written to
11400         the pipe.  Zero out 'errno' before calling '_write', to avoid
11401         returning a stale value.  (Bug#22344)
11402         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
11403         * src/w32.c (pipe2): Use it to request a user-defined size for the
11404         pipe being created.
11406         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
11408         * doc/emacs/msdos.texi (Windows Processes): Document
11409         'w32-pipe-buffer-size'.
11411 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11413         * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
11415         (syntax-ppss):
11416         * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
11418 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11420         lisp/nxml: Use syntax-tables for comments
11422         * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
11423         (nxml-mode): Set syntax-ppss-table.
11424         Use sgml-syntax-propertize-function for syntax-propertize-function.
11425         Let font-lock highlight strings and comments.
11426         (nxml-degrade): Don't touch "nxml-inside" property any more.
11427         (nxml-after-change, nxml-after-change1): Remove functions.
11428         (comment): Don't set fontify rule any more.
11429         (nxml-fontify-attribute): Don't highlight the value any more.
11430         (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
11431         (nxml-comment-delimiter, nxml-comment-content): Remove faces.
11433         * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
11434         (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
11435         (nxml-clear-inside, nxml-set-inside): Remove.
11436         (nxml-scan-after-change): Remove function.
11437         (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
11438         (nxml-ensure-scan-up-to-date): Use syntax-propertize.
11439         (nxml-move-outside-backwards):
11440         * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
11441         nxml-inside-start behavior.
11443         * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
11444         (nxml-debug-clear-inside): Remove macros.
11446         * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
11447         (xmltok-scan-after-comment-open): Simplify.
11449 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11451         * elisp-mode.el (elisp--font-lock-flush-elisp-buffers): Fix comment
11453 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11455         * lisp/nxml: Use standard completion; it also works for company-mode
11457         * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
11458         (nxml-completion-at-point-function): Remove.
11459         (nxml-mode): Don't set completion-at-point-functions.
11460         * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
11461         (rng-completion-at-point): Rename from rng-complete and mark it
11462         non-interactive.  It is now to be used as completion-at-point-function.
11463         (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
11464         (rng-complete-attribute-value): Don't perform completion, but return
11465         completion data instead.
11466         (rng-complete-qname-function, rng-generate-qname-list): Add a few
11467         arguments, previously passed via dynamic coping.
11468         (rng-strings-to-completion-table): Rename from
11469         rng-strings-to-completion-alist.  Don't return an alist.  Don't both
11470         sorting and uniquifying.
11472         * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
11473         (rng-completion-exact-p, rng-quote-string): Delete functions.
11475         * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
11476         (rng-missing-attributes-message, rng-missing-element-message)
11477         (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
11478         calling rng-quote-string everywhere.
11480 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11482         Use sgml-electric-tag-pair-mode also in nxml-mode
11484         * lisp/nxml/rng-nxml.el: Require sgml-mode.
11485         (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
11486         (rng-complete-qname-function): Use complete-with-action.
11488         * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
11489         Let-bind forward-sexp-function, since nxml-mode binds it to
11490         something incompatible.
11492         * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
11494 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
11496         * xmltok.el: Mark the "sole --" rather than the comment opener
11498         * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
11499         marker on the "sole --" rather than on the comment opener.
11501 2016-01-15  Sam Steingold  <sds@gnu.org>
11503         replace `tramp-compat-split-string' (removed) with `split-string'
11505         (python-shell-tramp-refresh-process-environment)
11506         (python-shell-calculate-pythonpath): use `split-string'
11507         instead of defunct `tramp-compat-split-string'
11509 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
11511         Update nXML to use Emacs's Unicode support, and lexical-binding
11513         * etc/nxml/*.el: Remove obsolete char-name files.
11514         * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
11515         var `next'.
11516         * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
11517         * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
11518         * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
11519         (nxml-target-section-pos, nxml-depth-in-target-section)
11520         (nxml-outline-state-transform-alist)
11521         (nxml-outline-display-section-tag-function): Move decl before first use.
11522         * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
11523         (nxml-char-name-alist, nxml-char-name-table)
11524         (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
11525         (nxml-enable-char-name-set, nxml-disable-char-name-set)
11526         (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
11527         (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
11528         (nxml-insert-named-char): Use read-char-by-name instead.
11529         (nxml-char-ref-display-extra): Use get-char-code-property.
11530         * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
11531         Remove function.
11532         * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
11534 2016-01-15  Michael Albinus  <michael.albinus@gmx.de>
11536         Add "sg" method to Tramp
11538         * doc/misc/tramp.texi (Inline methods): Add "sg" method.
11539         (Customizing Completion): Add function `tramp-parse-etc-group'.
11541         * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
11542         (tramp-completion-function-alist-sg): New defconst.
11543         (top): Completion function for "sg" is
11544         `tramp-completion-function-alist-sg'.
11546         * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
11547         (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
11549 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
11551         Remove XEmacs compatibility in Tramp
11553         * doc/misc/tramp.texi: Replace flags by their hard coded name.
11554         Remove unused flags and the enclosed alternative text for XEmacs.
11556         * doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
11557         and "xemacs" flags to "unified" and "separate".  Remove flags
11558         "emacsgw", "emacsname", "emacsdir", "ftppackagename",
11559         "emacsothername", "emacsotherdir" and "emacsotherfilename".
11560         (trampver):
11561         * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
11563         * lisp/net/tramp.el (bkup-backup-directory-info)
11564         (directory-sep-char, ls-lisp-use-insert-directory-program)
11565         (outline-regexp, tramp-backup-directory-alist)
11566         (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
11567         (tramp-file-name-regexp-unified)
11568         (tramp-file-name-regexp-separate)
11569         (tramp-completion-file-name-regexp-unified)
11570         (tramp-completion-file-name-regexp-separate, tramp-chunksize)
11571         (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
11572         (tramp-debug-message, tramp-progress-reporter-update)
11573         (with-tramp-progress-reporter)
11574         (tramp-rfn-eshadow-setup-minibuffer)
11575         (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
11576         (tramp-rfn-eshadow-update-overlay)
11577         (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
11578         (tramp-file-name-for-operation)
11579         (tramp-completion-file-name-handler)
11580         (tramp-autoload-file-name-handler, tramp-completion-mode-p)
11581         (tramp-handle-directory-files)
11582         (tramp-handle-directory-files-and-attributes)
11583         (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
11584         (tramp-handle-insert-file-contents, tramp-handle-load)
11585         (tramp-handle-shell-command)
11586         (tramp-handle-verify-visited-file-modtime)
11587         (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
11588         (tramp-check-for-regexp, tramp-wait-for-regexp)
11589         (tramp-send-string, tramp-mode-string-to-int)
11590         (tramp-get-local-gid, tramp-check-cached-permissions)
11591         (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
11592         (auto-save-file-name-transforms)
11593         (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
11594         (tramp-clear-passwd, tramp-time-diff):
11595         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
11596         (directory-sep-char, tramp-adb-file-name-handler-alist)
11597         (tramp-adb-parse-device-names)
11598         (tramp-adb-handle-expand-file-name)
11599         (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
11600         (tramp-adb-handle-file-local-copy)
11601         (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
11602         (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
11603         (tramp-adb-handle-shell-command)
11604         (tramp-adb-handle-start-file-process, tramp-adb-get-device)
11605         (tramp-adb-maybe-open-connection):
11606         * lisp/net/tramp-cache.el (tramp-persistency-file-name)
11607         (tramp-cache-print):
11608         * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
11609         (tramp-bug, tramp-reporter-dump-variable)
11610         (tramp-load-report-modules, tramp-append-tramp-buffers):
11611         * lisp/net/tramp-compat.el (tramp-compat-funcall)
11612         (tramp-advice-file-expand-wildcards)
11613         (tramp-compat-temporary-file-directory)
11614         (tramp-compat-make-temp-file, tramp-compat-copy-file)
11615         (tramp-compat-delete-directory, )
11616         (tramp-compat-process-running-p):
11617         * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
11618         (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
11619         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
11620         (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
11621         (tramp-gvfs-handle-file-local-copy)
11622         (tramp-gvfs-handle-file-name-all-completions)
11623         (tramp-gvfs-handle-file-notify-add-watch)
11624         (tramp-gvfs-monitor-file-process-filter)
11625         (tramp-gvfs-handle-file-readable-p)
11626         (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
11627         (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
11628         (tramp-gvfs-maybe-open-connection)
11629         (tramp-gvfs-parse-device-names):
11630         * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
11631         (tramp-gw-open-connection, tramp-gw-open-network-stream):
11632         * lisp/net/tramp-sh.el (directory-sep-char)
11633         (tramp-sh-file-name-handler-alist)
11634         (tramp-sh-handle-file-truename)
11635         (tramp-sh-handle-set-visited-file-modtime)
11636         (tramp-sh-handle-verify-visited-file-modtime)
11637         (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
11638         (tramp-sh-handle-file-acl)
11639         (tramp-sh-handle-file-name-all-completions)
11640         (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
11641         (tramp-do-copy-or-rename-file-directly)
11642         (tramp-do-copy-or-rename-file-out-of-band)
11643         (dired-compress-file-suffixes, dired-remove-file)
11644         (tramp-sh-handle-dired-compress-file)
11645         (tramp-sh-handle-insert-directory)
11646         (tramp-sh-handle-expand-file-name)
11647         (tramp-sh-handle-start-file-process)
11648         (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
11649         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
11650         (tramp-sh-handle-file-notify-add-watch)
11651         (tramp-sh-gvfs-monitor-dir-process-filter)
11652         (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
11653         (tramp-find-executable)
11654         (tramp-open-connection-setup-interactive-shell)
11655         (tramp-find-inline-encoding, tramp-compute-multi-hops)
11656         (tramp-maybe-open-connection, tramp-convert-file-attributes)
11657         (tramp-get-remote-path, tramp-get-remote-touch):
11658         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
11659         (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
11660         (tramp-smb-handle-delete-directory)
11661         (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
11662         (tramp-smb-handle-make-directory-internal)
11663         (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
11664         (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
11665         (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
11666         (tramp-smb-get-cifs-capabilities)
11667         (tramp-smb-maybe-open-connection):
11668         * lisp/net/trampver.el (tramp-repository-get-version):
11669         Remove XEmacs compat code.
11671         * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
11672         (reporter-dump-variable): Declare functions.
11674         * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
11675         (tramp-advice-minibuffer-electric-separator)
11676         (tramp-advice-minibuffer-electric-tilde)
11677         (tramp-handle-unhandled-file-name-directory):
11678         * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
11679         (tramp-compat-font-lock-add-keywords)
11680         (tramp-compat-load, tramp-compat-number-sequence)
11681         (tramp-compat-split-string, tramp-compat-delete-dups):
11682         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
11683         Remove.
11685         * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
11686         recursively.
11688 2016-01-14  K. Handa  <handa@gnu.org>
11690         fix previous change of src/ftfont.c (ftfont_shape_by_flt)
11692         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
11693         second glyph only when there are enough glyphs.
11695 2016-01-13  Glenn Morris  <rgm@gnu.org>
11697         * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
11699         or its hook, to move point.  (Bug#22348)
11701 2016-01-12  Michael Albinus  <michael.albinus@gmx.de>
11703         Merge missing commit from emacs-25 branch
11705         * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
11706         New variables.
11707         (check-expensive, check-doit): New targets.
11709         * Makefile.in (check-expensive): New target.
11711         * test/lisp/autorevert-tests.el
11712         (auto-revert-test01-auto-revert-several-files):
11713         * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
11714         (file-notify-test06-many-events):
11715         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
11716         (tramp-test27-start-file-process, tramp-test28-shell-command)
11717         (tramp-test29-vc-registered)
11718         (tramp-test31-special-characters-with-stat)
11719         (tramp-test31-special-characters-with-perl)
11720         (tramp-test31-special-characters-with-ls)
11721         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
11722         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
11723         (tramp-test35-unload): Tag the tests as :expensive-test.
11725 2016-01-12  John Wiegley  <johnw@newartisans.com>
11727         Merge from origin/emacs-25
11729         1f6898d test/automated/vc-hg.el: Support out-of-tree build
11730         3adb56e Minor change in tramp-tests.el
11731         2b535ba ; * etc/NEWS: Update the js.el entry.
11732         76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
11733         b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
11734         36b9539 Avoid an infloop when we run out of memory
11735         2006752 Avoid unnecessary failures of auto-saving after fatal error
11736         eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
11737         552694a Revert attempt to use 'noexcept' in typedef
11738         6ad0d39 Update documentation of 'indirect-function'
11739         c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
11740         303141a Update documentation for obsoleting 'syntax-begin-function'
11741         4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
11742         e667bbb Document new features if Eshell
11743         9c4e4e0 ; * etc/NEWS: Update EUDC entries.
11744         1089dc9 Handle too long commands in Tramp
11745         684eb58 * .gitattributes: *.cur and *.pif are binary files too.
11746         d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
11747         bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
11748         09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
11749         cca0f93 ; Account for spaces before the filename
11750         c71e1e8 Use short date for 'hg annotate', and output the author
11751         f50027b Spelling fix
11752         c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
11753         cc140bc Document user-level functions in project.el
11754         f8208b6 Document the user-level features of the Xref package
11755         b131fb8 * loading.texi: Add `define-type' entry for load-history
11756         db3c2a8 Improve doc strings and prompts in xref.el
11757         f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
11758         90fd798 Fix coding system for Tramp on OS X.
11759         e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
11760         9dfcbf0 Update 'load-history' docs
11761         207e191 Fix (error ...) error
11762         457738f Correctly analyze brace arguments in templated C++ function declarations.
11763         d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
11764         2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
11765         1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
11766         8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
11767         4b37cba Improve documentation of Delete Selection mode
11768         a034dd3 Fix two project-find-file issues
11769         30abf29 Clarify doc string of 'dired-current-directory'
11770         e990bb2 Use the face of preceding text for displaying the ellipsis
11771         5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
11772         eeb710a ; * lisp/startup.el: Sentences end with two spaces.
11773         428b3de * admin/admin.el (set-version): Also handle the NEWS file.
11774         648de81 ; Add NEWS entry for project.el
11775         671862f apropos-library: Skip obvious duplicates; don't error on generics
11776         51668a5 ; Grammar fix
11777         ed41d11 Add project-find-file and project-or-external-find-file
11778         056da45 ; Improve commentary in 'setup_for_ellipsis'
11779         269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
11781 2016-01-12  John Wiegley  <johnw@newartisans.com>
11783         Merge from origin/emacs-25
11785         ce4a052 Add defvar-local to lisp-imenu-generic-expression
11786         a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
11787         76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
11788         1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
11789         b6b47af Properly encode/decode base64Binary data in SOAP
11790         c632466 Obey coding-system-for-write when writing stdout/stderr in batch
11791         2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
11792                 Update the URI of MELPA and marmalade-repo.
11793                 Reported by CHENG Goa <chenggao@royau.me> in
11794                 https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
11795         d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
11796         5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
11797         7380990 Remove function wrongly on AWK Mode value of context
11798         fontification hook.
11799         d400753 * src/buffer.c: Stick with ASCII in doc string.
11800         221240c Reword transient-mark-mode doc string
11801         977d3ea Update doc string of 'selective-display'
11802         229c3fa Make C++ buffers writeable when writing their initial text
11803                 properties.
11804         f5c762c Additional changes for "make check-expensive"
11805         1729cf3 ; * admin/MAINTAINERS: Remove myself.
11806         33219d3 Apply text properties for <, > in new after-change function
11807                 (C++ Java Modes).
11809 2016-01-12  John Wiegley  <johnw@newartisans.com>
11811         Merge from origin/emacs-25
11813         9fb185a shr-tag-video bug fix
11814         6300655 Minor fixes in tramp-tests.el
11815         50575b1 Ensure redisplay when 'truncate-lines' is set
11816         0d9e80d Fix a doc string of 'transient-mark-mode'
11817         0000ae5 MS-Windows followup to latest gnulib update
11818         4bc5e02 Spelling fix
11819         f1093f7 Do secure signed Bcc handling
11821 2016-01-12  John Wiegley  <johnw@newartisans.com>
11823         Merge from origin/emacs-25
11825         861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
11826         46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
11827         71ea138 * lisp/align.el (align): Simplify a lambda
11828         5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
11829         1f680db Fix compilation next-error in buffers with selective-display
11830         d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
11831         1da116f Add SHA1 warnings for high network security settings
11832         e48bacd ; * etc/NEWS: Typo fix.
11834 2016-01-12  John Wiegley  <johnw@newartisans.com>
11836         Merge from origin/emacs-25
11838         43662a2 ; Clarify that xref is still experimental
11839         0a6e6ca ; * admin/release-process: Remove some obsolete records.
11840         c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
11841         8637f3d (semantic-symref-derive-find-filepatterns): Return a list
11842         0a7ad07 ; Re-arrange xref-related entries in NEWS.
11843         fe903ef Fix xref-find-references on MS-Windows
11844         55a28d8 ; Fixed visual bell artifact problem on NextStep.
11845         d064034 Document new features of tildify-mode
11846         964bea7 Document new features of Whitespace mode
11847         cd68f47 Improve documentation of new Hide-IfDef features
11848         723b8bf Fix regression in font-locking cl-assert and cl-check-type
11850 2016-01-12  John Wiegley  <johnw@newartisans.com>
11852         Merge from origin/emacs-25
11854         ef33bc7 Spelling and grammar fixes
11855         9c3dbab Fix copyright years by hand
11856         0e96320 Update copyright year to 2016
11858 2016-01-12  John Wiegley  <johnw@newartisans.com>
11860         Merge from origin/emacs-25
11862         9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
11863         526d80c Port chart.el methods to cl-generic.
11864         410bb69 Add nt/INSTALL.W64 build instructions
11865         8f5b524 Add new input method 'programmer-dvorak'
11866         6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
11867         bb83bb1 Fix EWW rendering of long RTL lines
11868         b1a8509 fix  bug#21054
11869         ce5ad12 Clean up cairo printing code
11871 2016-01-12  John Wiegley  <johnw@newartisans.com>
11873         Merge from origin/emacs-25
11875         6ee327d Add handle_user_signal_hook
11876         47580e0 Avoid writing to purespace
11877         0588be7 Remove unused variable
11878         89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
11879         3b95e9c Use posix_openpt instead of openpty on Darwin
11880         86312ff Document support for ':documentation' in Lisp mode
11881         c930e75b Document new features of TeX mode
11882         7c83d84 Clarify docs of hscroll in RTL text
11883         4c8f8db Fix rendering of HTML pages that use character composition
11884         a8d37ca Avoid some compiler warnings in w32.c
11885         ce106f3de Undo ill-advised change
11886         be0bba4 Unbreak completion in python-mode buffers
11888 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
11890         test/automated/vc-hg.el: Support out-of-tree build
11892         * test/automated/vc-hg.el
11893         (vc-hg-annotate-extract-revision-at-line-with-filename)
11894         (vc-hg-annotate-extract-revision-at-line-with-both):
11895         Don't refer to source-directory.
11896         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
11898 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
11900         Minor change in tramp-tests.el
11902         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11903         Use `dired-uncache' instead of a Tramp internal function.
11905 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
11907         * etc/HELLO: Add Armenian and Mongolian greetings.
11909         (Bug#22346)
11911 2016-01-11  Alan Mackenzie  <acm@muc.de>
11913         Java Mode: Fontify identifiers in the presence of annotations.
11915         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
11916         Don't move point when the defun fails.
11917         (c-forward-decl-or-cast-1): Correct a usage of match data.
11919         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
11920         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
11921         removed variable.
11923         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
11925 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
11927         Avoid an infloop when we run out of memory
11929         * src/alloc.c (garbage_collect_1): Don't bother saving and
11930         restoring the echo-area message if we are GC'ing after running out
11931         of memory.  This avoids an infloop due to repeated attempts to
11932         allocate memory for the cons cell needed to save the message,
11933         which signals the memory-full error, which attempts to save the
11934         echo-area message, which signals memory-full again, etc.
11936 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
11938         Avoid unnecessary failures of auto-saving after fatal error
11940         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
11941         the benefit of FAT volumes if we are called as part of shutting
11942         down due to a fatal error, which probably means we are trying to
11943         auto-save the session.
11944         * src/lread.c (check_obarray): Don't bother making the obarray
11945         valid if we are shutting down due to a fatal error.  This avoids
11946         interfering with auto-saving the crashed session.
11948 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
11950         Simplify HAVE_MODULES use in mark_maybe_pointer
11952         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
11953         so that later code can use 'if' rather than '#ifdef'.
11954         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
11955         always working.
11957 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
11959         Revert attempt to use 'noexcept' in typedef
11961         This use of 'noexcept' runs afoul of the C++11 standard.
11962         Problem reported by Philipp Stephani in:
11963         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
11964         * src/emacs-module.c (emacs_finalizer_function):
11965         Move this typedef here ...
11966         * src/emacs-module.h: ... from here, and use only the C
11967         version of the typedef.  The typedef is now private since it
11968         is never used in the .h file now and anyway it seemed to be
11969         causing more confusion than it cured.
11970         (make_user_ptr, get_user_finalizer, set_user_finalizer):
11971         Open-code the type instead.
11973 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11975         Update documentation of 'indirect-function'
11977         * doc/lispref/eval.texi (Function Indirection): Update the
11978         documentation of 'indirect-function'.
11980 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11982         Update documentation for obsoleting 'syntax-begin-function'
11984         * doc/lispref/syntax.texi (Position Parse): Undocument
11985         'syntax-begin-function' that is now obsolete.
11987 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11989         Document new features if Eshell
11991         * doc/misc/eshell.texi (Input/Output): Document the new
11992         '#<bufname>' syntax.
11993         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
11994         Disable "Key Index" generation, as there are no @kindex entries in
11995         this manual.
11997 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
11999         Handle too long commands in Tramp
12001         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
12002         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
12003         order to not exceed shell command line limit.
12005         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
12006         (tramp--test-utf8): Include Arabic file name, again.
12008 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
12010         * .gitattributes: *.cur and *.pif are binary files too.
12012 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
12014         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
12016 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
12018         * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
12020         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
12021         within $(...).
12022         * test/indent/shell.sh: Add corresponding test.
12024 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
12026         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
12028         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
12029         cast to Lisp_Object.
12031 2016-01-09  Dmitry Gutov  <dgutov@yandex.ru>
12033         Use short date for 'hg annotate', and output the author
12035         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
12036         Change '-d' to '-dq'.  (Bug#21805)
12037         (vc-hg-annotate-switches): Default to "-u" "--follow".
12038         (vc-hg-annotate-re): Update to recognize the short date format
12039         and the optional username.
12040         (vc-hg-annotate-time)
12041         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
12043         * test/automated/vc-hg.el: New file.
12045 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
12047         Spelling fix
12049 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
12051         Document user-level functions in project.el
12053         * lisp/progmodes/project.el (project-find-file)
12054         (project-or-external-find-file): Add doc strings.
12056 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
12058         Document the user-level features of the Xref package
12060         * doc/emacs/maintaining.texi (Maintaining): Add a list of
12061         described features.
12062         (Xref): New section, made out of thoroughly rewritten "Tags"
12063         section.
12064         (Find Identifiers, Looking Up Identifiers, Xref Commands)
12065         (Identifier Search, List Identifiers): New subsections,
12066         incorporating the old tags commands and the new xref commands.
12067         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
12068         Section and subsections demoted to a lower level.
12069         * doc/emacs/search.texi (Search):
12070         * doc/emacs/windows.texi (Pop Up Window):
12071         * doc/emacs/frames.texi (Creating Frames):
12072         * doc/emacs/programs.texi (Imenu, Symbol Completion):
12073         * doc/emacs/building.texi (Grep Searching):
12074         * doc/emacs/dired.texi (Operating on Files):
12075         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
12077 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
12079         * loading.texi: Add `define-type' entry for load-history
12081         * doc/lispref/loading.texi (Where Defined): Remove incorrect
12082         cl-defmethod description, and add missing define-type entry.
12084 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
12086         Improve doc strings and prompts in xref.el
12088         * lisp/progmodes/xref.el (xref-backend-functions)
12089         (xref-find-definitions): Doc fixes.
12090         (xref-query-replace): Doc fix.  Improve prompts for arguments.
12092 2016-01-09  Alan Mackenzie  <acm@muc.de>
12094         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
12096         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
12097         `font-lock-extend-regions-wholelines' from
12098         `font-lock-extend-region-functions' rather than setting the latter to
12099         nil.
12101 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
12103         Fix coding system for Tramp on OS X.
12105         * lisp/net/tramp-compat.el: Require ucs-normalize.
12107         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
12108         Set coding system to `utf-8-hfs' for Mac OS X.
12110         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
12111         Flush directory properties when needed.
12112         (tramp--test-utf8): Include Chinese file name, again.
12114 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
12116         Update 'load-history' docs
12118         * doc/lispref/loading.texi (Where Defined): Update the list of
12119         forms in 'load-history' by adding the forms created for the
12120         'cl-generic' generics.  (Bug#21422)
12122 2016-01-08  Paul Eggert  <eggert@cs.ucla.edu>
12124         Fix (error ...) error
12126         Problem reported by Glenn Morris in:
12127         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
12128         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
12129         introduced in my Aug 28 change, where I got confused by the
12130         two meanings of (error ...).
12132 2016-01-08  Alan Mackenzie  <acm@muc.de>
12134         Correctly analyze brace arguments in templated C++ function declarations.
12136         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
12137         POS and LIMIT parameters, like the other c-go-list-* functions have.
12139         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
12140         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
12141         followed by template specifiers.
12143 2016-01-08  Glenn Morris  <rgm@gnu.org>
12145         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
12147         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
12149 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
12151         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
12153 2016-01-08  Alan Mackenzie  <acm@muc.de>
12155         Respect fontification region calculated by major mode.  Fixes bug #22316.
12157         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
12158         fontification region has been calculated by a function on
12159         font-lock-extend-after-change-region-function use this region rather than
12160         changing the end position to somewhere else.
12162 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
12164         Improve documentation of Delete Selection mode
12166         * lisp/delsel.el (delete-selection-mode)
12167         (delete-selection-helper): Update and expand the doc strings.
12168         (Bug#22296)
12170         * doc/emacs/mark.texi (Using Region): Document the behavior of
12171         delete commands in Delete Selection mode.  (Bug#22296)
12173         * doc/lispref/markers.texi (The Mark): Document how to add the
12174         support for Delete Selection mode to Lisp programs. (Bug#22296)
12176 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
12178         Fix two project-find-file issues
12180         * lisp/progmodes/project.el (project--value-in-dir):
12181         Temporarily set enable-local-variables to :all.
12182         (project-find-file, project-or-external-find-file):
12183         All autoloads.
12184         (project--find-file-in): Require xref.
12186 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
12188         Clarify doc string of 'dired-current-directory'
12190         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
12191         the return value might not end in a slash when called with the
12192         optional argument non-nil.  (Bug#6273)
12194 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
12196         Use the face of preceding text for displaying the ellipsis
12198         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
12199         text in it->saved_face_id for displaying the ellipsis, and ignore
12200         the face, if any, of the invisible text.  (Bug#22320)
12202 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
12204         Suppress Chinese file name test for OSX in tramp-tests.el
12206         * test/automated/tramp-tests.el (tramp--test-utf8):
12207         Remove instrumentation.  Suppress Chinese file name test for OSX.
12209 2016-01-07  Glenn Morris  <rgm@gnu.org>
12211         * admin/admin.el (set-version): Also handle the NEWS file.
12213 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
12215         apropos-library: Skip obvious duplicates; don't error on generics
12217         * lisp/apropos.el (apropos-library): Skip "was an autoload"
12218         entries, to avoid obvious duplicates.  For each cl-defmethod
12219         entry, take just its function symbol (bug#21422).
12221 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
12223         Add project-find-file and project-or-external-find-file
12225         * lisp/minibuffer.el (completion-category-defaults):
12226         Add `project-file' category.
12228         * lisp/progmodes/project.el (project-find-file)
12229         (project-or-external-find-file): New commands.
12230         (project--find-file-in): New private function.
12232         * lisp/progmodes/xref.el (xref-collect-matches): Use
12233         `expand-file-name' on DIR, to expand the tildes.
12234         (xref--find-ignores-arguments): Extract from
12235         `xref--rgrep-command'.
12237 2016-01-06  Leo Liu  <sdl.web@gmail.com>
12239         Add defvar-local to lisp-imenu-generic-expression
12241         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
12242           defvar-local.
12244 2016-01-06  Leo Liu  <sdl.web@gmail.com>
12246         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
12248         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
12249           Don't declare (indent 1).
12251 2016-01-06  Glenn Morris  <rgm@gnu.org>
12253         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
12255 2016-01-06  Glenn Morris  <rgm@gnu.org>
12257         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
12259         Avoid specifying the length of a time object (it has not been "2"
12260         for some time).
12262 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
12264         Properly encode/decode base64Binary data in SOAP
12266                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
12267                 base64Binary value as utf-8.
12268                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
12270 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
12272         Obey coding-system-for-write when writing stdout/stderr in batch
12274         * src/print.c (printchar_to_stream):
12275         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
12276         a non-nil value, use it to encode output in preference to
12277         locale-coding-system.  See the discussions in
12278         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
12279         for the details.
12281         * doc/lispref/os.texi (Terminal Output): Document how to send
12282         non-ASCII text via 'send-string-to-terminal'.
12283         (Batch Mode): Document how text written to standard streams is
12284         encoded.  Fix inaccuracy regarding which output streams are used
12285         by output functions in batch mode.
12287 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
12289         * doc/misc/efaq.texi (Packages that do not come with Emacs):
12290         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
12291         <chenggao@royau.me> in
12292         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
12294 2016-01-05  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
12296         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
12298         Fix backslash.  (Bug#22224)
12300 2016-01-05  Federico Beffa  <beffa@ieee.org>  (tiny change)
12302         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
12304         Make it actually work.  (Bug#22265)
12306 2016-01-05  Alan Mackenzie  <acm@muc.de>
12308         Remove function wrongly on AWK Mode value of context fontification hook.
12310         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
12311         swap order of entries so that awk's entry isn't superseded by the default.
12313         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
12314         to handle nil value of c-before-context-fontification-functions.
12316 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
12318         * src/buffer.c: Stick with ASCII in doc string.
12320 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
12322         Reword transient-mark-mode doc string
12324         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
12325         The value 'lambda (literally) can be interpreted as (quote lambda),
12326         which is not intended here; we want just the lambda symbol.
12328 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
12330         Update doc string of 'selective-display'
12332         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
12333         using it with the value of 't' is obsolete.  (Bug#1092)
12335 2016-01-05  Alan Mackenzie  <acm@muc.de>
12337         Make C++ buffers writeable when writing their initial text properties.
12339         This is a correction to yesterday's CC Mode patch.
12341         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
12342         c-save-buffer-state around the function rather than a mere `let'.
12344 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
12346         Additional changes for "make check-expensive"
12348         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
12349         Explain make target `check-expensive'.
12351         * etc/NEWS: Mention new make target `check-expensive'.
12353         * test/automated/Makefile.in (check-doit): New target.
12354         (check, check-expensive): Use it.
12356 2016-01-04  Alan Mackenzie  <acm@muc.de>
12358         Apply text properties for <, > in new after-change function (C++ Java Modes).
12360         These are category/syntax-table properties to give < and > paren syntax.
12361         Also apply certain `c-type' text properties to the insides of <..> constructs
12362         to ensure that identifiers contained by them get fontified.  This patch fixes
12363         bug #681.
12365         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
12366         after-change action.
12368         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
12369         change region to include <s and >s which might not be already marked as
12370         parens, rather than just when paren text properties are removed.
12371         (c-restore-<>-properties): New after-change function, which applies text
12372         properties marking < and > with paren syntax.
12374         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
12375         properties are applied to the interiors of <...> constructs, to ensure
12376         fontification of identifiers there.
12378         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
12379         c-restore-<>-properties to this list for C++ and Java.
12381         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
12382         c-before-font-lock-functions, exclude c-restore-<>-properties from the
12383         functions invoked.
12384         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
12385         to allow modification by before-change functions.
12386         (c-after-change): Amend c-new-END here, rather than initializing it and
12387         c-new-BEG.
12389 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
12391         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
12393 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
12395         Introduce check-expensive tests.
12397         * Makefile.in (check-expensive):
12398         * test/automated/Makefile.in (check-expensive): New target.
12400         * test/automated/auto-revert-tests.el
12401         (auto-revert-test01-auto-revert-several-files):
12402         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
12403         * test/automated/tramp-tests.el (tramp-test26-process-file)
12404         (tramp-test27-start-file-process, tramp-test28-shell-command)
12405         (tramp-test29-vc-registered)
12406         (tramp-test31-special-characters-with-stat)
12407         (tramp-test31-special-characters-with-perl)
12408         (tramp-test31-special-characters-with-ls)
12409         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
12410         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
12411         (tramp-test35-unload): Tag the tests as :expensive-test.
12413 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12415         shr-tag-video bug fix
12417         * shr.el (shr-tag-video): Protect against the `poster' being
12418         empty.
12420 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
12422         Minor fixes in tramp-tests.el
12424         * test/automated/tramp-tests.el (tramp-test26-process-file):
12425         Move point properly.
12426         (tramp-test29-vc-registered): Work with relative file names.
12428 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
12430         Ensure redisplay when 'truncate-lines' is set
12432         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
12433         (Bug#22303)
12435 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
12437         Fix a doc string of 'transient-mark-mode'
12439         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
12440         "lambda" in doc string from becoming a link to lambda expressions.
12442 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
12444         MS-Windows followup to latest gnulib update
12446         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
12448 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
12450         Spelling fix
12452 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12454         Do secure signed Bcc handling
12456         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
12457         (bug#18718).
12459 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
12461         Avoid stdio in SIGINT handler
12463         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
12464         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
12465         * lib/ignore-value.h: New file, from gnulib.
12466         * src/keyboard.c: Include it.
12467         (write_stdout, read_stdin): New functions.
12468         (handle_interrupt): Use them instead of printf and getchar,
12469         and avoid fflush when handling signals.
12471 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
12473         * doc/misc/texinfo.tex: Revert unwanted copyright change.
12475 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
12477         * lisp/align.el (align): Simplify a lambda
12479         * lisp/align.el (align): Fix arg order in call to `align-region'
12481 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
12483         Fix compilation next-error in buffers with selective-display
12485         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
12486         function.
12487         (compilation-internal-error-properties)
12488         (compilation-next-error-function, compilation-set-window): Use
12489         it.  (Bug#1092)
12491 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12493         * nsm.el (nsm-check-protocol): Fix typo in the message.
12495 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12497         Add SHA1 warnings for high network security settings
12499         * nsm.el (nsm-check-protocol): When using high security, warn
12500         about SHA1 certificates, which are now believed to be open to
12501         spoofing.
12503 2016-01-02  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12505         Refactor mml-smime.el, mml1991.el, mml2015.el
12507         (Maybe this is the last merge from Gnus git to Emacs git)
12509         Cf. discussion on ding mailing list, messages in
12510         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
12511         Common code from the three files mml-smime.el, mml1991.el, and
12512         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
12513         to gnus-util.el.
12515         The code is supported by test cases with necessary test keys.
12517         Documentation in message.texi is updated.
12519         * doc/misc/message.texi (Security, Using S/MIME):
12520         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
12521         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
12522         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
12524         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
12525         New functions.
12527         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
12528         (epa--select-keys): Autoload.
12529         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
12530         (mml-secure-openpgp-signers): New user option;
12531         make mml1991-signers and mml2015-signers obsolete aliases to it.
12532         (mml-secure-smime-signers): New user option;
12533         make mml-smime-signers an obsolete alias to it.
12534         (mml-secure-openpgp-encrypt-to-self): New user option;
12535         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
12536         aliases to it.
12537         (mml-secure-smime-encrypt-to-self): New user option;
12538         make mml-smime-encrypt-to-self an obsolete alias to it.
12539         (mml-secure-openpgp-sign-with-sender): New user option;
12540         make mml2015-sign-with-sender an obsolete alias to it.
12541         (mml-secure-smime-sign-with-sender): New user option;
12542         make mml-smime-sign-with-sender an obsolete alias to it.
12543         (mml-secure-openpgp-always-trust): New user option;
12544         make mml2015-always-trust an obsolete alias to it.
12545         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
12546         New user options.
12547         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
12548         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
12549         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
12550         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
12551         (mml-secure-passphrase-callback, mml-secure-check-user-id)
12552         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
12553         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
12554         (mml-secure-fingerprint, mml-secure-filter-keys)
12555         (mml-secure-normalize-cust-name, mml-secure-select-keys)
12556         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
12557         (mml-secure-self-recipients, mml-secure-recipients)
12558         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
12560         * lisp/gnus/mml-smime.el: Require epg;
12561         refactor declaration and autoloading of epg functions.
12562         (mml-smime-use): Doc fix.
12563         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
12564         Obsolete.
12565         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
12566         Use format instead of gnus-format-message.
12567         (mml-smime-epg-secret-key-id-list): Remove variable.
12568         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
12569         (mml-smime-epg-find-usable-secret-key): Remove functions.
12570         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
12572         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
12573         (mml1991-passphrase-cache-expiry): Obsolete.
12574         (mml1991-epg-secret-key-id-list): Remove variable.
12575         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
12576         (mml1991-epg-find-usable-secret-key): Remove functions.
12577         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
12579         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
12580         (mml2015-passphrase-cache-expiry): Obsolete.
12581         (mml2015-epg-secret-key-id-list): Remove variable.
12582         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
12583         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
12584         (mml2015-epg-find-usable-secret-key): Remove functions.
12585         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
12586         (mml2015-epg-encrypt): Refactor.
12588 2016-01-02  Glenn Morris  <rgm@gnu.org>
12590         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
12592         Explicitly ignore case.  (Bug#22262)
12594 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
12596         (semantic-symref-derive-find-filepatterns): Return a list
12598         * lisp/cedet/semantic/symref/grep.el
12599         (semantic-symref-derive-find-filepatterns): Return a list.
12600         (semantic-symref-perform-search): Quote the result here once and for all.
12602 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12604         Fix xref-find-references on MS-Windows
12606         * lisp/cedet/semantic/symref/grep.el
12607         (semantic-symref-derive-find-filepatterns): Use
12608         'shell-quote-argument' instead of manually quoting in a way that
12609         only works with Posix shells.  (Bug#22289)
12611 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12613         Document new features of tildify-mode
12615         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
12616         (tildify-mode): Spelling fixes in doc strings.
12618         * etc/NEWS: Reformat the tildify-mode entry.
12620 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12622         Document new features of Whitespace mode
12624         * doc/emacs/display.texi (Useless Whitespace): Document
12625         'whitespace-toggle-options' and the new 'big-indent' style.
12626         Document 'whitespace-big-indent-regexp'.  Document the Global
12627         Whitespace mode.
12629 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12631         Improve documentation of new Hide-IfDef features
12633         * etc/NEWS: Expand and reword Hide-IfDef section.
12635 2016-01-02  Leo Liu  <sdl.web@gmail.com>
12637         Fix regression in font-locking cl-assert and cl-check-type
12639         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
12640           el-errs-re.
12642 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12644         Spelling and grammar fixes
12646 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12648         Fix copyright years by hand
12650         These are dates that admin/update-copyright did not update, or
12651         updated incorrectly.
12653 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12655         Update copyright year to 2016
12657         Run admin/update-copyright.
12659 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12661         Merge from gnulib
12663         This mostly just updates copyright dates of gnulib files.
12664         It also updates to the latest version of texinfo.tex.
12666 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
12668         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
12670 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
12672         Port chart.el methods to cl-generic.
12674         cl-call-next-method cannot be used inside EIEIO's defmethod.
12675         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
12676         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
12677         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
12678         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
12679         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
12680         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
12682 2015-12-31  Brian Burns  <bburns.km@gmail.com>
12684         Add nt/INSTALL.W64 build instructions
12686         * nt/INSTALL.W64: New file.
12687         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
12689 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
12691         Add new input method 'programmer-dvorak'
12693         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
12694         input method.
12696         * etc/NEWS: Mention it.
12698 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
12700         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
12702         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
12703         original M-TAB binding in a buffer-local variable.
12704         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
12705         if that is recorded, when point is in a place where flyspell
12706         should not be active (e.g., because the user turned on
12707         'flyspell-prog-mode').  (Bug#18533)
12709 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
12711         Fix EWW rendering of long RTL lines
12713         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
12714         of the selected window before filling its lines.  (Bug#22250)
12716 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12718         fix  bug#21054
12720         * ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
12722 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12724         Clean up cairo printing code
12726         * src/gtkutil.c (xg_get_page_setup): Use listn.
12727         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
12728         decode_window_system_frame and FRAME_VISIBLE_P.
12729         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
12730         of Fdisplay.
12731         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
12732         instead of Fdisplay.  Temporarily unblock_input around QUIT.
12734 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12736         Add handle_user_signal_hook
12738         * src/keyboard.h (handle_user_signal_hook): New declaration.
12739         * src/keyboard.c (handle_user_signal_hook): New variable.
12740         (handle_user_signal): Call it.
12742 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12744         Avoid writing to purespace
12746         * src/alloc.c (Fmake_string): Don't write to empty string contents.
12747         (allocate_vector): Don't write to empty vector size.
12748         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
12749         Don't call unnecessary XSETCAR or XSETCDR.
12750         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
12751         write to empty string size_byte.
12753 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12755         Remove unused variable
12757         * lisp/international/mule-cmds.el: Remove unused variable
12758         `mac-system-coding-system'.
12760 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12762         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
12764 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12766         Use posix_openpt instead of openpty on Darwin
12768         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
12769         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
12770         Darwin-specific definitions.  Use posix_openpt instead.
12772 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
12774         Document support for ':documentation' in Lisp mode
12776         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
12777         (lisp-string-after-doc-keyword-p)
12778         (lisp-font-lock-syntactic-face-function): Add doc strings.
12780 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
12782         Document new features of TeX mode
12784         * doc/emacs/text.texi (TeX Print): Document
12785         'tex-print-file-extension'.
12786         * doc/emacs/programs.texi (Misc for Programs): Document support
12787         for Prettify Symbols mode in TeX mode.
12789 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12791         Clarify docs of hscroll in RTL text
12793         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
12794         meaning of a window's horizontal scroll amount for RTL paragraphs.
12796 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12798         Fix rendering of HTML pages that use character composition
12800         * src/indent.c (Fvertical_motion): Fix the case when point starts
12801         in the middle of a composition, as in shr-vertical-motion.
12802         (Bug#22250)
12804 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12806         Avoid some compiler warnings in w32.c
12808         * src/w32.c (codepage_for_filenames, crlf_to_lf)
12809         (ansi_encode_filename, socket_to_fd, sys_write)
12810         (check_windows_init_file): Avoid compiler warnings about
12811         differences in pointer signedness.
12813 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
12815         Undo ill-advised change
12817         * lisp/progmodes/xref.el (xref-collect-matches): Undo
12818         ill-advised change.  The hits come in the order that `find'
12819         produces them in, which isn't alphabetical.
12821 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
12823         Unbreak completion in python-mode buffers
12825         * lisp/progmodes/python.el (python-shell-completion-at-point):
12826         Unbreak in python-mode buffers.
12828 2016-01-09  Andrew Hyatt  <ahyatt@gmail.com>
12830         Adding example replies to bug-triage.
12832         * admin/notes/bug-triage: Added example replies. Also, as requested,
12833           making the process notes into more of a checklist.
12835 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
12837         Rename the notes/admin/triage file to bug-triage.
12839         * CONTRIBUTE: Change reference to the triage file name.
12840         * admin/notes/triage: Rename file to admin/notes/bug-triage.
12842 2016-01-07  Glenn Morris  <rgm@gnu.org>
12844         Allow creation of loaddefs files without timestamps.
12846         * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
12847         (autoload-generate-file-autoloads, update-directory-autoloads):
12848         If autoload-timestamps is nil, write "t" instead of file timestamp.
12849         (autoload-find-destination, update-directory-autoloads):
12850         If timestamp is "t", use the modtime of the output file instead.
12852 2016-01-06  Glenn Morris  <rgm@gnu.org>
12854         Doc tweaks.
12856         * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
12857         * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
12858         (calendar-iso-from-absolute):
12859         * lisp/calendar/cal-tex.el (cal-tex-comment):
12860         * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
12862 2016-01-06  Glenn Morris  <rgm@gnu.org>
12864         Build tweaks related to tags files.
12866         * lib-src/Makefile.in (tagsfiles): New variable.
12867         (TAGS): Also depend on the source files.  Use our own etags program.
12868         * lisp/Makefile.in (ETAGS): Add EXEEXT.
12869         (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
12870         Remove.
12871         (tagsfiles): New, replacing lisptagsfiles1 etc.
12872         Remove irrelevant source files here rather than in the TAGS rule.
12873         (${ETAGS}): New rule.
12874         (TAGS): Also depend on the etags executable.
12875         * lwlib/Makefile.in (EXEEXT): New, set by configure.
12876         (ETAGS): Add EXEEXT.
12877         (${ETAGS}): New rule.
12878         (ctagsfiles): Use "wildcard".
12879         (TAGS): Also depend on the etags executable.
12880         * nt/Makefile.in (ETAGS, tagsfiles): New variables.
12881         (${ETAGS}): New rule.
12882         (TAGS): Fix dependencies.
12883         * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
12884         (ETAGS): New variable, replacing $TAGS.  Use our own etags program.
12885         Remove "-t" argument.
12886         (${ETAGS}): New rule.
12887         (tagsfiles): New variable.
12888         (TAGS): New rule, with proper dependencies.
12889         * src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
12890         (ctagsfiles1, ctagsfiles2): Use "wildcard".
12891         (ctagsfiles3): Remove.
12892         (TAGS): Depend on etags.
12893         (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
12894         directories decide if updates are needed.
12896 2016-01-06  Glenn Morris  <rgm@gnu.org>
12898         * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
12900 2016-01-06  Glenn Morris  <rgm@gnu.org>
12902         * test/lisp/emacs-lisp/package-tests.el
12904         (package-test-macro-compilation): Fixup branch merge.
12906 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
12908         Fix fallout from merging emacs-25 branch in test/
12910         * .gitignore: Update for the new place of biditest.txt.
12911         * test/automated/: Directory removed.  All files moved to their
12912         proper places.
12913         * test/etags/: Directory removed.  All files moved to their proper
12914         places.
12915         * test/automated/url-parse-tests.el: File removed; it was an exact
12916         copy of the same file in test/lisp/url/.
12917         * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
12919 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
12921         Spelling fixes.
12923 2016-01-04  Daniel Colascione  <dancol@dancol.org>
12925         Let users disable unsafe signal handling code
12927         * src/keyboard.c (syms_of_keyboard): New user variables
12928         `attempt-stack-overflow-recovery' and
12929         `attempt-orderly-shutdown-on-fatal-signal'.
12930         * src/sysdep.c (stack_overflow): Check
12931         `attempt-stack-overflow-recovery'.
12932         * src/emacs.c (terminate_due_to_signal): Check
12933         `attempt-orderly-shutdown-on-fatal-signal'.
12935 2016-01-03  Michael Albinus  <michael.albinus@gmx.de>
12937         * configure.ac: Add error message for gfile on Nextstep.
12939 2016-01-03  John Wiegley  <johnw@newartisans.com>
12941         Merge branch 'emacs-25-merge'
12943 2016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12945         Align textually on fix done for emacs-25 branch for bug#21054
12947         * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
12948         and useless `(if t ...)' in order to align textually on fix done for
12949         emacs-25 branch for bug#21054.
12951 2016-01-02  K. Handa  <handa@gnu.org>
12953         support rendering of wider range of combinging characters by ftfont backend
12955         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
12956         supports rendering of combining characters, call
12957         font-shape-gstring.
12959         * src/font.c (Ffont_get): Handle `combining-capability' property.
12960         (syms_of_font): New symbol ":combining-capability'.
12962         * src/font.h (struct font_driver): New member combining_capability.
12964         * src/ftfont.c: Include "category.h".
12965         (ftfont_driver): Initialize combining_capability to
12966         ftfont_combining_capability.
12967         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
12968         FLT in advance.
12969         (ftfont_combining_capability): New function.
12971 2016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
12973         Add notes on bug triage procedure
12975         * CONTRIBUTE: In section on the issue tracker, point to new triage file.
12976         * admin/notes/triage: New file explaining triage procedure.
12978 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12980         Correct ses-rename-cell cursor-intangible text prop updating.
12982         There were two problems:
12984         - First ses-rename-cell has to work when called non interactively
12985           (with non-nil CELL argument), so in this case the start pos of
12986           put-text-property cannot be plainly (point), you need a
12987           ses-goto-print call before
12989         - Second, the range itself was computed erronously, only the first
12990           char was affected instead of the full cell width. This was not
12991           noticeable prior to changes (Deprecate `intangible' and
12992           `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
12994         * lisp/ses.el (ses-rename-cell): Correct computation of position range
12995         to which the 'cursor-intangible text property has to be set to cell
12996         new name.
12998 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
13000         Don't fake empty cells value by "" when printing with a lambda.
13002         When using a lambda expression printer function the user should be
13003         free to format differently a really empty cell, ie. containing nil,
13004         from a cell containing an empty string "".
13006         * ses.el (ses-call-printer): Replace `(or value "")' by just `value'
13007         in the case of a lambda expression printer function.
13009         * ses.texi (Printer functions): Add example and description about
13010         lambda expression printer function handling all the possible values,
13011         including unexpected ones.
13013 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
13015         Quick temporary hack to fix curcell refreshing.
13017         The problem was caused by change: 2015-04-13 Deprecate `intangible'
13018         and `point-entered' properties. The problem is that this change has
13019         removed the (setq ses--curcell t) setting in the ses-command-hook
13020         function.
13022         * ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
13023         a condition to call function `ses-set-curcell'. Comment this as a quick
13024         temporary hack to make it work, as I don't know yet whether a definite
13025         correction would be to make the ses-set-curcell at every ses-check-curcell,
13026         or to revert to the previous approach, ie marking ses--curcell as out-of-date
13027         at every potentially cursor motion command.
13029 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13031         Restrictive URL checking tweaks
13033         * lisp/net/eww.el (eww): Check whether the domain is
13034         restrictive instead of the string
13035         (http://македонија.icom.museum is restrictive even if each
13036         part is from a different script).
13038 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13040         New function `puny-highly-restrictive-domain-p'
13042         * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
13043         (puny-highly-restrictive-domain-p): New function.
13045 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13047         eww build fix (require puny)
13049 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13051         Transform non-restrictive domains to punycode for display
13053         * lisp/net/eww.el (eww): Check whether the domain is Highly
13054         Restrictive in the Unicode IDNA sense.
13056 2015-12-30  John Wiegley  <johnw@newartisans.com>
13058         Merge emacs-25 into master (using imerge)
13060 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
13062         Fix typos in CC Mode manual
13064         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
13065         typos.  (Bug#22267)
13067 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
13069         Avoid assertion violations in compact_font_cache_entry
13071         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
13072         avoid assertion violation in ASIZE.  (Bug#22263)
13074 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
13076         Fix filling text with bidirectional characters in shr.el
13078         * lisp/net/shr.el (shr-insert-document): Bind
13079         bidi-display-reordering to nil while filling lines.  This is
13080         required for when a line includes characters whose bidi
13081         directionality is opposite to the base paragraph direction,
13082         because columns are counted in the logical order.  (Bug#22250)
13084 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
13086         Further Unicode restrictive fixups
13088         * puny.el (puny-highly-restrictive-p): Include the extra
13089         identifier characters from table 3.
13091 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
13093         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
13095 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
13097         Sync with Tramp 2.2.13
13099         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
13101         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
13102         Use `tramp-compat-funcall'.
13104         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
13105         Make `split-string' call compatible with older Emacsen.
13107         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
13109 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
13111         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
13113 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
13115         Mention that tls.el is secure by default, and will fail
13117 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
13119         Make tls.el use trustfiles by default
13121         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
13122         (open-tls-stream): Insert the trustfile by looking at
13123         `gnutls-trustfiles'.
13125 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
13127         Refactor out gnutls-trustfiles
13129         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
13131 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
13133         Remove --insecure from gnutls-cli invocation
13135         * tls.el (tls-program): Default to using secure TLS
13136         connections (bug#19284).
13138 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
13140         Add a new function to say whether a string is restrictive
13142         * puny.el (puny-highly-restrictive-p): New function.
13144 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
13146         Spelling fix
13148 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
13150         Port report-emacs-bug to deterministic builds
13152         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
13153         recent "built on" change to deterministic builds where
13154         emacs-build-system will be nil.  See:
13155         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
13157 2015-12-28  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
13159         Fix URL auth error message
13161         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
13162         message more correct (bug#20069).
13164 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
13166         Mention the new puny.el library
13168 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
13170         IDNA-related fixes for the URL library
13172         * lisp/url/url-http.el (url-http-create-request): IDNA-encode
13173         the Host: header.
13175         * lisp/url/url-util.el (url-encode-url): Don't hex-encode
13176         domain names, but leave them as UTF-8, so that they can be
13177         IDNA-encoded later when contacting the host.
13179 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
13181         IDNA-encode all domain names in `open-network-stream'
13183         * network-stream.el (open-network-stream)
13184         (network-stream-open-plain, network-stream-open-starttls):
13185         IDNA-encode all domain names, if needed.
13187 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
13189         Fix puny-encoding all-non-ASCII domains
13191         * puny.el (puny-encode-string): Fix the all-non-ASCII encoding case.
13193 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
13195         * lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
13197 2015-12-28  Tom Tromey  <tom@tromey.com>
13199         set :safe on css-indent-offset
13201         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
13203 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
13205         * eww.el (eww-mode): Remove superfluous bidi reset.
13207 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
13209         Make chunked encoding trailer detection more compliant
13211         * lisp/url/url-http.el
13212         (url-http-chunked-encoding-after-change-function): Make
13213         trailer detection more compliant (bug#16345).
13215 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
13217         Reconnect erc even on server errors
13219         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
13220         reconnect even if a server error has occurred (bug#18527).
13222 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
13224         Fix punycode short circuit logic
13226         * puny.el (puny-encode-domain): Fix short-circuit logic.
13228 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
13230         Fix Bug#10873 in `report-emacs-bug'
13232         * lisp/mail/emacsbug.el (report-emacs-bug): If
13233         `report-emacs-bug-no-explanations' is nil, make sure we can show
13234         mail and warnings buffer on this frame (Bug#10873).
13236 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
13238         IDNA speed up
13240         * puny.el (puny-encode-domain): Make the common non-IDNA case faster
13242 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
13244         Add IDNA domain encode/decode functions
13246         * puny.el (puny-decode-domain): New function.
13247         (puny-encode-domain): Ditto.
13248         (puny-decode-digit): Fix digit decoding error.
13250 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
13252         Rename idna.el to puny.el
13254         * puny.el: Renamed from idna.el to avoid name collisions with
13255         the external idna.el library.
13257 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
13259         Always reset the bidi direction
13261         * eww.el (eww-display-html): Always reset the bidi direction
13262         to `left-to-right' (bug#22257).
13264 2015-12-28  Alan Mackenzie  <acm@muc.de>
13266         Allow line comments ending with escaped NL to be continued to the next line.
13268         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
13270         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
13271         (forw-comment, back-comment): On encountering an end of comment character,
13272         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
13274         * doc/lispref/syntax.texi (Control Parsing): Describe
13275         `comment-end-can-be-escaped'.
13277         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
13279         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
13281 2015-12-28  Katsumi Yamaoka  <yamaoka@jpl.org>
13283         lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
13285         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
13286         Don't use split-string with 4th arg for old Emacsen compatibility.
13288 2015-12-27  Dmitry Gutov  <dgutov@yandex.ru>
13290         Rename project-library-roots to project-external-roots
13292         * lisp/progmodes/project.el (project-library-roots): Rename to
13293         project-external-roots.
13294         (project-library-roots-function): Rename to
13295         project-vc-external-roots-function.  Only use it in the VC
13296         backend, for now.  Update project-external-roots accordingly.
13297         (project-vc-library-roots): Remove.
13298         (project-or-libraries-find-regexp):
13299         Rename to project-or-external-find-regexp.
13301         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
13302         Rename to elisp-load-path-roots.
13304         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
13305         an anonymous function for the default value of
13306         project-vc-external-roots-function.
13308 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13310         * idna.el (idna-decode-string-internal): Implement decoding.
13312 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13314         Further IDNA tweaks
13316         (idna-encode-string): Make idna-encode-string safe for
13317         non-ASCII use.
13319 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13321         Clean up the code slightly
13323 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13325         Added basic idna encoding support
13327         * lisp/net/idna.el: New file.
13329 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
13331         Disconnection fixes for erc
13333         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
13334         reconnect if the user has disconnected explicitly (bug#4589).
13336 2015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
13338         Further erc asynch fixes
13340         * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
13341         erc-server-connect to return even if the connection is not
13342         ready.  Then erc-open and erc-server-reconnect do the
13343         same. (bug#5650).
13345 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
13347         Make erc connect asynchronously
13349         * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
13350         reconnect asynchronously.
13352         * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
13354 2015-12-27  Deniz Dogan  <deniz@dogan.se>
13356         Clear erc user list upon disconnection
13358         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
13359         lists upon disconnection.  This prevents invalid channel
13360         user lists when reconnecting (bug#10947).
13362 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13364         Don't bug out in erc after waking from sleep
13366         * erc-backend.el (erc-server-send-ping): If the server has
13367         closed connection, this may already have been detected and
13368         `erc-server-last-received-time' has been set to nil (bug#13608).
13370 2015-12-27  David Edmondson  <dme@dme.org>
13372         Proxy error in erc with multiple clients
13374         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
13375         generated when multiple IRC clients talk to a single IRC proxy
13376         (bug#19034).
13378 2015-12-27  Dima Kogan  <dima@secretsauce.net>
13380         Ensure that we don't have several timers in erc
13382         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
13383         for existing timers in the alist before adding new ones.  If a
13384         timer already exists, it is cancelled and
13385         overwritten. (bug#19292).
13387 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
13389         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
13390         (bug#18718).
13392 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13394         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
13395         at the start of the buffer, not at the end (bug#20496).
13397 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13399         * lisp/net/eww.el (eww-setup-buffer): Restore left-to-right defaults.
13401 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13403         Don't join erc channels doubly
13405         * erc-join.el (erc-autojoin-channels): Don't join channels
13406         more than once (if you have several nicks) (bug#20695).
13408 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
13410         Avoid leaving "ghost" of mouse pointer on MS-Windows
13412         * src/w32term.c (frame_set_mouse_pixel_position):
13413         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
13414         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
13415         * src/w32term.c (frame_set_mouse_pixel_position): Include
13416         w32common.h.
13418 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
13420         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
13422 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
13424         Identify unsafe combinations of Bcc and encryption
13426         * lisp/gnus/gnus-util.el (gnus-subsetp): New function
13427         * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
13428         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
13430 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
13432         Fix auth source lookups from erc with port numbers
13434         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
13435         numbers (bug#20541).
13437 2015-12-27  Fran Litterio  <flitterio@gmail.com>
13439         Run erc-kill-channel-hook always on exit
13441         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
13442         when erc-kill-queries-on-quit is set (bug#21187).
13444 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
13446         Spelling fix
13448         * test/automated/url-parse-tests.el:
13449         (url-generic-parse-url/same-document-reference):
13450         Rename from url-generic-parse-url/same-decument-reference.
13452 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
13454         Reword initial *scratch* for brevity, appearance
13456         * lisp/startup.el (initial-scratch-message):
13457         Reword to avoid apostrophes, and to make it shorter.
13458         See the thread starting in:
13459         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
13461 2015-12-26  Leo Liu  <sdl.web@gmail.com>
13463         Add ert-deftest to lisp-mode.el
13465         * lisp-mode.el (lisp-imenu-generic-expression,
13466           lisp-el-font-lock-keywords-1): Add ert-deftest.
13468 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
13470         Mark imap changes as not needing doc changes
13472         * imap.el (imap-ssl-open): Remove
13474 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
13476         Use built-in encryption in imap.el
13478         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
13479         (imap-starttls-open): Use open-network-stream instead of starttls.el.
13480         (imap-tls-open): Use open-network-stream instead of tls.el.
13482 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13484         Don't try using /bin/sh in artist.el on MS-Windows
13486         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
13487         New function.
13488         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
13489         (Bug#20167)
13491 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
13493         Always define gmalloc etc. in src/gmalloc.c
13495         This is a work-around to prevent the compiler from using semantic
13496         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
13497         with -O2 replaces most of calloc's definition by a call to calloc;
13498         see Bug#22085.
13499         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
13500         (aligned_alloc, free): Do not undef.  Instead, define these as
13501         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
13503 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13505         Fix documentation of browse-url browser-related functions
13507         * lisp/net/browse-url.el (browse-url)
13508         (browse-url-default-browser, browse-url-default-windows-browser)
13509         (browse-url-default-macosx-browser, browse-url-chromium)
13510         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
13511         and NEW-WINDOW arguments in these functions.  (Bug#19421)
13513 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
13515         Propagate Bug#14412 fix to backtrace_eval_unrewind
13517         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
13518         becomes accurate again. This shouldn’t affect behavior.
13519         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
13521 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13523         Don't produce non-ASCII characters in *scratch*
13525         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
13526         avoid producing non-ASCII characters in the *scratch* buffer's
13527         commentary.
13529 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13531         Document changes in 'compare-windows'
13533         * lisp/vc/compare-w.el (compare-windows-removed)
13534         (compare-windows-added): Doc fix.
13536         * doc/emacs/files.texi (Comparing Files): Document the changes in
13537         window selection by 'compare-windows'.
13539 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13541         Document 'vc-annotate-background-mode'
13543         * doc/emacs/maintaining.texi (Old Revisions): Document
13544         'vc-annotate-background-mode'.
13546 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13548         Document 'vc-region-history'
13550         * doc/emacs/maintaining.texi (VC Change Log): Document
13551         'vc-region-history'.
13553 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13555         Improve documentation of 'vc-push'
13557         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
13558         improve the documentation of 'vc-push'.
13560         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
13562 2015-12-26  Alain Schneble  <a.s@realize.ch>
13564         Include the tests for the URL parsing fixes
13566 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13568         Document 'url-user-agent'.
13570         * lisp/url/url-http.el (url-user-agent): Move from here...
13571         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
13572         keep all the URL defcustoms in one place, and also have it defined
13573         whenever the URL library is loaded.
13575         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
13577 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13579         Document protocols supported by URL library via Tramp
13581         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
13582         supported via Tramp.
13583         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
13584         Tramp.
13586 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13588         Document changes in Shell-script mode
13590         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
13591         the 'sh-shell' file-local variable.
13592         (top level): Add an auto-load form to avoid byte-compiler warning
13593         about 'comint-send-string'.
13595 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13597         Fix documentation of 'ses-define-local-printer'
13599         * doc/misc/ses.texi (Printer functions): Fix whitespace between
13600         sentences and punctuation.  Add an index entry for
13601         'ses-define-local-printer'.
13603 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
13605         Document 'ert-summarize-tests-batch-and-exit'
13607         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
13608         'ert-summarize-tests-batch-and-exit'.
13610 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
13612         Avoid assertion violation in unbind_to
13614         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
13615         if we get here with an object that is not a symbol.  (Bug#14412)
13617 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
13619         Don't treat /foo/bar:mumble as ange-ftp address
13620         * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
13621         only in the first component.  (bug#5362)
13623 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
13625         Make sure *scratch* etc. use forward slashes in its default-directory
13627         * lisp/startup.el (normal-top-level): On MS-Windows, convert
13628         backslashes to forward slashes while decoding default-directory
13629         of the initially-created buffers.
13631 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
13633         Restore info about the build host in bug reports
13635         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
13636         which Emacs was built.  This is important information for
13637         investigating bug reports reported by users who don't build their
13638         Emacs.
13640 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
13642         Fix bootstrap broken by changes related to OS X file-name encoding
13644         * lisp/international/ucs-normalize.el (eval-when-compile): Make
13645         sure char-code-property-alist includes elements that allow access
13646         to 'decomposition' and 'canonical-combining-class' Unicode
13647         properties, as compiling ucs-normalize.el requires that.
13648         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
13649         only of charprop.el was already loaded.
13651         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
13652         New order-only dependency.
13654 2015-12-25  Leo Liu  <sdl.web@gmail.com>
13656         * lisp/ido.el (ido-add-virtual-buffers-to-list):
13657         Use bookmark-get-filename.
13659 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
13661         Make tramp-test29-vc-registered more robust
13663         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
13664         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
13665         Remove instrumentation.
13667 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13669         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
13671 2015-12-23  Katsumi Yamaoka  <yamaoka@jpl.org>
13673         Fix `gnus-union' so as to behave like `cl-union'
13675         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
13676         Make gnus-union use `equal' to compare items in lists.
13678         * lisp/gnus/gnus-util.el (gnus-union):
13679         Make it behave like cl-union partially.
13681 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
13683         Fix dired.c typo with ptrdiff_t vs Lisp_Object
13685         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
13686         an integer type, fixing a problem introduced in the recent fix for
13687         Bug#22169.
13689 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
13691         Document default process sentinel more prominently
13693         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
13694         defaults for process filter and sentinel.  Provide cross-references.
13695         (Process Information): Provide cross-references to where filters
13696         and sentinels are described.
13697         (Filter Functions): Add an index entry for "default filter".
13698         (Sentinels): Add a few status messages not documented previously.
13699         Resolve the "killed" confusion.  Document and describe the default
13700         sentinel.  (Bug#22220)
13702 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
13704         Fix file-name completion on OS X
13706         * src/dired.c (file_name_completion): Reject false matches due to
13707         file-name-coding-systems that decompose characters when encoding
13708         file names, by comparing decoded file names as well.  (Bug#22169)
13709         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
13711         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
13712         non-nil 'decomposed-characters' property.
13714 2015-12-23  Anders Lindgren  <andlind@gmail.com>
13716         File-name completion of non-ASCII characters on OS X (bug#22169)
13718         The coding system `utf-8-nfd', locally defined in ns-win.el,
13719         didn't provide a :pre-write-conversion method, causing file name
13720         completion of non-ASCII characters to fail.  Solved by using the
13721         `utf-8-hfs' coding system provided by `ucs-normalize'.
13723         * lisp/loadup.el: Load international/ucs-normalize (when building
13724         for ns).
13726         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
13727         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
13728         as the file name coding system.
13730         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
13732 2015-12-22  Tom Tromey  <tom@tromey.com>
13734         Fix bug #18588 by making bug-reference-bug-regexp more lenient
13736         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
13737         "bug NNNN".  (Bug #18588)
13739 2015-12-22  Tom Tromey  <tom@tromey.com>
13741         add some cl-* aliases to lisp-mode imenu
13743         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
13744         cl-defgeneric, and cl-defmethod.
13746 2015-12-22  Tom Tromey  <tom@tromey.com>
13748         Make a variable buffer-local
13750         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
13751         font-lock-syntax-table buffer-local.  (Bug #21627)
13753 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
13755         Fix decoding of text in URLs retrieved by EWW
13757         * lisp/net/eww.el (eww-render): Pass 'charset' to
13758         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
13759         non-nil, to set 'buffer-file-coding-system' of the buffer where we
13760         show the URL.
13761         (eww-display-html, eww-display-raw): Decode the text correctly,
13762         using the charset found in the headers, and defaulting to UTF-8.
13763         If the user told us to use a specific encoding, override the
13764         charset from the headers.  (Bug#22222)
13766 2015-12-22  Alan Mackenzie  <acm@muc.de>
13768         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
13770         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
13771         variable `tmp'.
13772         After a failed search for a matching ">", restore point before continuing.
13774 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
13776         Instrument Tramp tests
13778         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
13779         (tramp--test-utf8): Instrument tests.
13781 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
13783         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
13785         * lisp/simple.el (display-message-or-buffer): Call
13786         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
13787         (Bug#22221).
13789 2015-12-21  Juri Linkov  <juri@linkov.net>
13791         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
13793         (save-places-to-alist, save-place-dired-hook):
13794         Check for dired-subdir-alist.  (Bug#19851)
13796 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13798         Add FIXME comment re stack overflow and modules
13800 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
13802         Revert some recent emacs-module commentary
13804         Most of the recently-added commentary was incorrect, due to the
13805         possibility of stack overflow.
13807 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
13809         Spelling fix: prefer "cooperate" to "co-operate"
13811 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
13813         Port undo fixes to -fno-common
13815         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
13816         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
13817         (buffer_before_last_command_or_undo):
13818         Declare in keyboard.h, and define in keyboard.c,
13819         instead of assuming the traditional Unix relaxed ref-def linkage.
13821 2015-12-20  Philipp Stephani  <phst@google.com>
13823         Improve commentary for emacs-module.c
13825         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
13826         * src/emacs-module.c (module_non_local_exit_get): Document that we
13827         cannot use the current implementation.
13828         (module_is_not_nil, module_eq): Document assumptions about EQ and
13829         NILP.
13831 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
13833         Suppress test on Mac OS X
13835         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
13836         (tramp--test-utf8): Use it.
13838 2015-12-20  Alan Mackenzie  <acm@muc.de>
13840         Merge branch 'scratch/follow' into emacs-25
13842         This allows Isearch, etc., to work well when Follow Mode is active.
13844 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
13846         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option):
13847         Improve check.
13849 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13851         Fix last commit
13853         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
13854         with numeric argument.
13856 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13858         Document new features of Rmail
13860         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
13861         Document new behavior of 'd' and 'C-d' with numeric argument.
13862         (Rmail Display): Document the rendering of HTML MIME parts.
13864 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13866         Improve documentation of new cl-lib functions
13868         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
13869         Fix wording.
13871 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13873         Document the new feature of 'minibuffer-with-setup-hook'
13875         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
13876         added to `minibuffer-setup-hook'.
13878 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13880         Document new features of Font Lock
13882         * doc/lispref/modes.texi (Other Font Lock Variables): Document
13883         'font-lock-flush-function' and 'font-lock-ensure-function'.
13884         (Font Lock Basics): Document the basic fontification functions
13885         referenced in "Other Font Lock Variables".
13887         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
13889 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13891         Document new features of Rectangle mode
13893         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
13894         rectangle-mark-mode.
13896 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13898         Manual followup to last change
13900         * doc/lispref/display.texi (Displaying Messages): Sync with the
13901         doc string.  (Bug#22210)
13903 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13905         Clarify doc string of 'display-message-or-buffer'
13907         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
13908         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
13910 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13912         * doc/emacs/emacs.texi (Top): Update top-level menus.
13914         * doc/lispref/elisp.texi (Top): Update top-level menus.
13916 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13918         Document how to avoid file-local variables that aren't
13920         * doc/emacs/custom.texi (Specifying File Variables): Describe how
13921         to prevent Emacs from interpreting unrelated text as file-local
13922         variables.  (Bug#22166)
13924 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
13926         Fix a typo in eterm-color's termcap entry
13928         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
13929         entry.  (Bug#22184)
13931 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13933         Allow 'browse-url-emacs' visit non-existent URLs
13935         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
13936         signal an error if VISIT is non-nil, to more faithfully emulate
13937         the behavior of 'insert-file-contents'.  (Bug#22160)
13939 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
13941         Remove SunOS 4.x cruft
13943         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
13944         * lib-src/pop.c [sun]: Remove no-longer-needed include.
13945         * lwlib/xlwmenu.c (SUNSO41): Remove.
13947 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
13949         Merge from gnulib
13951         This mostly commentary fixes.
13952         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
13953         * lib/gnulib.mk: Regenerate with new gnulib-tool.
13955 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
13957         Minor fixes in Tramp
13959         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
13960         Reorder ls arguments.
13962         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
13964 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
13966         Make tramp a built-in package
13968         * lisp/finder.el (finder-compile-keywords): Update
13969         `package--builtins' also when Version: keyword is available.
13971         * lisp/net/trampver.el: Add Version: keyword.
13972         (tramp-version): Change it to "2.2.13.25.1", in order to be
13973         compatible with `version-to-list'.
13975 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
13977         * etc/tutorials/TUTORIAL.it: Update and fix typos.  (Bug#22187)
13979 2015-12-18  Alan Mackenzie  <acm@muc.de>
13981         Rename `recenter-group' to `recenter-window-group'
13983         * doc/lispref/windows.texi (Textual Scrolling)
13984         * lisp/window.el (top level, recenter-group)
13985         * lisp/follow.el (follow-mode)
13986         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
13987         `recenter-window-group' and `recenter-group-function' to
13988         `recenter-window-group-function'.
13990 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
13992         Fix vertical-motion in tabulated-list mode
13994         * src/indent.c (Fvertical_motion): When moving from line beginning
13995         to point under line truncation, assume overshoot by one line only
13996         if point actually lies beyond the window's right margin.
13997         (Bug#22194)
13999 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
14001         Don't have help functions call x-display-pixel-width/-height on ttys
14003         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
14004         Don't call x-display-pixel-width/-height on ttys.
14006 2015-12-17  Dmitry Gutov  <dgutov@yandex.ru>
14008         Use 'hg id' in vc-hg-previous-revision
14010         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
14011         Use 'hg id' to retrieve it (bug#22032).
14013 2015-12-17  Alan Mackenzie  <acm@muc.de>
14015         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
14017 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
14019         Fix a typo in the Emacs manual
14021         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
14022         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
14024 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
14026         Fix parsing netrc entries with ports
14028         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
14029         make a list out of 't'.  (Bug#22188)
14031         * test/automated/auth-source-tests.el
14032         (auth-source-test-netrc-parse-entry): New test.
14034 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
14036         Fix typo in Doug Lea malloc configure log
14038         * configure.ac (emacs_cv_var_doug_lea_malloc):
14039         Fix typo that confused the log output of 'configure'.
14041 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
14043         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
14045 2015-12-16  Alan Mackenzie  <acm@muc.de>
14047         * etc/NEWS: Move entry on pcase to correct section
14049         (Accidentally omitted from previous commit)
14051 2015-12-16  Alan Mackenzie  <acm@muc.de>
14053         Add documentation for changes to Show Paren mode.
14055         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
14057         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
14058         options, including the new show-paren-when-point-inside-paren and
14059         show-paren-when-point-in-periphery.
14061         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
14062         Move an entry on pcase to the Lisp Changes section.
14064 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
14066         Document Eldoc changes
14068         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
14070 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
14072         Fix invocation of Python and Guile interpreters from gdb-mi
14074         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
14075         commands for interactive Python and Guile interpreters.
14076         (gdb-send): Recognize various ways of exiting from Python and
14077         Guile interpreters and returning to GDB.  For details, see
14078         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
14079         and http://stackoverflow.com/questions/31514741.
14081 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
14083         Remove attempt to use C11 threads
14085         C11 threads are not needed for Emacs now, and their use is causing
14086         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
14087         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
14088         * configure.ac: Do not check for C11 threads. Remove unnecessary
14089         fiddling with CPPFLAGS when configuring pthreads.
14090         * src/emacs-module.c (main_thread, check_main_thread)
14091         (module_init): Do not worry about C11 threads.
14093 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
14095         Set utf8 encoding with stty in Tramp
14097         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
14098         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
14099         encoding with stty.
14101 2015-12-15  Alan Mackenzie  <acm@muc.de>
14103         Tidy up documentation associated with window groups.
14105         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
14106         Groups".  Correct example function to `window-group-start'.
14107         (Window Start and End, Textual scrolling): Point to the new anchor.  State
14108         that (most of) the args in window group functions have the same meaning as for
14109         the corresponding window primitives.
14111         * doc/lispref/positions.texi (Screen Lines).  Same as above.
14113 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
14115         Complete last commit
14117         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
14118         Move uname check up.  Handle Mac OS X eol encoding.
14120 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
14122         Handle Mac OS X eol encoding in Tramp
14124         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
14125         Handle Mac OS X eol encoding.
14127 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14129         Fix variable name typo in compute_tip_xy
14131         * src/w32fns.c (compute_tip_xy):
14132         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
14133         when `right' is integer.
14135 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>  (tiny change)
14137         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
14139 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
14141         Revert "Fix rx matcher overflow without limiting"
14143         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
14145 2015-12-14  Alan Mackenzie  <acm@muc.de>
14147         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
14149         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
14150         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
14152 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
14154         Fix rx matcher overflow without limiting
14156         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
14157         change to the regexp without imposing a limit on the length of the
14158         options.
14160 2015-12-14  Alan Mackenzie  <acm@muc.de>
14162         Enhance ispell-skip-region-alist by generating part of it at runtime.
14164         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
14165         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
14166         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
14167         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
14168         Include the result of ispell--make-filename-or-URL-re in regexps.
14170 2015-12-14  Glenn Morris  <rgm@gnu.org>
14172         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
14174 2015-12-14  Alan Mackenzie  <acm@muc.de>
14176         Replace GROUP argument in six window primitives by new functions.
14178         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
14179         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
14180         from description of six window functions.  Add in description of new functions
14181         window-group-start, window-group-end, set-window-group-start,
14182         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
14183         together with the six variables indirecting to the pertinent group
14184         functions.
14186         * src/window.c
14187         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
14188         applies to these two files, which added the GROUP argument to six window
14189         primitives.
14191         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
14192         functions.
14194         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
14195         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
14196         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
14197         to window primitives (e.g. window-start) with a GROUP argument by calls to
14198         new functions (e.g. window-group-start).
14200         * lisp/ispell.el (ispell-command-loop): Replace call to
14201         pos-visible-in-window-p with pos-visible-in-window-group-p.
14203         * lisp/window.el (window-group-start, window-group-end)
14204         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
14205         (selected-window-group, move-to-window-group-line): New functions.
14206         (window-group-start-function, window-group-end-function)
14207         (set-window-group-start-function, recenter-group-function)
14208         (pos-visible-in-window-group-p-function, selected-window-group-function)
14209         (move-to-window-group-line-function): New variables.
14211 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
14213         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
14215 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
14217         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
14219 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
14221         Improve regex to not trigger stack overflow
14223         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
14224         order not to trigger a stack overflow in regex matcher with unbalanced
14225         brackets (bug#22146).
14227 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
14229         Fix visiting files with raw-text
14231         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
14232         when some stuff was actually read.  (Bug#22162)
14234 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
14236         Fix regex matching keyval labels
14238         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
14239         matching keyval labels.
14241 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
14243         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
14245         ... in case of Tramp.  (Bug#20821)
14247 2015-12-12  Paul Eggert  <eggert@cs.ucla.edu>
14249         Fix performance regression with gcc -O0
14251         This fixes the smaller performance hit that I noted in:
14252         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
14253         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
14254         * src/puresize.h (puresize_h_PURE_P)
14255         (puresize_h_CHECK_IMPURE):
14256         New macros, with the old contents of the functions.
14257         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
14258         * src/puresize.h (PURE_P, CHECK_IMPURE):
14259         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
14260         * src/conf_post.h (ATTRIBUTE_UNUSED):
14261         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
14263 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
14265         * lisp/emacs-lisp/package.el (package-unpack): Security check
14267         Check that we received the package we were offered.
14269 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
14271         * lisp/emacs-lisp/package.el (package--compile): Don't activate
14273         `package-unpack' takes care of all activations now (other than
14274         `package-initialize).  `package--compile' now only compiles.
14276 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
14278         Document the new bindings of <UP> and <DOWN> in the minibuffer
14280         * doc/emacs/mini.texi (Minibuffer History): Describe the new
14281         bindings of <UP> and <DOWN> in the minibuffer.
14283 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
14285         Document new features of Ido
14287         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
14289 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
14291         Fix frame height calculations with added menu bar on Windows (Bug#22105)
14293         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
14294         when simultaneously specifying multiple parameters for
14295         `modify-frame-parameters' that all may change the frame's size.
14296         * src/w32fns.c (x_set_menu_bar_lines): Don't set
14297         windows_or_buffers_changed here.
14298         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
14299         with third argument false.
14300         * src/w32menu.c (set_frame_menubar): Set
14301         windows_or_buffers_changed here.
14302         * src/w32term.c (x_set_window_size): Determine third argument of
14303         AdjustWindowRect from whether the frame has a menu bar and not
14304         from whether it wants one.
14306 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
14308         Document the change in interactive shell mode
14310         * doc/emacs/misc.texi (Interactive Shell): Document that the
14311         '*shell*' buffer by default displays in a new window.
14313 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
14315         Document new features of package.el
14317         * doc/emacs/package.texi (Package Menu): Document the 'external'
14318         status and the new menu commands.
14319         (Package Installation): Document archive priorities.
14321         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
14322         (package-menu-hide-low-priority): Doc fix.
14324 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
14326         Update and document new features of xterm support
14328         * doc/emacs/frames.texi (Text-Only Mouse): Document that
14329         track-mouse is supported by newer xterm versions.
14331 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
14333         Document new features of Prettify Mode
14335         * doc/emacs/programs.texi (Misc for Programs): Document
14336         'prettify-symbols-compose-predicate' and
14337         'prettify-symbols-unprettify-at-point'.
14339         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
14340         (prettify-symbols-default-compose-p)
14341         (prettify-symbols-compose-predicate)
14342         (prettify-symbols--compose-symbol): Doc fixes.
14344 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
14346         Document multi-mode indentation facilities
14348         * doc/lispref/text.texi (Mode-Specific Indent): Document
14349         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
14351         * lisp/progmodes/prog-mode.el (prog-indentation-context)
14352         (prog-widen): Doc fixes.
14354 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
14356         Document 'vc-refresh-state'
14358         * doc/emacs/maintaining.texi (Version Control): Document
14359         'vc-refresh-state'.
14361         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
14363 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
14365         Fix echo for "C-u"
14367         * src/keyboard.c (command_loop_1): Undo last change.  It caused
14368         duplicate echo of C-u.  (Bug#22107)
14370 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14372         Avoid errors when creating files under SVN in new directory
14374         * lisp/vc/vc-svn.el (vc-svn-registered): Use
14375         file-accessible-directory-p, to avoid cd'ing to a non-existing
14376         directory, which signals an error on some systems.  (Bug#21984)
14377         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
14378         Use declare-function to avoid byte-compiler warnings.
14380 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14382         Improve Lua support in etags
14384         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
14385         "function".
14387         * etc/NEWS: Mention improved Lua support by 'etags'.
14389         * test/etags/lua-src/test.lua (test): Add tests for indented
14390         function definitions.
14391         * test/etags/ETAGS.good_1:
14392         * test/etags/ETAGS.good_2:
14393         * test/etags/ETAGS.good_3:
14394         * test/etags/ETAGS.good_4:
14395         * test/etags/ETAGS.good_5:
14396         * test/etags/ETAGS.good_6:
14397         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
14399 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14401         Fix 'this-command-keys' wrt prefix argument
14403         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
14404         was part of this-command-keys, but not of this-single-command-keys.
14405         (Bug#22107)
14407         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
14408         commentary about the function's return value.
14410 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14412         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
14414 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14416         Improve and document Ruby support in 'etags'
14418         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
14419         (Ruby_functions): Support "module" and overloaded operators.
14420         (Ruby_help): Mention "module".
14422         * test/etags/ruby-src/test.rb:
14423         * test/etags/ruby-src/test1.ruby: New files.
14424         * test/etags/Makefile (RBSRC): New tests.
14425         (SRCS): Add ${RBSRC}.
14426         * test/etags/ETAGS.good_1:
14427         * test/etags/ETAGS.good_2:
14428         * test/etags/ETAGS.good_3:
14429         * test/etags/ETAGS.good_4:
14430         * test/etags/ETAGS.good_5:
14431         * test/etags/ETAGS.good_6:
14432         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
14434         * doc/man/etags.1: Mention Ruby support.
14435         * etc/NEWS: Mention Ruby support.
14437 2015-12-11  Xi Lu  <lx@shellcodes.org>
14439         Initial support for Ruby in 'etags'
14441         * lib-src/etags.c <Ruby_suffixes>: New variable.
14442         (lang_names): Add an entry for Ruby.
14443         (Ruby_functions): New function.  (Bug#22116)
14445 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14447         Clarify documentation of 'modify-frame-parameters'
14449         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
14450         PARMs" mean for 'modify-frame-parameters'.
14452         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
14453         PARMs" mean for this function.  (Bug#22104)
14455 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14457         Fix setting buffer unibyte when reading from a device
14459         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
14460         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
14462 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
14464         Clarify documentation of 'values'
14466         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
14467         updated by any evaluation commands in 'lisp-interaction-mode'.
14468         (Bug#22056)
14470 2015-12-11  Anders Lindgren  <andlind@gmail.com>
14472         Fixed subversion vc error when opening file in new directory (bug#21984).
14474         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
14476 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
14478         Yet another fix for when point ends up in invisible text
14480         * src/xdisp.c (redisplay_window): When someone forced
14481         window-start, and honoring that failed to show the cursor, try
14482         moving out of invisible text, before falling back to the middle of
14483         the window.  (Bug#22098)
14485 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
14487         Fix error in Tramp perl script for cygwin
14489         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
14490         error if file doesn't exist.
14492 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14494         Remove font workaround for limited outdated versions
14496         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
14497         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
14499 2015-12-09  Anders Lindgren  <andlind@gmail.com>
14501         Don't add "." to load path (bug#21104)
14503         When configured with --enable-locallisppath=no, which is the
14504         default for OS X, the load-path incorrectly was populated with ".".
14506         * src/lread.c (init_lread): Don't call `decode_env_path' when
14507         PATH_SITELOADSEARCH is empty.
14509 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
14511         * lisp/emacs-lisp/package.el (package--with-response-buffer):
14513         Search for the blank-line in the right buffer.
14515 2015-12-08  Glenn Morris  <rgm@gnu.org>
14517         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
14518         for recent change.
14520 2015-12-08  Glenn Morris  <rgm@gnu.org>
14522         Fix some display-warning usage.
14524         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
14525         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
14526         * lisp/calendar/holidays.el (calendar-holiday-list):
14527         * lisp/mail/rmailout.el (rmail-output-read-file-name):
14528         Fix display-warning usage.
14530 2015-12-07  Glenn Morris  <rgm@gnu.org>
14532         * lisp/calendar/cal-html.el: Require diary-lib.
14534         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
14536 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14538         Add Obsolete-since header to eudcb-ph.el
14540         * eudcb-ph.el: Add Obsolete-since header.
14542 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
14544         Spelling fixes
14546         * doc/misc/calc.texi (Predefined Units): Use the bland modern
14547         scientific style for spelling the units “ampere” and
14548         “angstrom” rather than the older style “Ampere” and
14549         “Ångstrom”.  The latter spelling was wrong anyway (it should
14550         have been “Ångström”).
14551         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
14552         Fix misspelling of ‘atom’ in code.
14554 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
14556         Improve documentation of kill commands
14558         * lisp/simple.el (region-extract-function, delete-backward-char)
14559         (delete-forward-char, kill-region, copy-region-as-kill)
14560         (kill-ring-save): Better document the optional argument REGION in
14561         the doc strings.  Mention in the doc strings that text put in the
14562         kill-ring can be filtered by 'filter-buffer-substring'.
14564         * doc/lispref/text.texi (Kill Functions): Mention that functions
14565         described in this subsection can filter text they put in the
14566         kill-ring.  Add a cross-reference to "Buffer Contents" and an
14567         index entry.  Document the optional argument 'region' and its
14568         effect.
14569         (Bug#21315)
14571 2015-12-07  Alan Mackenzie  <acm@muc.de>
14573         Further progress making Isearch, Ispell, Replace work with Follow Mode.
14575         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
14576         no longer exists.  Add follow-post-command-hook to  three special purpose
14577         hooks at setup, and remove them at tear down.
14579         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
14580         isearch-lazy-highlight-new-loop.
14581         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
14582         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
14583         it.
14584         (isearch-lazy-highlight-maybe-new-loop): function removed.
14586         * lisp/replace.el: (replace-update-post-hook): New hook variable.
14587         (perform-replace): Add second (nil) argument to looking-back.  Invoke
14588         replace-update-post-hook before calling replace-highlight.
14590         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
14591         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
14592         call of pos-visible-in-window-p.
14593         (ispell-display-buffer): Place *Choices* window at the top of the last window
14594         in a window group.
14596 2015-12-07  Alan Mackenzie  <acm@muc.de>
14598         Amend doc of `mapconcat': it can take sequences, not merely strings.
14600         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
14601         to say that SEPARATOR and the results from FUNCTION may be any character
14602         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
14604 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
14606         Fix an utf8 problem for Tramp on BSD
14608         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
14609         Make lax check for utf8.
14610         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
14612 2015-12-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14614         Make eudcb-ph.el obsolete
14616         * doc/misc/eudc.texi: Bump version to 1.40.0.
14617         Remove PH/QI sections and mentions.
14618         * lisp/obsolete/eudcb-ph.el: Make obsolete.
14619         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
14620         (eudc-ph-bbdb-conversion-alist): Make obsolete.
14621         * etc/NEWS: Mention this.  (Bug#21191)
14623 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14625         Remove overenthusiastic eassert
14627         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
14628         previous change.  It breaks on MS-Windows --with-wide-int.
14629         Problem reported by Eli Zaretskii in:
14630         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
14632 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14634         Pacify gcc -Wparentheses
14636         * src/xdisp.c (row_containing_pos): Reparenthesize.
14638 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14640         Port mod-test to 32-bit Emacs --without-wide-int
14642         * modules/mod-test/test.el (mod-test-sum-test):
14643         Bring back the 2**29 tests, but port them to 32-bit Emacs
14644         --without-wide-int.
14646 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
14648         Fix minor Tramp problems found on BSD
14650         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
14651         trailing slash.  Quote apostrophes.
14652         (tramp-sh-handle-file-truename): Do not append trailing slash in
14653         the "ls" case.
14654         (tramp-get-ls-command-with-w-option): New defun.
14655         (tramp-do-file-attributes-with-ls)
14656         (tramp-do-directory-files-and-attributes-with-stat): Use it.
14658         * test/automated/tramp-tests.el
14659         (tramp-test31-special-characters-with-perl)
14660         (tramp-test31-special-characters-with-ls)
14661         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
14662         Suppress also readlink.
14664 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
14666         Fix cursor display when invisible text is at line beginning
14668         * src/xdisp.c (redisplay_window): When scrolling fails to show
14669         point, prefer using the desired matrix if possible for finding the
14670         fallback glyph row for displaying the cursor.  (Bug#22098)
14671         (row_containing_pos): Exit the loop as soon as we hit the first
14672         disabled glyph row.  Otherwise we risk accessing garbled data and
14673         departing to the no-no land.
14675 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14677         Improve module interface when WIDE_EMACS_INT
14679         * src/emacs-module.c (plain_values): New constant.
14680         (module_nil): Now a constant.
14681         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
14682         (syms_of_module): Use if, not #ifdef, so that both sides are
14683         checked at compile-time, and so that GCC doesn’t complain
14684         about an unused var in the typical case.  Also, depend on
14685         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
14686         that WIDE_EMACS_INT implies !USE_LSB_TAG.
14687         (value_to_lisp_bits, lisp_to_value_bits): New functions.
14688         Sign-extend integers rather than zero-extending them, as small
14689         negative integers are more likely.
14690         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
14691         functions.
14692         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
14693         (mark_modules): Remove.  All uses removed.
14694         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
14695         to GCALIGNMENT.
14696         (syms_of_module): Check that module_nil converts to Qnil.
14697         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
14698         we prefer signed to unsigned when either will do.
14699         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
14700         a bit better for emacs-module.c.
14702 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14704         Port mod-test to x86-64 GNU/Linux running 32-bit
14706         * modules/mod-test/test.el (mod-test-sum-test):
14707         Don’t attempt to match descriptions to operating systems.
14708         It didn’t work on Fedora x86-64 running a 32-bit executable,
14709         and it’s not worth the trouble anyway.
14710         Port to 32-bit platforms by removing an assumption about
14711         fixnum widths.
14713 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
14715         Fix auto-revert-tests.el when filenotify isn't used
14717         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
14718         Make it working also when filenotify isn't used.
14720 2015-12-05  Juri Linkov  <juri@linkov.net>
14722         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
14724         Let-bind isearch-regexp-function to nil.  (Bug#22097)
14726 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
14728         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
14730         (package--with-response-buffer): NOERROR and ERROR-FORM only
14731         handle connection errors.
14732         (bad-signature): New error type.
14733         (package--check-signature-content): Use it.
14734         (package--check-signature): Properly distinguish connection errors
14735         from bad-signature errors.  Do the check for
14736         `package-check-signature' `allow-unsigned' here instead of forcing
14737         the callbacks to do it.  Add a new argument, UNWIND.
14738         (package--download-one-archive, package-install-from-archive):
14739         Update usage of `package--check-signature'.
14741 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
14743         Fix Bug#22092.
14745         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
14746           Clean up inconsistent line endings. (Bug#22092)
14747           (icalendar--clean-up-line-endings): New.
14748         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
14749           for Bug#22092.
14751 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14753         Document 'bookmark-set-no-overwrite'
14755         * doc/emacs/regs.texi (Bookmarks): Document the new command
14756         'bookmark-set-no-overwrite' and its keybinding.
14758 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14760         Document new binding of 'mouse-buffer-menu'
14762         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
14763         now also on C-F10.
14765 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14767         Initial documentation of dynamic modules
14769         * doc/lispref/loading.texi (Dynamic Modules): New section with
14770         initial documentation for dynamic modules.
14771         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
14772         detailed menu
14774         * etc/NEWS: Fix typos in dynamic modules' entry.
14776 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
14778         Remove copyright statements from trivial test files
14780 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14782         Add "Preliminaries" section to etc/DEBUG
14784         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
14785         Most of the content was suggested by Phillip Lord
14786         <phillip.lord@russet.org.uk>.  Remove the section about debugging
14787         with the Visual Studio, as building Emacs with the Microsoft
14788         compilers is no longer supported.  Minor fixes in some other
14789         sections.
14791 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
14793         Improve parsing of version strings
14795         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
14796         (version-to-list): More helpful error messages.
14797         (version-to-list): ".5" is valid (update docstring).  Make
14798         "22.8X3" invalid, as the doc string says.
14800         * test/automated/subr-tests.el (ert-test-version-parsing): New
14801         tests for version string processing.
14803 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14805         Fix documentation of 'undo' changes
14807         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
14808         English conventions for spelling and whitespace between sentences.
14810         * etc/NEWS: Fix wording and spelling of undo-related entries.
14811         Mark them as documented.
14813 2015-12-04  Glenn Morris  <rgm@gnu.org>
14815         * lisp/net/net-utils.el: Small improvements.
14817         (net-utils--executable-find-sbin): New function.
14818         (ifconfig-program): Check sbin directories.
14819         Fallback to "ip".  (Bug#22091)
14820         (ifconfig-program-options): Check the actual program in use.
14821         (arp-program): Check sbin directories.
14823 2015-12-04  Arash Esbati  <esbati@gmx.de>  (tiny change)
14825         Fix wrong-type-argument integer-or-marker-p nil error
14827         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
14828         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
14830 2015-12-04  Alan Mackenzie  <acm@muc.de>
14832         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
14834         Merge necessitated by a rebase operation.
14836 2015-12-04  Alan Mackenzie  <acm@muc.de>
14838         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
14840 2015-12-04  Alan Mackenzie  <acm@muc.de>
14842         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
14844         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
14845         Windows" and new @defun selected-window-group.
14846         (Window Start and End): Describe new &optional parameter GROUP and
14847         ...-group-function for window-start, window-end, set-window-start, and
14848         pos-visible-in-window-p.
14849         (Textual Scrolling) Describe the same for recenter.
14850         doc/lispref/positions.texi (Screen Lines): Describe the same for
14851         move-to-window-line.
14853         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
14854         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
14855         new optional parameter "group".  At the beginning of each, check whether the
14856         corresponding ...-group-function is set to a function, and if so execute this
14857         function in place of the normal processing.
14858         (syms_of_window): Define symbols for the six new variables below.
14859         (window-start-group-function, window-end-group-function)
14860         (set-window-start-group-function, recenter-group-function)
14861         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
14862         New permanent local buffer local variables.
14863         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
14864         Fpos_visible_in_window_p.
14866         lisp/window.el (selected-window-group-function): New permanent local buffer
14867         local variable.
14868         (selected-window-group): New function.
14870         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
14871         enable, kill them at mode disable.  Add/remove follow-after-change to/from
14872         after-change-functions.
14873         (follow-start-end-invalid): New variable.
14874         (follow-redisplay): Manipulate follow-start-end-invalid.
14875         (follow-after-change, follow-window-start, follow-window-end)
14876         (follow-set-window-start, follow-pos-visible-in-window-p)
14877         (follow-move-to-window-line, follow-sit-for): New functions.
14879         lisp/isearch.el (isearch-call-message): New macro.
14880         (isearch-update, with-isearch-suspended, isearch-del-char)
14881         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
14882         (with-isearch-suspended): Rearrange code such that isearch-call-message is
14883         invoked before point is moved.
14884         (isearch-message): Add comment about where point must be at function call.
14885         (isearch-search): Remove call to isearch-message.
14886         (isearch-lazy-highlight-window-group): New variable.
14887         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
14888         the battery of tests to ...
14889         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
14890         Note: (sit-for 0) is still called.
14891         (isearch-lazy-highlight-update): Check membership of
14892         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
14893         property.
14894         (isearch-update, isearch-done, isearch-string-out-of-window)
14895         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
14896         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
14897         (isearch-lazy-highlight-update): Call the six amended primitives (see
14898         src/window.c above) with the new `group' argument set to t, to cooperate
14899         with Follow Mode.
14901 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14903         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
14905         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
14906         (ert--explain-format-atom, ert--explain-equal-rec)
14907         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
14908         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
14910 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14912         * lisp/character-fold.el: Remove special case-folding support
14914         (character-fold-to-regexp): Remove special code for
14915         case-folding.  Char-fold search still respects the
14916         `case-fold-search' variable (i.e., f matches F).  This only
14917         removes the code that was added to ensure that f also matched
14918         all chars that F matched.  For instance, after this commit, f
14919         no longer matches 𝔽.
14921         This was necessary because the logic created a regexp with
14922         2^(length of the string) redundant paths.  So, when a very
14923         long string "almost" matched, Emacs took a very long time to
14924         figure out that it didn't.  This became particularly relevant
14925         because isearch's lazy-highlight does a search bounded by (1-
14926         match-end) (which, in most circumstances, is a search that
14927         almost matches).  A recipe for this can be found in bug#22090.
14929 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14931         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
14932         Fixes (bug#21701)
14934 2015-12-04  Daiki Ueno  <ueno@gnu.org>
14936         lisp/gnus/qp.el: Don't replace "from " at bol
14938         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
14939         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
14941 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
14943         Externalize some symbols in undo-auto
14945          * doc/lispref/text.texi: Update symbols.
14946          * lisp/simple.el (undo-auto--amalgamate,
14947            undo-auto--current-boundary-timer): Make symbols public.
14948          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
14949            updated symbol.
14951 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
14953         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
14955 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
14957         Some error message improvements in tramp-sh.el
14959         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
14960         Suppress error messages for "mesg" and "biff" calls.
14961         (tramp-get-remote-path): Ignore errors when expanding
14962         `tramp-own-remote-path'.  Raise a warning instead.
14964 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14966         Document 'nacl' value for 'system-type'
14968         * doc/lispref/os.texi (System Environment): Document the 'nacl'
14969         value of 'system-type'.
14971 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14973         Document 'window-max-chars-per-line'
14975         * doc/lispref/windows.texi (Window Sizes): Document
14976         'window-max-chars-per-line'.
14978 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14980         Fix some file headers for the purpose of `package--builtins'
14982         * lisp/emacs-lisp/cl-preloaded.el
14983         * lisp/emacs-lisp/eieio-compat.el
14984         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
14986         * lisp/ielm.el: Fix summary line.
14988 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14990         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
14992         Reload any previously loaded package files before compiling
14993         the package (also reload the same files after compiling).
14994         This ensures that we have the most recent definitions during
14995         compilation, and avoids generating bad elc files when a macro
14996         changes and it is used in a different file from the one it's
14997         defined in.
14999 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
15001         * lisp/emacs-lisp/package.el: Refactor package activation code
15003         (package-activate): Move code that activates dependencies into
15004         package-activate-1.
15005         (package--load-files-for-activation): New function.
15006         (package-activate-1): Add code for (optionally) activating
15007         dependencies, and move file-loading code into
15008         `package--load-files-for-activation'.
15010 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
15012         Document new font-related functionality
15014         * doc/lispref/display.texi (Low-Level Font): Document
15015         'default-font-width', 'default-font-height', 'window-font-width',
15016         and 'window-font-height'.
15018         * etc/NEWS: Move entries for 'default-font-width',
15019         'default-font-height', 'window-font-width', and 'window-font-height'
15020         to their place and mark them documented.
15022 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
15024         Fix documentation and implementation of 'directory-name-p'
15026         * lisp/files.el (directory-name-p): Modify to recognize
15027         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
15028         accordingly.  Use '=', not char-equal, for comparison, as
15029         letter-case cannot possibly be an issue here.
15031         * doc/lispref/files.texi (Directory Names): Move the documentation
15032         of directory-name-p here from "Relative File Names".  Update the
15033         description per the changes in implementation.
15035         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
15036         place and mark it documented.
15038 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
15040         Minor copyedit in Emacs manual
15042         * doc/emacs/search.texi (Lax Search): Make wording about character
15043         folding by default less definitive.  (Bug#22043)
15045 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
15047         More emacs-module.c fixes for wide ints
15049         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
15050         unsigned data types to manipulate pointers, to avoid sign
15051         extension coming after us with a vengeance.
15053         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
15054         Emacs with wide ints that verify integer values near the critical
15055         value that requires us to switch to a cons cell.
15057 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
15059         Fix bug#22069 in cl-generic.el
15061         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
15062         not run thru `format'.
15064 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
15066         APPEND etags--xref-backend to xref-backend-functions
15068         * lisp/progmodes/xref.el (xref-backend-functions):
15069         Use APPEND when adding the default element
15070         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
15072 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
15074         More accurate documentation of lax whitespace matching
15076         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
15077         (word-search-backward, word-search-forward)
15078         (word-search-backward-lax, word-search-forward-lax): Mention in
15079         doc strings that toggling lax whitespace matching has no effect on
15080         these commands.
15082         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
15083         lax whitespace matching has no effect on these commands.
15085 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
15087         Fix emacs-module.c for wide ints
15089         * src/emacs-module.c (lisp_to_value): Compare the produced value
15090         with the original Lisp object, not with the one potentially
15091         converted into a Lisp_Cons.  Fixes assertion violations when
15092         working with integers larger than fit into a 32-bit value.
15094         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
15095         large integers, to test --with-wide-int.
15097 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
15099         Document 'directory-files-recursively'
15101         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
15102         the argument MATCH to REGEXP, to be more explicit about its form.
15104         * doc/lispref/files.texi (Contents of Directories): Improve the
15105         documentation of 'directory-files-recursively'.  Add
15106         cross-references.
15108         * etc/NEWS: Move the entry for 'directory-files-recursively' to
15109         its place and mark it documented.
15111 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
15113         Document 'inhibit-read-only' property
15115         * doc/lispref/text.texi (Special Properties): Describe the new
15116         'inhibit-read-only' text property.  Add cross-reference to where
15117         read-only buffers are described.
15118         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
15119         'inhibit-read-only' property exempts text from being read-only.
15120         Add cross-reference to "Special Properties".
15122         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
15123         its place and mark it documented.
15125 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
15127         * lisp/emacs-lisp/package.el: Update header comments
15129 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
15131         * lisp/character-fold.el: Add back multi-char matching
15133         (character-fold-to-regexp): Uncomment recently commented code
15134         and make the algorithm "dummer" by not checking every possible
15135         combination.  This will miss some possible matches, but it
15136         greatly reduces regexp size.
15138         * test/automated/character-fold-tests.el
15139         (character-fold--test-fold-to-regexp): Comment out test of
15140         functionality no longer supported.
15142 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
15144         * doc/emacs/ack.texi (Acknowledgments): Update.
15146 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
15148         Check `file-remote-p' over absolute files names in files.el
15150         * lisp/files.el (directory-files-recursively)
15151         (get-free-disk-space): Check `file-remote-p' over absolute files names.
15153 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
15155                 * src/lread.c (syms_of_lread): Doc fix.
15157 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
15159         Don't mistake certain JS method calls for keywords
15161         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
15162         Braceless keyword can't come after a period (bug#22063).
15164 2015-11-30  David Reitter  <david.reitter@gmail.com>
15166         Read frame_title_format from buffer-local variable for NS port
15168         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
15169         icon-title-format variables from buffer in appropriate window.
15170         (Bug#22048)
15172 2015-11-30  Juri Linkov  <juri@linkov.net>
15174         * lisp/replace.el (occur-engine): Count matches in empty lines.
15176         (Bug#22062)
15178 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
15180         * src/emacs-module.h: Fix finalizer typedef for C++11
15182         C++11 standard doesn't allow exception-specification in typedef.
15183         The workaround is to declare a dummy function prototype and use
15184         decltype on it.
15186 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
15188         Fix last change
15190         * src/emacs-module.c (lisp_to_value, value_to_lisp)
15191         [WIDE_EMACS_INT]: Avoid compiler warnings.
15193 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
15195         Rely on conservative stack scanning to find "emacs_value"s
15197         * src/emacs-module.c (struct emacs_value_tag)
15198         (struct emacs_value_frame, struct emacs_value_storage): Remove.
15199         (value_frame_size): Remove constant.
15200         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
15201         (lisp_to_value): Remove first arg.
15202         (module_nil): New constant.
15203         Use it instead of NULL when returning an emacs_value.
15204         (module_make_function): Adjust to new calling convention of
15205         Qinternal_module_call.
15206         (DEFUN): Receive args in an array rather than a list.
15207         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
15208         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
15209         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
15210         Adjust to new type of non_local_exit info.
15211         (ltv_mark) [WIDE_EMACS_INT]: New constant.
15212         (value_to_lisp, lisp_to_value): Rewrite.
15213         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
15214         (allocate_emacs_value): Remove function.
15215         (mark_modules): Gut it.
15216         (initialize_environment): Don't initialize storage any more.
15217         Keep the actual env object on Vmodule_environments.
15218         (finalize_environment): Don't finalize storage any more.
15219         (syms_of_module): Initialize ltv_mark and module_nil.
15221         * src/emacs-module.h (emacs_value): Make it more clear that this type
15222         is really opaque, including the fact that NULL may not be valid.
15224         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
15225         Don't assume that NULL is a valid emacs_value.
15227 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
15229         Yet another doc improvement for search commands
15231         * doc/emacs/search.texi (Word Search, Symbol Search)
15232         (Regexp Search): Document commands that don't support lax
15233         whitespace matching or character folding.
15234         (Nonincremental Search): Mention the search commands that can be
15235         invoked from the menu bar.
15237         * lisp/isearch.el (isearch-define-mode-toggle-word)
15238         (isearch-define-mode-toggle-symbol)
15239         (isearch-define-mode-toggle-character-fold): Note in the doc
15240         string that turning these on exits the regexp mode.
15241         (isearch-forward-regexp, isearch-forward-word)
15242         (isearch-forward-symbol, isearch-backward-regexp)
15243         (word-search-backward, word-search-forward)
15244         (word-search-backward-lax, word-search-forward-lax): State in the
15245         doc string which commands don't support character folding and/or
15246         lax-whitespace matching.
15248 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
15250         Run `window-size-change-functions' also when reading from minibuffer
15252         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
15253         also when reading from minibuffer.
15255 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
15257         Fix scrambling of html-rendered item buffers
15259         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
15260           scrambling of contents by wrapping call to html-renderer in
15261           save-selected-window.
15263 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
15265         Fix font typo in previous doc fix.
15267 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
15269         A bit more security doc, esp. file local vars
15271         * doc/emacs/emacs.texi (Top):
15272         * doc/emacs/misc.texi (Miscellaneous Commands):
15273         Refer to new Host Security section.
15274         (Host Security): New section.
15275         * doc/lispref/os.texi (Security Considerations):
15276         Mention file local variables.
15278 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15280         * lisp/character-fold.el: Comment out branching code
15282         (character-fold-to-regexp): Comment out code that uses multi-char
15283         table.  The branching caused by this induces absurdly long regexps,
15284         up to 10k chars for as little as 25 input characters.
15286 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
15288         Spelling and grammar fixes
15290 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
15292         Make lisp-completion-at-point a wrapper instead of an alias
15294         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
15295         Turn into an obsolete wrapper around elisp-completion-at-point
15296         (bug#20455).
15298 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
15300         * lisp/isearch.el (isearch-search-fun-default): Nicer error
15302         message when the search fails.
15304 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
15306         Update menu-bar-goto-uses-etags-p for the current xref API
15308         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
15309         xref-backend-functions, instead of now-nonexistent
15310         xref-find-function.
15312 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
15314         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
15316 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
15318         * lisp/menu-bar.el: Use folding in searches
15320         (nonincremental-search-forward): Use `isearch-search-fun-default'
15321         to determine the search function.
15322         (nonincremental-search-backward)
15323         (nonincremental-repeat-search-forward)
15324         (nonincremental-repeat-search-backward): Use it.
15326 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
15328         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
15330 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
15332         * lisp/character-fold.el (character-fold-to-regexp): Be careful
15334         not to return huge regexps.
15336 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
15338         Improve documentation of string-collate-* functions
15340         * doc/lispref/strings.texi (Text Comparison): Improve wording and
15341         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
15343         * etc/NEWS: Move the entry of 'string-collate-equalp' and
15344         'string-collate-lessp' to "Lisp Changes" section and mark it as
15345         documented.
15347 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
15349         Document truncate-string-ellipsis
15351         * doc/lispref/display.texi (Size of Displayed Text): Document
15352         'truncate-string-ellipsis'.
15354         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
15355         (truncate-string-to-width): Mention in the doc string that the
15356         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
15358         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
15359         Changes" section.
15361 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
15363         Fix confusion wrt character folding in the Emacs manual
15365         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
15366         Document that invoking search-forward/backward and
15367         re-search-forward/backward supports only case folding, but not the
15368         rest of the lax-search features.  Reported by Mike Kupfer
15369         <m.kupfer@acm.org>.
15371 2015-11-29  Ken Brown  <kbrown@cornell.edu>
15373         Update mod-test-sum-test
15375         * modules/mod-test/test.el (mod-test-sum-test): Update to
15376         accommodate the lack of dladdr on Cygwin.
15378 2015-11-29  Alan Mackenzie  <acm@muc.de>
15380         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
15382         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
15383         to `funcall', (i) Output an error message; (ii) Generate code to signal a
15384         `wrong-number-of-arguments' error.
15386 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
15388         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
15390 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15392         * lisp/character-fold.el (character-fold-to-regexp)
15394         Warn about using long strings.
15396         * test/automated/character-fold-tests.el
15397         (character-fold--test-lax-whitespace)
15398         (character-fold--test-consistency): Reduce string size for tests.
15400 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15402         Document renaming of x-select-enable-* variables
15404         * doc/emacs/killing.texi (Clipboard): Rename
15405         x-select-enable-clipboard to select-enable-clipboard and
15406         x-select-enable-primary to select-enable-primary.  Update index
15407         entries.
15409         * etc/NEWS: Mark entry as documented.
15411 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15413         Document the shorthand hints displayed by M-x
15415         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
15416         suggest-key-bindings.  Document the shorthand hints for commands
15417         that have no key bindings.  Document that M-x completion ignores
15418         obsolete commands.
15420         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
15421         documented.
15423 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15425         Update docs of character folding
15427         * doc/emacs/search.texi (Lax Search): Update the description of
15428         character folding for the latest changes.
15430 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15432         * lisp/character-fold.el: Also play nice with case-folding
15434         (character-fold-to-regexp): Take `case-fold-search' into account.
15436 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15438         * lisp/character-fold.el: Add support for multi-char matches
15440         (character-fold-table): Now has an extra-slot. This is a second
15441         char-table that holds multi-character matches.  See docstring for
15442         details.
15443         (character-fold-to-regexp): Can build branching regexps when a
15444         character's entry the extra slot of `character-fold-table' matches the
15445         characters that succeed it.
15447 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15449         * lisp/character-fold.el: Code simplifications
15451         (character-fold-table): Reduce the scope of a variable.
15452         (character-fold-to-regexp): Change logic to work directly on the
15453         input string.  It's a little easier to understand, probably
15454         faster, and sets us up for implementing multi-char matches.
15456         * test/automated/character-fold-tests.el
15457         (character-fold--test-fold-to-regexp): New test.
15459 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15461         Document changes in "C-h l"
15463         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
15465         * etc/NEWS: mark "C-h l" changes as documented.
15467 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15469         Finalize documentation of 'custom-prompt-customize-unsaved-options'
15471         * doc/emacs/custom.texi (Saving Customizations): Index the new
15472         function 'custom-prompt-customize-unsaved-options'.
15474         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
15475         is useful.
15477 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15479         Document 'comment-line'
15481         * doc/emacs/programs.texi (Comment Commands): Document
15482         'comment-line'.
15484         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
15486 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15488         Document new checkdoc features
15490         * doc/lispref/tips.texi (Tips, Library Headers): Document the
15491         keyword-checking features of checkdoc and the commands
15492         'checkdoc-file' and 'checkdoc-current-buffer'.
15494         * etc/NEWS: Move the checkdoc-related entries to their own
15495         section.
15497 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
15499         Simplify the prologue of emacs-module.c functions
15501         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
15502         (module_make_global_ref)
15503         (module_free_global_ref, module_make_function, module_funcall)
15504         (module_intern, module_type_of, module_extract_integer)
15505         (module_make_integer, module_extract_float, module_make_float)
15506         (module_copy_string_contents, module_make_string)
15507         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
15508         (module_get_user_finalizer, module_set_user_finalizer)
15509         (module_vec_set, module_vec_get, module_vec_size): Use new helper
15510         macro MODULE_FUNCTION_BEGIN.
15512 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15514         Don't reject module calls with no arguments
15516         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
15518 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
15520         Make module-call be visible from Lisp
15522         * src/emacs-module.c (module_make_function): Use internal--module-call.
15523         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
15524         checks.
15525         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
15526         defsubr internal--module-call.
15528 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15530         Add etags tests for the recent Lua-related bugfix
15532         * test/etags/lua-src/test.lua: New file, tests the issues raised
15533         by bug#21934.
15534         * test/etags/Makefile (LUASRC): Add test.lua.
15535         * test/etags/ETAGS.good_1:
15536         * test/etags/ETAGS.good_2:
15537         * test/etags/ETAGS.good_3:
15538         * test/etags/ETAGS.good_4:
15539         * test/etags/ETAGS.good_5:
15540         * test/etags/ETAGS.good_6:
15541         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
15542         regression fix, resolved around 25 May 2015, required changes to
15543         the "good" ETAGS files.
15545 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15547         Fix Lua tags when a function name includes '.' or ':'
15549         * lib-src/etags.c (Lua_functions): Add a tag for the last element
15550         of a function name after a dot or a colon.  (Bug#21934)
15552 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
15554         Improve documentation of search and replace commands
15556         * doc/emacs/search.texi (Replacement and Lax Matches): Document
15557         which commands are affected by 'replace-character-fold'.
15558         (Lax Search): Add a cross reference to "Replacement and Lax
15559         Matches".  Improve wording.  Fix lost extra whitespace.
15560         (Search Customizations): Improve wording.  (Bug#22036)
15561         See also comments in
15562         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
15564         * lisp/replace.el (query-replace, query-replace-regexp)
15565         (query-replace-regexp-eval, replace-string, replace-regexp):
15566         Mention 'replace-character-fold' in the doc strings.
15568 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
15570         Fix minor problems found by static checking
15572         * src/undo.c (prepare_record): Add proper prototype for C.
15574 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15576         * src/emacs-module.c (struct env_storage): Delete
15578         (struct emacs_runtime_private): Keep an emacs_env instead.
15579         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
15580         (initialize_environment): Split the arg in two.  Adjust all callers.
15581         Only store the private part in Vmodule_environments.
15582         (finalize_environment): Change the arg to only be the private env.
15583         Adjust all callers.
15585 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15587         Improve documentation of 'replace-character-fold'
15589         * lisp/replace.el (replace-character-fold): Clarify which commands
15590         are affected by this variable.
15592 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
15594         Autoload etags when using its xref backend
15596         * lisp/progmodes/xref.el (xref--etags-backend):
15597         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
15598         (Bug#22026)
15600 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
15602         * lisp/character-fold.el: Allow complex chars to match their decomposition
15604         (character-fold-table): When a character's decomposition does not
15605         involve a formatting tag (i.e., if it has an "exact" description via
15606         other characters), then this character is allowed to match the
15607         decomposition.
15609 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
15611         * lisp/character-fold.el: More descriptive variable names
15613         (character-fold-table): Rename a lot of the lexical variables to
15614         make the code easier to read.
15616 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
15618         * lisp/isearch.el: Ensure we still support `isearch-new-word'
15620         (isearch-new-regexp-function): Define variable.
15621         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
15623 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15625         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
15627 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
15629         * test/lisp/abbrev-tests.el: Define more tests
15631         (abbrev-table-name-test, kill-all-abbrevs-test)
15632         (clear-abbrev-table-test): New tests.
15634 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15636         Add module tests for wrong-type-argument
15638         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
15639         wrong-type-argument.
15641 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15643         Improve handling of signals and 'throw' in modules
15645         * src/emacs-module.c: Add commentary explaining how to write
15646         functions in this file.
15647         (module_make_global_ref, module_free_global_ref)
15648         (module_non_local_exit_signal, module_non_local_exit_throw)
15649         (module_make_function, module_funcall, module_intern)
15650         (module_type_of, module_is_not_nil, module_eq)
15651         (module_extract_integer, module_make_integer)
15652         (module_extract_float, module_make_float)
15653         (module_copy_string_contents, module_make_string)
15654         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
15655         (module_get_user_finalizer, module_set_user_finalizer)
15656         (module_vec_set, module_vec_get, module_vec_size)
15657         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
15658         Do nothing and return with failure indication immediately, if some
15659         previous module call signaled an error or wants to throw.  See
15660         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
15661         for the relevant discussions.
15663 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15665         Add ':version' tag to 'checkdoc-package-keywords-flag'
15667         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
15668         Add a ':version' tag.
15670 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15672         Improve documentation of 'eval-buffer' and 'eval-region'
15674         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
15676         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
15677         "accessible portion of buffer".
15679 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15681         Unbreak the Cygwin w32 build
15683         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
15684         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
15686 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15688         Improve commentary in character-fold.el
15690         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
15691         description from commit log message to comments.  (Bug#22019)
15693 2015-11-26  Alan Mackenzie  <acm@muc.de>
15695         Byte Compiler: generate code to adjust stack count after call to `signal'.
15697         Corrects change from earlier today.
15699         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
15700         `byte-compile--for-effect' as argument to `byte-compile-form'.
15702 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
15704         Improve commentary of prepare_to_modify_buffer_1
15706         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
15707         that this function runs Lisp.  Suggested by Richard Stallman
15708         <rms@gnu.org>.
15710 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15712         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
15714 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15716         Fix regression after merge.
15718          * src/undo.c (prepare_record): Remove call to run_undoable_change.
15720 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15722         After delete, record point location in undo.
15724         Addresses Bug #21968.
15726                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
15727                 better support intercalating calls.
15728                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
15729                 point and current buffer before each command.
15730                 * src/undo.c (record_point): Now only record the point.
15731                 * src/undo.c (prepare_record): Functionality removed form
15732                 record_point.
15733                 * src/undo.c (record_delete): Check if point needs recording.
15734                 * src/undo.c (undo-boundary): Record value of point before each
15735                 boundary.
15736                 * test/automated/simple-test.el: New tests.
15738         Conflicts:
15739                 src/undo.c
15741 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
15743         Fix compiler warnings in w32.c
15745         * src/w32.c (sys_socket): In case of error, use -1 as return
15746         value, not INVALID_SOCKET, which causes compiler warnings.
15747         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
15748         to the appropriate function signature, to avoid compiler errors.
15749         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
15751 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
15753         Check if the file exists on disk before producing the revert diff
15755         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
15756         exists on disk (bug#20558).
15758 2015-11-26  Alan Mackenzie  <acm@muc.de>
15760         Byte compiler: on setq with an odd number of arguments, generate a `signal'
15762         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
15763         it has an odd number of arguments, to allow bytecomp to handle the error.
15765         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
15766         odd number of arguments, generate a `signal' instead of the normal code.
15768 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
15770         Use find-tag-default for xref-backend-identifier-at-point
15772         * lisp/progmodes/etags.el (find-tag-tag)
15773         (tags-completion-at-point-function): Extract common code as
15774         find-tag--default.
15775         (xref-backend-identifier-at-point): Define in terms of the new
15776         function.
15778 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15780         * src/undo.c (record_property_change): Remove now-unused local.
15782 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
15784         run_undoable_changes now called from insdel.
15786         The original calls from inside undo.c are not always at a safe position
15787         to call lisp, as they originate in varied positions within insdel.c.
15788         Calling them directly from prepare_to_modify_buffer_1 ensures that they
15789         are always run at the same point.
15791          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
15792          and symbol used.
15793          * src/insdel.c (run_undoable_changes): Add function and symbol.
15795 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
15797         Improve and update documentation of search commands
15799         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
15800         all references changed.  Move the description of lax-whitespace
15801         here.  Add description of the new character folding features and
15802         additional customizable options.
15803         (Isearch Yank): Move before "Error in Search".
15804         (Basic Isearch): Improve wording.  Add index entries.  Add short
15805         description of how to abandon search, making this subsection a
15806         complete introduction to search basics.
15807         (Repeat Isearch): Add index entries.  Describe additional
15808         customizable options.  Describe mouse clicks.
15809         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
15810         area.  Describe more customizable options.
15811         (Error in Isearch): Add index entries.
15812         (Special Isearch): Move actual description of some isearch
15813         commands to other sections, leaving here just the summary of the
15814         commands.  Add command that toggles character folding.  Describe
15815         commands, like "C-h C-h", that were previously omitted for some
15816         reason.
15817         (Not Exiting Isearch): Describe search-exit-option.  Add index
15818         entries.
15819         (Word Search): Describe eww-search-word and eww-search-prefix.
15820         (Symbol Search): Add index entries.
15821         (Regexp Search): Describe regexp-search-ring-max.
15822         (Replacement and Lax Matches): Renamed from "Replacement and
15823         Case"; all references changed.  Describe lax-whitespace matching
15824         in replace commands and related options.  Describe character
15825         folding in replace commands and related options.
15826         (Query Replace): Describe query-replace-from-to-separator and the
15827         new history features.  Add index entries for highlighted text.
15828         Describe query-replace-skip-read-only.  Describe more keys
15829         accepted by query-replace.
15830         (Other Repeating Search): More index entries for Occur.  Describe
15831         list-matching-lines-default-context-lines.
15832         (Search Customizations): New section, documents customizable
15833         options that were not documented until now.
15834         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
15835         "Character Folding".
15837         * etc/NEWS: Move search- and replace-related entries to a single
15838         parent section.
15840         * lisp/replace.el (query-replace-show-replacement): Doc fix.
15841         * lisp/isearch.el (search-nonincremental-instead)
15842         (isearch-hide-immediately): Doc fixes.
15844 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
15846         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
15848         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
15849         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
15850         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
15852 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15854         Fix module_format_fun_env when dynlib_addr fails
15856         * src/emacs-module.c (module_format_fun_env):
15857         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
15858         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
15860 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15862         Disambiguate variable help a bit better
15864         * lisp/help-fns.el (describe-variable): Quote the
15865         variable’s value if it is a symbol other than t or nil.
15866         See: T.V Raman in:
15867         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
15869 2015-11-24  Dmitry Gutov  <dgutov@yandex.ru>
15871         Pass SVN commit message through log-edit-extract-headers
15873         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
15874         log-edit-extract-headers (bug#18954).
15876 2015-11-24  Alan Mackenzie  <acm@muc.de>
15878         CC Mode: Eliminate compiler warning messages.
15880         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
15881         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
15882         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
15883         (c-awk-set-syntax-table-properties): Clarify comments about
15884         `font-lock-syntactic-keywords'.
15886         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
15887         of this before the real (interpreted) one, to satisfy the byte compiler.
15889 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
15891         Extend the test suite for json.el
15893         * lisp/json.el (json-plist-p): Clarify docstring.
15895         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
15896         macro.
15897         (test-json-join, test-json-alist-p)
15898         (test-json-plist-p, test-json-advance, test-json-peek)
15899         (test-json-pop, test-json-skip-whitespace)
15900         (test-json-read-keyword, test-json-encode-keyword)
15901         (test-json-read-number, test-json-encode-number)
15902         (test-json-read-escaped-char, test-json-read-string)
15903         (test-json-encode-string, test-json-encode-key)
15904         (test-json-new-object, test-json-add-to-object)
15905         (test-json-read-object, test-json-encode-list)
15906         (test-json-read-array, test-json-encode-array)
15907         (test-json-read, test-json-read-from-string)
15908         (test-json-encode): New tests.
15909         (json-read-simple-alist): Merged into `test-json-read-object'.
15910         (json-encode-string-with-special-chars): Merged into
15911         `test-json-encode-string'.
15912         (json-read-string-with-special-chars): Split into
15913         `test-json-encode-string' and `test-json-read-from-string'.
15915 2015-11-24  Anders Lindgren  <andlind@gmail.com>
15917         Fixed bug#18283: Enable applescript in NextStep.
15919         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
15921 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15923         Allow completion on dynamic module files in load-library
15925         * lisp/files.el (load-library): Bind completion-ignored-extensions
15926         to nil, to allow completion on dynamic modules typed as file
15927         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
15929 2015-11-24  Alan Mackenzie  <acm@muc.de>
15931         CC Mode: eliminate almost all byte compilation warnings
15933         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
15934         (cc-require): Remove the crude hack that saved and restored
15935         byte-compile-noruntime-functions.
15936         (cc-conditional-require, cc-conditional-require-after-load): New macros.
15938         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
15939         cc-fix.el using the new macros in cc-bytecomp.el.
15941         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
15942         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
15943         forms to remove the superflous quotes.
15945 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15947         Add one more mod-test test
15949         * modules/mod-test/test.el (mod-test-sum-test): Test the error
15950         signaled when the function is invoked with a wrong number of
15951         arguments.
15953 2015-11-24  Philipp Stephani  <phst@google.com>
15955         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
15957 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15959         Implement dynlib_addr for MS-Windows
15961         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
15962         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
15963         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
15964         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
15965         if undefined.
15966         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
15967         zero.
15968         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
15969         the full file name of the module for a given address.
15971 2015-11-24  Alan Mackenzie  <acm@muc.de>
15973         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
15975 2015-11-24  Alan Mackenzie  <acm@muc.de>
15977         Squashed commit of the following:
15979         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
15980         Author: Alan Mackenzie <acm@muc.de>
15981         Date:   Tue Nov 24 16:50:09 2015 +0000
15983             Byte compile: minor amendments.
15985             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
15986             add a comment to explain the binding of variables around a subsidiary
15987             compilation.
15988             (byte-compile-new-defuns): Amend the doc string.
15990         commit c537bfed1dda1593d218956ff00c6105a3ff0316
15991         Author: Alan Mackenzie <acm@muc.de>
15992         Date:   Sat Nov 21 18:43:57 2015 +0000
15994             Byte compiler: fix spurious warnings "might not be defined at runtime".
15996             Also initialize byte-compile-noruntime-functions between runs.
15998             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
15999             (byte-compile-initial-macro-environment): For eval-when-compile: bind
16000             byte-compile-unresolved-functions and byte-compile-new-defuns around
16001             byte-compile-top-level, to prevent spurious entries being made.
16002             (byte-compile-warn-about-unresolved-functions): Check whether function is
16003             in byte-compile-new-defuns before emitting a warning about it.
16004             (byte-compile-from-buffer): Initialize new variable and
16005             byte-compile-noruntime-functions to nil.
16006             (byte-compile-file-form-require): record all new functions defined by a
16007             `require' in byte-compile-new-defuns.
16008             (byte-compile-file-form-defmumble): record the new alias in
16009             byte-compile-new-defuns.
16011 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
16013         Fix crash at startup related to GC of font entities
16015         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
16016         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
16017         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
16018         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
16019         Don't ifdef away font cache compaction on NT_GUI, as the problems
16020         which led to that seem to have been solved.
16021         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
16022         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
16023         cousins.  (Bug#21999)
16025 2015-11-24  Alan Mackenzie  <acm@muc.de>
16027         Byte compile: Output an error, not a warning, for odd number of args to setq
16029         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
16031 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
16033         Fix kbd_buffer iteration loop in readable_events
16035         * src/keyboard.c (readable_events): Wrap the event pointer back to the
16036         start of the kbd_buffer array inside the top of the loop instead of
16037         right before checking the loop condition, since kbd_fetch_ptr and
16038         kbd_store_ptr point past the end of the array to mean that element 0
16039         is next. (bug#21935)
16041 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
16043         Improve text-quoting-style doc again
16045         * doc/lispref/help.texi (Keys in Documentation):
16046         Omit overkill discussion of ‘setq’.  Mention Emacs versions
16047         where ‘grave’ style was standard.
16049 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
16051         Improve text-quoting-style doc
16053 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
16055         Simplify module_make_function
16057         * src/emacs-module.c (module_make_function):
16058         Simplify by calling build_unibyte_string.
16060 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
16062         Port better to FreeBSD’s dlfunc vs dlsym
16064         This avoids warnings when converting between void * and
16065         function pointers, which strict C11 does not allow.
16066         * configure.ac (dlfunc): Check for existence.
16067         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
16068         (dynlib_func): New function.
16069         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
16070         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
16071         dynlib_sym, for function pointers.
16073 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
16075         Simplify use of emacs_finalizer_function type
16077         * src/emacs-module.h (emacs_finalizer_function):
16078         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
16079         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
16081 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
16083         module_format_fun_env fixes
16085         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
16086         * src/emacs-module.c (module_format_fun_env):
16087         Convert path and sym to UTF-8.
16088         Don’t use VLAs, as the C11 standard says they’re optional,
16089         and anyway they can cause core dumps with large allocations.
16090         Use exprintf rather than snprintf, as exprintf handles arbitrarily
16091         long strings.  Simplify the code a bit.
16093 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
16095         Don't use package-user-dir in elisp-library-roots if it's not bound
16097         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
16098         use package-user-dir if it's not bound (bug#19759).
16100 2015-11-23  Anders Lindgren  <andlind@gmail.com>
16102         New visible-bell for NextStep (OS X El Capitan compatible).
16104         Instead of inverting a rectangle in the middle of the frame, use
16105         the standard NextStep image "caution", represented using an
16106         warning sign with an exclamation mark.  (Bug#21662)
16108         Implemented based on a suggestion drafted by Mustafa Kocaturk.
16110         * src/nsterm.m (EmacsBell): New class for managing the caution
16111         image.  Support multiple active bells, the image is removed once
16112         all bells have timed out.
16113         (ns_timeout): Removed, no longer used.
16114         (ns_ring_bell): Reimplemented to use EmacsBell.
16116 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
16118         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
16120         (remove-function): Ditto. (Bug#20376)
16122 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
16124         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
16126 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
16128         Improve how non-ASCII strings are accepted from modules
16130         * src/emacs-module.c (module_make_function, module_make_string):
16131         Build a unibyte Lisp string and then decode it by UTF-8, instead
16132         of building a multibyte string without decoding.  This is more
16133         tolerant to deviations from UTF-8.
16135 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
16137         Port recent module changes to pickier compilers
16139         * src/emacs-module.c (module_make_function)
16140         (module_make_string): Add casts to fix pointer signedness issues.
16142 2015-11-23  Philipp Stephani  <phst@google.com>
16144         Fix how strings are accepted from modules
16146         * emacs-module.c (module_make_function, module_make_string): Use
16147         make_multibyte_string.
16148         (module_copy_string_contents): Encode before reading the byte
16149         size.  Return false if and only if an error occurred.
16151 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
16153         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
16155 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
16157         Add the tamil-dvorak input method
16159         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
16161         * etc/NEWS: Mention the new input method.
16163 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
16165         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
16167         * src/frame.c (adjust_frame_size): Don't set
16168         FRAME_WINDOW_SIZES_CHANGED here ...
16169         * src/window.c (resize_frame_windows): ... but here, as suggested
16170         by Stefan Monnier.  Also remove some dead code along the way.
16172 2015-11-23  Alan Mackenzie  <acm@muc.de>
16174         * /etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
16176 2015-11-23  Alan Mackenzie  <acm@muc.de>
16178         Signal an error when `setf' gets an odd number of arguments.
16180         * lisp/emacs-lisp/gv.el (setf): Amend.
16182 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
16184         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
16186 2015-11-23  Alan Mackenzie  <acm@muc.de>
16188         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
16190 2015-11-23  Alan Mackenzie  <acm@muc.de>
16192         Expunge occurrences of `setq' with an odd number of arguments.
16194         * lisp/apropos.el (apropos-documentation):
16195         * lisp/obsolete/complete.el (PC-include-file-all-completions):
16196         * lisp/progmodes/compile.el (compilation-goto-locus):
16197         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
16198         Insert missing nil at end of `setq' forms.
16200         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
16201         erroneous trailing variable name from a setq, thus allowing a compilation
16202         properly to track functions not defined at runtime.
16204 2015-11-23  John Wiegley  <johnw@newartisans.com>
16206         Add a note about a questionable use of bool in xdisp.c
16208 2015-11-23  Alan Mackenzie  <acm@muc.de>
16210         Issue a warning from the byte compiler on a malformed `setq' form.
16212         Partly fixes bug#20241.
16213         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
16214         `setq' form with an odd number of arguments is compiled.
16216 2015-11-23  Alan Mackenzie  <acm@muc.de>
16218         Don't let cconv_convert insert a nil argument into a `setq' form.
16220         Fixes bug#21983.
16221         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
16222         argument into a `setq' when there're an odd number of args.  This enables the
16223         byte compiler to issue a message in this case.
16225 2015-11-23  Alan Mackenzie  <acm@muc.de>
16227         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
16229         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
16230         (syms_of_eval): Add a DEFSYM for Qsetq.
16232 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
16234         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
16236         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
16238 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16240         Add EUDC BBDB 3 entry in NEWS
16242         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
16244 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16246         Improve EUDC to BBDB 3 export
16248         * eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
16249         entry to single item.  Add company conversion.
16250         * eudc-export.el (eudc-bbdbify-company): New function.
16251         (bbdb-parse-phone): Declare function.
16252         (eudc-bbdbify-phone): Add BBDB 3 support.
16253         (Bug#21971)
16255 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16257         Add BBDB 3 support for EUDC export
16259         * eudc.el: Add bbdb-version defvar.
16260         (eudc--using-bbdb-3-or-newer-p): New function.
16261         * eudc-export.el (eudc-create-bbdb-record): Add support for
16262         bbdb-create-internal argument list changes introduced in BBDB 3.
16263         * eudcb-bbdb.el: Remove bbdb-version defvar.
16264         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
16265         (Bug#21971)
16267 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
16269         Allow loading modules by 'load-file'
16271         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
16272         2nd arg, to avoid the "binding stack not balanced" error.
16273         (syms_of_lread) <module-file-suffix>: New Lisp variable.
16275         * lisp/files.el (module-file-suffix): Declare.
16276         (load-file): Remove 'module-file-suffix' from
16277         'completion-ignored-extensions', to allow completion on modules.
16279         * etc/NEWS: Mention 'module-file-suffix'.
16281 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
16283         Fix unoptimized builds
16285         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
16286         builds.
16288 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
16290         Work around the asynchronous-empty-diff problem
16292         * lisp/vc/vc-rcs.el (vc-rcs-diff):
16293         * lisp/vc/vc-mtn.el (vc-mtn-diff):
16294         * lisp/vc/vc-hg.el (vc-hg-diff):
16295         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
16296         do a synchronous process call (bug#21969).
16298 2015-11-21  Karl Fogel  <kfogel@red-bean.com>
16300         Finish excising electric indent from `open-line'
16302         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
16304         * test/automated/simple-test.el (open-line-indent, open-line-hook):
16305           Adjust accordingly.
16307         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
16308         (git commit c59353896) started.  It turns out that having INTERACTIVE
16309         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
16310         still had the electric indent behavior, as `post-self-insert-hook'
16311         normally contains `electric-indent-post-self-insert-function' ever
16312         since `electric-indent-mode' has been on by default.  Tracing the code
16313         change in `open-line' is mildly twisty, because Artur Malabarba's
16314         earliest two commits of 24 Oct 2015 first removed the `interactive'
16315         form entirely (git commit 6939896e2) and then restored it with the new
16316         extra "p" already added (git commit bd4f04f86), such that there is no
16317         single-commit diff in which one sees the second "p" appear.  Thus this
16318         change is effectively a reversion of parts of each of those commits.
16320         This could close bug#21884, at least until further discussion.
16322 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
16324         Adhere closer to the "implicit tag name" definition
16326         * lisp/progmodes/etags.el (etags-tags-completion-table):
16327         Adhere closer to the "implicit tag name" definition.  Simplify
16328         the regexp.  Search for the explicit tag name first, and when
16329         not found, search locally for the implicit one.  (Bug#21934)
16331 2015-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
16333         Unrevert most of regexp reentrancy abort patch
16335         The problem was in:
16336           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
16337         which is hence not unreverted.
16338         The rest is:
16339         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
16340         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
16341         All callers in regex.c changed back to the _FAST versions.
16343         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
16344         propertization in backward-sexp.
16346 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
16348         Revert regexp reentrancy abort patch
16350         Although the patch does fix Bug#21688 and prevents a core dump,
16351         it also makes the message-mode-propertize test fail; see:
16352         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
16353         Perhaps someone else can come up with a better fix some day.
16354         * src/syntax.c (update_syntax_table_forward):
16355         Propertize even when truncated.
16356         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
16357         (UPDATE_SYNTAX_TABLE_FAST): Remove.
16358         All callers changed back to the non-_FAST versions.
16360 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
16362         Add a few safety checks when ENABLE_CHECKING
16364         This was motivated by the recent addition of module code,
16365         which added some ENABLE_CHECKING-enabled checks that are
16366         useful elsewhere too.
16367         * src/alloc.c (compact_font_cache_entry):
16368         * src/fns.c (sweep_weak_table):
16369         * src/lread.c (oblookup):
16370         Use gc_asize rather than doing it by hand.
16371         * src/emacs-module.c (module_make_global_ref)
16372         (module_free_global_ref, module_vec_size):
16373         Omit assertions that lisp.h now checks.
16374         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
16375         check that the result is nonnegative.  Use eassume, as this
16376         info can help a bit when optimizing production code.
16377         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
16378         to be consistent with the USE_LSB_TAG case.
16379         (gc_asize): New function, when ASIZE is needed in the gc.
16380         (gc_aset): Use it.
16381         (HASH_TABLE_P): Move definition up, so that it can be used ...
16382         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
16384 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
16386         Simplify recording of main thread's ID on MS-Windows
16388         * src/w32term.c (w32_initialize):
16389         * src/w32console.c (initialize_w32_display):
16390         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
16391         ID independently for each type of session (GUI, TTY, batch).
16392         * src/w32term.c (w32_init_main_thread): New function, records the
16393         main thread's thread ID.
16394         * src/w32term.h: Add prototype for w32_init_main_thread.
16395         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
16397         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
16398         main_thread, for consistency with other threading libraries.  All
16399         users changed.  Include w32term.h.
16400         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
16401         make sure the main thread is alive, as we hold a handle on it
16402         opened by w32_init_main_thread.
16403         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
16404         w32_init_main_thread, instead of calling the requisite APIs once
16405         more.
16407 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
16409         Call 'window-size-change-functions' for mini-windows
16411         * src/window.c (grow_mini_window, shrink_mini_window): Set the
16412         frame's 'window_sizes_changed' flag.
16413         * src/xdisp.c (redisplay_internal): Call the hooks on
16414         'window-size-change-functions' if the call to 'echo_area_display'
16415         sets the frame's 'window_sizes_changed' flag.
16416         (syms_of_xdisp) <window-size-change-functions>:
16417         Update doc string to indicate the mini-window resizes trigger a
16418         call to the hooks, and don't promise that will happen "before
16419         redisplay".  (Bug#19576, Bug#21333)
16421         * doc/lispref/windows.texi (Window Hooks): Update the description
16422         of 'window-size-change-functions'.
16424 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
16426         Improve documentation of dynamic modules
16428         * src/fns.c (Frequire): Doc fix to include the dynamic module
16429         support.
16430         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
16431         dynamic module support.
16432         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
16433         wrt the MUST-SUFFIX argument.
16435         * etc/NEWS: Expand documentation of dynamically loaded modules.
16437 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
16439         Initial documentation for dynamic modules
16441         * etc/NEWS: Mention the new support for dynamically loaded modules.
16443 2015-11-20  Dmitry Gutov  <dgutov@yandex.ru>
16445         Add xref--etags-backend to xref-backing-functions using add-hook
16447         * lisp/progmodes/xref.el (xref-backend-functions): Move the
16448         default value into a separate `add-hook' call (bug#21964).
16450         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
16451         Don't declare the xref-backend-functions variable.
16452         It doesn't make any difference.
16454 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16456         Fix double-decrement bug when freeing global refs
16458         * src/emacs-module.c (module_free_global_ref): Add a FIXME
16459         comment about error reporting.  Fix a recently-introduced typo
16460         that double-decremented the refcount.
16462 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16464         Declare emacs_module_init in the module API
16466         * src/emacs-module.h (emacs_module_init): New decl.
16467         Without it, GCC might complain about a module that defines
16468         emacs_module_init without using it.  This also checks the
16469         API better.
16471 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16473         Fix module test to use ptrdiff_t nargs too
16475         * modules/mod-test/mod-test.c (Fmod_test_return_t)
16476         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
16477         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
16478         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
16479         (Fmod_test_userptr_get, Fmod_test_vector_fill)
16480         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
16481         (finalizer): Remove; no longer used.
16483 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16485         Fix reindent-introduced typo in module code
16487         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
16488         introduced while reindenting the code earlier, and add a
16489         comment explaining the unusual use of do-while here.
16491 2015-11-20  Anders Lindgren  <andlind@gmail.com>
16493         Fixed bug#19576: `write-file' saves wrong buffer.
16495         If a function on the hook `window-size-change-functions' doesn't
16496         restore the current buffer, functions that save and restore the
16497         current window configuration (like `y-or-no-p') could silently
16498         change the current buffer.  When `write-file' asked the user
16499         confirmation to overwrite a file, `y-or-no-p' changed the current
16500         buffer, and the wrong buffer was saved to the file.
16502         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
16503         using the `norecord' parameter.
16504         (follow-window-size-change): Restore current buffer. Call
16505         `select-frame' using the `norecord' parameter. Cleanup.
16507 2015-11-20  John Wiegley  <johnw@newartisans.com>
16509         Correct a documentation error in frames.texi
16511 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
16513         * lisp/cedet/mode-local.el: Delete obsolete comment
16515 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16517         Module function arg counts are ptrdiff_t, not int
16519         * src/emacs-module.c (struct module_fun_env)
16520         (module_make_function, module_funcall, Fmodule_call):
16521         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
16522         Use ptrdiff_t, not int, for arg counts.
16523         * src/emacs-module.c (module_make_function): Don’t bother
16524         checking arity against MOST_POSITIVE_FIXNUM, as that’s
16525         unnecessary here.  Make the checking clearer by negating it.
16526         (module_make_function, Fmodule_call): No need to use xzalloc
16527         since the storage doesn’t need to be cleared.
16528         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
16529         for it, and many implementations are buggy with large VLAs anyway.
16530         Use SAFE_ALLOCA_LISP instead.
16531         (module_vec_set): Don’t crash if i < 0.
16532         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
16533         (module_vec_set, module_vec_get): Do fixnum checks only when
16534         i is out of array bounds, for efficiency in the usual case.
16535         (Fmodule_load): Simplify fixnum range check.
16536         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
16537         integer overflow in array allocation size.
16539 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
16541         Minor improvements in module test
16543         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
16544         about missing prototype of malloc.
16545         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
16546         compiler warnings.
16548 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
16550         Improve MS-Windows implementation in dynlib.c
16552         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
16553         No need to include windows.h, as w32.h already does that.
16554         <dynlib_last_err>: New static variable.
16555         (dynlib_reset_last_error): New function.
16556         (dynlib_open): Convert forward slashes to backslashes.  Convert
16557         file names from UTF-8 to either UTF-16 or the current ANSI
16558         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
16559         argument is NULL, return a handle to the main module, like
16560         'dlopen' does.  Record the error, if any, for use by dynlib_error.
16561         (dynlib_sym): Check the handle for validity. Record the error, if
16562         any, for use by dynlib_error.
16563         (dynlib_error): Call w32_strerror to produce the error string, and
16564         zero out the last error code, like dlerror does.
16565         (dynlib_close): Check the handle for validity.  Record the error,
16566         if any, for use by dynlib_error.  Don't call FreeLibrary with a
16567         handle for the main module.
16568         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
16570 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16572         Include-file tweaks for modules
16574         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
16575         * src/dynlib.h: Do not include config.h.
16576         It’s every .c file’s responsibility to include config.h first.
16577         * src/emacs-module.c: Include emacs-module.h immediately after
16578         config.h, to test that emacs-module.h doesn’t depend on
16579         include files other than config.h.
16581 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16583         Simplify push_handler and profile its malloc
16585         * src/lisp.h (PUSH_HANDLER): Remove.
16586         All callers changed to use push_handler directly.
16587         * src/eval.c (internal_condition_case)
16588         (internal_condition_case_1, internal_condition_case_2)
16589         (internal_condition_case_n):
16590         Use same pattern as for other invokers of push_handler.
16591         (push_handler, push_handler_nosignal): Use call-by-value
16592         instead of call-by-reference.  All uses changed.
16593         (push_handler): Simplify by rewriting in terms of
16594         push_handler_nosignal.
16595         (push_handler_nosignal): Profile any newly allocated memory.
16597 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16599         * src/emacs-module.h: Include stddef.h, not stdlib.h.
16601 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
16603         Discover repository version in linked worktrees (bug#21930)
16605         * lisp/version.el (emacs-repository--version-git-1): Do not assume
16606         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
16607         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
16608         is nil too.
16610 2015-11-19  Juri Linkov  <juri@linkov.net>
16612         * lisp/replace.el (occur-regexp-descr): New function.
16613         (occur-1, occur-engine): Use it.
16615         * lisp/isearch.el (isearch-occur): Propertize regexp with
16616         isearch-string and isearch-regexp-function-descr for
16617         occur-regexp-descr to display the correct description
16618         message in the header (bug#21176, bug#21180).
16620 2015-11-19  Karl Fogel  <kfogel@red-bean.com>
16622         Revert `open-line' electric-indent sensitivity
16624         * lisp/simple.el (open-line): Remove electric indent code.
16625           (electric-indent-just-newline): Don't declare.
16627         * test/automated/simple-test.el (open-line-indent): Adjust test.
16629         This partly reverts Artur Malabarba's change that added electric
16630         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
16631         commit bd4f04f86), and adjusts a new test he added right afterwards
16632         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
16633         However, the new INTERACTIVE argument to `open-line', which he also
16634         added in the first commit, is not reverted here.
16636         See the thread "Questioning the new behavior of `open-line'." on the
16637         Emacs Devel mailing list, and in particular this message:
16639           From: Artur Malabarba
16640           Subject: Re: Questioning the new behavior of `open-line'.
16641           To: Karl Fogel
16642           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
16643           Date: Wed, 18 Nov 2015 21:03:58 +0000
16644           Message-ID: \
16645             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
16647           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
16649 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16651         Omit unnecessary clear in Fmodule_load
16653         * src/emacs-module.c (Fmodule_load):
16654         Simplify and avoid unnecessary initialization of priv member to 0.
16656         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
16658 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16660         Prefer signed integer types in module code
16662         Generally speaking, at the C level the Emacs source code prefers
16663         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
16664         partly to avoid the usual signedness confusion when comparing values.
16665         Change the module API to follow this convention.
16666         Use ‘int’ for small values that can’t exceed INT_MAX.
16667         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
16668         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
16669         (Fmod_test_vector_eq):
16670         * src/emacs-module.c (struct emacs_value_frame)
16671         (module_make_global_ref, module_free_global_ref)
16672         (module_copy_string_contents, module_make_string)
16673         (module_vec_set, module_vec_get, module_vec_size):
16674         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
16675         * src/lread.c (suffix_p):
16676         Prefer signed to unsigned integer types.
16678 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16680         Omit ‘const’ on locals
16682         Remove ‘const’ qualifier from locals that were newly added.
16683         We don’t normally bother declaring locals with ‘const’ even
16684         though they are not modified, for the same reason we don’t
16685         bother declaring them with ‘register’ even though their
16686         addresses are not taken; the advantage in compile-time
16687         checking isn’t worth the loss of readability.
16688         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
16689         (Fmod_test_vector_fill, Fmod_test_vector_eq):
16690         * src/emacs-module.c (MODULE_SETJMP_1)
16691         (module_make_global_ref, module_free_global_ref)
16692         (module_non_local_exit_get, module_make_function)
16693         (module_extract_integer, module_extract_float)
16694         (module_get_user_ptr, module_set_user_ptr)
16695         (module_get_user_finalizer, module_set_user_finalizer)
16696         (module_vec_get, Fmodule_call)
16697         (module_non_local_exit_signal_1)
16698         (module_non_local_exit_throw_1, lisp_to_value)
16699         (finalize_storage, allocate_emacs_value, mark_modules)
16700         (module_handle_signal, module_handle_throw)
16701         (module_format_fun_env):
16702         * src/eval.c (push_handler, push_handler_nosignal)
16703         (init_handler):
16704         * src/lread.c (suffix_p):
16705         Omit unnecessary ‘const’.
16707 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16709         Prefer intmax_t to int64_t in module code
16711         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
16712         * src/emacs-module.c (module_extract_integer)
16713         (module_make_integer):
16714         * src/emacs-module.h (struct emacs_env_25):
16715         Prefer intmax_t to int64_t.  This doesn’t change the generated
16716         code on any of the machines Emacs currently ports to, but it’s
16717         at least in theory more future-proof as C99 doesn’t guarantee
16718         that int64_t exists.
16720 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16722         Rename module.c to emacs-module.c, etc.
16724         * src/emacs-module.c: Rename from src/module.c.
16725         * src/emacs-module.h: Rename from src/module.h.
16726         All uses changed.
16728 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16730         Fix minor module problems found by static checking
16732         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
16733         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
16734         * src/module.c (Fmodule_load): Fix pointer signedness bug.
16735         (Fmodule_call): Tell GCC that the default case is unreachable.
16737 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16739         Style fixes for indenting etc. in module code
16741         This is mostly indenting and spacing changes.  Also, remove
16742         some unnecessary static decls instead of bothering to reindent them.
16743         * src/module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
16744         as most other Emacs files do for this sort of thing.
16746 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
16748         Minor improvements in modules testing Makefile
16750         * modules/mod-test/Makefile (EMACS, SO): New variables.
16751         (CFLAGS): When SO = dll, don't use -fPIC.
16752         (check): New target, runs the test.
16754 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
16756         * .gitignore: Add "*.dll".
16758 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16760         Migrate modules/.gitignore into .gitignore
16762         * .gitignore: Add former contents of modules/.gitignore.
16763         * modules/.gitignore: Remove.
16765 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16767         Add copyright notices to module code
16769         Put them in the usual format for GNU Emacs copyright notices.
16771 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16773         Rename emacs_module.h to module.h
16775         * src/module.h: Rename from src/emacs_module.h.
16776         All uses changed.
16778 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
16780         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
16782         * src/lread.c (Fload): Remove unused variable `size'
16784 2015-11-19  Alan Mackenzie  <acm@muc.de>
16786         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
16788 2015-11-18  Dmitry Gutov  <dgutov@yandex.ru>
16790         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
16792         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
16793         vc-parent-buffer over log-view-mode fallback (bug#21955).
16795 2015-11-18  Alan Mackenzie  <acm@muc.de>
16797         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
16799 2015-11-18  Ken Brown  <kbrown@cornell.edu>
16801         * configure.ac (LIBMODULES): Don’t define on Cygwin
16803 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
16805         Fix MS-Windows build --with-modules
16807         * src/module.c: Reformat copyright commentary.
16808         (module_vec_get): Use explicit cast to size_t to avoid compiler
16809         warning in 32-bit builds.
16810         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
16811         Compare thread IDs directly, as GetThreadId is not available
16812         before Windows Vista.
16813         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
16814         without using APIs and constants not available on XP and older
16815         systems.  Obtain and store the thread ID as well.
16817 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16818             Philipp Stephani  <phst@google.com>
16820         Add dynamic module test and helper script
16822         Add 'modhelp.py' script (python2) to automate module testing and
16823         module generation.
16825         To build and test all modules in the modules/ dir
16826           $ ./modhelp.py test
16828         To generate a module from template code (good starting point)
16829           $ ./modhelp init mynewtestmodule
16831         See the script -h option for more documentation.
16833         * modules/modhelp.py: New module helper script.
16834         * modules/mod-test/Makefile: New file. Makefile for the test module.
16835         * modules/mod-test/mod-test.c: New file. Test module source file.
16836         * modules/mod-test/test.el: New file. ert test suite for the test module.
16837         * modules/.gitignore: New file. Local .gitignore file.
16839 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16841         Make 'Fload' look for modules
16843         'Fload' can now load dynamic modules. This also makes 'require' work.
16845         * src/lread.c:
16846           (suffix_p): New function.
16847           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
16848           with a module suffix.
16849           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
16851 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16852             Philipp Stephani  <phst@google.com>
16854         Add dynamic module module support
16856         * configure.ac: Add '--with-modules' option.  Conditionally add
16857           dynlib.o and module.o to the list of objects.  Add any system
16858           specific flags to the linker flags to support dynamic libraries.
16859         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
16860           attributes.
16861         * src/Makefile.in: Conditionally add module objects and linker flags.
16862         * src/alloc.c (garbage_collect_1): protect module local values from
16863           GC.
16864         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
16865         * src/emacs_module.h: New header file included by modules.  Public
16866           module API.
16867         * src/module.c: New module implementation file.
16869 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16871         Add new User Pointer (User_Ptr) type
16873         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
16874         (XUSER_PTR): New User_Ptr accessor.
16875         * src/alloc.c (make_user_ptr): New function.
16876         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
16877         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
16878         (Fuser-ptrp): New user pointer type predicate function.
16879         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
16880         subr.
16881         * src/print.c (print_object): Add printer for User_Ptr type.
16883 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16884             Philipp Stephani  <phst@google.com>
16886         Add portable layer for dynamic loading
16888         * src/dynlib.h: New file.
16889         * src/dynlib.c: New file.
16891 2015-11-18  Philipp Stephani  <phst@google.com>
16893         Add catch-all & no-signal version of PUSH_HANDLER
16895         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
16896         a new "catch-all" handler type.
16898         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
16899           functions.
16900         * src/fns.c (hash_remove_from_table): Expose function public.
16901         * src/lisp.h: New handler type, define macro to push_handler call.
16903 2015-11-18  Ken Brown  <kbrown@cornell.edu>
16905         Silence byte-compiler warning
16907         * lisp/server.el (server-process-filter): Silence byte-compiler
16908         warning.
16910 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
16912         Quote symbols in docstrings using `'
16914         Be more systematic about quoting symbols `like-this' rather than
16915         `like-this or 'like-this' in docstrings.  This follows up Artur
16916         Malabarba's email in:
16917         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
16919 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
16921         Fix savegames in dunnet
16923         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
16924           of separate implementation.
16926 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
16928         * lisp/emacs-lisp/package.el (package--with-response-buffer):
16930         Ensure we're at the start of the buffer before searching for
16931         the end of headers.
16933 2015-11-17  Xue Fuqiao  <xfq.free@gmail.com>
16935         * admin/release-process: Improve wording.
16937 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16939         Fix docstring quoting problems with ‘ '’
16941         Problem reported by Artur Malabarba in:
16942         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
16943         Most of these fixes are to documentation; many involve fixing
16944         longstanding quoting glitches that are independent of the
16945         recent substitute-command-keys changes.  The changes to code are:
16946         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
16947         (describe-mode-local-overload):
16948         Substitute docstrings before displaying them.
16949         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
16950         Quote the generated docstring for later substitution.
16952 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
16954         Improve configure --help text for wide ints
16956         * configure.ac (wide-int): Clarify user-level advantages and
16957         disadvantages.
16959 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
16961         Improve doc string
16963         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
16965 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16967         eval_sub followed dangling pointer when debugging
16969         Problem reported by Pip Cet (Bug#21245).
16970         This bug could occur in eval_sub if the C compiler reused
16971         storage associated with the ‘argvals’ local after ‘argvals’
16972         went out of scope, and if the Elisp debugger stopped on Elisp
16973         function exit and accessed ‘argvals’.  It could also occur if
16974         a variadic function was called with so many arguments (over
16975         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
16976         SAFE_FREE freed the arguments, then the memory manager used
16977         the storage for other purposes, then the debugger accessed the
16978         arguments.
16979         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
16980         function body.  Simplify local decls.
16981         When allocating args via SAFE_ALLOCA, call
16982         debugger before invoking SAFE_FREE, as the debugger needs
16983         access to the args.
16984         (eval_sub, apply_lambda): Rework to avoid need for
16985         set_backtrace_debug_on_exit hack.  This is cleaner,
16986         and should work better with buggy custom debuggers.
16988 2015-11-16  Daiki Ueno  <ueno@gnu.org>
16990         * lisp/image-mode.el: Support encrypted file
16992         (image-toggle-display-image): Read content from the buffer instead
16993         of the file, if the buffer holds a decrypted data.  (Bug#21870)
16995 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
16997         ELF unexec: align section header
16999         This ports the recent unexelf.c changes to Fedora x86-64
17000         when configured with GCC’s -fsanitize=undefined option.
17001         * src/unexelf.c (unexec): Align new_data2_size to a multiple
17002         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
17003         pointer aligned appropriately for its type.
17005 2015-11-16  Andreas Schwab  <schwab@linux-m68k.org>
17007         Do more checks on bytecode objects (Bug#21929)
17009         * src/eval.c (funcall_lambda): Check size of compiled function
17010         object.
17011         (Ffetch_bytecode): Likewise.
17013 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
17015         pcase.el: Fix edebugging of backquoted cons patterns
17017         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
17018         cons patterns. (Bug#21920)
17020 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
17022         Improve fix for regex reentrancy abort
17024         Suggested by Stefan Monnier (Bug#21688).
17025         * src/syntax.c (update_syntax_table_forward):
17026         Remove recently-added PROPERTIZE arg, and assume it is true.
17027         All callers changed.
17028         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
17029         Invoke update_syntax_table directly.
17031 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
17033         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
17035         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
17037         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
17039 2015-11-15  Vasily Korytov  <vasily.korytov@yahoo.com>
17041         Recognize .rbw and .pyw files (bug#18753)
17043         * lisp/progmodes/python.el (auto-mode-alist):
17044         Recognize .pyw files.
17046         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
17047         Recognize .rbw files.
17049 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
17051         Fix ruby-mode auto-mode-alist entry
17053         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
17054         around the extensions (bug#21257).
17056 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
17058         Fix etags completion near eob
17060         * lisp/progmodes/etags.el (tags-completion-at-point-function):
17061         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
17063 2015-11-15  Alan Mackenzie  <acm@muc.de>
17065         De-pessimize detection of C++ member initialization lists.
17067         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
17068         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
17069         is only called when a construct "looks right" rather than continually.
17070         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
17072 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
17074         Improve a few doc strings, comments
17076         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
17077         * lisp/cedet/ede/locate.el (ede-locate-base):
17078         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
17079         * src/fns.c (Fdelq): Improve doc string.
17081         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
17083 2015-11-15  Anders Lindgren  <andlind@gmail.com>
17085         Enhance NSTRACE (trace output for NextStep).
17087         Trace can be disabled for groups of functions. By default, event
17088         functions and functions that generate lots of output are disabled.
17090         Trace output of Objective-C functions now use the "[ClassName
17091         parameter:]" form.
17093         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
17094         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
17095         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
17096         controlling in which function groups trace should be active.
17097         (NSTRACE_WHEN): Support for silencing a function, this also
17098         silencing all called functions.
17099         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
17100         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
17101         print the full screen state in NSTRACE functions.
17103         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
17104         can be accessed from multiple threads.
17105         (nstrace_enabled_global): New variable, when FALSE, trace is
17106         silenced.
17107         (nstrace_restore_global_trace_state): New function, used to
17108         restore `nstrace_enabled_global' at end of block.
17109         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
17110         ([EmacsWindow setFrame:display:animation:])
17111         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
17112         and call corresponding super function.
17113         (Many functions): Add or enhance trace output.
17115         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
17117         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
17119         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
17120         and call corresponding super function.
17122 2015-11-15  Anders Lindgren  <andlind@gmail.com>
17124         Fixed a toolbar related issue on OS X.
17126         Earlier, when toggling the tool-bar in a maximized frame, the
17127         frame size didn't match the number of text lines, leaving an
17128         unused area at the bottom of the frame.
17130         * nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
17131         fullscreen modes when tool bar is disabled.
17133 2015-11-15  Anders Lindgren  <andlind@gmail.com>
17135         Fixed OS X 10.6.8 build issue (bug#21862).
17137         * src/nsterm.h (EmacsView): Add missing declarations.
17138         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
17139         the standard method but without the notification parameter.
17140         Intended to be used for direct calls.
17141         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
17142         version of `windowDidBecomeKey'. Made the notification method call
17143         the non-notification method instead of the vice versa.
17144         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
17145         needed.
17147 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
17149         * lisp/faces.el (faces--attribute-at-point): Fix an issue
17151         Previous code would signal an error when the face at point was
17152         a manually built list of attributes such as '(:foregroud "white").
17154         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
17156 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
17158         Fix regex abort when it tries to reenter itself
17160         Problem reported by Ken Raeburn.
17161         Solution suggested by Stefan Monnier (Bug#21688).
17162         * src/regex.c (re_match_2_internal):
17163         Use new _FAST functions to avoid regex code reentering itself.
17164         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
17165         All callers changed.
17166         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
17167         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
17169 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
17171         Improve Ruby 1.9-style keyword keys highlighting
17173         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
17174         Handle required keyword arguments (bug#21367).
17175         And highlight the colon together with the name.
17177 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
17179         Unify the absolutely equal xref-backend-references implementations
17181         * lisp/progmodes/elisp-mode.el (xref-backend-references):
17182         Remove.
17184         * lisp/progmodes/etags.el (xref-backend-references):
17185         Remove.
17187         * lisp/progmodes/xref.el (xref-backend-references):
17188         Define the default implementation.
17190 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
17192         Update project-find-regexp for the new xref API
17194         * lisp/progmodes/project.el (project--read-regexp):
17195         Update to use the new xref API methods.
17197         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
17199 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
17201         Fix replacing a match with a shorter string
17203         In effect, partially reverting fe973fc.
17205         * lisp/progmodes/xref.el (xref-query-replace): Store the end
17206         of each match as a marker again, instead of length.
17207         (xref--query-replace-1): Update accordingly.
17209 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
17211         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
17213         Signal user-errors instead.
17215 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
17217         Document 'describe-symbol'
17219         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
17220         (Name Help): Document "C-h o" and describe-symbol.
17222         * lisp/help-fns.el (describe-symbol): Doc fix.
17224 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
17226         Change test name to avoid spellcheck issue.
17228 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
17230         Avoid signaling an error in 'describe-symbol'
17232         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
17233         exists as a function/variable/face/etc., but is undocumented.
17235         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
17236         test.
17238 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
17240         * INSTALL (--with-cairo): Document this new configure option.
17242 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
17244         Document that GNU Make >= 3.81 is required to build Emacs
17246         * doc/lispref/internals.texi (Building Emacs): Document that GNU
17247         Make 3.81 or later is now required.
17249 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
17251         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
17253 2015-11-13  l3thal  <kwhite@gnu.org>
17255         Merge branch 'erc-async-reconnect' into emacs-25
17257         Reconnect asynchronously.
17259 2015-11-11  Alan Mackenzie  <acm@muc.de>
17261         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
17263         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
17264         Windows" and new @defun selected-window-group.
17265         (Window Start and End): Describe new &optional parameter GROUP and
17266         ...-group-function for window-start, window-end, set-window-start, and
17267         pos-visible-in-window-p.
17268         (Textual Scrolling) Describe the same for recenter.
17269         doc/lispref/positions.texi (Screen Lines): Describe the same for
17270         move-to-window-line.
17272         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
17273         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
17274         new optional parameter "group".  At the beginning of each, check whether the
17275         corresponding ...-group-function is set to a function, and if so execute this
17276         function in place of the normal processing.
17277         (syms_of_window): Define symbols for the six new variables below.
17278         (window-start-group-function, window-end-group-function)
17279         (set-window-start-group-function, recenter-group-function)
17280         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
17281         New permanent local buffer local variables.
17282         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
17283         Fpos_visible_in_window_p.
17285         lisp/window.el (selected-window-group-function): New permanent local buffer
17286         local variable.
17287         (selected-window-group): New function.
17289         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
17290         enable, kill them at mode disable.  Add/remove follow-after-change to/from
17291         after-change-functions.
17292         (follow-start-end-invalid): New variable.
17293         (follow-redisplay): Manipulate follow-start-end-invalid.
17294         (follow-after-change, follow-window-start, follow-window-end)
17295         (follow-set-window-start, follow-pos-visible-in-window-p)
17296         (follow-move-to-window-line, follow-sit-for): New functions.
17298         lisp/isearch.el (isearch-call-message): New macro.
17299         (isearch-update, with-isearch-suspended, isearch-del-char)
17300         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
17301         (with-isearch-suspended): Rearrange code such that isearch-call-message is
17302         invoked before point is moved.
17303         (isearch-message): Add comment about where point must be at function call.
17304         (isearch-search): Remove call to isearch-message.
17305         (isearch-lazy-highlight-window-group): New variable.
17306         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
17307         the battery of tests to ...
17308         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
17309         Note: (sit-for 0) is still called.
17310         (isearch-lazy-highlight-update): Check membership of
17311         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
17312         property.
17313         (isearch-update, isearch-done, isearch-string-out-of-window)
17314         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
17315         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
17316         (isearch-lazy-highlight-update): Call the six amended primitives (see
17317         src/window.c above) with the new `group' argument set to t, to cooperate
17318         with Follow Mode.
17320 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
17322         * shr.el (shr-descend): Allow using lambdas in external functions.
17324 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
17326         * admin/gitmerge.el: Tweaks that seemed necessary
17328         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
17329         (gitmerge-maybe-resume): Provide explicit empty commit message.
17331 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
17333         Use a different port for TLS erc
17335         * lisp/erc/erc.el (erc-default-port-tls): New variable
17336         (bug#19497).
17337         * lisp/erc/erc.el (erc-tls): Use it.
17339 2015-12-25  Alain Schneble  <a.s@realize.ch>
17341         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
17343         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
17344         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
17345         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
17346         information in URL-struct.
17347         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
17348         path and query into nil path and query, respectively.
17349         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
17350         empty path into an absolute ("/") path.
17351         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
17352         fragment-only URIs. Do not just return them unchanged.
17353         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
17354         reference URI should not drop the last segment.
17356 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17358         Let url use default file modes when copying files
17360         * lisp/url/url-handlers.el (url-copy-file): Use default file
17361         modes when copying files (bug#11400).
17363 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
17365         Doc fix for url-http
17367         * lisp/url/url-http.el (url-http): Document better return values
17368           (bug#13187) (tiny change)
17370 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17372         * eww.el (eww-display-html): Support <button> tags (bug#20485).
17374 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17376         Made ffap-url-p a defun instead of a defsubst
17378         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
17379         since there doesn't seem to be much of a reason for it to be a
17380         defsubst (bug#18203).
17382 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17384         Add a command to view files in the browser to dired
17386         * lisp/dired.el (dired-mode-map): Add the `W' command
17387         (bug#18810).
17389 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17391         Allow http://user:pass@foo/ URLs again
17393         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
17394         user/passwords in URLs (bug#19046).
17396 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17398         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
17400 2015-12-25  Samer Masterson  <samer@samertm.com>
17402         Autoload url-insert-buffer-contents
17404         * lisp/url/url-handlers.el: Add autoload cookie so that
17405         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
17407 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17409         Allow toggling colors in eww
17411         * doc/misc/eww.texi (Basics): Mention "C".
17413         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
17415         * lisp/net/shr.el (shr-use-colors): New variable.
17416         (shr-colorize-region): Use it.
17418 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17420         Follow meta refresh tags in eww
17422         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
17424 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17426         More eww file name coding fixes
17428         * eww.el (eww-decode-url-file-name): Use the base coding
17429         system to check for encodability.
17431 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17433         Always save eww history
17435         * eww.el (eww-setup-buffer): Always save history, even when
17436         called from outside the eww buffer (bug#19638).
17438 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17440         Default web pages to right-to-left
17442         * eww.el (eww-mode): Most web pages are left-to-right, so make
17443         that the default (bug#19801).
17445         * shr.el (shr-tag-html): Respect "dir" attributes
17446         (left-to-right, right-to-left).
17448 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17450         Make toggling checkboxes work again
17452         * eww.el (eww-update-field): Make toggling checkboxes work
17453         again (bug#21881).
17455 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17457         Don't store cookies with empty names
17459         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
17460         cookies with empty names (bug#21936).
17462 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17464         * shr.el (shr-descend): Stop rendering before we run out of
17465         specpdl room (bug#22117).
17467 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17469         Use cl-reduce, not reduce.
17471 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
17473         Allow several <tbody> tags in shr
17475         * shr.el (shr-table-body): New function to find the real body
17476         of a table.
17477         (shr-tag-table): Use it to render several <tbody> tags in a
17478         table (bug#22170).
17480 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
17482         Make prettier unique file names in eww
17484         (eww-make-unique-file-name): Make unique file names by making
17485         files like foo(2).jpg instead of foo(1)(2).jpg.
17487 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
17489         Decode hex-encoded URLs before using them as file names
17491         * eww.el (eww-decode-url-file-name): New function.
17492         (eww-download-callback): Use it to decode file names before
17493         saving them.
17495 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>  (tiny change)
17497         * doc/misc/emacs-gnutls.texi (Help For Users): Document FreeBSD bundle.
17498         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
17500 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
17502         Allow overriding shr functions from eww
17504         * eww.el (eww-display-html): Allow overriding elements in
17505         `shr-external-rendering-functions'.
17507 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
17509         Ignore invalid SVG images
17511         * shr.el (shr-tag-svg): Ignore SVG images that have no width
17512         or height, because these can't be displayed by ImageMagick,
17513         anyway.
17515 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
17517         shr table rendering fix
17519         * shr.el (shr-tag-table): Allow rendering body-less tables
17520         that have headers.
17522 2015-12-22  Sam Steingold  <sds@gnu.org>
17524         clipboard should still work even if interprogram-* is disabled
17526         (clipboard-yank): When `interprogram-cut-function' is nil,
17527         bind it to `gui-selection-value' - the default value.
17528         (clipboard-kill-region, clipboard-kill-ring-save): When
17529         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
17530         the default value.
17532 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
17534         Fix bootstrap issue with dired-loaddefs
17536         * lisp/dired.el: Autoloads for secondary files loaded optionally.
17538 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17540         dired generate autoloads to non-versioned file.
17542         * lisp/dired.el: Remove autoloads.
17543         * lisp/Makefile.in: Add dired to autogenel.
17544         * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
17545         * test/lisp/dired-tests.el: Add new test.
17547 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17549         eieio generate autoloads to non-versioned file.
17551         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
17552         * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
17553           Remove autoloads.
17554         * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
17555           lisp/emacs-lisp/eieio-opt.el: Update file local.
17556         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
17558 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17560         htmlfontify generate autoload to non-versioned file.
17562         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
17563         * lisp/hfy-cmap.el: Update file local.
17564         * lisp/htmlfontify.el: Remove autoloads, add require.
17565         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
17567 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17569         ibuffer generate autoloads to non-versioned file.
17571         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
17572         * lisp/ibuf-ext.el: Update file local.
17573         * lisp/ibuffer.el: Remove autoloads and add a require.
17574         * test/lisp/ibuffer-tests.el: Test that autoload is working.
17576 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17578         rmail generate autoloads to non-versioned file.
17580         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
17581         * lisp/mail/rmail.el: Remove autoloads, add require.
17582         * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
17583           lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
17584           lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
17585           lisp/mail/undigest.el: Update file-local.
17586         * test/lisp/mail/rmail-tests.el:
17588 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17590         Add autoload-force target.
17592         * lisp/Makefile.in (autoload-force): New target.
17594 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17596         ps-print generate autoloads to non versioned file.
17598         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
17599         * lisp/ps-print.el: Remove autoloads.
17600         * lisp/ps-mule.el: Update file-local.
17601         * test/lisp/ps-print-tests.el: Test autoload functionality.
17603 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
17605         reftex generate autoloads to non versioned file.
17607         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
17608         * lisp/textmodes/reftex.el: Remove autoloads.
17609         * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
17610           lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
17611           lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
17612           lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
17613           lisp/textmodes/reftex-toc.el: Update autoload file-local.
17614         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
17615           function.
17617 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
17619         * lisp/calculator.el (calculator-define-key): Undo last change
17621         Make map argument mandatory instead (bug#22106).
17622         (calculator-add-operators): Pass the argument that's not optional any more.
17624 2015-12-03  Glenn Morris  <rgm@gnu.org>
17626         * Makefile.in: Avoid duplication.
17628         (have-tests): New rule.
17629         (check, check-maybe): Use it.
17631 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
17633         make check unconditional, check-maybe top-level.
17635          * Makefile.in: Add check-maybe target.
17636          * test/Makefile.in: Restore unconditional behavior to make check.
17638 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
17640         Tests now support out-of-source-build.
17642          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
17643            about current working directory.
17645 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
17647         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
17649 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
17651         Improve documentation and clean up.
17653          * test/Makefile.in: Improve documentation, use EMACS variable
17654            correctly, and clean up makefile rules.
17656 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
17658         Update file headers for name change.
17660          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
17662 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
17664         Test files renamed to new scheme.
17666          * (finalizer-tests.el): Now renamed alloc-tests.el
17667          * (zlib-tests.el): Now renamed decompress-tests.el.
17669 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
17671         Tests now depend on source files
17673          * test/Makefile.in: Include dependences from tests to source files.
17674          * test/make-test-deps.emacs-lisp: New file
17675          * .gitignore: Ignore generated make include file
17677 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
17679         * lisp/progmodes/which-func.el: Improve disabling the mode
17681         Use lexical-binding.
17682         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
17683         (which-func, which-func-format): Remove redundant :group arg.
17684         (which-func-try-to-enable): New function.
17685         (which-func-ff-hook, which-function-mode): Use it.
17686         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
17687         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
17689 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
17691         * lisp/calculator.el (calculator-define-key): Silence warning
17693         ...about unknown calculator-mode-map.
17695 2015-11-29  Eli Barzilay  <eli@barzilay.org>
17697         * lisp/calculator.el: more improvements and bugfixes.
17699         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
17700           effect anyway.)
17702         - Simplify `calculator-number-to-string' by throwing most of the work
17703           onto `number-to-string', leaving just some tweaks for decimal inputs.
17704           This leads to some minor changes, for example, pasting "1x1" in hex
17705           mode would warn that "x" is ignored and result in "11" (and it wasn't
17706           done in decimal mode), whereas now it just ignores everything from the
17707           "x" and on and result in a "1" just like in decimal input mode.  Also,
17708           overflows are left for `number-to-string' to deal with.
17710         - `calculator-paste' is very simple as a result.
17712         - Extend the simplified `calculator-paste': with a prefix argument it
17713           pastes a string as if the characters were entered.  This can be used
17714           to reduce expressions, but note that it's a simple literal operation,
17715           so precedence can be messed, a number can be paster while entering a
17716           number, spaces and newlines matter, etc.
17718         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
17719           operator.
17721         - Fix a bug in `calculator-put-value': avoid grouping in the display
17722           that is used to construct `calculator-curnum'.  This would trigger
17723           when pasting or getting a value from a register in some radix mode
17724           with a large enough value.  Another fix: make the output radix equal
17725           the input one, otherwise numbers could be converted twice.
17727 2015-11-29  Eli Barzilay  <eli@barzilay.org>
17729         * lisp/calculator.el: Re-do key bindings.
17731         Use a helper function that arranges a parent keymap that binds alternate
17732         case keys so if some letter key is unbound and it's un/shifted version
17733         is, it will get used.  This makes the global-map trickery unnecessary.
17735         Also switch to passing strings that name keys through `kbd'.
17737 2015-11-29  Eli Barzilay  <eli@barzilay.org>
17739         * lisp/calculator.el: improve radix modes
17741         Fix prompt for some input radix with decimal output (eg, "BD" instead of
17742         the incorrect "B="); also, some minor docstring tweaks for these.
17744 2015-11-29  Eli Barzilay  <eli@barzilay.org>
17746         * lisp/calculator.el: better reading of register names
17748         Use `register-read-with-preview' with a dynamically bound
17749         `register-alist' and a proper preview function to read register names.
17751 2015-11-29  Eli Barzilay  <eli@barzilay.org>
17753         * lisp/calculator.el: General improvements
17755         Use things like `when', `unless', and `push'.
17757         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
17758         non-electric mode.
17760 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
17762         Fix a problem with gfilenotify in filenotify-tests.el
17764         * test/lisp/filenotify-tests.el
17765         (file-notify--test-expected-events): Remove.
17766         (file-notify--test-cleanup): Do not set that variable.
17767         (file-notify--test-with-events): EVENTS can also be a list of lists.
17768         (file-notify-test02-events, file-notify-test04-file-validity):
17769         Adapt expected result.
17771 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
17773         * .gitignore: Adjust to changes in 'test' directory structure.
17775 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
17777         Fix test/manual/etags/Makefile
17779         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
17780         changes in 'test' directory structure.
17782 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
17784         Exclude resource dirs from search for tests.
17786         * test/Makefile.in: Test file locations are now found with find
17787           rather than using finds native functions.
17789 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
17791         Add test targets without directory names.
17793          * (test/Makefile.in): Extend test_template to add two targets for each
17794            file.
17796 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
17798         * lisp/emacs-lisp/package.el: Require url-handlers
17800 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
17802         Move elisp-mode-tests to new function names.
17804          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
17805          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
17807 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
17809         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
17811 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
17813         Merge branch 'feature/standard-test-location'
17815 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
17817         * lisp/emacs-lisp/eieio.el: Add some default implementations
17819         (standard-class): Mark it obsolete.
17820         (slot-missing): Give it a default implementation.
17821         (destructor): Simplify and mark it obsolete.
17822         (object-print): Give it a default implementation.
17823         (eieio-change-class): Rename from change-class.
17824         (change-class): Redefine as obsolete alias.
17826 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17828         Some final fixes in file notification before merging with master
17830         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
17831         (file-notify-callback): Improve check for `stopped' event.  Call
17832         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
17833         (file-notify-add-watch): In case FILE is not a directory, call the
17834         file monitor for the kqueue backend.  Otherwise, call the
17835         directory monitor for the upper directory.
17837         * src/inotify.c (inotifyevent_to_event): Extract file name from
17838         watch_object if the event doesn't provide it.
17839         (Finotify_add_watch): Add file name to watch_object.
17841         * test/automated/file-notify-tests.el (file-notify--test-timeout):
17842         Use different timeouts for different libraries.
17843         (file-notify--test-with-events): Suppress lock files.  Flush
17844         outstanding events before running the body.
17845         (file-notify-test02-events, file-notify-test04-file-validity): Do
17846         not skip cygwin tests.  Add additional test for file creation.
17847         Adapt expected result for different backends.
17848         (file-notify-test03-autorevert): Some of the tests don't work for
17849         w32notify.
17850         (file-notify-test06-many-events): Rename into both directions.
17852 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17854         Rework file notifications, kqueue has problems with directory monitors
17856         * lisp/filenotify.el (file-notify-add-watch): Call the native
17857         add-watch function on the file, not on the dir.
17859         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
17860         about already deleted entries.
17862         * test/automated/auto-revert-tests.el
17863         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
17864         since this deletes the target file first.
17866         * test/automated/file-notify-tests.el (file-notify--test-event-test):
17867         Make stronger checks.
17868         (file-notify-test01-add-watch, file-notify-test02-events)
17869         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
17870         Rewrite in order to call file monitors but directory monitors.
17871         (file-notify-test06-many-events): Ler rename work in both directions.
17873 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17875         Continue with pending events
17877         * src/kqueue.c (pending_events): Remove global variable.
17878         (kqueue_compare_dir_list): Create `write' event for not used
17879         pending events.
17880         (globals_of_kqueue): Remove initialization of pending_events.
17882 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17884         Improve loops in file-notify-test06-many-events
17886         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
17887         Use `read-event' pauses for the `write-file' loops; otherwise
17888         events are lost in inotify and gfilenotify cases.
17890 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17892         Handle more complex rename operation in kqueue
17894         * src/kqueue.c (pending_events): New variable.
17895         (kqueue_compare_dir_list): Handle more complex rename operation.
17896         (globals_of_kqueue): Initialize pending_events.
17898         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
17899         Adapt expected events in the `rename-file' case.
17900         (file-notify-test06-many-events-remote): Declare.
17902 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
17904         New test with a larger number of events
17906         * test/automated/file-notify-tests.el (file-notify--test-with-events):
17907         Make timeout heuristically depend on the number of events.
17909         (file-notify-test06-many-events): Use it for new test.
17911 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17913         Further fixes for kqueue
17915         * lisp/filenotify.el (file-notify-callback): Raise also event if
17916         directory name matches.
17917         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
17919         * src/kqueue.c (kqueue_generate_event): Use watch_object as
17920         argument instead of ident.  Remove callback argument.  Adapt
17921         callees.  Check actions whether they are monitored flags.
17923         * test/automated/file-notify-tests.el (file-notify--test-library):
17924         New defun.
17925         (file-notify-test00-availability, file-notify-test02-events)
17926         (file-notify-test04-file-validity)
17927         (file-notify-test05-dir-validity): Use it.
17928         (file-notify-test02-events, file-notify-test04-file-validity): Add
17929         `read-event' calls between different file actions, in order to
17930         give the backends a chance to rais an event.  Needed especially
17931         for kqueue.  In case of deleting a directory, there are two
17932         `deleted' events.
17934 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17936         Code cleanup of kqueue.c
17938         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
17939         (kqueue_compare_dir_list): Do not loop when calling
17940         directory_files_internal.  Remove checks for "." and "..", this is
17941         done in kqueue_directory_listing now.
17942         (Fkqueue_add_watch): Check for proper emacs_open flags.
17944 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17946         Doc changes for kqueue
17948         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
17949         Fix some glitches in the example.
17951 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17953         Finish implementation in kqueue.c
17955         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
17956         Simplify access to list.
17957         (kqueue_compare_dir_list): Simplify access to list.  Raise
17958         `delete' event if directory does not exist any longer.  Otherwise,
17959         wait until directory contents has changed.  Fix error in check.
17961 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17963         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
17965 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17967         More work on kqueue
17969         * lisp/filenotify.el (file-notify-callback): Handle also the
17970         `rename' event from kqueue.
17971         (file-notify-add-watch): Do not register an entry twice.
17973         * src/kqueue.c (kqueue_directory_listing): New function.
17974         (kqueue_generate_event): New argument FILE1.  Adapt callees.
17975         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
17977 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17979         Implement directory events
17981         * lisp/filenotify.el (file-notify-handle-event)
17982         (file-notify-callback): Remove traces.
17984         * src/kqueue.c: Include <sys/time.h>.
17985         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
17986         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
17987         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
17988         Compute initial directory listing.  Close file descriptor in case
17989         of errors.
17990         (syms_of_kqueue): Declare Qcreate.
17992 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
17994         Build fixes for kqueue support
17996         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
17997         flag.
17999         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
18000         kqueue on *BSD.
18002 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
18004         Continue kqueue implementation
18006         * lisp/filenotify.el (file-notify-handle-event)
18007         (file-notify-callback): Enable trace messages.
18009         * src/kqueue.c: Include also <sys/types.h>.
18010         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
18011         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
18012         (syms_of_kqueue): Add them.
18014 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
18016         Work on kqueue
18018         * lisp/filenotify.el (file-notify--library)
18019         (file-notify-descriptors, file-notify-callback)
18020         (file-notify-add-watch, file-notify-rm-watch)
18021         (file-notify-valid-p): Add kqueue support.
18023         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
18025 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
18027         Add kqueue support
18029         * configure.ac (--with-file-notification): Add kqueue.
18030         (top): Remove special test for "${HAVE_NS}" and
18031         ${with_file_notification}, this is handled inside gfilenotify
18032         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
18033         instead of library specific variables.
18035         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
18037         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
18039         * src/kqueue.c: New file.
18041         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
18043 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
18045         Update elisp-mode-tests for changed file location.
18047          * test/lisp/progmodes/elisp-mode-tests.el:
18049 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
18051         Exclude manual tests from Makefile
18053          * test/Makefile.in:
18055 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
18057         Move package test files to new directory.
18059          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
18060          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
18062 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
18064         Restore delete Makefiles and fix .gitignore.
18066          * .gitignore: Update Makefiles to changed locations
18067          * test/lisp/progmodes/flymake-resources/Makefile,
18068            test/manual/etags/Makefile,
18069            test/manual/etags/make-src/Makefile,
18070            test/manual/indent/Makefile: Restored and moved to new location.
18072 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
18074         Test infrastructure: updates after directory move
18076          * (test/Makefile.in): Support directories several levels deep.
18077          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
18078          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
18080 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
18082         Rename all test files to reflect source layout.
18084          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
18085            test directory moves.
18086          * test/file-organisation.org: New file.
18087          * test/automated/Makefile.in
18088            test/automated/data/decompress/foo.gz
18089            test/automated/data/epg/pubkey.asc
18090            test/automated/data/epg/seckey.asc
18091            test/automated/data/files-bug18141.el.gz
18092            test/automated/data/flymake/test.c
18093            test/automated/data/flymake/test.pl
18094            test/automated/data/package/archive-contents
18095            test/automated/data/package/key.pub
18096            test/automated/data/package/key.sec
18097            test/automated/data/package/multi-file-0.2.3.tar
18098            test/automated/data/package/multi-file-readme.txt
18099            test/automated/data/package/newer-versions/archive-contents
18100            test/automated/data/package/newer-versions/new-pkg-1.0.el
18101            test/automated/data/package/newer-versions/simple-single-1.4.el
18102            test/automated/data/package/package-test-server.py
18103            test/automated/data/package/signed/archive-contents
18104            test/automated/data/package/signed/archive-contents.sig
18105            test/automated/data/package/signed/signed-bad-1.0.el
18106            test/automated/data/package/signed/signed-bad-1.0.el.sig
18107            test/automated/data/package/signed/signed-good-1.0.el
18108            test/automated/data/package/signed/signed-good-1.0.el.sig
18109            test/automated/data/package/simple-depend-1.0.el
18110            test/automated/data/package/simple-single-1.3.el
18111            test/automated/data/package/simple-single-readme.txt
18112            test/automated/data/package/simple-two-depend-1.1.el
18113            test/automated/abbrev-tests.el
18114            test/automated/auto-revert-tests.el
18115            test/automated/calc-tests.el
18116            test/automated/icalendar-tests.el
18117            test/automated/character-fold-tests.el
18118            test/automated/comint-testsuite.el
18119            test/automated/descr-text-test.el
18120            test/automated/electric-tests.el
18121            test/automated/cl-generic-tests.el
18122            test/automated/cl-lib-tests.el
18123            test/automated/eieio-test-methodinvoke.el
18124            test/automated/eieio-test-persist.el
18125            test/automated/eieio-tests.el
18126            test/automated/ert-tests.el
18127            test/automated/ert-x-tests.el
18128            test/automated/generator-tests.el
18129            test/automated/let-alist.el
18130            test/automated/map-tests.el
18131            test/automated/advice-tests.el
18132            test/automated/package-test.el
18133            test/automated/pcase-tests.el
18134            test/automated/regexp-tests.el
18135            test/automated/seq-tests.el
18136            test/automated/subr-x-tests.el
18137            test/automated/tabulated-list-test.el
18138            test/automated/thunk-tests.el
18139            test/automated/timer-tests.el
18140            test/automated/epg-tests.el
18141            test/automated/eshell.el
18142            test/automated/faces-tests.el
18143            test/automated/file-notify-tests.el
18144            test/automated/auth-source-tests.el
18145            test/automated/gnus-tests.el
18146            test/automated/message-mode-tests.el
18147            test/automated/help-fns.el
18148            test/automated/imenu-test.el
18149            test/automated/info-xref.el
18150            test/automated/mule-util.el
18151            test/automated/isearch-tests.el
18152            test/automated/json-tests.el
18153            test/automated/bytecomp-tests.el
18154            test/automated/coding-tests.el
18155            test/automated/core-elisp-tests.el
18156            test/automated/decoder-tests.el
18157            test/automated/files.el
18158            test/automated/font-parse-tests.el
18159            test/automated/lexbind-tests.el
18160            test/automated/occur-tests.el
18161            test/automated/process-tests.el
18162            test/automated/syntax-tests.el
18163            test/automated/textprop-tests.el
18164            test/automated/undo-tests.el
18165            test/automated/man-tests.el
18166            test/automated/completion-tests.el
18167            test/automated/dbus-tests.el
18168            test/automated/newsticker-tests.el
18169            test/automated/sasl-scram-rfc-tests.el
18170            test/automated/tramp-tests.el
18171            test/automated/obarray-tests.el
18172            test/automated/compile-tests.el
18173            test/automated/elisp-mode-tests.el
18174            test/automated/f90.el
18175            test/automated/flymake-tests.el
18176            test/automated/python-tests.el
18177            test/automated/ruby-mode-tests.el
18178            test/automated/subword-tests.el
18179            test/automated/replace-tests.el
18180            test/automated/simple-test.el
18181            test/automated/sort-tests.el
18182            test/automated/subr-tests.el
18183            test/automated/reftex-tests.el
18184            test/automated/sgml-mode-tests.el
18185            test/automated/tildify-tests.el
18186            test/automated/thingatpt.el
18187            test/automated/url-future-tests.el
18188            test/automated/url-util-tests.el
18189            test/automated/add-log-tests.el
18190            test/automated/vc-bzr.el
18191            test/automated/vc-tests.el
18192            test/automated/xml-parse-tests.el
18193            test/BidiCharacterTest.txt
18194            test/biditest.el
18195            test/cedet/cedet-utests.el
18196            test/cedet/ede-tests.el
18197            test/cedet/semantic-ia-utest.el
18198            test/cedet/semantic-tests.el
18199            test/cedet/semantic-utest-c.el
18200            test/cedet/semantic-utest.el
18201            test/cedet/srecode-tests.el
18202            test/cedet/tests/test.c
18203            test/cedet/tests/test.el
18204            test/cedet/tests/test.make
18205            test/cedet/tests/testdoublens.cpp
18206            test/cedet/tests/testdoublens.hpp
18207            test/cedet/tests/testfriends.cpp
18208            test/cedet/tests/testjavacomp.java
18209            test/cedet/tests/testnsp.cpp
18210            test/cedet/tests/testpolymorph.cpp
18211            test/cedet/tests/testspp.c
18212            test/cedet/tests/testsppcomplete.c
18213            test/cedet/tests/testsppreplace.c
18214            test/cedet/tests/testsppreplaced.c
18215            test/cedet/tests/testsubclass.cpp
18216            test/cedet/tests/testsubclass.hh
18217            test/cedet/tests/testtypedefs.cpp
18218            test/cedet/tests/testvarnames.c
18219            test/etags/CTAGS.good
18220            test/etags/ETAGS.good_1
18221            test/etags/ETAGS.good_2
18222            test/etags/ETAGS.good_3
18223            test/etags/ETAGS.good_4
18224            test/etags/ETAGS.good_5
18225            test/etags/ETAGS.good_6
18226            test/etags/a-src/empty.zz
18227            test/etags/a-src/empty.zz.gz
18228            test/etags/ada-src/2ataspri.adb
18229            test/etags/ada-src/2ataspri.ads
18230            test/etags/ada-src/etags-test-for.ada
18231            test/etags/ada-src/waroquiers.ada
18232            test/etags/c-src/a/b/b.c
18233            test/etags/c-src/abbrev.c
18234            test/etags/c-src/c.c
18235            test/etags/c-src/dostorture.c
18236            test/etags/c-src/emacs/src/gmalloc.c
18237            test/etags/c-src/emacs/src/keyboard.c
18238            test/etags/c-src/emacs/src/lisp.h
18239            test/etags/c-src/emacs/src/regex.h
18240            test/etags/c-src/etags.c
18241            test/etags/c-src/exit.c
18242            test/etags/c-src/exit.strange_suffix
18243            test/etags/c-src/fail.c
18244            test/etags/c-src/getopt.h
18245            test/etags/c-src/h.h
18246            test/etags/c-src/machsyscalls.c
18247            test/etags/c-src/machsyscalls.h
18248            test/etags/c-src/sysdep.h
18249            test/etags/c-src/tab.c
18250            test/etags/c-src/torture.c
18251            test/etags/cp-src/MDiagArray2.h
18252            test/etags/cp-src/Range.h
18253            test/etags/cp-src/burton.cpp
18254            test/etags/cp-src/c.C
18255            test/etags/cp-src/clheir.cpp.gz
18256            test/etags/cp-src/clheir.hpp
18257            test/etags/cp-src/conway.cpp
18258            test/etags/cp-src/conway.hpp
18259            test/etags/cp-src/fail.C
18260            test/etags/cp-src/functions.cpp
18261            test/etags/cp-src/screen.cpp
18262            test/etags/cp-src/screen.hpp
18263            test/etags/cp-src/x.cc
18264            test/etags/el-src/TAGTEST.EL
18265            test/etags/el-src/emacs/lisp/progmodes/etags.el
18266            test/etags/erl-src/gs_dialog.erl
18267            test/etags/f-src/entry.for
18268            test/etags/f-src/entry.strange.gz
18269            test/etags/f-src/entry.strange_suffix
18270            test/etags/forth-src/test-forth.fth
18271            test/etags/html-src/algrthms.html
18272            test/etags/html-src/index.shtml
18273            test/etags/html-src/software.html
18274            test/etags/html-src/softwarelibero.html
18275            test/etags/lua-src/allegro.lua
18276            test/etags/objc-src/PackInsp.h
18277            test/etags/objc-src/PackInsp.m
18278            test/etags/objc-src/Subprocess.h
18279            test/etags/objc-src/Subprocess.m
18280            test/etags/objcpp-src/SimpleCalc.H
18281            test/etags/objcpp-src/SimpleCalc.M
18282            test/etags/pas-src/common.pas
18283            test/etags/perl-src/htlmify-cystic
18284            test/etags/perl-src/kai-test.pl
18285            test/etags/perl-src/yagrip.pl
18286            test/etags/php-src/lce_functions.php
18287            test/etags/php-src/ptest.php
18288            test/etags/php-src/sendmail.php
18289            test/etags/prol-src/natded.prolog
18290            test/etags/prol-src/ordsets.prolog
18291            test/etags/ps-src/rfc1245.ps
18292            test/etags/pyt-src/server.py
18293            test/etags/tex-src/gzip.texi
18294            test/etags/tex-src/nonewline.tex
18295            test/etags/tex-src/testenv.tex
18296            test/etags/tex-src/texinfo.tex
18297            test/etags/y-src/atest.y
18298            test/etags/y-src/cccp.c
18299            test/etags/y-src/cccp.y
18300            test/etags/y-src/parse.c
18301            test/etags/y-src/parse.y
18302            test/indent/css-mode.css
18303            test/indent/js-indent-init-dynamic.js
18304            test/indent/js-indent-init-t.js
18305            test/indent/js-jsx.js
18306            test/indent/js.js
18307            test/indent/latex-mode.tex
18308            test/indent/modula2.mod
18309            test/indent/nxml.xml
18310            test/indent/octave.m
18311            test/indent/pascal.pas
18312            test/indent/perl.perl
18313            test/indent/prolog.prolog
18314            test/indent/ps-mode.ps
18315            test/indent/ruby.rb
18316            test/indent/scheme.scm
18317            test/indent/scss-mode.scss
18318            test/indent/sgml-mode-attribute.html
18319            test/indent/shell.rc
18320            test/indent/shell.sh
18321            test/redisplay-testsuite.el
18322            test/rmailmm.el
18323            test/automated/buffer-tests.el
18324            test/automated/cmds-tests.el
18325            test/automated/data-tests.el
18326            test/automated/finalizer-tests.el
18327            test/automated/fns-tests.el
18328            test/automated/inotify-test.el
18329            test/automated/keymap-tests.el
18330            test/automated/print-tests.el
18331            test/automated/libxml-tests.el
18332            test/automated/zlib-tests.el: Files Moved.
18334 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
18336         Rework file notifications, kqueue has problems with directory monitors
18338         * lisp/filenotify.el (file-notify-add-watch): Call the native
18339         add-watch function on the file, not on the dir.
18341         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
18342         about already deleted entries.
18344         * test/automated/auto-revert-tests.el
18345         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
18346         since this deletes the target file first.
18348         * test/automated/file-notify-tests.el (file-notify--test-event-test):
18349         Make stronger checks.
18350         (file-notify-test01-add-watch, file-notify-test02-events)
18351         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
18352         Rewrite in order to call file monitors but directory monitors.
18353         (file-notify-test06-many-events): Ler rename work in both directions.
18355 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
18357         Continie with pending events
18359         * src/kqueue.c (pending_events): Remove global variable.
18360         (kqueue_compare_dir_list): Create `write' event for not used
18361         pending events.
18362         (globals_of_kqueue): Remove initialization of pending_events.
18364 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
18366         Improve loops in file-notify-test06-many-events
18368         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
18369         Use `read-event' pauses for the `write-file' loops; otherwise
18370         events are lost in inotify and gfilenotify cases.
18372 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
18374         Handle more complex rename operation in kqueue
18376         * src/kqueue.c (pending_events): New variable.
18377         (kqueue_compare_dir_list): Handle more complex rename operation.
18378         (globals_of_kqueue): Initialize pending_events.
18380         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
18381         Adapt expected events in the `rename-file' case.
18382         (file-notify-test06-many-events-remote): Declare.
18384 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
18386         New test with a larger number of events.
18388         * test/automated/file-notify-tests.el (file-notify--test-with-events):
18389         Make timeout heuristically depend on the number of events.
18391         (file-notify-test06-many-events): Use it for new test.
18393 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
18395         Further fixes for kqueue.
18397         * lisp/filenotify.el (file-notify-callback): Raise also event if
18398         directory name matches.
18399         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
18401         * src/kqueue.c (kqueue_generate_event): Use watch_object as
18402         argument instead of ident.  Remove callback argument.  Adapt
18403         callees.  Check actions whether they are monitored flags.
18405         * test/automated/file-notify-tests.el (file-notify--test-library):
18406         New defun.
18407         (file-notify-test00-availability, file-notify-test02-events)
18408         (file-notify-test04-file-validity)
18409         (file-notify-test05-dir-validity): Use it.
18410         (file-notify-test02-events, file-notify-test04-file-validity): Add
18411         `read-event' calls between different file actions, in order to
18412         give the backends a chance to rais an event.  Needed especially
18413         for kqueue.  In case of deleting a directory, there are two
18414         `deleted' events.
18416 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
18418         Code cleanup of kqueue.c
18420         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
18421         (kqueue_compare_dir_list): Do not loop when calling
18422         directory_files_internal.  Remove checks for "." and "..", this is
18423         done in kqueue_directory_listing now.
18424         (Fkqueue_add_watch): Check for proper emacs_open flags.
18426 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
18428         Doc changes for kqueue
18430         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
18431         Fix some glitches in the example.
18433 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
18435         Finish implementation in kqueue.c
18437         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
18438         Simplify access to list.
18439         (kqueue_compare_dir_list): Simplify access to list.  Raise
18440         `delete' event if directory does not exist any longer.  Otherwise,
18441         wait until directory contents has changed.  Fix error in check.
18443 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
18445         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
18447 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
18449         More work on kqueue
18451         * lisp/filenotify.el (file-notify-callback): Handle also the
18452         `rename' event from kqueue.
18453         (file-notify-add-watch): Do not register an entry twice.
18455         * src/kqueue.c (kqueue_directory_listing): New function.
18456         (kqueue_generate_event): New argument FILE1.  Adapt callees.
18457         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
18459 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
18461         Implement directory events
18463         * lisp/filenotify.el (file-notify-handle-event)
18464         (file-notify-callback): Remove traces.
18466         * src/kqueue.c: Include <sys/time.h>.
18467         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
18468         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
18469         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
18470         Compute initial directory listing.  Close file descriptor in case
18471         of errors.
18472         (syms_of_kqueue): Declare Qcreate.
18474 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
18476         Build fixes for kqueue support.
18478         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
18479         flag.
18481         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
18482         kqueue on *BSD.
18484 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
18486         Continue kqueue implementation
18488         * lisp/filenotify.el (file-notify-handle-event)
18489         (file-notify-callback): Enable trace messages.
18491         * src/kqueue.c: Include also <sys/types.h>.
18492         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
18493         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
18494         (syms_of_kqueue): Add them.
18496 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
18498         Work on kqueue
18500         * lisp/filenotify.el (file-notify--library)
18501         (file-notify-descriptors, file-notify-callback)
18502         (file-notify-add-watch, file-notify-rm-watch)
18503         (file-notify-valid-p): Add kqueue support.
18505         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
18507 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
18509         Add kqueue support
18511         * configure.ac (--with-file-notification): Add kqueue.
18512         (top): Remove special test for "${HAVE_NS}" and
18513         ${with_file_notification}, this is handled inside gfilenotify
18514         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
18515         instead of library specific variables.
18517         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
18519         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
18521         * src/kqueue.c: New file.
18523         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
18525 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
18527         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
18529         * verilog-mode.el (verilog-save-font-no-change-functions):
18530         Commentary and fix pre-Emacs 21 behavior.
18532 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
18534         Use obarray functions from obarray.
18536         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
18537           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
18538           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
18539           delegate to obarray.el functions.
18540         * lisp/loadup.el: load obarray before abbrev
18541         * test/automated/abbrev-tests.el: new tests
18543 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
18545         epa.el: Add option to replace original text
18547         * lisp/epa.el (epa-replace-original-text): New user option.
18548         (Bug#21947)
18550 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
18552         Add interactive seek command.
18554         * lisp/mpc.el (mpc-cmd-seekcur): New function.
18555         (mpc-seek-current): New command.
18556         (mpc-mode-menu): Add entry for mpc-seek-current
18557         (mpc-mode-map): Bind mpc-seek-current to "g"
18559 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
18561         Fix issue where a new tempfile was created every refresh
18563         * lisp/mpc.el (mpc-format): Leave dir as relative path
18565 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
18567         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
18569         (c-save-buffer-state): Use with-silent-modifications when available.
18570         (c--macroexpand-all): Check macroexpand-all directly rather than
18571         c--mapcan-status.
18573 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
18575         * lisp/loadup.el: Set max-lisp-eval-depth here
18577         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
18578         (BYTE_COMPILE_FLAGS): Adjust accordingly.
18580 2015-11-17  João Távora  <joaotavora@gmail.com>
18582         Minor fix to comment indentation and typo in last commit
18584         * linum.el (linum-update-window): Fix comment indentation and a
18585         typo.
18587 2015-11-17  João Távora  <joaotavora@gmail.com>
18589         linum-mode plays more nicely with other margin-setting extensions
18591         linum.el will only modify the left margin if it needs to, and will
18592         only reset the it back to 0 if it guesses that no-one has touched that
18593         margin in the meantime.
18595         As such, this is a more of a workaround than an actual fix, but fixes
18596         the problems described in bug#20674 regarding the interaction with
18597         modes such as darkroom-mode and olivetti-mode.
18599         A similar fix was commited to nlinum.el in ELPA.git's
18600         e7f5f549fbfb740b911fb7f33b42381ecece56d8
18602         * linum.el (linum-delete-overlays): Restore margins more
18603         criteriously.
18604         (linum-update-window): Set margins more criteriously.
18606 2015-11-16  Daiki Ueno  <ueno@gnu.org>
18608         * lisp/image-mode.el: Support encrypted file
18610         (image-toggle-display-image): Read content from the buffer instead
18611         of the file, if the buffer holds a decrypted data.  (Bug#21870)
18613 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
18615         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
18617 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
18619         * lisp/emacs-lisp/package.el: Fix a decoding issue
18621         (package--with-response-buffer): Use `url-insert-buffer-contents'.
18622         The previous code had some issues with decoding. Refactoring that
18623         function allows us to use the decoding from url-handlers while still
18624         treating both sync and async requests the same.
18626         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
18627         `url-insert-buffer-contents'.
18628         (url-insert-buffer-contents): New function
18630 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18632         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
18634         (verilog-save-buffer-state): Use with-silent-modifications when available.
18635         (verilog-save-font-no-change-functions): Don't bind
18636         before/after-change-functions if it's not needed.
18638 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
18640         * CONTRIBUTE: Remove information about feature freeze.
18642         Merge branch 'release-process-lowercase'
18644 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
18646         Document the release process
18648         * admin/notes/versioning: Add information about RC releases.
18649         * admin/release-process: Document the release process.
18650         * admin/authors.el (authors-ignored-files):
18651         * admin/README: Change FOR-RELEASE to release-process.
18652         * CONTRIBUTE:
18653         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
18655 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
18657         * admin/release-process: Rename from admin/FOR-RELEASE.
18659 2015-11-14  David Engster  <deng@randomsample.de>
18661         gitmerge: Fix git log command
18663         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
18664         only want commits from the branch that is to be merged.
18665         (gitmerge-setup-log-buffer): Use the same symmetric range as in
18666         `gitmerge-missing'.
18668 2015-11-14  David Engster  <deng@randomsample.de>
18670         gitmerge: Try to detect cherry-picks
18672         * admin/gitmerge.el (gitmerge-default-branch): Change to
18673         origin/emacs-25.
18674         (gitmerge-missing): Use symmetric difference ('...') between
18675         branch and master so that cherry-picks can be detected.
18677 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
18679         Increment Emacs version on master branch
18681         * lisp/cus-edit.el (customize-changed-options-previous-release):
18682         Increase previous version to 24.5.
18684         * configure.ac:
18685         * msdos/sed2v2.inp: Bump version to 25.1.50.
18687 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
18689         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
18690         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
18691         * README: Mention CONTRIBUTE.
18693 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
18695         Update verilog-mode.el to 2015-11-09-b121d60-vpo
18697         * verilog-mode.el (verilog-auto, verilog-delete-auto)
18698         (verilog-modi-cache-results, verilog-save-buffer-state)
18699         (verilog-save-font-no-change-functions): When internally suppressing
18700         change functions, use `inhibit-modification-hooks' and call
18701         `after-change-funtions' to more nicely work with user hooks.
18702         Reported by Stefan Monnier.
18703         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
18704         Create `verilog-delete-auto-buffer' to avoid double-calling
18705         fontification hooks.
18706         (verilog-restore-buffer-modified-p, verilog-auto)
18707         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
18708         set-buffer-modified-p.  Reported by Stefan Monnier.
18709         (verilog-diff-auto, verilog-diff-buffers-p)
18710         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
18711         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
18712         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
18713         by Amol Nagapurkar.
18714         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
18715         properties inside internal structures.  No functional change
18716         intended.
18718 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
18720         Use generic dispatch for xref backends
18722         * lisp/progmodes/xref.el (xref-backend-functions):
18723         New variable.
18724         (xref-find-function): Remove.
18725         (xref-find-backend)
18726         (xref--etags-backend): New functions.
18727         (xref-identifier-at-point-function)
18728         (xref-identifier-completion-table-function): Remove.
18729         (xref-backend-definitions, xref-backend-references)
18730         (xref-backend-apropos, xref-backend-identifier-at-point)
18731         (xref-backend-identifier-completion-table):
18732         New generic functions.
18734         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
18735         Add `elisp--xref-backend' to the beginning of
18736         `xref-backend-functions', locally.  Delete references to
18737         removed functions and vars.
18738         (elisp-xref-find): Remove.
18739         (elisp--xref-backend): New function.
18740         (elisp--xref-find-references, elisp--xref-find-apropos)
18741         (elisp--xref-identifier-completion-table):
18742         Turn into appropriately named generic methods.
18744         * lisp/progmodes/etags.el (etags-xref-find): Remove.
18745         (xref-backend-identifier-completion-table)
18746         (xref-backend-references, xref-backend-definitions)
18747         (xref-backend-apropos): New generic methods.
18749 2015-11-13  Juri Linkov  <juri@linkov.net>
18751         Support rectangular regions for more commands
18753         * lisp/simple.el (region-extract-function): Handle the arg
18754         value ‘bounds’.
18755         (region-insert-function): New function.
18756         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
18757         If non-nil, operate on multiple chunks.
18758         (region-noncontiguous-p): New function.
18760         * lisp/rect.el: Add function rectangle--insert-region
18761         around region-insert-function.
18762         (extract-rectangle-bounds): New function.
18763         (rectangle--extract-region): Handle the arg value ‘bounds’.
18764         (rectangle--insert-region): New function.
18766         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
18767         around region-insert-function.
18768         (cua--extract-rectangle-bounds): New function.
18769         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
18771         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
18772         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
18773         (query-replace-regexp-eval, map-query-replace-regexp)
18774         (replace-string, replace-regexp): Use ‘use-region-p’.
18775         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
18776         (perform-replace): Add arg ‘region-noncontiguous-p’.
18777         If non-nil, operate on multiple chunks.
18779         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
18780         If non-nil, operate on multiple chunks.  (Bug#19829)
18782 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
18784         Handle multiple matches on the same line; add highlighting
18786         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
18787         column value in characters.
18788         (xref--collect-matches): Rename from `xref--collect-match'.
18789         Search for all matches in the hit line.  Add `highlight' face to
18790         the matched region in the summary.  Update both callers.
18792 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
18794         Replace xref-match-bounds with xref-match-length
18796         Relying on xref-location-marker to point to the beginning of the match
18798         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
18799         (xref-match-length): Add.
18800         (xref-make-match): Change the arguments.
18801         (xref--match-buffer-bounds): Remove.
18802         (xref-match-item): Store length, instead of end-column.
18803         (xref-pulse-momentarily)
18804         (xref--collect-match)
18805         (xref--query-replace-1): Update accordingly.
18806         (xref-query-replace): Ditto.  And check that the search results
18807         are up-to-date.
18809 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
18811         Merge from gnulib
18813         This incorporates:
18814         2015-11-13 xalloc-oversized: improve performance with GCC 5
18815         * lib/xalloc-oversized.h: Copy from gnulib.
18817 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
18819         Spruce up ftfont.c memory allocation
18821         * src/ftfont.c (setup_otf_gstring):
18822         Avoid O(N**2) behavior when reallocating.
18823         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
18824         reallocating buffers; this simplifies the code.  Do not trust
18825         mflt_run to leave the output areas unchanged on failure, as
18826         this isn’t part of its interface spec.
18828 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
18830         Port recent XCB changes to 64-bit ‘long int’
18832         For historical reasons, libX11 represents 32-bit values like Atoms as
18833         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
18834         do that, so adapt the recent XCB code to behave properly on 64-bit
18835         platforms.  Also, fix what appears to be a bug in the interpretation
18836         of xcb_get_property_value_length, at least on my Fedora platform
18837         which is running libxcb-1.11-5.fc21.
18838         * src/xfns.c (x_real_pos_and_offsets):
18839         * src/xterm.c (get_current_wm_state):
18840         xcb_get_property_value_length returns a byte count, not a word count.
18841         For 32-bit quantities, xcb_get_property_value returns a vector
18842         of 32-bit words, not of (possibly 64-bit) long int.
18844 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
18846         * src/undo.c (run_undoable_change): Now static.
18848 2016-01-30  Michael Albinus  <michael.albinus@gmx.de>
18850         Adapt Tramp version, do not merge with master
18852         * doc/misc/trampver.texi (trampver):
18853         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
18855 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
18857         Remove support for ':timeout' from w32 tray notifications
18859         * src/w32fns.c (Fw32_notification_notify): Delete the code that
18860         supports ':timeout'.
18861         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
18862         with dbusbind.c when D-Bus is compiled in.
18864         * doc/lispref/os.texi (Desktop Notifications): Don't mention
18865         ':timeout'.
18867 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
18869         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
18870         (simple-test--transpositions): New macro.
18871         (simple-transpose-subr): New test.
18873 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
18875         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
18877 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
18879         * src/undo.c: Small fixes for previous change
18880         (run_undoable_change): Mark void argument list.
18881         (record_property_change): Remove unused variable `boundary'.
18883 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
18885         Add a few more variables to redisplay--variables
18887         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
18888         and bidi-display-reordering to the list.
18890 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
18892         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
18894 2015-11-13  Eli Barzilay  <eli@barzilay.org>
18896         Fix point positioning after transposing with negative arg
18898         * lisp/simple.el (transpose-subr): When invoked with a negative
18899         argument, move point to after the transposed text, like we do
18900         when invoked with a positive argument.  (Bug#21885)
18902 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
18904         Fix last change in shr.el
18906         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
18907         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
18909 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
18911         Fix last change
18913         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
18914         Don't DEFSYM tray notification symbols if D-Bus is being used.
18916 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
18918         Another fix for MinGW64 and Cygwin builds due to notifications
18920         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
18921         being compiled into Emacs.
18922         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
18923         Sw32_notification_notify and Sw32_notification_close if the code
18924         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
18926 2016-01-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18927 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18929         Remove intern calls and XXX comments from Fx_export_frames
18931         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
18932         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
18933         for consistency with image types.  Remove XXX comments.
18934         (syms_of_xfns) <Qpdf>: DEFSYM it.
18936 2016-01-30  Eric Hanchrow  <eric.hanchrow@gmail.com>
18937 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
18939         shr: don't invoke unbound function (Bug#21895)
18941         * lisp/net/shr.el (have-fringes-p): New function.
18942         (shr-insert-document, shr-fill-text): Use it.
18944 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
18946         * test/automated/keymap-tests.el: Fix test to make it repeatable
18948         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
18949         entry to its initial value to make the test repeatable in interactive
18950         sessions (assuming it doesn't fail and crashes Emacs, of course).
18952 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18954         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
18956 2016-01-30  Phillip Lord  <phillip.lord@russet.org.uk>
18958         : Tests for undo-auto functionality.
18959 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
18961         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
18962         Small fix.
18964 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
18966         The heuristic that Emacs uses to add an `undo-boundary' has been
18967         reworked, as it interacts poorly with functions on `post-command-hook'
18968         or `after-change-functions'.
18970         * lisp/simple.el: New section added.
18971         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
18972         (self_insert_command): Calls simple.el to amalgamate.
18973         (delete_char): Calls simple.el to amalgamate.
18974         * src/keyboard.c (last_undo_boundary): Removed.
18975         * src/undo.c (run_undoable_change): New function.
18977 2015-11-12  Juri Linkov  <juri@linkov.net>
18979         Bind [?\S-\ ] to previous line command in Dired-like modes.
18981         * lisp/arc-mode.el (archive-mode-map):
18982         * lisp/dired.el (dired-mode-map):
18983         * lisp/proced.el (proced-mode-map):
18984         * lisp/vc/vc-dir.el (vc-dir-mode-map):
18985         Bind [?\S-\ ] to previous line command.
18986         (Bug#20790)
18988 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
18990         Fix the MinGW64 and Cygwin-w32 builds
18992         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
18993         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
18994         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
18995         which cause trouble with MinGW42 headers.  Ifdef away tray
18996         notifications code for Cygwin.  Reported by Andy Moreton
18997         <andrewjmoreton@gmail.com>.
18999 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
19001         Enable sorting of JSON object keys when encoding
19003         * lisp/json.el (json-encoding-object-sort-predicate): New variable
19004         for specifying a sorting predicate for JSON objects during encoding.
19005         (json--plist-to-alist): New utility function.
19006         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
19007         are to be sorted.
19008         (json-encode-alist): Sort output by
19009         `json-encoding-object-sort-predicate, when set.
19010         (json-encode-plist): Re-use `json-encode-alist' when object keys are
19011         to be sorted.
19012         (json-pretty-print-buffer-ordered): New command to pretty print the
19013         buffer with object keys sorted alphabetically.
19014         (json-pretty-print-ordered): New command to pretty print the region
19015         with object keys sorted alphabetically.
19017         * test/automated/json-tests.el (test-json-plist-to-alist)
19018         (test-json-encode-plist, test-json-encode-hash-table)
19019         (test-json-encode-alist-with-sort-predicate)
19020         (test-json-encode-plist-with-sort-predicate): New tests.
19022         * etc/NEWS: Add an entry for the new commands.
19024 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
19026         * test/automated/keymap-tests.el: New test file.
19028 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
19030         Speed up x_real_pos_and_offsets using XCB
19032         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
19033         all X calls, and pipeline requests when possible, collecting results
19034         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
19036 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
19038         Enable use of XCB for checking window manager state
19040         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
19041         of XGetWindowProperty plus error-catching, since we can explicitly
19042         check for errors in the XCB version.  This eliminates 3 XSync calls on
19043         top of the round-trip actually fetching the information.
19045 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
19047         Detect XCB and save a connection handle
19049         * configure.ac: If using X11, check for XCB libraries and header.
19050         * src/Makefile.in (XCB_LIBS): Define.
19051         (LIBX_EXTRA): Include it.
19053         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
19054         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
19055         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
19057 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
19059         Reduce some data dependencies between X calls
19061         Gains nothing in the traditional-Xlib code, but more closely aligns
19062         with how the XCB version will work.
19064         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
19065         send coordinates (0,0) to the X server and add in the real coordinates
19066         after getting the response.  Move XGetGeometry for outer window inside
19067         error-trapping block.  Use DPY variable more, since it's available.
19069 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
19071         Use color cache for creating bitmap
19073         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
19074         Set attributes to use the caching color allocator.  Initialize and
19075         free the cache.
19077 2015-11-12  Eli Barzilay  <eli@barzilay.org>
19079         Add "^" to the interactive specs of `dired-next/previous-line'
19081         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
19082         to bind these commands to the arrow keys, and that means that they work
19083         better with a "^" in the `interactive' declaration so selection works
19084         as expected.
19086 2016-01-30  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19088         Sync with soap-client repository, version 3.0.2
19090         * lisp/net/soap-client.el: Bump version to 3.0.2.
19092         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
19094         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
19095         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
19097         * lisp/net/soap-client.el: Support Emacs versions that do not have
19098         define-error.
19100         * lisp/net/soap-inspect.el: Remove version header.
19102         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
19103 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19105         Sync with soap-client repository, version 3.0.2
19107         * soap-client.el: Bump version to 3.0.2.
19109         * soap-client.el (soap-warning): Use format, not format-message.
19111         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
19112         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
19114         * soap-client.el: Support Emacs versions that do not have
19115         define-error.
19117         * soap-inspect.el: Remove version header.
19119         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
19120         format.
19122 2015-11-11  Alan Mackenzie  <acm@muc.de>
19124         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
19126         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
19127         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
19128         (c-guess-basic-syntax):
19129         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
19130         (c-get-fallback-scan-pos): "New" function (existed several years ago).
19131         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
19132         c-get-fallback-scan-pos.
19133         (c-parse-state-1): Handle 'BOD strategy.
19135         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
19136         (c-font-lock-fontify-region): Remove bindings of
19137         open-paren-in-column-0-is-defun-start to nil.
19139         * doc/misc/cc-mode.texi (Performance Issues)
19140         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
19142 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
19144         * lisp/obarray.el: Fix shadowed variables.
19145         (obarray-map, obarray-remove, obarray-put, obarray-get):
19146         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
19148 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
19150         Avoid error in submitting a form with EWW
19152         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
19153         CHUNK to be nil.  (Bug#21881)
19155 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
19157         Rename seq-p and map-p to seqp and mapp
19159         * lisp/emacs-lisp/seq.el (seqp): New name.
19160         * lisp/emacs-lisp/map.el (mapp): New name.
19161         * doc/lispref/sequences.texi: Update the documentation for seqp.
19162         * test/automated/map-tests.el: Update the tests for mapp.
19164 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
19166         Rename obarray-p to obarrayp
19168         * lisp/obarray.el (obarrayp): New name.
19169         * test/automated/obarray-tests.el: Update the tests.
19171 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
19173         Rename obarray-foreach to obarray-map
19175         * lisp/obarray.el (obarray-map): New name.
19176         * test/automated/obarray-tests.el: Update the corresponding tests.
19178 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
19180         New file with obarray functions.
19182         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
19183         * test/automated/obarray-tests.el: New file.
19185 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
19187         Implement tray notifications for MS-Windows
19189         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
19190         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
19191         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
19192         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
19193         (EMACS_NOTIFICATION_MSG): New macros.
19194         (NI_Severity): New enumeration.
19195         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
19196         (delete_tray_notification, Fw32_notification_notify)
19197         (Fw32_notification_close): New functions.
19198         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
19199         keywords used by w32-notification-notify.
19201         * doc/lispref/os.texi (Desktop Notifications): Describe the native
19202         w32 tray notifications.
19204 2016-01-30  Alan Mackenzie  <acm@muc.de>
19206         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
19208         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
19209         Windows" and new @defun selected-window-group.
19210         (Window Start and End): Describe new &optional parameter GROUP and
19211         ...-group-function for window-start, window-end, set-window-start, and
19212         pos-visible-in-window-p.
19213         (Textual Scrolling) Describe the same for recenter.
19214         doc/lispref/positions.texi (Screen Lines): Describe the same for
19215         move-to-window-line.
19217         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
19218         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
19219         new optional parameter "group".  At the beginning of each, check whether the
19220         corresponding ...-group-function is set to a function, and if so execute this
19221         function in place of the normal processing.
19222         (syms_of_window): Define symbols for the six new variables below.
19223         (window-start-group-function, window-end-group-function)
19224         (set-window-start-group-function, recenter-group-function)
19225         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
19226         New permanent local buffer local variables.
19227         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
19228         Fpos_visible_in_window_p.
19230         lisp/window.el (selected-window-group-function): New permanent local buffer
19231         local variable.
19232         (selected-window-group): New function.
19234         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
19235         enable, kill them at mode disable.  Add/remove follow-after-change to/from
19236         after-change-functions.
19237         (follow-start-end-invalid): New variable.
19238         (follow-redisplay): Manipulate follow-start-end-invalid.
19239         (follow-after-change, follow-window-start, follow-window-end)
19240         (follow-set-window-start, follow-pos-visible-in-window-p)
19241         (follow-move-to-window-line, follow-sit-for): New functions.
19243         lisp/isearch.el (isearch-call-message): New macro.
19244         (isearch-update, with-isearch-suspended, isearch-del-char)
19245         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
19246         (with-isearch-suspended): Rearrange code such that isearch-call-message is
19247         invoked before point is moved.
19248         (isearch-message): Add comment about where point must be at function call.
19249         (isearch-search): Remove call to isearch-message.
19250         (isearch-lazy-highlight-window-group): New variable.
19251         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
19252         the battery of tests to ...
19253         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
19254         Note: (sit-for 0) is still called.
19255         (isearch-lazy-highlight-update): Check membership of
19256         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
19257         property.
19258         (isearch-update, isearch-done, isearch-string-out-of-window)
19259         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
19260         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
19261         (isearch-lazy-highlight-update): Call the six amended primitives (see
19262         src/window.c above) with the new `group' argument set to t, to cooperate
19263         with Follow Mode.
19265 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
19267         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
19269         * lisp/net/tramp.el (tramp-handle-file-equal-p)
19270         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
19271         Harvey Chapman <hchapman@3gfp.com>.
19273         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
19274         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
19275         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
19276         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
19278 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
19280         * CONTRIBUTE: Encourage adding tests.
19282         Based on this post from John Wiegley:
19284           From: "John Wiegley" <johnw@newartisans.com>
19285           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
19286           To: Juanma Barranquero <lekktu@gmail.com>
19287           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
19288               emacs-devel <emacs-devel@gnu.org>
19289           Date: Wed, 28 Oct 2015 18:45:29 -0700
19290           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
19292           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
19294 2015-11-10  David Reitter  <david.reitter@gmail.com>
19296         Avoid creating notification objects when possible
19298         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
19299         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
19300         functions that do not require a notification object.  When needed,
19301         define NSWindowDidEnterFullScreenNotification to allow for compilation
19302         on OS X 10.6.8.
19304 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
19306         Move INTEGER_TO_CONS body out of .h file
19308         * src/data.c (INTBIG_TO_LISP): New macro, with most
19309         of the contents of the old INTEGER_TO_CONS.
19310         (intbig_to_lisp, uintbig_to_lisp): New functions.
19311         * src/lisp.h (INTEGER_TO_CONS):
19312         Simplify by using EXPR_SIGNED and the new functions.
19313         This shrinks code size a bit, and makes it easier to
19314         put a breakpoint on handling of large integers.
19316 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
19318         Merge from gnulib
19320         This incorporates:
19321         2015-11-10 intprops: new public macro EXPR_SIGNED
19322         2015-11-10 intprops: fix typo in clang port
19323         * lib/intprops.h: Copy from gnulib.
19325 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
19327         Spelling fixes
19329         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
19330         Fix misspelling in output.
19332 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
19334         * doc/lispref/variables.texi (Directory Local Variables):
19335         Document dir-locals wildcards.
19337         * lisp/files.el (dir-locals-file): Point to Info node.
19339         * doc/emacs/custom.texi (Directory Variables):
19340         Document dir-locals wildcards.
19342         * etc/NEWS: Document new functionality.
19344 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
19346         * lisp/files.el: Don't allow customization of dir-locals sorting.
19347         In retrospect, this is not a good idea for the same reason that
19348         `dir-locals-file' is a defconst, because it is important that this
19349         behavior be "uniform across different environments and users".
19350         Sure, the user can still change the sorting with a hack, but we
19351         shouldn't encourage them to change it.
19352         (dir-locals--all-files): Return list in the order returned by
19353         `file-expand-wildcards'.
19354         (file-expand-wildcards): Document the sorting predicate used.
19355         (dir-locals-sort-predicate): Delete variable.
19357 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
19359         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
19361         * lisp/isearch.el (search-default-regexp-mode): Change default value.
19363 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
19365         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
19366         `locate-dominating-file' will now keep looking if the files it finds in
19367         a given directory are unreadable (or not files).
19369 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
19371         * lisp/files.el (dir-locals-file): Allow wildcards.
19372         (dir-locals-find-file, dir-locals-collect-variables)
19373         (dir-locals-read-from-file): Update accordingly.
19374         (hack-dir-local-variables): Rename a local variable.
19376         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
19378         * lisp/help-fns.el (describe-variable): Update accordingly.
19380         * .gitignore: Add .dir-locals?.el.
19382 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
19384         * lisp/emacs-lisp/map.el (map-merge-with): New function.
19386         * test/automated/map-tests.el (test-map-merge-with): New test.
19388 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
19390         Fix some recently-perturbed bookmark autoloads
19392         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
19393         (bookmark-set): Restore autoload.
19394         (bookmark-set-no-overwrite): Add autoload.
19396         Thanks to Juanma Barranquero for noticing the autoload problems
19397         introduced by my recent commit adding/changing the above functions
19398         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
19400 2016-01-30  Noah Friedman  <friedman@splode.com>
19402         (ydump-buffer): Handle case where gap is at the start of buffer.
19403         I don't recall if older versions of gdb were less strict but you
19404         cannot dump a 0-length range in gdb 7.9.1.
19406 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
19407 2015-11-09  Noah Friedman  <friedman@splode.com>
19409         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
19410         the start of buffer.  I don't recall if older versions of gdb were
19411         less strict but you cannot dump a 0-length range in gdb 7.9.1.
19413 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
19415         * lisp/progmodes/project.el: Update Commentary.
19417         Merge branch 'project-next'
19419 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
19421         Fold `project-ask-user' into `project-current'
19423         * lisp/progmodes/project.el (project-find-functions): Remove
19424         `project-ask-user'.
19425 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
19427         Fold `project-ask-user' into `project-current'
19429         * lisp/progmodes/project.el (project-find-functions):
19430         Remove `project-ask-user'.
19431         (project-ask-user): Remove function and the corresponding
19432         `project-roots' implementation.
19433         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
19434         user in case there's no project in the current directory.  Update
19435         all callers.
19437 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
19439         When VC detects a conflict, specify which file
19441         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
19442         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
19443         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
19444         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
19445         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
19446           to display a standard message that specifies the conflicted file.
19448         Before this change, the message VC used for indicating a conflicted
19449         file was just "There are unresolved conflicts in this file" without
19450         naming the file (and this language was duplicated in several places).
19451         After this change, it's "There are unresolved conflicts in file FOO"
19452         (and this language is now centralized in one function in vc.el).
19454         Justification: It's important for the message to name the conflicted
19455         file because the moment when VC realizes a file is conflicted does not
19456         always come interactively.  For example, some people automatically
19457         find a set of Org Mode files on startup, and may keep those .org files
19458         under version control.  If any of the files are conflicted, the user
19459         just sees some messages fly by, and might later check the "*Messages*"
19460         buffer to find out what files were conflicted.  I'm not saying this
19461         happened to me or anything; it's a purely hypothetical example.
19463 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
19465         Fix assertion violation in define-key
19467         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
19468         objects.  Reported by Drew Adams <drew.adams@oracle.com>
19469         and Juanma Barranquero <lekktu@gmail.com>.
19471 2015-11-09  Dima Kogan  <dima@secretsauce.net>
19473         Fix a memory leak in GC of font cache
19475         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
19476         entities if some of the fonts it references are marked.  This
19477         plugs a memory leak.  (Bug#21556)
19479 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
19481         Use INT_ADD_WRAPV etc. to check integer overflow
19483         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
19484         * src/buffer.c (record_overlay_string, overlay_strings):
19485         * src/casefiddle.c (casify_object):
19486         * src/ccl.c (Fccl_execute_on_string):
19487         * src/character.c (char_width, c_string_width, lisp_string_width)
19488         (count_size_as_multibyte, string_escape_byte8):
19489         * src/coding.c (coding_alloc_by_realloc, produce_chars):
19490         * src/data.c (arith_driver):
19491         * src/dispnew.c (realloc_glyph_pool, init_display):
19492         * src/editfns.c (styled_format):
19493         * src/fns.c (Ffillarray):
19494         * src/ftfont.c (ftfont_shape_by_flt):
19495         * src/gnutls.c (gnutls_hex_string):
19496         * src/gtkutil.c (get_utf8_string):
19497         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
19498         * src/keymap.c (Fkey_description):
19499         * src/lisp.h (SAFE_ALLOCA_LISP):
19500         * src/term.c (encode_terminal_code):
19501         * src/tparam.c (tparam1):
19502         * src/xselect.c (x_property_data_to_lisp):
19503         * src/xsmfns.c (smc_save_yourself_CB):
19504         * src/xterm.c (x_term_init):
19505         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
19506         more-complicated code involving division and/or
19507         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
19508         subtraction and/or INT_ADD_OVERFLOW.
19509         * src/casefiddle.c (casify_object): Simplify multibyte size check.
19510         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
19511         * src/data.c (arith_driver): Also check for division overflow,
19512         as that’s now possible given that the accumulator can now contain
19513         any Emacs integer.
19514         * src/lisp.h (lisp_word_count): Remove; no longer used.
19516 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
19517 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
19519         Make sure that the ignore file exists
19521         * lisp/vc/vc.el (vc-default-ignore-completion-table):
19522         Make sure that the ignore file exists.
19524 2016-01-30  Michael Sperber  <mike@xemacs.org>
19526         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
19527 2015-11-08  Michael Sperber  <mike@xemacs.org>
19529         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
19530         `gnus-summary-delete-article` in a way that also works on XEmacs.
19532 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
19534         Add support for retrieving paths to JSON elements
19536         Add support for retrieving the path to a JSON element. This can for
19537         instance be useful to retrieve paths in deeply nested JSON
19538         structures.
19540         * lisp/json.el (json-pre-element-read-function)
19541         (json-post-element-read-function): New variables to hold pre- and post
19542         read callback functions for `json-read-array' and `json-read-object'.
19543         (json--path): New variable used internally by `json-path-to-position'.
19544         (json--record-path, json--check-position): New functions used
19545         internally by `json-path-to-position'.
19546         (json-path-to-position): New function for retrieving the path to a
19547         JSON element at a given position.
19548         (json-read-object, json-read-array): Call
19549         `json-pre-element-read-function' and `json-post-element-read-function'
19550         when set.
19552         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
19553         (test-json-path-to-position-with-arrays)
19554         (test-json-path-to-position-no-match): New tests for
19555         `json-path-to-position'.
19557 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
19559         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
19561         This really should been part of my previous commit
19562         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
19564 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
19566         Offer non-overwrite bookmark setter (Bug#15746)
19568         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
19569         what `bookmark-set' used to do, but with more choices for overwrite
19570         vs push, and with minor changes to the interactive prompt format.
19571         (bookmark-set): Rewrite as wrapper around above.
19572         If overwriting, inform the user of that in the prompt.
19573         (bookmark-set-no-overwrite): New function, also done as wrapper.
19574         Bind to "M" in `ctl-x-r-map' autoloads.
19575         (bookmark-map): Similarly bind "M" here.
19577 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
19579         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
19581 2015-11-08  Alan Modra  <amodra@gmail.com>
19583         ELF unexec: Don't insert a new section
19585         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
19586         don't need to mess with symbol st_shndx, or section sh_link and
19587         sh_info.
19589         This does lead to eu-elflint complaints about symbols defined in .bss
19590         with a needed version, because normally it is undefined symbols that
19591         have needed versions;  Defined symbols have version definitions.
19592         The exception is symbols defined by the linker in .dynbss for
19593         variables copied from a shared library in order to avoid text
19594         relocations, with copy relocs to copy their initial values from the
19595         shared library.  These symbols are both defined and have needed
19596         versions, and eu-elflink only expects to see them in SHT_NOBITS
19597         sections.  Of course there is no real problem with having such symbols
19598         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
19600         * src/unexelf.c: Delete outdated comments.
19601         (PATCH_INDEX): Delete.
19602         (find_section): Delete.
19603         (unexec): Don't add a new section.  Instead reuse the last bss
19604         section, extending it to cover dumped data.  Make bss sections
19605         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
19606         st_shndx.  Rename bss sections.
19608 2015-11-08  Alan Modra  <amodra@gmail.com>
19610         ELF unexec: Drive from PT_LOAD header rather than sections
19612         This rewrites bss handling in the ELF unexec code.  Finding bss
19613         sections by name results in complicated code that
19614         - does not account for all names of possible bss sections,
19615         - assumes specific ordering of bss sections,
19616         - can wrongly choose a SHT_NOBITS section not in the bss segment,
19617         - incorrectly calculates bss size (no accounting for alignment gaps),
19618         - assumes .data and .bss are in the same segment.
19620         All of these problems and more are solved by finding the bss segment
19621         in PT_LOAD headers, ie. the address range included in p_memsz but not
19622         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
19623         in that address range.
19625         * src/unexelf.c: Delete old ppc comment.
19626         (OLD_PROGRAM_H): Define.
19627         (round_up): Delete.
19628         (unexec): Don't search for bss style sections by name.  Instead,
19629         use the last PT_LOAD header address range covered by p_memsz
19630         but not p_filesz and match any SHT_NOBITS section in that
19631         address range.  Simplify initialization of section header vars.
19632         Don't assume that section headers are above bss segment.  Move
19633         copying of bss area out of section loop.  Align .data2 section
19634         to 1, since it now covers the entire bss area.  For SHT_NOBITS
19635         sections in the bss segment, leave sh_addr and sh_addralign
19636         unchanged, but correct sh_offset.  Clear memory corresponding
19637         to SHT_NOBITS .plt section.  Delete comment and hacks for
19638         sections partly overlapping bss range now that the full range
19639         is properly calculated.  Delete now dead .sbss code.
19640         (Bug#20614)
19642 2015-11-08  Alan Modra  <amodra@gmail.com>
19644         ELF unexec: R_*_NONE relocs
19646         These should be ignored on all targets.
19648         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
19649         not just Alpha.  Comment on reloc size assumption.
19651 2015-11-08  Alan Modra  <amodra@gmail.com>
19653         ELF unexec: _OBJC_ symbols in bss sections
19655         This code assumed that there was only one bss section.  Rather than
19656         checking for a particular index, check the section type.  Also, handle
19657         the possibility that the section was SHT_NOBITS originally and is
19658         unchanged, in which case no clearing is needed (and sh_offset isn't
19659         necessarily valid, which can lead to a wild memset).
19661         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
19662         bss sections.
19664 2015-11-08  Alan Modra  <amodra@gmail.com>
19666         ELF unexec: Symbol table patching
19668         No st_shndx value larger than SHN_LORESERVE should be changed.
19669         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
19670         SHN_LORESERVE.  Error on SHN_XINDEX.
19672 2015-11-08  Alan Modra  <amodra@gmail.com>
19674         ELF unexec: Merge Alpha and MIPS COFF debug handling
19676         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
19677         Don't find .mdebug section index, find the section in the loop.
19678         Allow for unlikely possibility that .mdebug is located at sh_offset
19679         before bss segment, by calculating move from difference in
19680         sh_offset rather than just assuming new_data2_size.  Simplify
19681         cbLineOffset handling.
19683 2015-11-08  Alan Modra  <amodra@gmail.com>
19685         ELF unexec: Tidy code
19687         Separate out some of the more mechanical changes so following patches
19688         are smaller.
19690         * src/unexelf.c (unexec): Rearrange initialization of program
19691         header vars.  Use pointer vars in loops rather than indexing
19692         section header array via macros.  Simplify _OBJC_ sym code
19693         and reloc handling code.
19695 2015-11-08  Alan Modra  <amodra@gmail.com>
19697         ELF unexec: Correct section header index
19699         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
19700         it should have been using "NEW_SECTION_H (nn)" to find the name of the
19701         section currently being processed.  Of course, before the bss
19702         sections, n and nn have the same value, so this doesn't matter except
19703         in the case of .sbss.  For .sbss this probably meant .bss (most likely
19704         the next section) was copied from memory.  A later patch removes the
19705         bogus .sbss handling anyway.
19707         * src/unexelf.c (unexec): Use correct index to look up names.
19709 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
19711         Fix Bug#21841
19713         * lisp/filenotify.el (file-notify--rm-descriptor):
19714         Use `descriptor' instead of computing its value.
19715         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
19716         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
19717         (Bug#21841)
19719 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
19721         Remove dirs in vc project roots from the the vc project library roots
19723         * lisp/progmodes/project.el (project-library-roots):
19724         Remove directories inside the project roots from the result.
19725         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
19727 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
19729         Move and rename xref-find-regexp to the project package
19731         * lisp/progmodes/project.el (project-find-regexp)
19732         (project--read-regexp)
19733         (project--find-regexp-in): New functions.
19735         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
19736         xref--show-xrefs.  Use in existing callers in place of that
19737         function.
19738         (xref--show-xrefs): Only do the "show" part.
19739         (xref-find-regexp): Rename, more or less, to
19740         project-or-libraries-find-regexp.
19742 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
19744         Abolish temporary buffer management for xref
19746         * lisp/progmodes/xref.el (xref--temporary-buffers)
19747         (xref--current)
19748         (xref--inhibit-mark-current)
19749         (xref--mark-selected): Remove.  Remove all references.
19750         (xref--show-xrefs): Do not construct the
19751         list of the temporary buffers, nor pass it along.
19753 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
19755         Rename "search path" to "library roots"
19757         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
19758         of the elements from CL-LIST1.
19760         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
19761         Update WRT to the above change.
19763         * lisp/progmodes/project.el (project-search-path-function): Rename
19764         to project-library-roots-function, update the documentation and
19765         references.
19766         (project-search-path): Likewise, to project-library-roots.
19767         (project-roots): Clarify documentation.
19768         (project-vc-search-path): Likewise, to project-vc-library-roots.
19769         (project-library-roots): In addition to the renames, thread the
19770         results through file-name-as-directory.
19771         (project-prune-directories): Accept a variable number of
19772         arguments.  Rename to project-combine-directories.
19773         (project-subtract-directories): New function.
19775         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
19776         Append project-roots and project-library-roots together.
19778         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
19780 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
19782         Prefer xpalloc to doubling buffers by hand
19784         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
19785         (read1): Use it for simplicity.
19786         * src/macros.c (store_kbd_macro_char):
19787         * src/minibuf.c (read_minibuf_noninteractive):
19788         * src/term.c (encode_terminal_code):
19789         * src/xrdb.c (magic_db):
19790         Prefer xpalloc to growing buffers by hand.
19791         This doesn’t fix any bugs, but simplifies the code a bit.
19793 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
19795         Merge from gnulib
19797         This incorporates:
19798         2015-11-05 timespec-sub: fix overflow bug; add tests
19799         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
19800         2015-11-03 intprops: add parentheses
19801         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
19802         Copy from gnulib.
19804 2015-11-07  David Reitter  <david.reitter@gmail.com>
19806         Provide NS notification objects where required to eliminate warnings
19808         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
19809         Call notification functions with notification objects
19810         as per delegate APIs.
19812 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
19814         Add test for bug #21824
19816         * test/automated/buffer-tests.el: New file.
19817         (overlay-modification-hooks-message-other-buf): New test.
19819 2015-11-07  Kelvin White  <kwhite@gnu.org>
19821         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
19823 2015-11-07  David Reitter  <david.reitter@gmail.com>
19825         Ignore fullscreen exit notifications on NS when frame is dead
19827         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
19828         (windowDidExitFullScreen:): Return if frame is dead.
19829         These functions may be called when a fullscreen frame
19830         is closed; they are called before, not after.
19832         May address Bug#21428.
19834 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
19836         Speed up lookup in redisplay--variables
19838         * lisp/frame.el (redisplay--variables): Make it a hash-table.
19840         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
19841         as a hash-table.  This speeds up this function by an order of
19842         magnitude: where previously a setq was slowed down by 100% by
19843         introducing the maybe_set_redisplay test, it is now only 5%
19844         slower.
19845         (syms_of_xdisp) <redisplay--variables>: Doc fix.
19847 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
19849         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
19851         The defsubst was being created as:
19852             (cl-defsubst name (args) ("DOC") ...)
19854         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
19855         Add test.
19857 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
19859         Update doc string of hexl-mode
19861         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
19863 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
19865         Fix error in copy-abbrev-table
19867         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
19868         property of the abbrev-table.  (Bug#21828)
19870         * test/automated/abbrev-tests.el: New file.
19872 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
19874         Add test to auto-revert-tests.el for Bug#21841
19876         * test/automated/auto-revert-tests.el
19877         (auto-revert-test01-auto-revert-several-files): New test.
19878         (auto-revert-test02-auto-revert-tail-mode)
19879         (auto-revert-test03-auto-revert-mode-dired): Rename them.
19881 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
19883         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
19885 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
19887         In x_consider_frame_title don't set title of tooltip frames
19889         * src/xdisp.c (x_consider_frame_title): Return immediately for
19890         tooltip frames to avoid displaying empty tooltips.
19892 2015-11-06  Anders Lindgren  <andlind@gmail.com>
19894         Fixed NextStep fullscreen problem (bug#21770).
19896         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
19897         fullscreen frames.
19899 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
19901         Ensure redisplay after evaluation
19903         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
19904         Revert last change.
19905         * lisp/frame.el (redisplay--variables): Populate the
19906         redisplay--variables list.
19907         * src/xdisp.c (maybe_set_redisplay): New function.
19908         (syms_of_xdisp) <redisplay--variables>: New variable.
19909         * src/window.h (maybe_set_redisplay): Declare prototype.
19910         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
19912 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
19914         * test/automated/subr-tests.el (subr-test-when): Fix again.
19916 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
19918         Don't invoke overlay modification hooks in wrong buffer
19920         * src/buffer.c (report_overlay_modification): When called with
19921         AFTER non-zero, don't invoke overlay modification hooks if the
19922         buffer recorded in last_overlay_modification_hooks is different
19923         from the current buffer.  (Bug#21824)
19925 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
19927         * admin/notes/repo: Fix a few obsolete references to Bazaar.
19929 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
19931         * test/automated/subr-tests.el (subr-test-when): Fix test.
19933 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
19935         Avoid division by zero crash observed by Yuan MEI
19937         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
19939         * src/dispnew.c (required_matrix_height, required_matrix_width):
19940         Avoid division by zero.
19941         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
19942         dpyinfo->smallest_char_width to 1.
19944 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
19946         Ensure redisplay after "C-x C-e"
19948         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
19949         redisplay happens to account for any side effects of the evaluated
19950         sexp.  (Bug#21835)
19952 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
19954         Skip some file notification tests for cygwin
19956         * test/automated/file-notify-tests.el (file-notify--test-with-events):
19957         Remove argument TIMEOUT.  Adapt all callees.
19958         (file-notify-test02-events, file-notify-test04-file-validity):
19959         Skip for cygwin.  (Bug#21804)
19961 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
19963         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
19965 2015-11-05  Daiki Ueno  <ueno@gnu.org>
19967         Suppress redundant Pinentry startup messages
19969         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
19970         * lisp/epg.el: Declare `pinentry-start'.
19971         (epg--start): Call `pinentry-start' with QUIET argument set.
19973 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
19975         * doc/emacs/ack.texi (Acknowledgments): Updates.
19977 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
19979         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
19980         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
19982 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
19984         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
19985         Add prettification support for \times.
19987 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
19989         * test/automated/process-tests.el: Skip tests when bash is unavailable.
19990         (process-test-sentinel-accept-process-output)
19991         (process-test-sentinel-sit-for): skip-unless bash executable found.
19993 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
19995         Add test for bug #21831
19997         * test/automated/process-tests.el
19998         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
19999         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
20001 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
20003         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
20005         (eieio--generic-static-object-generalizer): Fix typo.
20006         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
20007         like the underlying cause of bug#17852 was fixed in the mean time.
20009 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
20011         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
20013         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
20014         It breaks bootstrapping (duh).
20016 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
20018         * lisp/files.el (report-errors): Obsolete.
20020         (normal-mode, hack-local-variables, dir-locals-find-file):
20021         Use `with-demoted-errors' instead.
20023 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
20025         * lisp/subr.el (when): Use `macroexp-progn'.
20027         * test/automated/subr-tests.el (subr-test-when): New test.
20029 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
20031         * lisp/progmodes/xref.el: Doc fixes.
20032         (xref-make-file-location, xref-make-buffer-location, xref-make)
20033         (xref-make-bogus-location, xref-make-match): Add cross-references.
20034         (xref--insert-xrefs): Fix typo in docstring.
20036 2015-11-04  Anders Lindgren  <andlind@gmail.com>
20038         Render fringe bitmaps correctly on NextStep (bug#21301)
20040         The fringe bitmaps were inverted, the background was not transparent,
20041         the image data was horizontally mirrored, and periodic fringe bitmaps
20042         were not supported.
20044         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
20045         When both background and foreground colors are 0, set the background
20046         alpha channel to 0 (making the background transparent).  When
20047         copying the image data, do this from the most significant bit
20048         (leftmost) to the least (rightmost), to avoid mirroring.
20049         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
20050         Add support for periodic images (e.g. the empty line indicator).
20052 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
20054         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
20056 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
20058         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
20060         * admin/MAINTAINERS: Add thunk.el.
20062 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
20064         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
20066 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
20068         Fix a stupid error in gfilenotify.c
20070         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
20071         if we've got a `deleted' signal AND the file name is the watched one.
20073 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
20075         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
20077         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
20078         Use case-insensitive string compare for file names.
20079         (emacs-test-dir): Add 'downcase' to cause case differences (at
20080         least on my system).
20082 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
20084         flymake-tests.el (warning-predicate-rx-gcc): Fix check
20086         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
20087         Also check that "make" is available, not just "gcc".
20089 2015-11-02  Ken Brown  <kbrown@cornell.edu>
20091         Document behavior of collation on Cygwin
20093         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
20094         expected failure on Cygwin.
20095         * doc/lispref/strings.texi (Text Comparison): Document that
20096         punctuation and whitespace are not ignored for sorting on Cygwin.
20098 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
20100         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
20102 2015-11-01  Glenn Morris  <rgm@gnu.org>
20104         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
20105         (Bug#21794)
20106         * test/automated/f90.el (f90-test-bug21794): New test.
20108 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
20110         Fix incompatibility with TCC in test for bug#18745
20112         * test/automated/process-tests.el (process-test-quoted-batfile):
20113         Remove spaces unrelated to the bug being tested.
20115 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
20117         Improve completion in tramp-gvfs.el
20119         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
20120         Rename from `tramp-zeroconf-parse-service-device-names'.
20121         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
20122         with `tramp-zeroconf-parse-device-names'.
20123         (tramp-gvfs-parse-device-names): New defun.
20124         (top): Use it when `tramp-zeroconf-parse-device-names' is not
20125         applicable.
20127         * lisp/net/tramp.el (tramp-set-completion-function): The argument
20128         could also be a zeroconf service type.
20130 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
20132         * lisp/net/ntlm.el: Change version to 2.0.0.
20134 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
20136         Fix bug#21762
20137         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
20138         `eql' instead of `=' to accommodate the case that (syntax-after (point))
20139         returns nil.
20140         * test/automated/python-tests.el (python-indent-inside-paren-7):
20141         New test.
20143 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
20145         * test/automated/python-tests.el: Avoid warnings.
20146         (python-tests-with-temp-buffer, python-tests-with-temp-file):
20147         Bind `python-indent-guess-indent-offset' to nil.
20149 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
20151         * src/alloc.c: Silence compiler warnings.
20152         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
20154 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
20156         * etc/NEWS: Fix js-jsx-mode entry punctuation.
20158 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
20160         Add JSX indentation via js-jsx-mode  (Bug#21799)
20162         * lisp/progmodes/js.el: Add JSX indentation support.
20163         (js--jsx-end-tag-re)
20164         (js--jsx-after-tag-re): New variables.
20165         (js--jsx-find-before-tag)
20166         (js--jsx-indented-element-p)
20167         (js--as-sgml)
20168         (js--expression-in-sgml-indent-line)
20169         (js-jsx-indent-line)
20170         (js-jsx-mode): New functions.
20171         * test/indent/js-jsx.js: New file.
20172         * etc/NEWS: Add information about js-jsx-mode.
20174 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
20176         Minor fix in filenotify.el
20178         * lisp/filenotify.el (file-notify--event-file-name)
20179         (file-notify--event-file1-name): Normalize result with
20180         `directory-file-name'.
20182 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
20184         Avoid errors in redisplay--pre-redisplay-functions
20186         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
20187         use 'bobp', instead compare window-point with 1.  (Bug#21730)
20189 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
20191         Merge from gnulib
20193         This incorporates:
20194         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
20195         2015-10-25 stdalign: port to Sun C 5.9
20196         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
20197         Copy from gnulib.
20199 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
20201         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
20202         (w32_compare_strings): Adjust for the correction.
20204 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
20206         * test/automated/vc-tests.el (vc-test--state)
20207         (vc-test--working-revision, vc-test--checkout-model):
20208         Add result messages.
20210 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
20212         * test/automated/faces-tests.el: Add another test
20214 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
20216         * lisp/faces.el (faces--attribute-at-point): Fix bug
20217         introduced by previous commit.
20219 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
20221         * test/automated/faces-tests.el: New file.
20223 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
20225         * lisp/faces.el: Refactor common code and fix a bug.
20226         (faces--attribute-at-point): New function.  Fix a bug when the
20227         face at point is a list of faces and the desired attribute is not
20228         on the first one.
20229         (foreground-color-at-point, background-color-at-point): Use it.
20231 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
20233         * etc/tutorials/TUTORIAL.translators: Fix PL names.
20235 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
20237         * lisp/character-fold.el: Provide `character-fold'.
20239 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
20241         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
20242         for Gnus and ivy.
20244 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
20246         Some minor fixes for tramp-gvfs.el
20248         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
20249         An attribute returned by gvfs-info might be empty.  In case of
20250         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
20251         (tramp-zeroconf-parse-service-device-names): New defun.
20252         Derived from `tramp-zeroconf-parse-workstation-device-names'.
20253         (top): Add completion functions for "afp" and "smb" methods.
20255 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
20257         * test/automated/character-fold-tests.el: New file
20259 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
20261         * test/automated/sort-tests.el: New file.
20262         Tests in this file are randomly generated and then tested with
20263         regular, reverse, and case-fold sorting.
20265 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
20267         Describe known problems with pinning Emacs to taskbar
20269         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
20270         on Windows 10.  For the details, see the discussion starting at
20271         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
20273 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
20275         * lisp/isearch.el: Avoid an error that blocks isearch.
20276         (isearch-update): Don't error if `isearch--current-buffer' has
20277         been killed.
20279         * test/automated/isearch-tests.el (isearch--test-update):
20280         New file.
20282 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
20284         Fix documentation of 'beginning/end-of-buffer'
20286         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
20287         conditions under which the mark will be pushed at the previous
20288         position.  (Bug#21748)
20290 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
20292         Add RefTeX feature idea: editing RefTeX TOC buffers
20294         More face defs for ivy, swiper, ace-window, eshell
20296 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20298         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
20299         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
20300         just VAR.
20301         (auth-source-backend-parse): Use make-instance.
20302         (auth-source-search): Remove unused key args.
20303         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
20304         (auth-source-search-backends): Use slot names rather than their initarg.
20305         (auth-source-netrc-create):
20306         (auth-source-delete):
20307         (auth-source-secrets-create, auth-source-plstore-search)
20308         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
20309         (auth-source-plstore-create, auth-source-netrc-search)
20310         (auth-source-netrc-parse): Remove unused key args.
20311         (auth-source-forget+): Simplify the arglist.
20312         (auth-source-macos-keychain-search-items)
20313         (auth-source-token-passphrase-callback-function): Mark unused args.
20314         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
20315         (pp-escape-newlines): Declare.
20316         (auto-source--symbol-keyword): New function.
20317         (auth-source-plstore-create, auth-source-netrc-create)
20318         (auth-source-netrc-normalize): Use it.
20319         (auth-source-netrc-search): Don't pass :delete to
20320         auth-source-netrc-parse since it doesn't use it.
20321         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
20322         symbol-value to index in keyword args.
20323         (auth-source-macos-keychain-result-append): Avoid setq.
20324         (auth-source-netrc-create): Remove unused vars `file' and `add'.
20325         (auth-source-user-or-password): Remove unused var `cname'.
20327 2015-10-29  Juri Linkov  <juri@linkov.net>
20329         * lisp/dired.el (dired-unmark-all-files-query): Declare.
20330         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
20331         (Bug#21746)
20333 2015-10-29  Juri Linkov  <juri@linkov.net>
20335         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
20336         to go to the beginning of text line instead of command line.
20337         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
20339 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
20341         Fix encoding of saving *Help* buffers
20343         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
20344         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
20346 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20348         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
20349         (cl--generic-derived-specializers): New function.
20350         (cl--generic-derived-generalizer): New generalizer.
20351         (cl-generic-generalizers): New specializer (derived-mode MODE).
20352         (cl--generic-split-args): Apply the rewriter, if any.
20353         (cl-generic-define-context-rewriter): New macro.
20354         (major-mode): Use it to define a new context-rewriter, so we can write
20355         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
20357         * lisp/frame.el (window-system): New context-rewriter so we can write
20358         `(window-system VAL)' instead of (window-system (eql VAL)).
20359         (cl--generic-split-args): Apply the rewriter, if any.
20360         (frame-creation-function): Use the new syntax.
20362         * lisp/term/x-win.el (window-system-initialization)
20363         (handle-args-function, frame-creation-function)
20364         (gui-backend-set-selection, gui-backend-selection-owner-p)
20365         (gui-backend-selection-exists-p, gui-backend-get-selection):
20366         * lisp/term/w32-win.el (window-system-initialization)
20367         (handle-args-function, frame-creation-function)
20368         (gui-backend-set-selection, gui-backend-get-selection)
20369         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
20370         * lisp/term/pc-win.el (gui-backend-get-selection)
20371         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
20372         (gui-backend-set-selection, window-system-initialization)
20373         (frame-creation-function, handle-args-function):
20374         * lisp/term/ns-win.el (window-system-initialization)
20375         (handle-args-function, frame-creation-function)
20376         (gui-backend-set-selection, gui-backend-selection-exists-p)
20377         (gui-backend-get-selection):
20378         * lisp/startup.el (handle-args-function):
20379         * lisp/term/xterm.el (gui-backend-get-selection)
20380         (gui-backend-set-selection): Use the new syntax.
20382 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20384         * test/indent/css-mode.css: Add tests for url(...) syntax.
20386 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20388         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
20389         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
20390         (smie-prec2->grammar): Use `declare'.
20392 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20394         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
20395         (cl--generic-generalizer): Add `name' field.
20396         (cl-generic-make-generalizer): Add corresponding `name' argument.
20397         (cl-generic-define-generalizer): New macro.
20398         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
20399         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
20400         (cl--generic-t-generalizer): Use it.
20401         (cl-generic-ensure-function): Add `noerror' argument.
20402         (cl-generic-define): Use it so we don't follow aliases.
20403         (cl-generic-define-method): Preserve pre-existing ordering of methods.
20404         (cl--generic-arg-specializer): New function.
20405         (cl--generic-cache-miss): Use it.
20406         (cl-generic-generalizers): Only fset a temporary definition
20407         during bootstrap.
20408         (cl--generic-struct-tag, cl--generic-struct-specializers):
20409         Allow extra arguments.
20411         * lisp/emacs-lisp/eieio-compat.el
20412         (eieio--generic-static-symbol-generalizer)
20413         (eieio--generic-static-object-generalizer):
20414         Use cl-generic-define-generalizer.
20415         (eieio--generic-static-symbol-specializers): Allow extra arguments.
20417         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
20418         (eieio--generic-subclass-generalizer):
20419         Use cl-generic-define-generalizer.
20420         (eieio--generic-subclass-specializers): Allow extra arguments.
20422 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20424         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
20426 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
20428         Add "afp" method to Tramp
20430         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
20432         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
20433         (tramp-gvfs-handle-expand-file-name)
20434         (tramp-gvfs-handler-mounted-unmounted)
20435         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
20436         (tramp-gvfs-maybe-open-connection): Support also "afp".
20437         (tramp-gvfs-handle-file-attributes): Handle the case of empty
20438         "owner::user" and "owner::group" entries.
20440 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
20442         Handle negative coordinates in ‘x_calc_absolute_position’
20444         * src/w32term.c (x_calc_absolute_position): Find display origin to
20445         allow for negative coordinates.
20447 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
20449         (internal--syntax-propertize): Save match-data here (bug#21766)
20451         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
20452         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
20454 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
20456         Don't require default-directory to end with a slash
20458         * doc/lispref/files.texi (Magic File Names): Document the change
20459         in unhandled-file-name-directory.
20461         * lisp/url/url-handlers.el
20462         (url-handler-unhandled-file-name-directory): Update accordingly.
20464         * src/buffer.c (default-directory): Update the docsting.
20466         * src/fileio.c (unhandled-file-name-directory): Default to calling
20467         `file-name-as-directory'
20468         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
20470 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20472         * lisp/isearch.el: Delete some outdated comments.
20474 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
20476         Fix eshell/clear not working if the output has a small line count
20478         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
20479         number of newlines to be inserted. This fixes the issue where
20480         eshell/clear wouldn't work if the prompt was not at the bottom of the
20481         window, and the output wasn't too long.
20483 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
20485         * lisp/files.el (write-file): Use vc-refresh-state.
20487         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
20489         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
20491 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
20493         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
20494         (macroexp-unprogn): Make sure we never return an empty list.
20495         (macroexp-if): Remove unused (and unsafe) optimization.
20496         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
20497         occur occasionally.
20499 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
20501         Fix bug#21766 and add test
20502         * lisp/simple.el (delete-trailing-whitespace): Save match data when
20503         calling `skip-syntax-backward'.
20504         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
20505         New test.
20507 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20509         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
20511 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
20513         * src/dispnew.c (init_display): Simplify overflow checking.
20515 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20517         * lisp/character-fold.el (character-fold-to-regexp): Fix case
20518         where string ends in space
20520 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20522         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
20524         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
20526 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20528         * lisp/character-fold.el: Make compatible with lax-whitespace.
20529         (character-fold-to-regexp): Rework internals to play nice with
20530         lax-whitespacing.
20532         When the user types a space, we want to match the table entry for
20533         ?\s, which is generally a regexp like "[ ...]".  However, the
20534         `search-spaces-regexp' variable doesn't "see" spaces inside these
20535         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
20536         manually expose a space).
20538         Furthermore, the lax search engine acts on a bunch of spaces, not
20539         on individual spaces, so if the string contains sequential spaces
20540         like "  ", we need to keep them grouped together like this:
20541         "\\(  \\|[ ...][ ...]\\)".
20543 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20545         * lisp/isearch.el: Refactor momentary messages.
20546         (isearch--momentary-message): New function.
20547         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
20548         (isearch-toggle-invisible): Use it.
20550 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20552         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
20553         (isearch-define-mode-toggle): New macro.
20554         (isearch-toggle-invisible): Rename to
20555         `isearch-define-mode-toggle'.
20556         (isearch-toggle-case-fold, isearch-toggle-invisible)
20557         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
20558         with `isearch-define-mode-toggle'.
20560 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
20562         Avoid using `add-to-list' on a let-local var in tramp-smb.el
20564         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
20565         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
20567 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
20569         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
20570         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
20571         does not exist in XEmacs 21.4.
20573 2015-10-28  Anders Lindgren  <andlind@gmail.com>
20575         Fixed OS X startup crash
20577         Input events started to arrive before ns_term_init() was finished.
20578         Solved by blocking input.  This also seems to correct the "You
20579         can't open the application "Emacs" because it may be damaged or
20580         incomplete" error issued when double-clicking on the Emacs
20581         application.
20583         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
20584         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
20586 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20588         * src/process.c (Fget_buffer_process): Improve docstring.
20589         Document the fact that it doesn't return dead processes.
20591 2015-10-28  Anders Lindgren  <andlind@gmail.com>
20593         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
20595         * src/nsterm.h (struct ns_output): New flag, in_animation.
20596         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
20597         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
20598         in_animation flag around call to "setVisible". Set new tool bar
20599         height before call to setVisible.
20600         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
20601         andColumns:] as this fools the subsequent call to updateFrameSize
20602         from performing the real resize.
20603         (windowDidResize): Don't update anything when in_animation is
20604         non-zero.
20606         Trace output.
20608         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
20609         (EmacsToolbar):
20610         * src/nsterm.m (x_set_window_size, updateFrameSize)
20611         ([EmacsView setRows: andColumns:])
20613 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
20615         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
20617 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
20619         Prettify TeX macros not ending in a word char
20621         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
20622         Prettify macros which don't end in a word character.
20624 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
20626         Pipe Hg commit descriptions through 'tabindent'
20628         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
20629         through 'tabindent'.
20630         (vc-hg-log-view-mode): Set tab-width to 2 locally.
20631         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
20633 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
20635         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
20636         (tramp-smb-handle-directory-files): Use `delete-dups'.
20638         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
20640 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
20642         * lisp/international/ccl.el: Use lexical-binding.
20643         (ccl-compile-if): Remove unused var `false-ic'.
20644         (ccl-compile-write-repeat): Remove unused var `i'.
20645         (ccl-compile-map-single): Remove unused var `id'.
20646         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
20647         dynamic var `ccl-code'.
20649 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
20651         * lisp/json.el (json-new-object): Optimize trivial `list' call.
20653 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
20655         * lisp/help.el: Fix bug with incorrect arglist string.
20656         (help-add-fundoc-usage): Don't mistake a mis-formatted string
20657         for a list.
20659 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
20661         * lisp/gnus/gnus-topic.el: Silence some warnings.
20662         (gnus-topic-prepare-topic): Remove unused var `topic'.
20663         (gnus-topic-remove-topic): Mark unused arg `hide'.
20664         (gnus-tmp-header): Declare.
20665         (gnus-topic-goto-missing-group): Remove unused var `entry'.
20666         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
20667         (gnus-topic-copy-matching): Mark unused arg `copyp'.
20668         Move initialization of `topic' into its declaration.
20670 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
20672         Minor CEDET fixes
20674         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
20675         Handle warnings from gtags about invalid options.
20676         (cedet-gnu-global-create/update-database): Do incremental update
20677         properly.
20679         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
20680         Get monotone root right.
20682 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
20684         Fall back to polling in autorevert when needed
20686         * lisp/autorevert.el (auto-revert-notify-handler): When a
20687         `stopped' event arrives from file notification, fall back to polling.
20689         * test/automated/file-notify-tests.el
20690         (file-notify-test03-autorevert): Extend test for polling when file
20691         notification ceases to work.
20693 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
20695         Show full commit messages in 'hg log' when appropriate
20697         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
20698         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
20699         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
20701 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
20703         Use a plain SVG file for the icon
20705         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
20706           format instead of the Inkscape SVG format.
20708 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
20710         Fix subtle bug in auto-revert-tests.el
20712         * test/automated/auto-revert-tests.el
20713         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
20714         buffer where it belongs to.  (Bug#21668)
20716 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
20718         * lisp/emacs-lisp/map.el: Better docstrings.
20720         * lisp/emacs-lisp/seq.el: Better docstrings.
20722         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
20724 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
20726         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
20728 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
20730         Clarify that load-path contents should be directory file names
20732         * doc/lispref/files.texi (Directory Names): Define and use "directory
20733         file name".  Recommend `expand-file-name'.
20735         * src/lread.c (load-path): Fix doc string; elements are directory file
20736         names.
20738 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
20740         Fix simple-test.el test
20742         * test/automated/simple-test.el (simple-test--dummy-buffer):
20743         Make sure indentation doesn't use TABs, otherwise the 6th test
20744         might fail.
20746 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
20748         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
20749         `substring' does not account for full width characters.
20751 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
20753         Further work on `stopped' events in filenotify.el
20755         * doc/lispref/os.texi (File Notifications): Rework examples.
20757         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
20758         (file-notify--rm-descriptor, file-notify-callback): Improve check
20759         for sending `stopped' event.
20760         (file-notify-add-watch): Check for more events for `inotify'.
20762         * test/automated/file-notify-tests.el
20763         (file-notify--test-expected-events): New defvar.
20764         (file-notify--test-with-events): Use it.
20765         (file-notify--test-cleanup): Make it more robust when deleting
20766         directories.
20767         (file-notify--test-event-test): Check also for watched directories.
20768         (file-notify--test-event-handler): Suppress temporary .#files.
20769         (file-notify-test02-events, file-notify-test04-file-validity):
20770         Rework `stopped' events.
20771         (file-notify-test05-dir-validity): Wait for events when appropriate.
20773 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
20775         * src/keyboard.c (post-command-hook): Shorten docstring.
20777 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
20779         Fix infinite loop in sh-script's SMIE code
20781         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
20782         loop (bug#21747).
20784 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20786         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
20787         Character-fold search _still_ doesn't play well with
20788         lax-whitespace.  So disable it by default (again) for now.
20790 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20792         * lisp/isearch.el: No visual feedback for default search mode.
20793         During an isearch where character-folding is the default, we don't
20794         want to take up minibuffer space just to tell the user that
20795         "Char-fold " is on.  The same goes for other modes, if the user
20796         changes the default.  In contrast, if the user toggles OFF the
20797         default mode, they should see "Literal", to distinguish it from
20798         the default mode.
20799         (isearch--describe-regexp-mode): Return "" if describing the
20800         default mode, and return "literal " if describing a plain search
20801         and it is not default.
20803 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20805         * test/automated/simple-test.el: New file.
20806         Define tests for `newline' and `open-line'.
20808 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20810         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
20811         Also run `post-self-insert-hook' when called interactively.
20813 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20815         * lisp/simple.el (open-line): Fix docstring.
20816         Also explain apparently redundant line.
20818 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
20819             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
20821         Sync with soap-client repository, version 3.0.1
20823         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
20824         Bump version to 3.0.1.
20826         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
20828 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
20830         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
20832 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20834         * src/keyboard.c (post-command-hook): Extend the docstring.
20835         Mainly, explain how to use it without hanging Emacs, or giving the
20836         impression that it is hanging.  Also mention `pre-command-hook'.
20837         (pre-command-hook): Mention `post-command-hook'.
20839 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20841         * lisp/custom.el (custom-declare-variable): Shorten code again.
20842         Without using pcase this time.  We can't use pcase because it is
20843         loaded after custom in loadup.el.  Also add a comment explaining
20844         this to future dummies like me.
20846 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
20848         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
20850 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
20852         Introduce `stopped' event in file notification
20854         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
20855         (file-notify-rm-watch): Use it.
20856         (file-notify-callback): Implement `stopped' event.
20857         (file-notify-add-watch): Mention `stopped' in the docstring.
20858         Check, that upper directory exists.
20860         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
20861         Add two test cases.
20862         (file-notify-test02-events): Handle also `stopped' event.
20863         (file-notify-test04-file-validity): Add another test case.
20865 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
20867         Revert commit that broke 'make bootstrap'
20869         * lisp/custom.el (custom-declare-variable): Revert commit
20870         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
20871         even when pcase has not been defined yet, when doing bootstrapping.
20873 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
20875         Port recent inline functions fix to Standard C
20877         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
20878         All uses rewritten to define the function directly rather than to
20879         use a macro to define the function.  This conforms to Standard C,
20880         which does not allow stray semicolons at the top level.  I hope it
20881         also avoids the problems with TAGS.  Those macros, though clever,
20882         were pretty confusing anyway, and it wasn’t clear they were worth
20883         the aggravation even without the TAGS problem.
20885 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20887         * lisp/isearch.el: Make character-fold search the default again.
20889 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20891         * lisp/character-fold.el: Many improvements.
20892         (character-fold-search-forward, character-fold-search-backward):
20893         New command.
20894         (character-fold-to-regexp): Remove lax-whitespace hack.
20895         (character-fold-search): Remove variable.  Only isearch and
20896         query-replace use char-folding, and they both have their own
20897         variables to configure that.
20899 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20901         * lisp/isearch.el: Generalize definition of regexp-function toggles.
20902         (isearch-specify-regexp-function): New macro for specifying
20903         possible values of `isearch-regexp-function'.
20904         (isearch-toggle-character-fold, isearch-toggle-symbol)
20905         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
20907 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20909         * lisp/isearch.el (search-default-regexp-mode): New variable.
20910         (isearch-mode): Use it.
20912 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20914         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
20915         (search-slow-speed, search-upper-case)
20916         (search-nonincremental-instead, search-whitespace-regexp)
20917         (search-invisible, isearch-hide-immediately)
20918         (isearch-resume-in-command-history, search-ring-max)
20919         (regexp-search-ring-max, search-ring-update, search-highlight)
20920         (isearch-fail): Delete :group entries.
20922 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20924         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
20926 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
20928         addpm.c: Silence some warnings.
20930         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
20931         to LPBYTE.
20932         (add_registry): Pass NULL to optional lpClass argument of
20933         RegCreateKeyEx, not an empty string.
20935 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
20937         addpm.c: Do not add obsolete GTK libraries to the path.
20939         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
20940         (add_registry): Remove variables `size' and `gtk_key'.
20941         Do not add the GTK DLL directory to the library search path; it is
20942         confusing behavior (in particular, the same Emacs version with and
20943         without invoking addpm will use a different path), and the GTK image
20944         libraries are obsolete anyway.
20946 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
20948         addpm.c: Replace existing registry entries, but do not create new ones
20950         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
20951         existing values from previous versions, but do not add new ones; the
20952         key could exist for other reasons unrelated to old Emacsen, like X-style
20953         resources, or to set some environment variables like HOME or LANG, and
20954         in that case we don't want to populate it with obsolete values.
20956 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
20958         * nt/addpm.c (add_registry): Do not compute unused return value.
20960 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
20962         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
20964         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
20965         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
20966         current behavior because REG_OPTION_NON_VOLATILE is defined to
20967         be 0L anyway, but that option is actually documented only for
20968         RegCreateKeyEx.
20970 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
20972         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
20974 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
20976         Update frame title when redisplay scrolls selected window
20978         * src/xdisp.c (redisplay_window): Reconsider the frame's title
20979         when the mode-line of the frame's selected window needs to be
20980         updated.
20982 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
20984         Update frame title when scrolling the selected window
20986         * src/window.c (wset_update_mode_line): New function, sets either
20987         the window's update_mode_line flag or the global update_mode_lines
20988         variable.
20989         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
20990         (window_scroll_line_based): Call it instead of only setting the
20991         window's update_mode_line flag.
20993 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
20995         An even better fix for bug#21739
20997         * src/window.c (set_window_buffer): If the window is the frame's
20998         selected window, set update_mode_lines, not the window's
20999         update_mode_line flag.
21000         * src/buffer.c (Fkill_buffer): Undo last change.
21001         (set_update_modelines_for_buf): Function deleted.
21003 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
21004             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
21006         Sync with soap-client repository, version 3.0.0
21008         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
21009         Bump version to 3.0.0.
21011         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
21013         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
21015         * lisp/net/soap-inspect.el: Shorten first line description.
21017         * lisp/net/soap-client.el: Make a small whitespace fix.
21019         * lisp/net/soap-inspect.el: Update copyright years.
21021         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
21022         first use in soap-encode-xs-element.
21024         * lisp/net/soap-client.el (soap-type-is-array?): new defun
21025         (soap-encode-xs-element): handle array elements in this function
21026         (soap-encode-xs-complex-type): flag error if asked to encode an
21027         array type, this is handled in `soap-encode-xs-element'
21029         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
21030         Do not print type for attribute group.
21032         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
21033         New function.
21034         (soap-inspect-xs-attribute-group): Likewise.
21036         * lisp/net/soap-inspect.el
21037         (soap-resolve-references-for-xs-attribute-group): Resolve
21038         references of attributes in an attribute group.
21040         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
21041         type directly, not through soap-wsdl-get.
21043         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
21044         nil if reference attribute is nil.
21046         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
21047         Convert XML schema attributes to xsd:string.
21049         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
21050         New function.
21051         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
21052         (soap-sample-value-for-xs-complex-type): Likewise.
21053         (soap-inspect-xs-attribute): New function.
21054         (soap-inspect-xs-simple-type): Print attributes.
21055         (soap-inspect-xs-complex-type): Likewise.
21057         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
21058         Resolve references for attributes.
21059         (soap-resolve-references-for-xs-complex-type): Likewise.
21061         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
21062         Rename from soap-xml-node-first-child.
21063         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
21064         (soap-xs-parse-simple-type): Likewise.
21066         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
21068         * lisp/net/soap-client.el (soap-invoke-internal): New function.
21069         (soap-invoke-async): Call soap-invoke-internal.
21070         (soap-invoke): Likewise.
21072         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
21073         url-retrieve callback is killed.
21075         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
21076         Rename function.
21077         (soap-parse-wsdl-phase-fetch-imports): Likewise.
21078         (soap-parse-wsdl-phase-parse-schema): Likewise.
21079         (soap-parse-wsdl-phase-fetch-schema): Likewise.
21080         (soap-parse-wsdl-phase-finish-parsing): Likewise.
21081         (soap-parse-wsdl): Update calls.
21083         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
21085         * lisp/net/soap-client.el (soap-invoke-async): New function.
21086         (soap-invoke): Reimplement using soap-invoke-async.
21088         * lisp/net/soap-client.el (soap-parse-server-response):
21089         Improve docstring.
21090         (soap-invoke): Inline call to soap-parse-server-response.
21092         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
21093         Prevent incorrect warning.
21095         * lisp/net/soap-client.el (soap-parse-server-response):
21096         Rename soap-process-url-response.  Destroy the mime part.
21097         (soap-invoke): Call soap-parse-server-response.
21099         * lisp/net/soap-client.el: Update copyright date.
21101         * lisp/net/soap-client.el: Fix checkdoc issues.
21103         * lisp/net/soap-client.el: Fix indentation and long lines.
21105         * lisp/net/soap-client.el (soap-time-format): Remove variable.
21106         (soap-encode-xs-basic-type): Simplify date-time format detection.
21107         (soap-decode-xs-basic-type): Remove soap-time-format support.
21109         * lisp/net/soap-client.el (soap-process-url-response): New function.
21110         (soap-fetch-xml-from-url): Call soap-process-url-response.
21111         (soap-parse-wsdl-phase-1): New function.
21112         (soap-parse-wsdl-phase-2): Likewise.
21113         (soap-parse-wsdl-phase-3): Likewise.
21114         (soap-parse-wsdl-phase-4): Likewise.
21115         (soap-parse-wsdl-phase-5): Likewise.
21116         (soap-parse-wsdl): Call phase functions.
21118         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
21119         Remove one-argument and call.
21121         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
21123         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
21124         (soap-parse-schema): Add wsdl argument.  Look up XML schema
21125         imports from wsdl.
21126         (soap-load-wsdl): Do not set soap-xmlschema-imports.
21127         (soap-parse-wsdl): Get XML schema imports from wsdl.
21129         * lisp/net/soap-client.el (soap-current-file): Remove variable.
21130         (soap-wsdl): Add current-file slot.
21131         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
21132         file from wsdl.
21133         (soap-fetch-xml-from-file): Likewise.
21134         (soap-fetch-xml): Likewise.
21135         (soap-load-wsdl): Always create wsdl object first.
21136         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
21138         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
21139         (soap-xs-parse-element): Set is-group slot.
21140         (soap-resolve-references-for-xs-element): Skip is-group elements.
21141         (soap-xs-complex-type): Add is-group slot.
21142         (soap-xs-parse-complex-type): Set is-group slot.
21143         (soap-xs-parse-sequence): Parse xsd:group elements.
21144         (soap-resolve-references-for-xs-complex-type): Inline elements
21145         from referenced xsd:group nodes.
21146         (soap-parse-schema): Parse xsd:group nodes.
21148         * lisp/net/soap-client.el (soap-invoke):
21149         Don't set url-http-version to 1.0.
21151         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
21152         Allow choice nodes to accept multiple values.
21154         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
21155         for extra header values.
21157         * lisp/net/soap-client.el (soap-well-known-xmlns):
21158         Add wsa and wsaw tags.
21159         (soap-operation): Add input-action and output-action slots.
21160         (soap-parse-operation): Parse wsaw:Action nodes.
21161         (soap-encode-body): Encode service-url for WS-Addressing.
21162         (soap-create-envelope): Likewise.
21163         (soap-invoke): Update soap-create-envelope call to provide
21164         service-url argument.
21166         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
21167         Support xsi:type override attribute.
21168         (soap-decode-array): Likewise.
21170         * lisp/net/soap-client.el (soap-parse-schema):
21171         Handle location attribute.
21173         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
21174         matched validation regexp.
21176         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
21177         Encode xsd:list nodes.
21178         (soap-decode-xs-simple-type): Decode xsd:list nodes.
21180         * lisp/net/soap-client.el (soap-get-candidate-elements):
21181         Fix reference handling.
21183         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
21184         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
21185         (soap-xs-add-list): New function.
21187         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
21188         expected, interpret nil as "false".
21190         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
21191         gYear, gMonthDay, gDay and gMonth.
21193         * lisp/net/soap-client.el (soap-time-format): New variable.
21194         (soap-encode-xs-basic-type): Handle dateTime, time, date,
21195         gYearMonth, gYear, gMonthDay, gDay and gMonth.
21196         (soap-decode-date-time): New function.
21197         (soap-decode-xs-basic-type): Use soap-decode-date-time.
21199         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
21200         after encoding.
21201         (soap-decode-xs-basic-type): Validate value before decoding.
21203         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
21204         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
21206         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
21207         instead of overwriting it.
21208         (soap-validate-xs-simple-type): Add union support.
21210         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
21211         to Emacs regexp using xsdre-translate.
21212         (soap-validate-xs-simple-type): Validate value against pattern.
21214         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
21215         inline simpleType nodes.
21216         (soap-decode-type): Handle union types.
21218         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
21219         attributes.
21221         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
21222         from soap-xs-attribute-group-consolidate, all callers updated
21223         (soap-get-xs-attributes): Rename from
21224         soap-xs-attributes-consolidate, all callers updated
21226         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
21227         (soap-xs-attribute-group): New type.
21228         (soap-xs-parse-attribute-group): New function.
21229         (soap-resolve-references-for-xs-attribute-group): Likewise.
21230         (soap-xs-add-extension): Handle attribute groups.
21231         (soap-resolve-references-for-xs-simple-type): Likewise.
21232         (soap-xs-parse-complex-type): Likewise.
21233         (soap-xs-parse-extension-or-restriction): Likewise.
21234         (soap-resolve-references-for-xs-complex-type): Likewise.
21235         (soap-xs-attribute-group-consolidate): New function.
21236         (soap-xs-attributes-consolidate): Handle attribute groups.
21237         (soap-parse-schema): Likewise.
21239         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
21240         Fix boolean encoding.
21242         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
21243         element names in warnings.
21245         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
21247         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
21248         Eliminate invalid warnings for choice types.
21250         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
21251         Also encode base type attributes.
21253         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
21254         warning.  Print e-name in warnings, or element if e-name is nil.
21256         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
21257         (soap-xs-parse-element): Set substitution-group.
21258         (soap-resolve-references-for-xs-element): Populate alternatives slot.
21259         (soap-get-candidate-elements): New function.
21260         (soap-encode-xs-complex-type): Iterate through all candidate elements.
21261         Handle types with nil type indicator.  Fix warning logic.
21263         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
21264         earlier in the file to prevent compiler warning.
21266         * lisp/net/soap-client.el (soap-node-optional): New function.
21267         (soap-node-multiple): Likewise.
21268         (soap-xs-parse-element): Call soap-node-optional and
21269         soap-node-multiple.
21270         (soap-xs-complex-type): Add optional? and multiple? slots.
21271         (soap-xml-get-children-fq): New function.
21272         (soap-xs-element-get-fq-name): Likewise.
21273         (soap-xs-complex-type-optional-p): Likewise.
21274         (soap-xs-complex-type-multiple-p): Likewise.
21275         (soap-xs-attributes-consolidate): Likewise.
21276         (soap-decode-xs-attributes): Likewise.
21277         (soap-decode-xs-complex-type): Decode types with nil type indicator.
21278         Support children that use local namespaces.  Decode attributes.
21279         Add type considerations to optional? and multiple? warnings.
21281         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
21282         Store parsed attributes.
21283         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
21285         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
21286         Don't add the xsi:type attribute (Exchange refuses requests which have
21287         this attribute).
21289         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
21290         correct compiler warnings about unused function arguments and
21291         local variables.
21293         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
21294         type indicator.
21295         (soap-parse-envelope): Handle response headers.
21296         (soap-parse-response): Likewise.  Only return non-nil decoded values.
21298         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
21299         Return validated value.
21301         * lisp/net/soap-client.el (soap-xs-parse-element)
21302         (soap-xs-parse-simple-type)
21303         (soap-xs-parse-complex-type)
21304         (soap-parse-message)
21305         (soap-parse-operation): Add the current namespace to the element
21306         being created.
21307         (soap-resolve-references-for-xs-element)
21308         (soap-resolve-references-for-xs-simple-type)
21309         (soap-resolve-references-for-xs-complex-type)
21310         (soap-resolve-references-for-operation): Resolve the namespace to
21311         the namespace tag.
21312         (soap-make-wsdl): specify a namespace tag when creating the xsd
21313         and soapenc namespaces
21314         (soap-wsdl-resolve-references): don't update namespace tags in
21315         elements here
21316         (soap-parse-port-type): bind the urn: to soap-target-xmlns
21317         (soap-encode-body): don't add nil namespace tags to
21318         soap-encoded-namespaces
21320         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
21321         for registering the soap-inspect method.  Make debbugs tests pass.
21322         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
21323         type name, also skip string only nodes when decoding a structure.
21324         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
21325         types too.
21326         (soap-encode-body): Grab the header value from the param table.
21328         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
21329         New function.
21330         (soap-encode-xs-element): Don't encode nil value unless needed.
21332         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
21333         (soap-parse-binding): Parse the message parts required in the body.
21334         (soap-encode-body): Encode only the parts that are declared to be
21335         part of the body.
21337         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
21338         when writing out the tag.
21339         (soap-encode-body): Remove hack that inserts the xmlns in the
21340         element attributes list.
21342         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
21343         (soap-xs-parse-attribute): Default slot is set from the XML
21344         "fixed" attribute.
21345         (soap-encode-xs-complex-type-attributes): Encode any attributes
21346         that have a default value.  Also, don't put the xsi:nil attribute
21347         when the complex type has no content anyway.
21349         * lisp/net/soap-client.el (soap-well-known-xmlns):
21350         Add the xml namespace.
21351         (soap-local-xmlns): Start with the xml namespace.
21352         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
21353         (soap-make-xs-basic-types): More xsd types added.
21354         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
21355         Handle "language", "time", "date", "nonNegativeInteger".
21356         (soap-resolve-references-for-xs-element): Don't signal an error if
21357         the element does not have a type.
21358         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
21359         added stum for xsd:list.
21360         (soap-xs-add-union): Call soap-l2fq on all union members.
21361         (soap-xs-add-extension): Call soap-l2fq on the base member.
21362         (soap-resolve-references-for-xs-simple-type): Don't signal an
21363         error if the simple type has no base.
21364         (soap-resolve-references-for-xs-simple-type): Bugfix, call
21365         soap-wsdl-get on each type of the base.
21367         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
21368         Referenced type can be eiher a simple type or a basic type.
21369         (soap-xs-add-restriction)
21370         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
21371         (soap-make-xs-basic-types)
21372         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
21373         Add support for more XMLSchema basic types.
21374         (soap-current-file, soap-xmlschema-imports): New defvars.
21375         (soap-parse-schema): Add locations from xsd:import tags to
21376         `soap-xmlschema-imports'.
21377         (soap-wsdl): Make destructor private.
21378         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
21379         (soap-wsdl-add-alias): Check if we try to replace aliases.
21380         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
21381         (soap-fetch-xml): New defuns.
21382         (soap-load-wsdl): Update to load the WSDL from either a file or
21383         an url.
21384         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
21385         (soap-parse-wsdl): Process wsdl:import tags and imports from
21386         `soap-xmlschema-imports'.
21387         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
21388         symbol-name.
21389         (soap-l2fq): Make the name part always a string.
21390         (soap-name-p): New defun, used for name tests.
21392         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
21393         Supply sample values for choice types with a special tag.
21394         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
21395         Handle anonymous elements correctly.
21396         (soap-encode-value): Accept nodes that have no namespace tag.
21398         * lisp/net/soap-client.el (soap-invoke): Encode the string for
21399         `url-request-data' as UTF-8.  Fixes issue 16.
21401 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
21403         Update the new icon
21405         Move the E slightly to the right in the circle.
21407         * etc/images/icons/hicolor/128x128/apps/emacs.png:
21408         * etc/images/icons/hicolor/16x16/apps/emacs.png:
21409         * etc/images/icons/hicolor/24x24/apps/emacs.png:
21410         * etc/images/icons/hicolor/32x32/apps/emacs.png:
21411         * etc/images/icons/hicolor/48x48/apps/emacs.png:
21412         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
21413         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
21414         * nt/icons/emacs.ico: New icom update.
21416 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
21418         Avoid missing inline functions from lisp.h in TAGS
21420         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
21421         need to end each invocation with a semi-colon.
21422         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
21423         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
21424         inline functions defined immediately after each invocation, and
21425         also avoid tagging every invocation of these macros.
21427 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
21429         A better fix for bug#21739
21431         * src/buffer.c (set_update_modelines_for_buf): New function.
21432         (Fkill_buffer): Use it to set the global variable
21433         update_mode_lines if the killed buffer was displayed in some
21434         window.  Don't set windows_or_buffers_changed.  This is a better
21435         fix for bug#21739 than the previous fix, since it will cause only
21436         redisplay of mode lines, not of entire windows, but will still
21437         catch attention of x_consider_frame_title in xdisp.c, which
21438         redraws the frame title.
21440 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
21442         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
21443         tar.bz2 and tar.xz archives.
21445 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
21447         Fix infloop in redisplay introduced by a recent change
21449         * src/xdisp.c (redisplay_internal): Avoid inflooping when
21450         redisplaying the selected window sets the selected frame's
21451         redisplay flag.  (Bug#21745)
21453 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
21455         * lisp/emacs-lisp/thunk.el: Better documentation.
21457 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
21459         Replace the old icon for Windows and Mac OSX
21461         * nt/icons/emacs.ico:
21462         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
21463         Use the new icons.
21465 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
21467         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
21468         `load-path' should contain only directory names.
21470 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
21472         New library thunk.el
21474         thunk.el is extracted from stream.el in ELPA, with additional tests.
21476         * lisp/emacs-lisp/thunk.el: New file.
21477         * test/automated/thunk-tests.el: New file.
21478         * etc/NEWS: Add information about thunk.el
21480 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
21482         Fix bug#21669
21484         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
21485         calling low-level functions.
21487         * test/automated/file-notify-tests.el (file-notify--test-timeout):
21488         Decrase to 6 seconds for remote directories.
21489         (file-notify-test02-events): Expect different number of
21490         `attribute-changed' events for the local and remote cases.  Apply
21491         short delays between the operations, in order to receive all
21492         events in the remote case.  Combine `attribute-change' tests.
21493         (Bug#21669)
21495 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
21497         Decode the HTML source when displaying it in EWW
21499         * lisp/net/eww.el (eww-view-source): Decode the HTML source
21500         according to its headers.
21502 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
21504         New default icon
21506         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
21507         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
21508         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
21509         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
21510         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
21511         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
21512         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
21513         Move the old logo files to emacs23.*.
21514         * etc/images/icons/hicolor/128x128/apps/emacs.png:
21515         * etc/images/icons/hicolor/16x16/apps/emacs.png:
21516         * etc/images/icons/hicolor/24x24/apps/emacs.png:
21517         * etc/images/icons/hicolor/32x32/apps/emacs.png:
21518         * etc/images/icons/hicolor/48x48/apps/emacs.png:
21519         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
21520         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
21521         New files.
21522         * etc/images/icons/README: Update the copyright information.
21524 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
21526         Fix redisplay of frame title when current buffer is killed
21528         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
21529         non-zero value, to redisplay more than just the affected windows.
21530         (Bug#21739)
21532 2015-10-23  Anders Lindgren  <andlind@gmail.com>
21534         NextStep maximization and NSTRACE rewrite
21536         Full-height, full-width, and maximized windows now cover the
21537         entire screen (except the menu bar), including the part where the
21538         system dock is placed.  The system zoom animation is no longer
21539         used.
21541         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
21542         original size.
21544         * src/nsterm.m (ns_menu_bar_height): New function, return height of
21545         the menu bar, or 0 when it's hidden.
21546         (constrain_frame_rect): New function for constraining a frame.
21547         (ns_constrain_all_frames): Set frame size explicitly rather than
21548         relying on the system doing it for us by writing back the current
21549         frame size.
21550         (windowWillUseStandardFrame): Register non-maximized width or
21551         height as new user size.  When entering full width or height,
21552         the other size component is taken from the user size.
21553         (fullscreenState): New method for accessing the fullscreen state.
21554         (constrainFrameRect): Restrict frame to be placed under the menu bar,
21555         if present.  The old version, sometimes, restricted the height of a
21556         frame to the screen, this version never does this.
21557         (zoom): Perform zoom by setting the frame to the full size of the
21558         screen (minus the menu bar).  The default system function, with the
21559         zoom animation, is no longer used, as the final frame size doesn't
21560         cover the entire screen.
21562         Rework how to constrain resizing to the character grid.  The old
21563         system used "resizeIncrements" in NSWindows.  However, once a frame
21564         was resized so that it was not aligned to the text grid, it
21565         remained unaligned even after a resize.  In addition, it conflicted
21566         when resizing a fullheight window.
21568         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
21569         unless when pixelwise frame resizing is enabled.
21570         (updateFrameSize, initFrameFromEmacs)
21571         (toggleFullScreen, handleFS): Don't set resizeIncrements.
21573         Redesign the NS trace system.  The call structure is represented
21574         using indentations and vertical lines.  The NSTRACE macro accepts
21575         printf-style arguments.  New macros for printing various
21576         information.
21578         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
21579         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
21580         block (typically a function), accept printf-style arguments.
21581         (NSTRACE_MSG): Macro for extra information, accepts
21582         printf-style arguments.
21583         (NSTRACE_what): Macros for printing various types.
21584         (NSTRACE_FMT_what): Macro with printf format string snippets.
21585         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
21586         corresponds to NSTRACE_FMT_what.
21587         (NSTRACE_RETURN): Macro to print return value, accept
21588         printf-style arguments.
21589         (NSTRACE_RETURN_what): Macros to print return value for
21590         various types.
21592         * src/nsterm.m: Remove old NSTRACE macro
21593         * src/nsterm.m (nstrace_num): Trace counter.
21594         (nstrace_depth): Current call depth.
21595         (nstrace_leave): NSTRACE support function, called when the
21596         local variable "nstrace_enabled" goes out of scope using the
21597         "cleanup" extension.
21598         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
21599         (constrain_frame_rect, ns_constrain_all_frames)
21600         (ns_update_auto_hide_menu_bar, ns_update_begin)
21601         (ns_update_window_begin, update_window_end, ns_update_end)
21602         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
21603         (ns_frame_rehighlight, x_make_frame_visible)
21604         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
21605         (x_destroy_window, x_set_offset, x_set_window_size)
21606         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
21607         (ns_defined_color, frame_set_mouse_pixel_position)
21608         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
21609         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
21610         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
21611         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
21612         (dumpcursor, ns_draw_vertical_window_border)
21613         (ns_draw_window_divider, ns_draw_relief)
21614         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
21615         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
21616         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
21617         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
21618         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
21619         (ns_create_terminal, ns_term_init, sendEvent)
21620         (applicationDidFinishLaunching, applicationDidBecomeActive)
21621         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
21622         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
21623         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
21624         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
21625         (mouse_autoselect_window, in_window, mouseDragged)
21626         (rightMouseDragged, otherMouseDragged, windowShouldClose)
21627         (updateFrameSize, windowWillResize, windowDidResize)
21628         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
21629         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
21630         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
21631         (windowDidEnterFullScreen, windowWillExitFullScreen)
21632         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
21633         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
21634         (draggingEntered, performDragOperation, validRequestorForSendType)
21635         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
21636         (EmacsScroller_initFrame, EmacsScroller_setFrame)
21637         (EmacsScroller_dealloc, condemn, reprieve, judge)
21638         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
21639         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
21641         * src/nsfns.m: Remove old NSTRACE macro
21642         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
21643         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
21644         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
21646         * src/nsimage.m: Remove old NSTRACE macro
21647         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
21648         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
21650         * src/nsmenu.m: Remove old NSTRACE macro
21651         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
21652         Use new trace system.
21654 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
21656         No need to use eval-and-compile
21658         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
21659         autoload epg functions.
21661 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
21663         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
21665         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
21666         epg-context-set-passphrase-callback, epg-decrypt-string, and
21667         epg-encrypt-string; require epg when compiling for the setf-method
21668         for epg-context-armor. (bug#21724)
21670 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
21672         Include file cleanup for w32 files in src directory
21674         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
21675         fontset.h, blockinput.h.
21676         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
21677         charset.h, fontset.h.
21678         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
21679         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
21680         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
21681         in an ifdef-ed away block.
21682         Include fcntl.h for CYGWIN.
21683         (set_frame_param): Remove unused function.
21684         * src/w32select.c: Don't include charset.h and composite.h.
21685         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
21686         due to pointer signedness mismatches.
21687         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
21688         due to pointer signedness mismatches.
21689         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
21690         process.h, dispextern.h.
21691         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
21692         (Fw32_application_type): Avoid compiler warnings due to pointer
21693         signedness mismatches.
21694         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
21695         character.h, charset.h, dispextern.h.
21696         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
21697         to pointer signedness mismatches.
21698         * src/w32inevt.c: Don't include dispextern.h, window.h,
21699         termhooks.h, w32heap.h.
21700         * src/w32font.c: Don't include dispextern.h, character.h,
21701         charset.h, fontset.h, font.h.
21702         (intern_font_name, add_font_entity_to_list)
21703         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
21704         (list_all_matching_fonts): Avoid compiler warnings due to pointer
21705         signedness mismatches.
21706         * src/w32fns.c: Don't include character.h, intervals.h,
21707         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
21708         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
21709         (w32_color_map_lookup, add_system_logical_colors_to_map)
21710         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
21711         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
21712         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
21713         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
21714         compiler warnings, mainly due to pointer signedness mismatches.
21715         (unwind_create_frame_1): Remove unused function.
21716         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
21717         window.h, termhooks.h, dispextern.h.
21718         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
21719         signedness mismatch.
21720         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
21721         w32heap.h.
21723 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
21725         Improve doc-view wrt. auto-revert-mode
21727         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
21728         is corrupted (bug#21729).
21729         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
21731 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
21733         Describe dired-do-compress-to in the manual
21735         * etc/NEWS: Update.
21737         * lisp/dired-aux.el: Fix typo.
21739         * doc/emacs/dired.texi: Add entry.
21741 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
21743         Further fix for proper locale handling in tramp-gvfs.el
21745         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
21746         Just suppress LC_MESSAGES locale category settings.
21748 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
21750         New lispref section “Security Considerations”
21752         This attempts to document some of the issues recently discussed
21753         on emacs-devel, and to indicate other such issues.  The section
21754         could be a lot longer.
21755         * doc/lispref/os.texi (Security Considerations):
21756         New node.
21757         * doc/lispref/elisp.texi (Top):
21758         * doc/lispref/processes.texi (Shell Arguments):
21759         * lisp/subr.el (shell-quote-argument):
21760         * src/callproc.c (syms_of_callproc):
21761         Reference it.
21763 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
21765         Merge from gnulib
21767         This incorporates:
21768         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
21769         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
21770         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
21771         Copy from gnulib.
21773 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
21775         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
21776         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
21778 2015-10-21  Ken Brown  <kbrown@cornell.edu>
21780         Further include-file cleanup
21782         * src/sheap.c: Include stdlib.h.
21783         * src/unexcw.c: Include string.h.
21785 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
21787         Fix logic in 'server-kill-emacs-query-function'
21789         * lisp/server.el (server-kill-emacs-query-function): Correct the
21790         logic that controls whether the user is asked for confirmation.
21791         (Bug#21723)
21793 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
21795         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
21796         (isearch--lax-regexp-function-p): New function.
21798 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
21800         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
21801         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
21802         around `isearch-regexp-function'.
21804 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
21806         * lisp/isearch.el: Rename word search to regexp-function search.
21807         `isearch-word' went well beyond its original purpose, and the name
21808         no longer makes sense.  It is now called
21809         `isearch-regexp-function', and its value should always be a function
21810         that converts a string to a regexp (though setting it to t is still
21811         supported for now).
21812         (isearch-word): Make obsolete.
21813         (isearch-regexp-function): New variable.
21814         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
21815         (with-isearch-suspended, isearch-toggle-regexp)
21816         (isearch-toggle-word, isearch-toggle-symbol)
21817         (isearch-toggle-character-fold, isearch-query-replace)
21818         (isearch-occur, isearch-highlight-regexp)
21819         (isearch-search-and-update, isearch-message-prefix)
21820         (isearch-search-fun-default, isearch-search)
21821         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
21822         Use it.
21823         (isearch-lazy-highlight-regexp-function): New var.
21824         (isearch-lazy-highlight-word): Make obsolete.
21825         (isearch--describe-regexp-mode): New function.
21826         (isearch--describe-word-mode): Make obsolete.
21828         * lisp/info.el (Info-isearch-search):
21829         * lisp/replace.el (replace-search, replace-highlight):
21830         * lisp/obsolete/longlines.el (longlines-search-function):
21831         * lisp/hexl.el (hexl-isearch-search-function):
21832         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
21833         Use the new var.
21835 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
21837         Add dired-do-compress-to command bound to "c"
21839         * lisp/dired-aux.el (dired-shell-command): Use the caller's
21840           `default-directory', return the result of `process-file'.
21841         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
21842         used by default.
21843         (dired-compress-files-alist): New defvar.
21844         (dired-do-compress-to): New command.
21846         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
21847         (dired-do-compress-to): Add an autoload entry.
21849         * etc/NEWS: Add two entries.
21851 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
21853         Make RefTeX work with LaTeX subfiles package
21855         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
21856         document class argument as master file for referencing purposes.
21858 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
21860         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
21862 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
21864         Include-file cleanup for src directory
21866         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
21867         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
21868         but does not include it directly.  As a general rule, a source
21869         file should include foo.h if it needs the interfaces that foo.h
21870         defines.
21871         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
21872         systime.h.
21873         * src/atimer.c: Don’t include blockinput.h.
21874         * src/buffer.c: Include coding.h, systime.h.  Don’t include
21875         keyboard.h, coding.h.
21876         * src/callint.c: Don’t include commands.h, keymap.h.
21877         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
21878         systty.h, termhooks.h.
21879         * src/casetab.c: Don’t include character.h.
21880         * src/category.c: Don’t include charset.h, keymap.h.
21881         * src/ccl.h: Don’t include character.h.
21882         * src/character.c: Don’t include charset.h.
21883         * src/charset.c: Don’t include disptab.h.
21884         * src/chartab.c: Don’t include ccl.h.
21885         * src/cm.c: Don’t include frame.h, termhooks.h.
21886         * src/cmds.c: Don’t include window.h, dispextern.h.
21887         * src/coding.c: Don’t include window.h, frame.h.
21888         * src/composite.c: Include composite.h.  Don’t include window.h,
21889         font.h.
21890         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
21891         * src/dbusbind.c: Don’t include frame.h.
21892         * src/decompress.c: Don’t include character.h.
21893         * src/dired.c: Don’t include character.h, commands.h, charset.h.
21894         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
21895         process.h, timespec.h.  Include systime.h.
21896         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
21897         * src/editfns.c: Include composite.h.  Don’t include frame.h.
21898         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
21899         commands.h, systty.h..
21900         * src/fileio.c: Don’t include intervals.h, dispextern.h.
21901         Include composite.h.
21902         * src/filelock.c: Don’t include character.h, systime.h.
21903         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
21904         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
21905         * src/font.c: Include termhooks.h.
21906         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
21907         struct composition_it, struct face, struct glyph_string.
21908         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
21909         intervals.h, window.h, termhooks.h.
21910         * src/frame.c: Don’t include character.h, commands.h, font.h.
21911         * src/frame.h: Don’t include dispextern.h.
21912         * src/fringe.c: Don’t include character.h.
21913         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
21914         character.h, charset.h, fontset.h.
21915         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
21916         fontset.h.
21917         * src/ftxfont.c: Don’t include dispextern.h, character.h,
21918         charset.h, fontset.h.
21919         * src/gfilenotify.c: Don’t include frame.h, process.h.
21920         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
21921         Don’t include syssignal.h, buffer.h, charset.h, font.h.
21922         * src/gtkutil.h: Don’t include frame.h.
21923         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
21924         Don’t include character.h.
21925         * src/indent.c: Don’t include keyboard.h, termchar.h.
21926         * src/inotify.c: Don’t include character.h, frame.h.
21927         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
21928         * src/intervals.c: Don’t include character.h, keyboard.h.
21929         * src/intervals.h: Don’t include dispextern.h, composite.h.
21930         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
21931         Include coding.h.
21932         * src/keyboard.h: Don’t incldue systime.h.
21933         * src/keymap.c: Don’t include charset.h, frame.h.
21934         * src/lread.c: Include dispextern.h and systime.h.
21935         Don’t include frame.h.  Include systime.h.
21936         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
21937         * src/menu.c: Include character.h, coding.h.  Don’t include
21938         dispextern.h.
21939         * src/menu.h: Don’t include systime.h.
21940         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
21941         intervals.h, termhooks.h.
21942         * src/print.c: Include coding.h.  Don’t include keyboard.h,
21943         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
21944         Add forward decl of struct terminal.
21945         * src/process.c: Don’t include termhooks.h, commands.h,
21946         dispextern.h, composite.h.
21947         * src/region-cache.c: Don’t include character.h.
21948         * src/scroll.c: Don’t include keyboard.h, window.h.
21949         * src/search.c: Don’t include category.h, commands.h.
21950         * src/sound.c: Don’t include dispextern.h.
21951         * src/syntax.c: Don’t include command.h, keymap.h.
21952         * src/sysdep.c: Don’t include window.h, dispextern.h.
21953         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
21954         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
21955         * src/terminal.c: Include character.h.
21956         Don’t include charset.h, coding.h.
21957         * src/textprop.c: Don’t include character.h.
21958         * src/undo.c: Don’t include character.h, commands.h, window.h.
21959         * src/unexsol.c: Don’t include character.h, charset.h.
21960         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
21961         window.h, dispextern.h, blockinput.h, character.h, font.h.
21962         * src/widgetprv.h: Don’t include widget.h.
21963         * src/window.c: Don’t include character.h, menu.h, intervals.h.
21964         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
21965         macros.h, process.h.
21966         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
21967         intervals.h.
21968         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
21969         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
21970         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
21971         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
21972         * src/xgselect.c: Don’t include timespec.h, frame.h.
21973         Include systime.h.
21974         * src/xgselect.h: Don’t include time.h.
21975         Use a forward decl to struct timespec instead.
21976         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
21977         dispextern.h.  Include systime.h.
21978         * src/xml.c: Don’t include character.h.
21979         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
21980         * src/xselect.c: Don’t include dispextern.h, character.h,
21981         buffer.h, process.h.
21982         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
21983         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
21984         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
21986 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
21988         (/ N) now returns the reciprocal of N
21990         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
21991         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
21992         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
21993         (color-xyz-to-srgb, color-xyz-to-lab):
21994         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
21995         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
21996         (shr-color-hsl-to-rgb-fractions):
21997         Exploit the change to simplify the code a bit.
21998         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
21999         Don’t complain about single-argument calls to ‘/’.
22000         * src/data.c (arith_driver, float_arith_driver):
22001         Implement the change.
22003 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
22005         Call vc-dir-refresh after stash operations
22007         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
22008         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
22010         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
22011         since it can be abbreviated (as returned by vc-find-root).
22013 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
22015         * lisp/vc/vc-svn.el:
22016         * lisp/vc/vc-mtn.el:
22017         * lisp/vc/vc-hg.el:
22018         * lisp/vc/vc-cvs.el:
22019         * lisp/vc/vc-git.el:
22020         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
22021         Its usages have been replaced with vc-run-delayed.
22023 2015-10-20  Dima Kogan  <dima@secretsauce.net>
22025         Fix memory leak in fontset handling
22027         * src/font.c (copy_font_spec): Make a deep copy of the input
22028         argument FONT.  (Bug#21651)
22030 2015-10-20  Michael Sperber  <mike@xemacs.org>
22032         * lisp/gnus/mailcap.el (mailcap-mime-data):
22033         Conditonalize `doc-view-mode', which does not exist on XEmacs.
22035 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
22037         Update the way directories are compressed
22039         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
22040         for *.tar.gz decompression to use a pipe.
22041         Add an entry for the default directory compression (to *.tar.g).
22042         (dired-compress-file): Update.
22044         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
22046 2015-10-20  Michael Sperber  <mike@xemacs.org>
22048         Unbreak `group' option for `mail-sources'
22050         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
22051         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
22052         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
22054 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
22056         New function seq-position
22058         * lisp/emacs-lisp/seq.el (seq-position): New function.
22059         * test/automated/seq-tests.el: New tests for seq-position.
22060         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
22062 2015-10-19  Ken Brown  <kbrown@cornell.edu>
22064         Enable --with-wide-int build on 32-bit Cygwin
22066         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
22067         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
22069 2015-10-19  Glenn Morris  <rgm@gnu.org>
22071         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
22073 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
22075         Resurrect image loading under auto-image-file-mode
22077         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
22078         'openp' specially.  This special case was lost in the changes on
22079         2015-08-18.  (Bug#21685)
22081 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
22083         Fix return value of 'set-file-extended-attributes'
22085         * lisp/files.el (set-file-extended-attributes): Return non-nil
22086         when setting either ACLs or SELinux context succeeds.  Document
22087         the return value.  (Bug#21699)
22089         * doc/lispref/files.texi (Changing Files): Document the return
22090         value of set-file-extended-attributes.
22092 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
22094         Improve documentation of functions that change files
22096         * doc/lispref/files.texi (Changing Files): Document that these
22097         functions signal an error on failure.
22099 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
22101         Fix doc string of 'shell-quote-argument'
22103         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
22105 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
22107         Some minor Tramp changes
22109         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
22111         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
22112         Expand `tramp-auto-save-directory'.
22114 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
22116         Minor edits in Tramp
22118         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
22119         Declare it.
22121         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
22122         Remove declaration.
22124 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
22126         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
22128 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
22130         Avoid crashes when redisplayng a window changes faces or fonts
22132         * src/xdisp.c (redisplay_internal): If redisplaying the selected
22133         window or one of the frames turns on the frame's 'redisplay' flag,
22134         redisplay again.  (Bug#21428)
22136         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
22138 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
22140         Solve timimg issues in file-notify-tests.el
22142         * test/automated/file-notify-tests.el (file-notify-test02-events):
22143         Rectify `attribute-change' tests.  There are timing issues with
22144         gfilenotify.  (Bug#21669)
22146 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
22148         Fix quoting of data within htmlfontify doc
22150         * doc/misc/htmlfontify.texi (Data Structures, Customization):
22151         Fix quoting of data structures.  A Lisp quote is needed only
22152         when data appears within Lisp code.
22154 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
22156         * lisp/emacs-lisp/package.el: Reload archive-contents if
22157         priorities change.
22158         (package--old-archive-priorities): New variable.
22159         (package-read-all-archive-contents, package-menu--refresh): Use it
22160         to decide when the `package-archive-contents' needs to be read
22161         again.
22163 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
22165         Make src headers idempotent and standalone
22167         Redo src/*.h so that each include file is idempotent (that is, can
22168         be included multiple times with the latter inclusions having no
22169         effect) and standalone (that is, can be included by itself,
22170         with no include file other than config.h needed as a prerequisite).
22171         This is standard practice in GNU programs nowadays.
22172         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
22173         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
22174         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
22175         * src/regex.h [emacs]:
22176         * src/syntax.h, src/systty.h, src/termhooks.h:
22177         Include lisp.h, for Lisp_Object.
22178         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
22179         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
22180         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
22181         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
22182         * src/termopts.h, src/tparam.h, src/unexec.h:
22183         Protect against multiple inclusion.
22184         * src/buffer.h: Include character.h, for STRING_CHAR.
22185         * src/emacsgtkfixed.h (struct frame):
22186         * src/fontset.h (struct face):
22187         * src/region-cache.h (struct buffer):
22188         * src/termhooks.h (struct glyph):
22189         * src/xsettings.h (struct x_display_info):
22190         Add possibly-forward decl.
22191         * src/syntax.h: Include buffer.h, for BVAR.
22192         * src/sysselect.h: Include lisp.h, for eassume.
22193         * src/termchar.h: Include <stdio.h>, for FILE.
22194         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
22195         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
22197 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
22199         Handle symlink targets containing spaces in tramp-gvfs.el
22201         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
22202         Handle symlink targets containing spaces.
22204 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
22206         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
22208         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
22209         same reason that `load-path' shouldn't.  Setting it via the customize
22210         interface is a trap for the user.
22212         Installed themes commonly add themselves to this variable, which means
22213         its value is not fit for being saved (it will permanently remember dirs
22214         that don't exist anymore).
22216         This is aggravated by the fact that Emacs always applies the `user'
22217         theme on top of any theme that's loaded, since this will apply the old
22218         variable value and remove any new directories that had been recently
22219         added by themes themselves.
22221         Not to mention, we already have `custom-theme-directory', which is safe
22222         to customize.
22224 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
22226         * lisp/mpc.el: Rename the new toggling commands.
22227         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
22228         (mpc-toggle-shuffle): Add "-toggle" in the name.
22230 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
22232         Improve the doc string of 'completion-boundaries'
22234         * lisp/minibuffer.el (completion-boundaries): Rename the argument
22235         TABLE to COLLECTION, for consistency with other high-level
22236         completion functions.  Document how COLLECTION is called if it
22237         is a function.  (Bug#21644)
22239 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
22241         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
22243 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
22245         Make dired-do-compress work for *.zip files
22247         * lisp/dired-aux.el (dired-check-process): Transform the top-level
22248           comment into a docstring.
22249         (dired-shell-command): New command.  This mirrors
22250         `dired-check-process', but is more user-friendly for passing
22251         arguments.
22252         (dired-compress-file-suffixes): Allow to specify the command switches
22253         along with input (%i) and output (%o) inside the PROGRAM part.
22254         Add an entry for *.zip files, and update the entry for *.tar.gz files
22255         to the new style.  Update the docstring.
22256         (dired-compress-file): When PROGRAM matches %i or %o, use the new
22257         logic.
22258         (dired-update-file-line): Avoid an error when at end of buffer.
22260         Fixes bug#21637.
22262 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
22264         Minor improvement in documentation of internals
22266         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
22268 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
22270         Improve documentation of COLLECTION in completion functions
22272         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
22273         cross-reference to "Programmed Completion".
22275         * src/minibuf.c (Fcompleting_read): Improve the doc string.
22276         (Bug#21644)
22278 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
22280         Add more release info to etc/HISTORY
22282         * etc/HISTORY: Add more release information about 19.x and 20.x
22283         versions.
22285 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
22287         New file etc/HISTORY
22289         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
22290         * etc/HISTORY: New file.
22291         * etc/NEWS: Mention it.
22293 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
22295         js-mode: Don't misindent generator methods
22297         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
22298         generator methods from multiplication operator
22299         (https://github.com/mooz/js2-mode/issues/275).
22301 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
22303         Fix animation timeout delay calculation
22305         * lisp/image.el (image-animate-timeout):
22306         Don’t assume speed is floating-point.
22308 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
22310         Add commands for controlling MPD modes
22312         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
22313         (mpc-cmd-single): New functions.
22314         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
22315         (mpc-mode-menu): Add new commands as menu items.
22317 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
22319         Refer to `(elisp)Basic Completion' in completing-read docstring
22321         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
22322         Completion' in the docstring (bug#21644).
22324 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
22326         * lisp/mpc.el (mpc-format): Always push form to pred
22328 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
22330         Spelling fixes
22332         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
22333         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
22334         Fix misspelling of nonexistent file name.
22336 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
22338         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
22340 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
22342         Some editing fixes in Tramp
22344         * lisp/net/tramp-gvfs.el:
22345         * doc/misc/tramp.texi: "customer option" -> "custom option".
22347         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
22349 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
22351         Use proper localization in tramp-gvfs.el
22353         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
22354         Suppress localized settings in order to proper parse gfvs output.
22356 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
22358         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
22359         Quote argument in proper order.  (Bug#21562)
22361 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
22363         Fix typos in docstrings
22365         * lisp/emacs-lisp/map.el:
22366         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
22367           macros.
22369 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
22371         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
22373 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
22375         Make dired-jump work with tar-subfile-mode
22377         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
22378           emitting an error, switch to `tar-superior-buffer'.
22380 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
22382         * .gitignore: Add build-aux/ar-lib.
22384 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
22386         Better docstrings in seq.el and map.el
22388         * lisp/emacs-lisp/map.el:
22389         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
22391 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
22393         Merge from gnulib
22395         This incorporates:
22396         2015-10-13 binary-io, u64, unistd: port to strict C
22397         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
22398         2015-09-25 c-ctype: port better to z/OS EBCDIC
22399         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
22400         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
22401         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
22402         Copy from gnulib.
22404 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
22406         Take XPNTR private
22408         * src/alloc.c (PURE_POINTER_P): Remove.
22409         All uses replaced with PURE_P.
22410         (XPNTR_OR_SYMBOL_OFFSET): New function.
22411         (XPNTR): Move here from lisp.h.
22412         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
22413         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
22414         Remove unnecessary cast.
22415         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
22416         to avoid an unnecessary runtime test for symbols.
22417         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
22418         Only alloc.c needs XPNTR now.
22420 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
22422         Add MPC play/pause command
22424         * lisp/mpc.el (mpc-toggle-play): New command.
22425         (mpc-mode-map): Bind it to "s".
22426         (mpc-mode-menu): Add corresponding menu item.
22428 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
22430         Add bindings and menu items for prev and next tracks
22432         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
22433         "<" to mpc-prev.
22434         (mpc-mode-menu): Add corresponding menu items
22436 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
22438         Reduce face-related consing during frame creation.
22440         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
22441         attribute list once.
22442         (face-spec-reset-face): Use it instead of building the list.
22444 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
22446         Do process ConfigureNotify events indicating size changes.
22448         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
22449         events don't have the same size, process each one.
22451 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
22453         Derive mpc-mode from special-mode
22455         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
22456         (mpc-mode): Derive from special mode.
22457         (mpc-songs-mode-map): Don't set parent keymap.
22459 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
22461         Fix error messages for when covers are not found.
22463         The last change to mpc-format let the binding to file call
22464         mpc-file-local-copy with nil argument.  Instead, employ if-let here
22465         so nil bindings don't result in needless computation and errors.
22466         * lisp/mpc.el: Require 'subr-x at compile time.
22467         * lisp/mpc.el (mpc-format): Use if-let.
22469 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
22471         Make dired-do-compress work for *.tar.gz files
22473         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
22474           "tar -zxvf" to *.tar.gz; update docstring.
22476         (dired-compress-file): Allow to specify switches after the command in
22477         `dired-compress-file-suffixes'.
22479 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
22481         Make dired-do-compress work for directories
22483         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
22484           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
22485         Also convert the top comment into a docstring.
22487 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
22489         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
22491         ... since it might come straight from the memoizing table.
22493 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
22495         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
22497 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
22499         Use special-mode in eww list modes
22501         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
22502         (eww-buffers-mode): Derive from special-mode and remove redundant
22503         setting of buffer-read-only.
22504         (eww-mode-map): Remove redundant keymap parent setting.
22505         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
22506         Remove redundant keymap suppressions and mappings.
22508 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
22510         Allow setting frame pixel sizes from frame parameters (Bug#21415)
22512         Also fix some misfeatures in frame (re-)sizing code, add more
22513         debugging information and remove some dead code.
22515         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
22516         parameter names when setting `frame-size-history'.
22517         (frame--size-history): New function.
22519         * src/frame.c (frame_inhibit_resize): If frame has not been made
22520         yet, return t if inhibit_horizontal_resize or
22521         inhibit_vertical_resize bit have been set.
22522         (adjust_frame_size): Simplify.
22523         (make_frame): Initialize inhibit_horizontal_resize,
22524         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
22525         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
22526         inhibit_vertical_resize slots.
22527         (x_set_frame_parameters): Handle `text-pixels' specification for
22528         width and height parameters.  Don't consider new_height or
22529         new_width changes.  Call adjust_frame_size instead of
22530         Fset_frame_size.
22531         (x_figure_window_size): Two new arguments x_width and y_width
22532         returning frame's figures width and height.  Calculate tool bar
22533         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
22534         Handle `text-pixels' specification for width and height
22535         parameters.
22536         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
22537         (Qx_set_window_size_1, Qx_set_window_size_2)
22538         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
22539         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
22540         (Qfree_frame_menubar_2): New symbols.
22541         * src/frame.h (structure frame): New booleans
22542         tool_bar_redisplayed, tool_bar_resized,
22543         inhibit_horizontal_resize, inhibit_vertical_resize.
22544         (x_figure_window_size): Update external declaration.
22545         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
22546         calling gtk_window_resize.
22547         (update_frame_tool_bar): Make inhibiting of frame resizing more
22548         discriminative.  Set tool_bar_resized bit.
22549         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
22550         resizing more discriminative.  Call adjust_frame_size instead of
22551         x_set_window_size.
22552         (Fx_create_frame): Handle x_width and x_height if
22553         set by x_figure_window_size.
22554         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
22555         subtract 3 from tool bar height.
22556         (x_set_window_size): Add frame_size_history_add call.
22557         (x_new_font): Call adjust_frame_size instead of
22558         x_set_window_size.
22559         * src/w32fns.c (x_change_tool_bar_height): Reset
22560         tool_bar_redisplayed and tool_bar_resized bits when adding tool
22561         bar.  Make inhibiting of frame resizing more discriminative.
22562         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
22563         (Fx_create_frame): Handle x_width and x_height if set by
22564         x_figure_window_size.  Set size hints before adjusting frame size.
22565         (x_create_tip_frame): Adjust x_figure_window_size call.
22566         * src/w32term.c (x_set_window_size): Add frame_size_history_add
22567         call.
22568         * src/widget.c (set_frame_size): Remove dead code.  Add
22569         frame_size_history_add call.  When frame_resize_pixelwise is t
22570         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
22571         pixel_width and pixel_height.
22572         (update_various_frame_slots): Remove dead code.
22573         (EmacsFrameResize): Add more information in
22574         frame_size_history_add call.
22575         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
22576         is not set.
22577         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
22578         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
22579         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
22580         tool_bar_resized bits when adding tool bar.  Make inhibiting of
22581         frame resizing more discriminative.
22582         (Fx_create_frame): Handle x_width and x_height if set by
22583         x_figure_window_size.  Set size hints before adjusting frame size.
22584         (x_create_tip_frame): Adjust x_figure_window_size call.
22585         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
22586         (set_frame_menubar): On Lucid never add core-border-width to
22587         avoid that adding XtNinternalBorderWidth adds it again.
22588         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
22589         * src/xterm.c (x_new_font): In non-toolkit case handle size
22590         change of menu bar.
22591         (x_set_window_size_1): Fix calls to frame_size_history_add.
22592         (x_wm_set_size_hint): Remove dead code.  Set
22593         size_hints.min_width and size_hints.min_height to base_width and
22594         base_height.
22596 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
22598         * test/automated/file-notify-tests.el (file-notify--test-timeout):
22599         Add docstring.  Increase to 10 seconds for remote
22600         directories.  (Bug#21669)
22602 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
22604         Unmacroize ebrowse.c and etags.c a bit
22606         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
22607         (streq, filename_eq, set_flag, has_flag): Now inline functions.
22608         (set_flag): First arg is now an address, not an lvalue.
22609         All callers changed.
22610         (filename_eq, set_flag, has_flag):
22611         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
22612         All callers changed.
22613         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
22614         Now inline functions.  Remove asserts that are unnecessary these
22615         days (and in some cases were too-generous anyway).
22617 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
22619         Use highlight for current items
22621         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
22622         Apply highlight face instead of region face.
22624 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
22626         Search for more cover image names in MPC
22628         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
22629         case insensitively
22631 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
22633         Remove or comment out unused variables
22635         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
22636         nontext_cursor, mode_cursor, hand_cursor and count.
22637         (x_change_tool_bar_height): Remove variable old_text_height.
22638         (deliver_wm_chars): Remove variable strip_Alt.
22639         (Fw32_shell_execute): Remove variable document_a.
22640         (Fw32_frame_geometry): Remove variable fullboth.
22641         * src/w32term.c (w32_setup_relief_color): Comment out variable
22642         w32_display_info.
22643         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
22644         (w32_read_socket): Comment out variables rows, columns.
22645         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
22647 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
22649         * src/w32proc.c (sys_select): Fix bitwise test.
22651 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
22653         Minor typo corrections in doc strings
22655         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
22656         Doc fixes.
22658 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
22660         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
22662 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
22664         Attempt to avoid crashes in plist-member
22666         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
22667         and a call to XCDR.  (Bug#21655)
22669 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
22671         * lisp/select.el (gui-get-primary-selection): In
22672         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
22674 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
22676         Support RTF in doc-view
22678         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
22680 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
22682         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
22684 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
22686         Replace the usage of an obsolete function in auth-source.el
22688         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
22689         Replace an usage of `epg-context-set-armor' with `setf'.
22691 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
22693         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
22695 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
22697         Have calc-yank recognize numbers in different bases.
22699         * lisp/calc/calc-yank.el (math-number-regexp): New function.
22700         (calc-yank): Use `math-number-regexp' to recognize numbers.
22702 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
22704         Handle an opaque-move X11 window manager operation more efficiently
22706         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
22707         followed by more ConfigureNotify events for the same window, process
22708         only the last one.
22710 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
22712         Fix cursor setting for tip frame; re-enable cursor generation
22714         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
22715         attributes sent when creating the new X window.  Don't skip setting
22716         the pointerColor parameter.
22718 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
22720         Rewrite x_set_mouse_color to sync less
22722         We can track serial numbers of X requests and correlate error events
22723         with the associated requests.  This way we can identify errors for
22724         specific calls without having to use XSync after every one.
22726         * src/xfns.c (enum mouse_cursor): New type.
22727         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
22728         (mouse_cursor_types): New array listing the Lisp variables and default
22729         cursor appearances for each cursor type.
22730         (x_set_mouse_color_handler): New function; checks error event serial
22731         number against submitted requests.
22732         (x_set_mouse_color): Updated to use the new error handler callback,
22733         and to be more table-driven, to simplify repetitious code.
22735 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
22737         Add x_catch_errors_with_handler
22739         * src/xterm.c (struct x_error_message_stack): Add new fields for a
22740         callback function and associated data pointer.
22741         (x_error_catcher): If the callback function is set, call it after
22742         saving the error message string.
22743         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
22744         accepts a callback function and data pointer.
22745         (x_catch_errors): Now a wrapper function.
22746         * src/xterm.h (x_special_error_handler): New typedef.
22747         (x_catch_errors_with_handler): Declare.
22749 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
22751         Introduce x_uncatch_errors_after_check to reduce XSync calls
22753         Both x_had_errors_p and x_check_errors call XSync, so if they're
22754         immediately followed by x_uncatch_errors, its XSync call will be
22755         redundant, resulting in a wasted round trip to the X server.
22757         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
22758         x_uncatch_errors without the XSync call.
22759         (XTmouse_position, x_wm_supports):
22760         * src/xfns.c (x_set_mouse_color):
22761         * src/xmenu.c (Fx_menu_bar_open_internal):
22762         * src/xselect.c (x_own_selection, x_get_foreign_selection):
22763         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
22764         * src/xterm.h (x_uncatch_errors_after_check): Declare.
22766 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
22768         Document the optional prefix to `calc-yank'
22770         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
22771         prefix to `calc-yank'.
22772         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
22773         the Calc buffer are yanked back unchanged.
22775 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
22777         * lisp/calendar/calendar.el: Display buffer before executing body.
22779         In each use of this macro, the modeline is derived from a window width
22780         calculation, which will be wrong if (display-buffer) splits the window
22781         horizontally.
22783 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
22785         Use ‘echo’ safely with ‘\’ or leading ‘-’
22787         POSIX says that ‘echo FOO’ produces implementation-defined output
22788         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
22789         behavior in that case.
22790         * Makefile.in (removenullpaths): Remove.
22791         (epaths-force): Rewrite to avoid the need for ‘echo’.
22792         (install-etc): Be clearer about escaping the shell metacharacters
22793         ‘\’ and ‘$’.
22794         * Makefile.in (install-arch-indep, install-etcdoc):
22795         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
22796         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
22797         * configure.ac, lib-src/rcs2log, make-dist:
22798         * src/Makefile.in (lisp.mk):
22799         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
22800         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
22801         if $foo can contain arbitrary characters.
22802         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
22803         * doc/lispref/two-volume.make (vol1.pdf):
22804         * test/etags/make-src/Makefile (web ftp publish):
22805         Use ‘printf’ rather than ‘echo -e’.
22807 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
22809         Allow numbers with different radixes to be yanked.
22811         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
22812         default base 10.
22814 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
22816         Improve CHECK_IMPURE and PURE_P speedup
22818         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
22820 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
22822         Use events instead of chars to keep track of steps.
22824         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
22825         to keep track of steps.
22827 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
22829         Fix --enable-gcc-warnings problem with older GCC
22831         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
22832         This is for building with --enable-gcc-warnings with
22833         GCC 4.6 through 5.0.
22835 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
22837         Fix vertical-motion in truncated lines that end in a stretch
22839         * src/indent.c (Fvertical_motion): Expect overshoot when point is
22840         beyond window margin and lines are truncated, even if we have a
22841         stretch at point.  (Bug#21468)
22843 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
22845         Avoid link-time errors due to inline functions
22847         * src/emacs.c: Include puresize.h, to avoid link-time errors in
22848         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
22849         inline functions.
22851 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
22853         * src/data.c (Faset): Fix last change.
22855 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
22857         CHECK_IMPURE and PURE_P speedup
22859         * src/intervals.c (create_root_interval):
22860         Do CHECK_IMPURE only for strings; not needed for buffers.
22861         Prefer ! STRINGP to BUFFERP, for a tad more speed.
22862         * src/puresize.h (CHECK_IMPURE, PURE_P):
22863         Now inline functions instead of macros.
22864         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
22865         All callers changed.
22866         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
22867         All callers changed.
22869 2015-10-09  Noah Friedman  <friedman@splode.com>
22871         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
22873 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22875         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
22877         our after-change-function, rather than re-adding it if it was removed.
22879 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22881         * lisp/cedet/ede: Silence some compiler warnings
22883         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
22884         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
22885         (ede-apply-object-keymap, ede-reset-all-buffers)
22886         (ede-auto-add-to-target): Use dolist.
22887         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
22888         Use field names rather than initarg names in `oref'.
22889         (ede-load-project-file): Remove unused var `file'.
22890         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
22891         (ede-set): Remove unused var `a'.
22893         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
22894         (ede-project-autoload): Avoid the old-style "name" argument.
22895         (ede-emacs-find-matching-target): Use field names rather than initarg
22896         names in `oref'.
22898         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
22899         (ede-linux-load, ede-project-autoload): Avoid the old-style
22900         "name" argument.
22901         (ede-linux-find-matching-target): Use field names rather than initarg
22902         names in `oref'.
22904 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22906         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
22908 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22910         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
22911         indenting too far after ":-".
22913 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
22915         Update case-table and categories of recently added characters
22917         * lisp/international/characters.el: Update information about Latin
22918         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
22919         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
22920         blocks.  (Byug#21654)
22922 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
22924         * src/frame.c (adjust_frame_size): In minibuffer-only windows
22925         don't count minibuffer height twice.  (Bug#21643)
22927 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
22929         Avoid inflooping in font-lock
22931         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
22932         inhibit-field-text-motion around the call to
22933         line-beginning-position, to avoid inflooping.  (Bug#21615)
22935 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
22937         Refactor duplicated code; ensure default is in completions
22939         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
22940         New function.
22941         (reftex-extract-bib-entries): Use it.
22942         (reftex-extract-bib-entries-from-thebibliography): Use it.
22944 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
22946         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
22947         in the example.
22949 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
22951         * lisp/calc/calc.el: Silence byte-compiler warnings.
22952         (calc-scan-for-dels): Use ignore-errors.
22953         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
22954         (calc-read-key-sequence): Remove unused var `prompt2'.
22955         (calc-kill-stack-buffer): Remove unused var `buflist'.
22956         (calc): Remove unused var `oldbuf'.
22957         (calc-refresh): Use inhibit-read-only.
22958         (calc-can-abbrev-vectors): Declare.
22959         (calc-record): Remove unused var `mainbuf'.
22960         (math-sub-bignum): Remove unused var `sum'.
22961         (math-svo-c, math-svo-wid, math-svo-off): Declare.
22963 2015-10-08  Daiki Ueno  <ueno@gnu.org>
22965         Use g_clear_error instead of g_error_free
22967         * src/image.c: Define g_clear_error instead of g_error_free.
22968         (init_svg_functions): Resolve symbol g_clear_error instead of
22969         g_error_free.
22970         (svg_load_image): Use g_clear_error instead of g_error_free, to
22971         suppress GLib warnings when ERR is not set.  See bug#21641.
22973 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
22975         * src/image.c (image_size_error): Simplify.
22977 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
22979         Fix problems caught with --enable-gcc-warnings
22981         * src/image.c (lookup_rgb_color):
22982         * src/xfns.c (x_defined_color):
22983         * src/xterm.c (x_parse_color):
22984         Remove unused locals.
22986 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
22988         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
22990 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
22992         Format initial input uniformly
22994         * lisp/calc/calc.el (calc-digit-start-entry): New function.
22995         * lisp/calc/calc.el (calcDigit-start):
22996         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
22997         Use `calc-digit-start-entry' to format input.
22999 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
23001         Disable non-working pointerColor setting for X tooltip frame
23003         It generates a bunch of server traffic, but there's some bug wherein
23004         the new mouse cursor settings don't seem to get used.  In most
23005         situations the cursor isn't likely to be seen anyway, so it's not
23006         urgent to fix.
23008         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
23010 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
23012         Reduce some unnecessary X calls
23014         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
23015         call.  If border width is wanted, get it from the XGetGeometry call
23016         instead of calling XGetWindowAttributes on the same window.  Skip some
23017         X calls if we've already detected an error from the X server.
23018         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
23019         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
23021 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
23023         Reduce color allocation/query traffic in the TrueColor case
23025         When working with an X visual with TrueColor class, pixel values can
23026         be generated from the RGB values according to mask value provided by
23027         the server on connection.  Some of the image-handling code was already
23028         doing this.
23030         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
23031         lookup_rgb_color.
23032         (x_mutable_colormap): New function.
23033         * src/image.c (lookup_rgb_color): Move pixel composition code to
23034         x_make_truecolor_pixel.
23035         (x_kill_gs_process): Call x_mutable_colormap.
23036         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
23037         x_mutable_colormap.
23038         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
23039         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
23040         pixel value into RGB values directly, and don't send a request to the
23041         server.
23042         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
23043         value with x_make_truecolor_pixel.
23044         (x_copy_color): For an immutable color map, just return the provided
23045         pixel value.
23047 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
23049         Cache XParseColor results in the X display info structure
23051         With repeated lookups of foreground and background colors for multiple
23052         faces per frame, we issue a lot of redundant color name lookups to the
23053         X server, waiting every time for the response.  On a remote network
23054         with, say, 30ms round-trip time, this can add nearly a full second to
23055         creation of a new frame.
23057         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
23058         * src/image.c (get_spec_bg_or_alpha_as_argb):
23059         (xpm_init_color_cache, xpm_lookup_color):
23060         * src/xfns.c (x_defined_color):
23061         * src/xterm.c (x_parse_color): New function; caches color names not
23062         starting with "#" in the display-info structure.
23063         (x_delete_display): Delete the cache content.
23064         * src/xterm.h (struct color_name_cache_entry): New type.
23065         (x_parse_color): Declare.
23066         (struct x_display_info): Add a new field for the cache.
23068 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
23070         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
23072 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
23074         Fix segfault in image_size_error
23076         * src/image.c (image_size_error): Pass a Lisp string to
23077         image_error, not a C string.  (Bug#21641)
23079 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
23081         Highlight CSS variable definitions
23083         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
23084         CSS variables.  (Bug#21638)
23086 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23088         * test/automated/tabulated-list-test.el: New file.
23089         Test bug#21639 and some basic functionality.
23091 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23093         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
23094         Check if column can be sorted before trying.  (Bug#21639)
23096 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
23098         Add test for `self-insert-command' (bug#21633)
23100         * test/automated/cmds-tests.el: New file.
23102 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
23104         * src/window.c (resize_frame_windows): Don't set root window's
23105         top position when resizing horizontally.
23107 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23109         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
23110         Document more possible values.
23112 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
23114         * lisp/textmodes/tex-mode.el: Use lexical-binding.
23116 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
23118         * lisp/indent.el (indent--default-inside-comment): New function.
23119         (indent-for-tab-command): Use it for `noindent' indentation.
23121 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
23123         Fix bug in GC_CHECK_MARKED_OBJECTS check
23125         * src/alloc.c (mark_object): Fix bug in checking code.
23126         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
23127         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
23128         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
23129         bucket.  The bug did not affect behavior either in the normal case
23130         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
23131         not have an internal error that a properly-written
23132         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
23134 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
23136         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
23137         Add prettified version for \\Bbb{Q}.
23139 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
23141         * test/automated/package-test.el (package-test-install-single):
23142         Add a test for bug#21625.
23144 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
23146         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
23147           not a package-desc object.  Also clarify documentation.  (Bug#21625)
23149 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
23151         Fix display of characters adjacent to ZWJ and ZWNJ
23153         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
23154         characters the same as directional formatting controls.
23155         (bidi_level_of_next_char): Include all Bn characters in rule L1,
23156         as mandated by the UBA.
23158 2015-10-06  Andreas Schwab  <schwab@suse.de>
23160         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
23161         number.  (Bug#21633)
23163 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
23165         * doc/lispref/objects.texi (Window Type): Add a cross reference.
23167         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
23169 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
23171         * lisp/language/misc-lang.el (composition-function-table):
23172         Fix entries for Arabic and Syriac.
23174 2015-10-05  Damien Cassou  <damien@cassou.me>
23176         Add first unit tests for auth-source.el
23178         * test/automated/auth-source-tests.el: New file.
23180 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
23182         Remove redundant redisplay code
23184         * src/xdisp.c (redisplay_internal, try_cursor_movement)
23185         (try_window_reusing_current_matrix, try_window_id): Remove
23186         redundant restrictions on redisplay optimizations based on the
23187         frame's 'redisplay' flag.  See
23188         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
23189         discussions.
23191 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
23193         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
23195 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
23197         Update tutorials/TUTORIAL.cn
23199         * etc/tutorials/TUTORIAL.cn: Improve translation.
23201 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23203         * src/macfont.m (macfont_encode_char, syms_of_macfont):
23204         Remove unused vars.
23206 2015-10-04  Stefan Merten  <stefan@merten-home.de>
23208         Pull in version numbers from rst.el upstream release.
23210         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
23211         (rst-svn-timestamp, rst-official-version)
23212         (rst-official-cvs-rev, rst-package-emacs-version-alist):
23213         Update version numbers.
23215 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
23217         * test/automated/coding-tests.el: New file.
23219 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
23221         Improve XEmacs compatibility of Tramp
23223         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
23224         Declare if it doesn't exist.
23225         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
23226         (redisplay): Make it an alias if it doesn't exist.
23228         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
23229         `file-remote-p' (due to XEmacs compatibility).
23231         * lisp/net/trampver.el (locate-dominating-file)
23232         (tramp-compat-replace-regexp-in-string): Autoload.
23233         (tramp-repository-get-version): Do not dupe byte-compiler.
23235 2015-09-02  K. Handa  <handa@gnu.org>
23237         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
23239         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
23240         Adjusted for the change of type of elements in the array
23241         MFLTGlyphString.glyphs.
23243 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
23244             Michael Heerdegen  <michael_heerdegen@web.de>
23246         shr: fix too long lines in rendered buffers (Bug#21012)
23248         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
23249         Correct calculation of available width.
23250         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
23251         is nil.
23253 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
23255         Restore blank line before next section, erroneously erased
23256         in my previous commit
23258         * etc/compilation.txt (symbol ant): Add an additional trailing blank
23259         line to this section, so that there are two of them immediately before
23260         the next section.
23262 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
23264         Support MSW filename style for ant compilation error regexp
23266         * etc/compilation.txt (symbol ant):
23267         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
23268         Support MSW filename style.
23270 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
23272         * nt/INSTALL: Minor spelling and quote fixes.
23274         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
23276 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
23278         Maintain ordering of JSON object keys by default
23280         * lisp/json.el (json-object-type): Mention order handling in doc-string.
23281         (json--plist-reverse): New utility function.
23282         (json-read-object): Maintain ordering for alists and plists.
23283         (json-pretty-print): Ensure that ordering is maintained.
23285         * test/automated/json-tests.el (test-json-plist-reverse): New test for
23286         `json--plist-reverse'.
23287         (json-read-simple-alist): Update test to accommodate for changes in
23288         `json-read-object'.
23290         * etc/NEWS: Document the new behavior of the pretty printing functions.
23292 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
23294         * src/coding.c (complement_process_encoding_system): Revert last change.
23296 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
23298         * admin/MAINTAINERS: Add entry for Ulf Jasper.
23300 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
23302         Doc fix for `defmacro'
23304         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
23306 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
23308         More validatation of coding systems
23310         * src/fileio.c (Finsert_file_contents): Remove redundant
23311         coding-system check.
23312         (choose_write_coding_system): Likewise.
23313         * src/coding.c (complement_process_encoding_system): Check argument
23314         for valid coding system.
23316 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
23318         Avoid crashes in coding_inherit_eol_type
23320         * src/coding.c (coding_inherit_eol_type): Check the validity of
23321         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
23322         (Bug#21602)
23324 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
23326         More validatation of coding system in 'write-region'
23328         * src/coding.c (choose_write_coding_system): More validation of
23329         coding-system from various sources.  Suggested by Andreas Schwab
23330         <schwab@linux-m68k.org>.  (Bug#21602)
23332 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
23334         Avoid crashes due to invalid coding-system
23336         * src/fileio.c (choose_write_coding_system)
23337         (Finsert_file_contents): Check validity of coding-system-for-write
23338         and coding-system-for-read bound by the caller.  (Bug#21602)
23340 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
23342         Adapt to new prettify-symbols-unprettify-at-point default
23344         * etc/NEWS: Mention that unprettication of symbol at point is off
23345         by default.
23347 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
23349         Revert my two recent process.c changes
23351         Revert "Improve last commit to process.c" and "Remove callback-handled
23352         channels from Available set" because they did not fix bug#21313.
23354         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
23355         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
23357 2015-10-02  Markus Triska  <triska@metalevel.at>
23359         * lisp/progmodes/prolog.el: Update and extend operator table.
23360         (prolog-smie-grammar): Add multifile, public etc.
23362 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
23364         Allow autogen even when Git is not installed
23366         * autogen.sh: Test ‘git status’ before trying to use Git.
23368 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
23370         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
23371         Adjust lto/lfrom when we have uncommitted changes.
23373 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
23375         Fix problems found by clang 3.5.0
23377         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
23378         * src/font.c (font_parse_family_registry):
23379         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
23381 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
23383         * nt/INSTALL: Update instructions for running autogen.sh.
23385         * nt/INSTALL: Point to ezwinports for libXpm binaries.
23387 2015-10-02  Daniel Colascione  <dancol@dancol.org>
23389         Fix winner in cl-lib not loaded case
23391         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
23392         without requiring CL
23394 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
23396         Fix a few problems with directed quotes
23398         This is in response to a problem report by Kaushal Modi in:
23399         http://bugs.gnu.org/21588#25
23400         * lisp/cedet/mode-local.el (describe-mode-local-overload):
23401         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
23402         * lisp/info-xref.el (info-xref-check-all-custom):
23403         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
23404         Prefer directed to undirected single quotes in diagnostics.
23406 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
23408         Revert "Attempt to fix slow redisplay caused by last changes"
23410         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
23411         (try_cursor_movement): Don't relax requirements for redisplay
23412         optimizations for the selected frame.  (Bug#21597)
23414         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
23416 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
23418         Fix slow redisplay when daemon frame exists
23420         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
23421         when looking for frames that need to be redisplayed.  (Bug#21597)
23423 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
23425         Attempt to fix slow redisplay caused by last changes
23427         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
23428         (try_cursor_movement): Relax requirements for redisplay
23429         optimizations for the selected frame.  (Bug#21597)
23431 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
23433         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
23434         Improve doc string.
23436 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
23438         * lisp/minibuffer.el (minibuffer-completion-help):
23439         Set default base-size, in case completion table does not set it.
23441 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
23443         Fix GUD display of GDB output with non-ASCII text
23445         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
23446         (gdb-mi-decode): New function.
23447         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
23448         decode octal escapes in GDB output.  (Bug#21572)
23450 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
23452         * nt/INSTALL: Document where to find XPM support files.
23454 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
23456         Un- and re-prettification are not exclusive
23458         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
23459         Re-apply prettification to previous symbol also when unprettifying
23460         next one.
23462 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
23464         Don't unprettify symbol at point by default
23466         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
23467         Default to disabled (nil).
23469 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
23471         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
23472         Support unprettifying when point is after a symbol.
23474         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
23476 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
23478         Avoid assertion violations in push_prefix_prop
23480         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
23481         a line that has a line-prefix defined starts with an image.  (Bug#21428)
23483 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
23485         Disable some display optimizations when frames need redisplay
23487         These optimizations were previously disabled by the
23488         windows_or_buffers_changed flag, which now is not set
23489         when only some frames need to be redrawn.
23490         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
23491         'redisplay' flag is set.
23492         (try_window_reusing_current_matrix, try_window_id)
23493         (try_cursor_movement): Disable these optimizations when the
23494         frame's 'redisplay' flag is set.
23496 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
23498         Don't modify buffer by unprettification
23500         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
23501         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
23502         modify buffer when setting/removing custom prettify-symbols-start/end
23503         text properties.  Add them to font-lock-extra-managed-props, too.
23505 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
23507         Try to avoid redisplaying all frames when creating a new one
23509         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
23510         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
23511         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
23512         * src/frame.c (x_set_screen_gamma): Set the specific frame's
23513         `redisplay' bit rather than windows_or_buffers_changed.
23515         * src/window.c (apply_window_adjustment): Remove redundant setting of
23516         windows_or_buffers_changed.
23518         * src/xdisp.c (redisplay_internal): Set the specific frame's
23519         `redisplay' bit rather than update_mode_lines in response to
23520         cursor_type_changed.
23521         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
23522         (AINC): Adjust accordingly.
23524 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
23526         Implement unprettification of symbol at point
23528         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
23529         symbol at point.
23530         (prettify-symbols--current-symbol-bounds): New variable.
23531         (prettify-symbols--post-command-hook): New function.
23532         (prettify-symbols-unprettify-at-point): New defcustom.
23533         (prettify-symbols-mode): Use it.
23534         (prettify-symbols--compose-symbol): Use them.
23536 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23538         * src/macfont.m (mac_font_descriptor_supports_languages):
23539         Regard "zh" as synonym of "zh-Hans".
23541 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23543         Work around crash when displaying etc/HELLO on OS X 10.11
23545         * src/macfont.m (mac_font_get_weight)
23546         (mac_font_descriptor_get_adjusted_weight): New functions.
23547         (macfont_store_descriptor_attributes): Adjust weight.
23549 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23551         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
23553 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
23555         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
23556         of the columns.
23558 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
23560         Use unar and lsar to handle RAR archives in arc-mode
23562         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
23563         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
23565 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
23567         Clarify :create in auth-source's docs
23569         * lisp/gnus/auth-source.el (auth-source-search):
23570         Clarify :create's meaning.
23572 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
23574         Avoid empty -path arguments in rgrep
23576         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
23577         the list produced according to grep-find-ignored-directories,
23578         before passing it to Find/Grep invocation.  (Bug#21548)
23580 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
23582         Clarify documentation of pos-visible-in-window-p
23584         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
23585         t for POS.  See
23586         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
23587         for the original report.
23589         * doc/lispref/windows.texi (Window Start and End): Clarify the
23590         meaning of t for the POSITION argument of pos-visible-in-window-p.
23592 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
23594         * lisp/progmodes/prolog.el: Fix various indentation cases.
23595         (prolog-operator-chars): New const (add \\).
23596         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
23597         (prolog-smie-rules): Add rules according to bug#21526.
23599 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
23601         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
23602         (sh-indent-after-continuation): Add new value `always' (bug#17620)
23603         (sh-smie-sh-rules): Remove old handling of continued lines.
23604         (sh-smie--indent-continuation): New function.
23605         (sh-set-shell): Use it.
23607 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
23609         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
23610         Remove redundant :group keyword args.
23611         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
23612         Remove variables.
23613         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
23614         turn them into compile-time variables.
23615         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
23616         Add rules for break, continue, return, global, and persistent.
23617         Refine the rule for "until".
23618         (octave-smie--funcall-p, octave-smie--end-index-p)
23619         (octave-smie--in-parens-p): New functions.
23620         (octave-smie-backward-token, octave-smie-forward-token): Use them to
23621         distinguish the "enumeration" function and the "end" index from
23622         their corresponding keywords.
23623         (octave--block-offset-keywords): New constant.
23624         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
23625         parsing.
23626         (octave-reserved-words): Redefine using octave-smie-grammar.
23627         (octave-font-lock-keywords): Use octave-smie--funcall-p and
23628         octave-smie--end-index-p.
23630 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
23632         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
23634 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
23636         * nt/INSTALL: Remove references to GTK site.
23637         That site no longer offers Windows downloads.
23639 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
23641         * nt/INSTALL: Add instructions for installing Git.
23643 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
23645         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
23646         use colors.  Suggested by Eli Zaretskii.
23648 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
23650         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
23651         not supporting 256 above colors (bug#21557).
23653 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
23655         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
23657         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
23659 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
23661         Add documentation for seq.el
23663         * doc/lispref/sequences.texi: Add documentation regarding extending
23664         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
23665         seq-do and seq-map.
23667 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
23669         Better documentation for seq-some
23671         * doc/lispref/sequences.texi:
23672         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
23673         guarantee that the returned value is the first non-nil value that
23674         resulted from applying the predicate.
23676 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
23678         * lisp/arc-mode.el: Sharp-quote function arguments.
23680 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
23682         Avoid redisplay error in ediff-regions-wordwise
23684         * lisp/vc/ediff-util.el
23685         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
23686         set before activating it.  (Bug#21567)
23688 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
23690         Another attempt to fix crashes due to prematurely freed faces
23692         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
23693         faces for as long as we might have desired matrices that reference
23694         those faces.  (Bug#21428)
23696 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
23698         Add auctex development list email address
23700 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
23702         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
23704 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
23706         Improve wrapfig package support and caption parsing
23708         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
23709         Correct description string and add wraptable environment.
23710         (reftex-default-context-regexps): Improve caption regexp.
23712 2015-09-28  Anders Lindgren  <andlind@gmail.com>
23714         Respect value of frame_resize_pixelwise when handling fullscreen state
23716         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
23717         setting size increments.
23719 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
23721         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
23723 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
23725         Add prettify-symbols-alist for js-mode
23727         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
23728         (js-mode): Use it.
23730 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
23732         * nt/subdirs.el: File deleted (no longer used).
23734 2015-09-26  Alan Mackenzie  <acm@muc.de>
23736         Fix follow-scroll-up/down, making them replacements for scroll-up/down
23738         1. Allow point to move between follow windows in scroll operations.
23739         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
23740         when EOB was isolated in the last follow window.
23742         * lisp/follow.el (follow-fixed-window): New variable.
23743         (follow-get-scrolled-point): New function.
23744         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
23745         Reformulate the code.  Put `scroll-command' properties on the functions.
23746         Correct minor errors in ...-down's doc string and code.
23747         (follow-calc-win-end): Amend incomplete doc string.  Use
23748         `pos-visible-in-window-p' to check whether EOB is in the window.
23749         (follow-estimate-first-window-start): Correct an off-by-1 error.
23750         (follow-adjust-window): Add handling for explicit scrolling operations.
23752 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
23754         * admin/MAINTAINERS: Add self, plus list some more files
23755         sans maintaners.
23757 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
23759         New DWIM commands for changing letter-case
23761         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
23762         New functions.  (Bug#21501)
23764 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
23766         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
23768 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
23770         Make face realization be more frame-specific
23772         * src/frame.h (struct f): New flag face_change.
23773         * src/xfaces.c (Finternal_make_lisp_face)
23774         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
23775         (update_face_from_frame_parameter): Set the face_change flag only
23776         for the frame whose faces are affected.
23777         * src/xdisp.c (init_iterator): If a frame's face_change flag is
23778         set, free faces only on that frame.
23779         (redisplay_internal): Disable "display optimization 1" if the
23780         frame's face_change flag is set.
23781         (redisplay_window): Don't allow skipping a window's redisplay if
23782         its frame's face_change flag is set.
23783         * src/frame.c (x_set_screen_gamma): Instead of calling
23784         Fclear_face_cache, call clear_face_cache and set
23785         windows_or_buffers_changed to a non-zero value.  This avoids
23786         setting the global face_change flag that triggers face realization
23787         on all frames and thorough redisplay of all of them.
23789         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
23790         clear face cache if the selected frame is a GUI frame.
23792 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
23794         Remove font-latex specific check
23796         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
23797         Use syntax-ppss data to identify verbatim contents.
23799 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
23801         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
23802         Fix some false negatives.
23804 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
23806         Reorder Windows version in Emacs manifests
23808         * nt/emacs-x64.manifest:
23809         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
23810         highest.
23812 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
23814         Update Emacs manifest files for Windows 10
23816         * nt/emacs-x86.manifest:
23817         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
23819 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
23821         Avoid non-ASCII decoding errors in C src files
23823         * src/nsterm.m:
23824         * src/lisp.h:
23825         * src/editfns.c:
23826         * src/doprnt.c: Add 'coding' cookies -- these files include
23827         Unicode characters and should be decoded as UTF-8.
23829 2015-09-25  Alan Mackenzie  <acm@muc.de>
23831         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
23833         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
23834         amend to match current modes and functions.
23835         (edebug-set-initial-mode): Uncomment and change from setting a defun's
23836         `edebug-initial-mode''s property to setting the variable
23837         `edebug-initial-mode'.
23838         (top level): Create new binding C-x C-a C-m for
23839         `edebug-set-initial-mode'.
23841         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
23842         `edebug-set-initial-mode' and its new key binding.
23843         (Edebug Options): Mention the new command in the pertinent place.
23845         * etc/NEWS: Write entry for this change.
23847 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
23849         Avoid non-ASCII decoding errors in Texinfo files
23851         * doc/misc/tramp.texi:
23852         * doc/lispref/strings.texi:
23853         * doc/lispref/positions.texi:
23854         * doc/lispref/help.texi:
23855         * doc/lispref/functions.texi:
23856         * doc/lispintro/emacs-lisp-intro.texi:
23857         * doc/emacs/text.texi:
23858         * doc/emacs/modes.texi:
23859         * doc/emacs/mini.texi:
23860         * doc/emacs/display.texi:
23861         * doc/emacs/custom.texi:
23862         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
23863         Unicode characters and should be decoded as UTF-8.
23864         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
23865         apostrophe unnecessarily.
23867 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
23869         Merge from gnulib
23871         This incorporates:
23872         2015-09-25 c-ctype: rewrite to use inline functions
23873         2015-09-24 maint: add coding cookies to non-ASCII sources
23874         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
23875         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
23876         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
23877         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
23878         * lib/set-permissions.c:
23879         Copy from gnulib.
23881 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
23883         Update publicsuffix.txt from upstream
23885         * etc/publicsuffix.txt: Update from
23886         https://publicsuffix.org/list/effective_tld_names.dat
23887         dated 2015-09-24 17:29:21 UTC.
23889 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
23891         Prevent timers from messing up TTY menus
23893         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
23894         the TTY menu is open.  (Bug#21530)
23896 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
23898         No need to mention K&R C in c-mode intro
23900 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
23902         Fix recent bootstrap problems
23904         * src/syntax.c (parse_sexp_propertize): Fix last fix.
23905         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
23906         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
23908 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
23910         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
23912 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
23914         Properly quote nested xml comments (Bug#6267) (Bug#20001)
23916         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
23917         (nxml-mode): Set comment-quote-nested-function.
23919 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
23921         Allow major-modes full control over quoting nested comments
23923         * lisp/newcomment.el (comment-quote-nested-function): New variable.
23924         (comment-quote-nested-default): New function.
23925         (comment-quote-nested): Use `comment-quote-nested-function'.
23927 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
23929         Prefer CALLN in a few more places
23931         * src/macfont.m (macfont_set_family_cache):
23932         * src/nsterm.m (append2):
23933         * src/xterm.c (x_cr_export_frames):
23934         Prefer CALLN to allocating the arg arrays by hand.
23936 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
23938         Adapt file-notify-test02-events test case
23940         * test/automated/file-notify-tests.el (file-notify-test02-events):
23941         Create a new watch for every test.
23943 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
23945         Continue gfilenotify.c implementation of missing parts
23947         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
23948         `gfile-add-watch' call.
23949         (file-notify-rm-watch): Modify `file-notify-descriptors' only
23950         after calling the low level functions.
23952         * src/gfilenotify.c (dir_monitor_callback): Check, whether
23953         event_type is expected.
23954         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
23955         (Fgfile_rm_watch): Fix typo.
23956         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
23958 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
23960         * src/syntax.c (parse_sexp_propertize): Handle spurious
23961         e_property_truncated flag.
23962         (update_syntax_table_forward): Remove invalid assertion.
23964 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
23966         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
23967         space display spec on text-mode terminals, by calling
23968         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
23969         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
23970         test for a GUI frame.
23972 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
23974         Move let-when-compile to lisp-mode.el
23976         This fixes the bootstrapping problem of `let-when-compile' using
23977         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
23979 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23981         * lisp/url/url-http.el (url-http-parse-headers): Do not
23982         automatically include Authorization header in redirect.
23983         (Bug#21350)
23985 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
23987         Clarify documentation of ':relative-width'
23989         * doc/lispref/display.texi (Specified Space): Document that
23990         ':relative-width' is only supported on GUI frames.
23992 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
23994         Fix 'current-column' in presence of :relative-width
23996         * src/indent.c (check_display_width): Support ':relative-width'
23997         in a display spec that specifies a stretch glyph.  (Bug#21533)
23999 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
24001         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
24003         ... to conform better to CONTRIBUTE guidelines.
24005 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
24007         * lisp/progmodes/prolog.el: Fix indentation of empty line
24009         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
24010         `empty-line-token' element.
24011         (smie-indent-empty-line): New function.
24012         (smie-indent-functions): Add it.
24014         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
24015         behavior and use the new `empty-line-token' element (bug#21526).
24016         (prolog-mode-variables): Fix comment-start-skip setting to match
24017         comment-start.
24019         * test/indent/prolog.prolog: Add nested indentation tests.
24021         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
24022         comment-start-skip not to misuse submatch 1.
24024 2015-09-22  Alan Mackenzie  <acm@muc.de>
24026         Make description of `edebug-initial-mode' user friendly
24028         Fixes bug#21365.
24030         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
24031         description of `edebug-initial-mode' from that of its implementation
24032         to that of its visual effect and use.  Move the paragraph higher up.
24034 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
24036         lisp/progmodes/gud.el (gud-format-command): Fix last commit
24038         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
24039         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
24041 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
24043         Improve last commit to process.c
24045 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
24047         Implement gfile-valid-p
24049         * lisp/filenotify.el (file-notify-callback): Fix typo.
24050         (gfile-valid-p): Remove defalias.
24052         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
24053         the file or directory to be watched is deleted.
24054         (Fgfile_add_watch): Make watch_object a triple.
24055         (Fgfile_rm_watch): Check, whether watch is cancelled already.
24056         (Fgfile_valid_p): New defun.
24057         (syms_of_gfilenotify): Declare Sgfile_valid_p.
24059 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
24061         Remove callback-handled channels from Available set
24063         * src/process.c (wait_reading_process_output): Remove channel from
24064         Available set if it is handled by a callback, e.g., dbus or
24065         inotify (bug#21313).
24067 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
24069         Use lunate epsilon for TeX \epsilon
24071         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
24072         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
24073         \epsilon to use GREEK LUNATE EPSILON SYMBOL
24075 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
24077         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
24079         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
24080         rather than outermost paren (bug#21526).
24082 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
24084         Improve git diff hunk headers for .el, .texi
24086         Problem reported by Alan Mackenzie in:
24087         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
24088         * .gitattributes (*.el, *.texi): New patterns.
24089         * autogen.sh: Configure diff.elisp.xfuncname and
24090         diff.texinfo.xfuncname if using Git.
24092 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
24094         Don't rely on defaults in decoding UTF-8 encoded Lisp files
24096         * lisp/replace.el:
24097         * lisp/textmodes/rst.el:
24098         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
24100 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
24102         Clarify or replace a few \u escapes
24104         * doc/lispref/nonascii.texi (Character Properties)
24105         More-detailed commentary for \u escapes.
24106         * lisp/progmodes/python.el (python--prettify-symbols-alist):
24107         * lisp/replace.el (query-replace-from-to-separator):
24108         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
24109         (rst-mode-syntax-table):
24110         * lisp/whitespace.el (whitespace-display-mappings):
24111         Prefer actual character to \u escape when this makes the code
24112         easier to follow in the usual case where Unicode chars can be
24113         displayed.
24115 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
24117         Pacify GCC -Wmaybe-uninitialized in xdisp.c
24119         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
24120         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
24121         charpos.  The loop should always execute at least once anyway.
24123 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
24125         Signal error on invalid regexp
24127         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
24128         Signal an error when the user tries searching with a regexp
24129         matching the empty string.
24131 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
24133         Another fix of file-notify-tests for w32notify
24135         * test/automated/file-notify-tests.el (file-notify-test02-events):
24136         Further adaptation for w32notify: reduce the number of expected
24137         'changed' events.  (Bug#21435)
24139 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
24141         Adapt tests and manual for w32notify
24143         * doc/lispref/os.texi (File Notifications): w32notify does not
24144         send `attribute-changed' events.
24146         * test/automated/file-notify-tests.el (file-notify--test-with-events):
24147         Simplify parameters.  Adapt all callees.
24148         (file-notify-test02-events): w32notify does not send
24149         `attribute-changed' events.
24150         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
24151         Do not skip in case of w32notify.  Simply ignore this part of the test.
24153 2015-09-21  Dima Kogan  <dima@secretsauce.net>
24155         Fix setting breakpoints when remote-debugging
24157         * lisp/progmodes/gud.el (gud-format-command): Send localized file
24158         names to the debugger running on the remote.  (Bug#13304)
24160 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
24162         Better docstring and parameter name for seq-find
24164         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
24165         the parameter `sentinel' to `default'.
24167         * doc/lispref/sequences.texi (Sequence Functions): Update the
24168           documentation for `seq-find' accordingly.
24170 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
24172         Avoid infinite recursion while displaying box face
24174         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
24175         the previous string/buffer character position under bidi
24176         iteration.  (Bug#21428)
24178 2015-09-21  Anders Lindgren  <andlind@gmail.com>
24180         Keep upper edge unchanged when changing size of NS frame
24182         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
24183         (Bug#21415).
24185 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
24187         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
24188         (prolog-smie-rules): Accommodate standard if/then/else special
24189         indentation.
24190         (prolog-mode): Add . to electric-indent-chars.
24191         (prolog-electric--if-then-else): Re-indent the line before adding space
24192         after the new char (bug#21526).
24194 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
24196         Add prettify symbols to python-mode
24198         * lisp/progmodes/python.el (python-prettify-symbols-alist):
24199         New variable.
24200         (python-mode): Use it
24202 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
24204         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
24206 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
24208         (compilation-error-regexp-alist-alist): Tone down guile-file
24210         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
24211         Make guile-file a bit less enthusiastic (bug#21496).
24213 2015-09-20  Drew Csillag  <drew@thecsillags.com>
24215         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
24216         Fix m4_* highlighting.
24218         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
24219         of commands when they have a "m4_" prefix.
24221 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
24223         '.' -> `.' in doc string
24225         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
24226         individual chars with grave quotes instead of straight quotes, as
24227         this works better when they are translated to curved quotes.
24229 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
24231         Improve file notifications, especially for Tramp
24233         * doc/lispref/files.texi (Magic File Names):
24234         Mention `file-notify-valid-p'.
24236         * doc/lispref/os.texi (File Notifications):
24237         Describe `file-notify-valid-p'.
24239         * etc/NEWS: Add `file-notify-valid-p'.
24241         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
24242         Improve implementation.
24243         (tramp-gvfs-monitor-file-process-filter): Rename from
24244         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
24245         process if appropriate.
24247         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
24248         Improve implementation.
24249         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
24250         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
24251         if appropriate.
24252         (tramp-sh-inotifywait-process-filter): Rename from
24253         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
24254         appropriate.
24256         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
24257         Use `delete-process'.
24258         (tramp-handle-file-notify-valid-p): Check also, that file or
24259         directory to be watched still exists.
24261         * test/automated/file-notify-tests.el (file-notify--test-timeout):
24262         New defun.  Use it at all places a timeout is needed.
24263         (file-notify--test-cleanup): Delete directories recursively.
24264         Cleanup also Tramp connections.
24265         (file-notify-test02-events): Add tests for `attribute-change'.
24266         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
24267         Add tests for `file-notify-rm-watch'.
24269 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
24271         Use %s to format strings instead of splicing them
24273         If FOO might contain quotes that are part of a file or variable
24274         name, the quotes should not be translated when showing FOO’s name
24275         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
24276         is not quite right, as it would translate FOO’s quotes.
24277         Change it to (message "%s: bar" FOO) instead.
24278         * lisp/allout.el (allout-process-exposed):
24279         * lisp/calc/calc-ext.el (calc-do-prefix-help):
24280         * lisp/calc/calc-store.el (calc-store-into):
24281         * lisp/calendar/todo-mode.el (todo-category-completions):
24282         * lisp/cedet/semantic/complete.el (semantic-completion-message):
24283         * lisp/org/ob-latex.el (convert-pdf):
24284         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
24285         * lisp/org/ox-latex.el (org-latex-compile):
24286         * lisp/org/ox-man.el (org-man-compile):
24287         * lisp/org/ox-odt.el (org-odt--export-wrap):
24288         * lisp/org/ox-texinfo.el (org-texinfo-compile):
24289         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
24290         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
24291         (verilog-signals-combine-bus, verilog-read-defines)
24292         (verilog-getopt-file, verilog-expand-dirnames)
24293         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
24294         * lisp/term/ns-win.el (ns-spi-service-call):
24295         Use %s to avoid translating quotes of file names etc. in diagnostics.
24297 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
24299         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
24300         (js-mode): Don't set syntax-begin-function.
24302 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
24304         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
24305         syntax-begin-function is a symbol.
24307 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
24309         Improve documentation of 'run-at-time'
24310         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
24311         In particular, don't refer to 'diary-entry-time', because it is
24312         unavailable until diary-lib is loaded.  Also, refer to
24313         'timer-duration-words', not 'timer-duration', as the latter's doc
24314         string says nothing about the accepted strings.
24316 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
24318         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
24320 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
24322         Repair pdbtrack remote file tracking
24323         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
24324         Rectify pdbtrack so it follows transitions from one remote source
24325         file to the next.
24327 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
24329         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
24331 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
24333         Adapt vc-src to the old-new vc-checkin API
24334         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
24335         additional optional parameter.
24337 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
24339         Add overflow module to CSS property list
24340         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
24341         from CSS Overflow Module Level 3.
24343 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
24345         Fix documentation of "C-u C-x v v"
24346         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
24347         documentation of "C-u C-x v v" match what the code does.
24349         Resurrect the ability to specify a revision in vc-next-action
24350         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
24351         * lisp/vc/vc-dav.el (vc-dav-checkin):
24352         * lisp/vc/vc-git.el (vc-git-checkin):
24353         * lisp/vc/vc-hg.el (vc-hg-checkin):
24354         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
24355         an additional optional argument, the revision to checkin.
24356         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
24357         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
24358         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
24359         a revision to checkin.
24360         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
24361         revision when checking in files.
24362         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
24363         for the details.
24365 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
24367         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
24368         (verilog-decls-princ, verilog-modport-princ)
24369         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
24371 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
24373         Fix the routine for help on Calc's prefixes
24374         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
24375         (calc-do-prefix-help): Use `read-char' to determine the next Calc
24376         command.
24378 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
24380         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
24381         (font-lock-fontify-block): Don't let-bind it.
24382         (font-lock-compile-keywords): Don't use it.
24383         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
24384         start one slot earlier, instead.
24385         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
24386         Don't declare.
24387         (syntax-ppss): Don't use it either.
24388         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
24389         from docstring.
24390         * doc/emacs/display.texi (Font Lock): Don't mention
24391         font-lock-beginning-of-syntax-function.
24392         * doc/lispref/modes.texi (Font Lock Basics): Update description of
24393         font-lock-defaults.
24394         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
24395         * lisp/loadhist.el (unload-feature-special-hooks):
24396         Remove font-lock-beginning-of-syntax-function.
24397         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
24398         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
24399         font-lock-beginning-of-syntax-function.
24401 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
24403         Backslash cleanup in Elisp source files
24404         This patch should not change behavior.  It typically omits backslashes
24405         where they are redundant (e.g., in the string literal "^\$").
24406         In a few places, insert backslashes where they make regular
24407         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
24408         "^\\*", which has the same effect as a regular expression.
24409         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
24410         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
24411         RCS IDs, as that makes it clearer that the backslash is intended.
24413         Some more minor backslash fixes
24414         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
24415         * test/automated/info-xref.el (info-xref-test-write-file):
24416         Double backslashes in strings.
24418         Fix several backslash typos in Elisp strings
24419         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
24420         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
24421         (todo-reset-done-string, todo-reset-comment-string)
24422         (todo-reset-highlight-item):
24423         * lisp/erc/erc-networks.el (erc-networks-alist):
24424         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
24425         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
24426         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
24427         (nntp-telnet-shell-prompt):
24428         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
24429         * lisp/image-dired.el (image-dired-rotate-original):
24430         (image-dired-get-exif-file-name):
24431         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
24432         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
24433         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
24434         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
24435         * lisp/net/shr-color.el (shr-color->hexadecimal):
24436         * lisp/org/org-bibtex.el (org-bibtex-fields):
24437         * lisp/org/org-docview.el (org-docview-export):
24438         * lisp/org/org-entities.el (org-entities):
24439         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
24440         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
24441         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
24442         (ebnf-style-database):
24443         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
24444         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
24445         * lisp/progmodes/sql.el (sql-product-alist):
24446         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
24447         (verilog-error-font-lock-keywords)
24448         (verilog-assignment-operator-re):
24449         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
24450         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
24451         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
24452         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
24453         For example, to get the regular expression ‘\.’ use the string
24454         literal "\\.", not "\." (which is equivalent to ".").
24455         * lisp/emulation/viper-util.el (viper-glob-unix-files):
24456         Remove stray ‘\j’ from string.
24457         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
24458         (nntp-telnet-shell-prompt):
24459         Treat > like $ when matching a shell prompt.
24460         * lisp/progmodes/make-mode.el (makefile-browse):
24461         Properly quote a diagnostic.
24463         Fix minor quoting problems in diagnostics
24464         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
24465         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
24466         Follow text-quoting-style in diagnostic, and quote a file name.
24468 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
24470         * doc/lispref/frames.texi (Cursor Parameters):
24471         Document 'x-stretch-cursor'.
24473 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
24475         Omit unnecessary \ before paren in C docstrings
24476         Although \( is needed in docstrings in Elisp code, it is not needed in
24477         docstrings in C code, since C function definitiions do not start with
24478         a parenthesis.  The backslashes made the docstrings a bit harder to
24479         read and to format in columns.  Also, some C docstrings had ( in
24480         column 1 and this did not appear to be causing any problems.  So,
24481         simplify C docstrings by replacing \( with ( and \) with ).
24483         A few more minor quoting fixes in a script and a text file
24485         Minor quoting fixes in scripts and doc
24486         Prefer straight quotes in random script files, as they are not
24487         converted.  Prefer grave quotes in a couple of places in the manual
24488         that were missed earlier, as these quotes are converted.
24490         Minor backslash fixes in manuals and scripts
24491         * Makefile.in (install-arch-indep):
24492         * admin/charsets/compact.awk:
24493         * admin/charsets/gb180302.awk (gb_to_index):
24494         * admin/charsets/gb180304.awk (gb_to_index):
24495         Avoid undefined behavior in Awk regular expression backslashes.
24496         * doc/misc/efaq.texi (Matching parentheses):
24497         Omit unnecessary backslashes.
24498         * doc/misc/gnus-faq.texi (FAQ 5-8):
24499         Avoid undefined behavior in suggested sed backslash usage.
24501         Add -Wswitch to --enable-gcc-warnings
24502         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
24503         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
24504         * lib-src/etags.c (main, consider_token, C_entries):
24505         * src/coding.c (encode_invocation_designation):
24506         * src/data.c (Ftype_of):
24507         * src/eval.c (Fdefvaralias, default_toplevel_binding)
24508         (Fbacktrace__locals, mark_specpdl):
24509         * src/lisp.h (record_xmalloc):
24510         * src/syntax.c (scan_lists, scan_sexps_forward):
24511         * src/window.c (window_relative_x_coord):
24512         * src/xdisp.c (push_it, pop_it):
24513         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
24514         Error out or do nothing (as appropriate) if a switch statement
24515         with an enum value does not cover all of the enum.
24516         * src/dispextern.h (struct iterator_stack_entry.u.comp):
24517         Remove unused member discovered by using -Wswitch.
24518         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
24519         * src/vm-limit.c (check_memory_limits):
24520         Simplify warning-diagnostic computation by using a table.
24522         etags ‘fatal’ function is now printf-like
24523         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
24524         Also, now static; not clear why it needed to be extern.
24525         (verror): New function, with most of the old contents of ‘error’.
24526         (fatal, error): Use it.
24528 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
24530         More adaptations in file-notify-tests.el
24531         * test/automated/file-notify-tests.el
24532         (file-notify-test05-dir-validity): Skip for w32notify in
24533         batch-mode.  (Bug#21432)
24535 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
24537         Adapt test in file-notify-tests.el
24538         * test/automated/file-notify-tests.el
24539         (file-notify-test04-file-validity): Skip for w32notify in
24540         batch-mode.  Add test lost last commit.
24542 2015-09-16  Dima Kogan  <dima@secretsauce.net>
24544         winner no longer holds on to dead frames
24545         * lisp/winner.el (winner-change-fun): Cull dead frames.
24546         This prevents a potentially massive memory leak.  See:
24547         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
24549 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
24551         Use common report_file_notify_error function
24552         * src/fileio.c (report_file_notify_error): New function.
24553         * src/inotify.c (report_inotify_error): Remove function.
24554         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
24555         (Finotify_rm_watch): Use report_file_notify_error.
24556         * src/lisp.h (report_file_notify_error): Declare external function.
24557         * src/w32notify.c (report_w32notify_error): Remove function.
24558         (Fw32notify_add_watch, Fw32notify_rm_watch):
24559         Use report_file_notify_error.
24561 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
24563         Fix documentation.
24564         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
24565         the documentation of the root mean square.
24567 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
24569         Remove tool_bar_redisplayed_once and associated code.
24570         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
24571         * src/frame.c (make_frame, x_set_font): Remove initialization of
24572         f->tool_bar_redisplayed_once.
24573         * src/w32fns.c (x_change_tool_bar_height):
24574         * src/xfns.c (x_change_tool_bar_height): Don't check for
24575         f->tool_bar_redisplayed_once.
24576         * src/xdisp.c (redisplay_internal): Remove handling of
24577         f->tool_bar_redisplayed_once.
24579 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
24581         Restore some of the quoting in the manuals
24582         * doc/lispref/windows.texi (Coordinates and Windows)
24583         (Coordinates and Windows):
24584         * doc/lispref/variables.texi (Lexical Binding)
24585         (File Local Variables):
24586         * doc/lispref/text.texi (Format Properties):
24587         * doc/lispref/symbols.texi (Symbol Components):
24588         * doc/lispref/strings.texi (Creating Strings):
24589         * doc/lispref/sequences.texi (Sequence Functions):
24590         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
24591         (Search and Replace):
24592         * doc/lispref/processes.texi (Bindat Spec):
24593         * doc/lispref/os.texi (Idle Timers):
24594         * doc/lispref/objects.texi (Basic Char Syntax):
24595         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
24596         * doc/lispref/nonascii.texi (Character Properties):
24597         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
24598         (Mode Line Variables):
24599         * doc/lispref/minibuf.texi (Text from Minibuffer):
24600         * doc/lispref/loading.texi (Autoload):
24601         * doc/lispref/keymaps.texi (Controlling Active Maps):
24602         * doc/lispref/frames.texi (Frame Layout, Size and Position)
24603         (Size Parameters, Implied Frame Resizing):
24604         * doc/lispref/files.texi (Changing Files, Magic File Names):
24605         * doc/lispref/eval.texi (Self-Evaluating Forms):
24606         * doc/lispref/display.texi (Progress, Abstract Display)
24607         (Abstract Display Example, Bidirectional Display):
24608         * doc/lispref/commands.texi (Event Mod):
24609         * doc/emacs/windows.texi (Displaying Buffers):
24610         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
24611         * doc/emacs/text.texi (Enriched Text):
24612         * doc/emacs/programs.texi (MixedCase Words):
24613         * doc/emacs/picture-xtra.texi (Insert in Picture)
24614         (Tabs in Picture):
24615         * doc/emacs/misc.texi (Emacs Server, Printing):
24616         * doc/emacs/mini.texi (Minibuffer History):
24617         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
24618         (Pulling / Pushing):
24619         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
24620         * doc/emacs/help.texi (Help, Help Echo):
24621         * doc/emacs/glossary.texi (Glossary):
24622         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
24623         (Frame Commands):
24624         * doc/emacs/files.texi (Reverting, Saving, Directories):
24625         * doc/emacs/entering.texi (Exiting):
24626         * doc/emacs/emacs.texi (Top):
24627         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
24628         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
24629         appropriate or replace quoting with @dfn.
24630         * doc/misc/ediff.texi (Window and Frame Configuration):
24631         * doc/lispref/processes.texi (Network Feature Testing):
24632         * doc/lispref/display.texi (Display Margins): Quote the phrase
24633         after "a.k.a." where appropriate.
24635 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
24637         Clarify reftex-extra-bindings docs
24638         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
24639         * doc/misc/reftex.texi (Key Bindings): Document that the variable
24640         only has an effect at load-time.
24642 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
24644         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
24645         search argument.  (Bug#21492) (Bug#21493)
24647 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
24649         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
24650         Add pretty symbols for \qquad and \varrho.
24652 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
24654         Add new functions for the root mean square of a (Calc) vector
24655         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
24656         New functions.
24657         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
24658         `calc-vector-rms', add autoloads for `calc-vector-rms' and
24659         `calcFunc-rms'.
24660         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
24661         `calcFunc-rms'.
24662         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
24663         `calc-vector-rms'.
24664         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
24665         command.
24667 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
24669         Add monotone EDE generic project
24670         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
24671         Add monotone generic project.
24673         Revert premature commit
24674         * doc/lispref/files.texi: Revert premature commit of change to
24675         file-name-all-completions.
24677         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
24678         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
24679         with cl-generic defaults.
24680         (elisp--xref-find-references): Add doc string.
24681         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
24682         tests to find bug.
24684         Fix bugs in eieio-oref-default related to class symbols
24685         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
24686         (eieio-oref-default): Handle class properly.
24688 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
24690         Quote “fullboth” when defining it
24691         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
24692         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
24694 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
24696         Minor doc fix in emacs/ack.texi
24697         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
24698         first argument.
24700 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
24702         Adapt tests in auto-revert-tests.el
24703         * test/automated/auto-revert-tests.el (auto-revert--timeout):
24704         Make it a defconst.
24705         (auto-revert--wait-for-revert): New defun.
24706         (auto-revert-test00-auto-revert-mode)
24707         (auto-revert-test01-auto-revert-tail-mode)
24708         (auto-revert-test02-auto-revert-mode-dired): Use it.
24710 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
24712         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
24713         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
24714         (cl-lib-fdefs): Add defgeneric.
24715         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
24716         (eieio-kw, cl-lib-kw, el-kw): Remove.
24718 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
24720         Quote less in manuals
24721         The manuals often used quotes ``...'' when it is better to use @dfn or
24722         @code or capitalized words or no quoting at all.  For example, there is
24723         no need for the `` and '' in “if a variable has one effect for
24724         @code{nil} values and another effect for ``non-@code{nil}'' values”.
24725         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
24726         unnecessary quoting like this, and to use @dfn etc. instead when called
24727         for (Bug#21472).
24729 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
24731         * lisp/custom.el (load-theme): Only compute hash when needed.
24733 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
24735         Pacify --enable-gcc-warnings
24736         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
24738 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
24740         Improve error reports in inotify.c
24741         * src/inotify.c (report_inotify_error): New function.  Clone of
24742         report_w32notify_error.
24743         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
24744         (Finotify_rm_watch): Use it.
24746 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
24748         Fix the file-notify tests for watch validation on w32
24749         * test/automated/file-notify-tests.el
24750         (file-notify-test04-file-validity): Move the directory deletion
24751         out of the file-notify--test-with-events macro.
24752         (file-notify-test04-file-validity)
24753         (file-notify-test05-dir-validity): Enlarge the timeout of
24754         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
24756 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
24758         Use OPEN BOX instead of space for \quad.
24759         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
24760         character for \quad instead of a space.
24762 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
24764         Add missing *.pbm images
24765         * etc/images/connect.pbm: New file.
24766         * etc/images/custom/down-pushed.pbm: New file.
24767         * etc/images/custom/down.pbm: New file.
24768         * etc/images/custom/right-pushed.pbm: New file.
24769         * etc/images/custom/right.pbm: New file.
24770         * etc/images/describe.pbm: New file.
24771         * etc/images/disconnect.pbm: New file.
24772         * etc/images/ezimage/bits.pbm: New file.
24773         * etc/images/ezimage/bitsbang.pbm: New file.
24774         * etc/images/ezimage/box-minus.pbm: New file.
24775         * etc/images/ezimage/box-plus.pbm: New file.
24776         * etc/images/ezimage/box.pbm: New file.
24777         * etc/images/ezimage/checkmark.pbm: New file.
24778         * etc/images/ezimage/dir-minus.pbm: New file.
24779         * etc/images/ezimage/dir-plus.pbm: New file.
24780         * etc/images/ezimage/dir.pbm: New file.
24781         * etc/images/ezimage/doc-minus.pbm: New file.
24782         * etc/images/ezimage/doc-plus.pbm: New file.
24783         * etc/images/ezimage/doc.pbm: New file.
24784         * etc/images/ezimage/info.pbm: New file.
24785         * etc/images/ezimage/key.pbm: New file.
24786         * etc/images/ezimage/label.pbm: New file.
24787         * etc/images/ezimage/lock.pbm: New file.
24788         * etc/images/ezimage/mail.pbm: New file.
24789         * etc/images/ezimage/page-minus.pbm: New file.
24790         * etc/images/ezimage/page-plus.pbm: New file.
24791         * etc/images/ezimage/page.pbm: New file.
24792         * etc/images/ezimage/tag-gt.pbm: New file.
24793         * etc/images/ezimage/tag-minus.pbm: New file.
24794         * etc/images/ezimage/tag-plus.pbm: New file.
24795         * etc/images/ezimage/tag-type.pbm: New file.
24796         * etc/images/ezimage/tag-v.pbm: New file.
24797         * etc/images/ezimage/tag.pbm: New file.
24798         * etc/images/ezimage/unlock.pbm: New file.
24799         * etc/images/gnus/important.pbm: New file.
24800         * etc/images/gnus/mail-send.pbm: New file.
24801         * etc/images/gnus/receipt.pbm: New file.
24802         * etc/images/gnus/toggle-subscription.pbm: New file.
24803         * etc/images/gnus/unimportant.pbm: New file.
24804         * etc/images/gud/all.pbm: New file.
24805         * etc/images/gud/rcont.pbm: New file.
24806         * etc/images/gud/recstart.pbm: New file.
24807         * etc/images/gud/recstop.pbm: New file.
24808         * etc/images/gud/rfinish.pbm: New file.
24809         * etc/images/gud/rnext.pbm: New file.
24810         * etc/images/gud/rnexti.pbm: New file.
24811         * etc/images/gud/rstep.pbm: New file.
24812         * etc/images/gud/rstepi.pbm: New file.
24813         * etc/images/gud/thread.pbm: New file.
24814         * etc/images/lock-broken.pbm: New file.
24815         * etc/images/lock-ok.pbm: New file.
24816         * etc/images/lock.pbm: New file.
24817         * etc/images/mail/copy.pbm: New file.
24818         * etc/images/mail/forward.pbm: New file.
24819         * etc/images/mail/not-spam.pbm: New file.
24820         * etc/images/mail/outbox.pbm: New file.
24821         * etc/images/mail/preview.pbm: New file.
24822         * etc/images/mail/save-draft.pbm: New file.
24823         * etc/images/mh-logo.pbm: New file.
24824         * etc/images/mpc/add.pbm: New file.
24825         * etc/images/mpc/ffwd.pbm: New file.
24826         * etc/images/mpc/next.pbm: New file.
24827         * etc/images/mpc/pause.pbm: New file.
24828         * etc/images/mpc/play.pbm: New file.
24829         * etc/images/mpc/prev.pbm: New file.
24830         * etc/images/mpc/rewind.pbm: New file.
24831         * etc/images/mpc/stop.pbm: New file.
24832         * etc/images/redo.pbm: New file.
24833         * etc/images/smilies/braindamaged.pbm: New file.
24834         * etc/images/smilies/cry.pbm: New file.
24835         * etc/images/smilies/dead.pbm: New file.
24836         * etc/images/smilies/evil.pbm: New file.
24837         * etc/images/smilies/forced.pbm: New file.
24838         * etc/images/smilies/grin.pbm: New file.
24839         * etc/images/smilies/indifferent.pbm: New file.
24840         * etc/images/sort-ascending.pbm: New file.
24841         * etc/images/sort-column-ascending.pbm: New file.
24842         * etc/images/sort-criteria.pbm: New file.
24843         * etc/images/sort-descending.pbm: New file.
24844         * etc/images/sort-row-ascending.pbm: New file.
24845         * etc/images/unchecked.pbm: New file.
24846         * etc/images/zoom-in.pbm: New file.
24847         * etc/images/README: Update instructions for PBM files.
24849         Add separator.pbm tool-bar image
24850         * etc/images/separator.pbm: New file.  Having it avoids the side
24851         effect of changing the tool-bar height when the default font's size
24852         changes and XPM image support is not available, due to the SPC
24853         characters that are left in the Lisp string used to display the tool
24854         bar, because there are no images to display instead of those SPC
24855         characters.
24857         Make show-paren-match face visible on mono-color displays
24858         * lisp/faces.el (show-paren-match): Use the underline face for
24859         mono-color displays.  (Bug#21481)
24861 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
24863         Don’t double-encode non-ASCII mail clipboard
24864         * lisp/mail/mailclient.el (mailclient-send-it):
24865         Also fix the case when mailclient-place-body-on-clipboard-flag
24866         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
24868 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
24870         Adapt file-notify-tests.el test cases
24871         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
24872         * src/inotify.c (Finotify_valid_p): Adapt docstring.
24873         * test/automated/file-notify-tests.el
24874         (file-notify-test03-autorevert)
24875         (file-notify-test04-file-validity)
24876         (file-notify-test04-file-validity-remote)
24877         (file-notify-test05-dir-validity)
24878         (file-notify-test05-dir-validity-remote): Adapt docstring.
24879         (file-notify-test04-file-validity): Let events arrive before
24880         calling final `file-notify-valid-p'.  Do not ignore errors.
24881         (file-notify-test05-dir-validity): Do not manipulate
24882         `temporary-file-directory', it isn't necessary.  Let events arrive
24883         before calling final `file-notify-valid-p'.  Do not ignore errors.
24885 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
24887         Don’t double-encode non-ASCII for mail client
24888         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
24889         Use RFC 6068’s list of unreserved characters.
24890         (mailclient-send-it): When encoding the body as a URL,
24891         first decode it as per Content-Type: and Content-Transfer-Encoding:,
24892         as URLs must use percent-encoded UTF-8 (Bug#21471).
24893         * doc/misc/url.texi (mailto): Update RFC number.
24895 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
24897         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
24899 2015-09-14  Alan Mackenzie  <acm@muc.de>
24901         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
24902         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
24903         `cadr/car'.
24905 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
24907         Clarify documentation of char-table extra slots
24908         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
24909         slot numbers are zero-based.  (Bug#21467)
24911 2015-09-14  Alan Mackenzie  <acm@muc.de>
24913         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
24914         Fixes bug#21449.
24915         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
24916         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
24917         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
24918         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
24919         Insert "\\|\\\\." into regexps which match symbols.
24921 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
24923         Improve the doc string of w32notify-valid-p
24924         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
24925         that removing a watch makes its object invalid.
24927 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
24929         Fix tests for file-notify-valid-p
24930         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
24931         Use delete-directory to delete file-notify--test-tmpfile if it is
24932         a directory.  Likewise for file-notify--test-tmpfile1.
24933         (file-notify-test04-file-validity)
24934         (file-notify-test05-dir-validity): Delete the parent directory of
24935         the test.  Ignore errors when cleaning up after the test.
24937 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
24939         Report file-notify-error in w32notify.c
24940         * src/w32notify.c (report_w32notify_error): New function.
24941         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
24942         errors, instead of calling report_file_error.  (Bug#21432)
24944         Implement w32notify-valid-p
24945         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
24946         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
24947         'identity'.
24949 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
24951         Test file-notify-valid-p
24952         * test/automated/file-notify-tests.el
24953         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
24954         New tests.
24956 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
24958         Fix markup in ELisp manual
24959         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
24960         of the 'alpha' parameter value.  (Bug#21470)
24962 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
24964         Introduce `file-notify-valid-p'
24965         * lisp/filenotify.el (file-notify-valid-p): New defun.
24966         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
24967         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
24968         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
24969         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
24970         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
24971         <file-notify-valid-p>: Add handler.
24972         * lisp/net/tramp.el (tramp-file-name-for-operation):
24973         Add `file-notify-valid-p'.
24974         (tramp-handle-file-notify-valid-p): New defun.
24975         * src/inotify.c (Finotify_valid_p): New defun.
24976         (syms_of_inotify): Declare Sinotify_valid_p.
24978 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
24980         Port Unicode char detection to FreeBSD+svgalib
24981         Problem reported by Ashish SHUKLA in:
24982         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
24983         * configure.ac: Check for struct unipair.unicode instead of for
24984         <linux/kd.h>, since that’s more specific to what the code
24985         actually needs.
24986         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
24988         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
24990 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
24992         Fix vertical cursor motion across overlay strings with newlines
24993         * src/indent.c (Fvertical_motion): Don't leave point in the middle
24994         of an overlay string with newlines, as that will position the
24995         cursor after the string at whatever column is there.  (Bug#21468)
24997 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
24999         Fix tests in file-notify-tests.el
25000         * test/automated/file-notify-tests.el: Remove Tramp declarations.
25001         (file-notify-test00-availability): Print remote command w/o Tramp
25002         internal functions.
25003         (file-notify-test02-events, file-notify-test02-events-remote):
25004         Adapt docstring.
25005         (file-notify-test03-autorevert): Use `format-message' when
25006         inspecting *Messages* buffer.
25008 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
25010         Bind inhibit-modification-hooks rather than a/b-c-f
25011         * lisp/wid-edit.el (widget-editable-list-insert-before)
25012         (widget-editable-list-delete-at):
25013         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
25014         (cperl-font-lock-unfontify-region-function):
25015         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
25016         * lisp/obsolete/longlines.el (longlines-mode):
25017         * lisp/obsolete/fast-lock.el (save-buffer-state):
25018         * lisp/mouse.el (mouse-save-then-kill-delete-region):
25019         * lisp/gnus/message.el (message-hide-headers):
25020         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
25021         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
25022         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
25023         than after/before-change-functions to nil.
25025 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
25027         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
25028         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
25029         the buffers, even if the forced redisplay is interrupted.
25031         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
25033         Merge syntax-propertize--done and parse-sexp-propertize-done
25034         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
25035         (syntax-propertize): Set syntax-propertize--done even if
25036         syntax-propertize-function is nil.  Avoid recursive invocations.
25037         (syntax-propertize-chunks): New var.
25038         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
25039         Simplify.
25040         (parse-sexp-propertize-function): Don't set any more.
25041         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
25042         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
25043         Call Qinternal__syntax_propertize instead of
25044         Vparse_sexp_propertize_function.  Truncate e_property if needed.
25045         (update_syntax_table_forward): Streamline.
25046         (syms_of_syntax): Define Qinternal__syntax_propertize.
25047         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
25049 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
25051         Prefer straight quoting in some text files
25052         Mostly this just changes ` to ' in static text.  Some exceptions:
25053         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
25054         typically does that now.
25055         * admin/quick-install-emacs (TRY, top level):
25056         Use straight quoting in diagnostics.
25057         * src/README: Fix working-directory confusion.
25059         * CONTRIBUTE: Move send-email here from git-workflow.
25061 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
25063         Improve file notifications in Tramp
25064         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
25065         Set proper events to watch for.
25066         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
25067         watched events.
25069 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
25071         Fix NS build with --enable-checking='glyphs'
25072         * src/nsfns.m (unwind_create_frame): Make the preprocessor
25073         conditionals for referencing 'dpyinfo' consistent throughout the
25074         function.  (Bug#21426)
25076 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
25078         Add seq-find
25079         This function is similar to `seq-some' but returns the found element.
25080         In the cases where nil can be the found element, a sentinel optional
25081         argument can be provided to avoid ambiguities.
25082         * lisp/emacs-lisp/seq.el (seq-find): New function.
25083         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
25084         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
25085         seq-find.
25087 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
25089         Document file-notify--test-with-events.
25090         * test/automated/file-notify-tests.el (file-notify--test-with-events):
25091         Add docstring.
25093 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
25095         Report used native library in file-notify-tests.el
25096         * test/automated/file-notify-tests.el
25097         (tramp-get-remote-gvfs-monitor-dir)
25098         (tramp-get-remote-inotifywait): Declare them.
25099         (file-notify-test00-availability): Print used native library.
25101 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
25103         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
25104         (mpc-file-local-copy): Check for absolute path.  Check more config
25105         locations.
25107 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
25109         Improve documentation of categories
25110         * doc/lispref/syntax.texi (Categories): Clarify the example of
25111         using define-category and modify-category-entry.  (Bug#21448)
25113 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
25115         Revert some stray curved quotes I missed earlier
25116         Problem reported by David Kastrup in:
25117         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
25118         * lisp/international/mule-cmds.el (leim-list-header):
25119         Use format-message with an ASCII-only format.
25121         Prefer NUMBERP to spelling it out
25122         * src/editfns.c (styled_format):
25123         * src/frame.h (NUMVAL):
25124         * src/image.c (parse_image_spec):
25125         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
25126         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
25127         * src/process.c (Fsignal_process):
25128         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
25129         * src/xfaces.c (check_lface_attrs):
25130         * src/xselect.c (x_fill_property_data, x_send_client_event):
25131         Use NUMBERP rather than INTEGERP || FLOATP.
25133 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
25135         Improve file-notify-tests
25136         * test/automated/file-notify-tests.el: Use lexical-binding.
25137         (file-notify--test-cleanup): New function.
25138         (file-notify-test00-availability, file-notify-test01-add-watch)
25139         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
25140         (file-notify--test-with-events): New macro.
25141         (file-notify-test02-events): Use it.
25143 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
25145         Add patch-sending instructions to git-workflow
25146         From a suggestion by Mitchel Humpherys in:
25147         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
25148         * admin/notes/git-workflow (Sending patches): New section.
25150         Port to GIFLIB 5.0.6 and later
25151         Problem reported by Mitchel Humpherys in:
25152         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
25153         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
25154         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
25155         (gif_load) [HAVE_GIF]: Use it.
25157 2015-09-10  Glenn Morris  <rgm@gnu.org>
25159         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
25161 2015-09-09  Glenn Morris  <rgm@gnu.org>
25163         * test/automated/file-notify-tests.el (file-notify-test02-events):
25164         Fix recent change.
25166 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
25168         Refix movemail GCC pacification
25169         Problem reported by Ken Brown in:
25170         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
25171         * lib-src/movemail.c (main): Fix previous change.
25173 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
25175         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
25176         Mark unused vars with underscore.
25178         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
25179         (parse_sexp_propertize): ...from here.
25181         * lisp/filenotify.el: Use lexical-binding
25182         (file-notify-add-watch): Avoid add-to-list.
25184 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
25186         Start checking event types in file-notify tests
25187         * test/automated/file-notify-tests.el (file-notify--test-events):
25188         New variable.
25189         (file-notify--test-event-handler): Append received event to
25190         file-notify--test-events for later analysis.
25191         (file-notify-test02-events): Assert that the expected notifications have
25192         arrived in the expected order.
25194 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
25196         Merge from gnulib and texinfo
25197         This incorporates:
25198         2015-08-03 Improve port of stdalign to C++11
25199         * lib/stdalign.in.h: Copy from gnulib.
25200         * doc/misc/texinfo.tex: Copy from texinfo.
25202 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
25204         Make syntax.c call syntax-propertize on demand
25205         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
25206         (parse-sexp-propertize-function): Use it.
25207         (syntax-propertize): Disable parse-sexp-propertize-function.
25208         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
25209         New functions.
25210         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
25211         `parse-sexp-propertize-function'.
25212         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
25213         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
25214         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
25215         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
25216         Don't assume `point' is set.
25218 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
25220         Fix indentation of an @example in ELisp manual
25221         * doc/lispref/syntax.texi (Categories): Untabify the example.
25222         (Bug#21448)
25224 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
25226         Define internal-char-font even if --without-x
25227         The function is used now even in non-graphical environments.
25228         Problem reported by Glenn Morris in:
25229         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
25230         * src/font.c (Finternal_char_font): Move here ...
25231         * src/fontset.c (Finternal_char_font): ... from here.
25233 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
25235         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
25236         Remove warning.
25238 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
25240         Fix display of complex local data types in GDB-MI
25241         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
25242         variable has no value, display "<complex data type>" as a
25243         placeholder, instead of a confusing "nil".  (Bug#21438)
25245 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
25247         Remove redundant redefinition of seq-drop-while from seq.el
25248         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
25250 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
25252         * lisp/emacs-lisp/package.el (package--ensure-init-file):
25253         More robust check for `package-initialize' calls in init file.
25254         This function accepts an optional argument, but calls passing
25255         an argument would not have been detected.
25257 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
25259         Port movemail to RHEL 6 with --enable-gcc-warnings
25260         * lib-src/movemail.c (main): Declare local only if needed.
25262         Port recent Linux console changes to RHEL 6
25263         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
25265         Improvements for curved quotes on Linux consule
25266         This should help Emacs work better out-of-the-box on Linux consoles,
25267         which have only limited support for displaying Unicode characters.
25268         Also, undo the recent change that caused text-quoting-style to
25269         affect quote display on terminals, so that the two features are
25270         independent.  See Alan Mackenzie in:
25271         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
25272         Finally, add a style parameter to startup--setup-quote-display,
25273         so that this function can also be invoked after startup, with
25274         different styles depending on user preference at the time.
25275         * configure.ac: Check for linux/kd.h header.
25276         * doc/emacs/display.texi (Text Display): Document quote display.
25277         * doc/lispref/display.texi (Active Display Table):
25278         * etc/NEWS:
25279         * lisp/startup.el (startup--setup-quote-display, command-line):
25280         text-quoting-style no longer affects quote display.
25281         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
25282         * lisp/international/mule-util.el (char-displayable-p):
25283         * lisp/startup.el (startup--setup-quote-display):
25284         On a text terminal supporting glyph codes, use the reported
25285         glyph codes instead of the terminal coding system, as this
25286         is more accurate on the Linux console.
25287         * lisp/startup.el (startup--setup-quote-display):
25288         New optional arg STYLE.
25289         * src/fontset.c (Finternal_char_font):
25290         Report glyph codes for a text terminal, if they are available.
25291         Currently this is supported only for the Linux console.
25292         * src/termhooks.h (struct terminal): New member glyph-code-table.
25293         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
25294         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
25295         (terminal_glyph_code): New function.
25297 2015-09-08  Juri Linkov  <juri@linkov.net>
25299         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
25300         underline.  (Bug#21433)
25302 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
25304         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
25306 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
25308         Fix double-reporting of rename events with inotify
25309         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
25310         of rename events with inotify (bug#21435).
25312 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
25314         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
25315         (tetris-mode-map): Use it.
25317 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
25319         Remove a few simple cases of global redisplay
25320         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
25321         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
25322         rather than returning a "resized_p" boolean.
25323         (redisplay_internal): Adjust call accordingly.
25324         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
25325         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
25326         tracking of this undesirable situation.
25328         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
25329         * src/process.c (status_notify): Only set the update_mode_line on the
25330         relevant buffers rather than setting it globally.
25332 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
25334         * lisp/electric.el (electric-quote-post-self-insert-function):
25335         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
25336         (electric-quote-mode): Activate everywhere in message-mode.
25338 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
25340         Go back to grave quoting in source-code docstrings etc.
25341         This reverts almost all my recent changes to use curved quotes
25342         in docstrings and/or strings used for error diagnostics.
25343         There are a few exceptions, e.g., Bahá’í proper names.
25344         * admin/unidata/unidata-gen.el (unidata-gen-table):
25345         * lisp/abbrev.el (expand-region-abbrevs):
25346         * lisp/align.el (align-region):
25347         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
25348         (outlineify-sticky):
25349         * lisp/apropos.el (apropos-library):
25350         * lisp/bookmark.el (bookmark-default-annotation-text):
25351         * lisp/button.el (button-category-symbol, button-put)
25352         (make-text-button):
25353         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
25354         * lisp/calc/calc-embed.el (calc-do-embedded):
25355         * lisp/calc/calc-ext.el (calc-user-function-list):
25356         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
25357         * lisp/calc/calc-help.el (calc-describe-key)
25358         (calc-describe-thing, calc-full-help):
25359         * lisp/calc/calc-lang.el (calc-c-language)
25360         (math-parse-fortran-vector-end, math-parse-tex-sum)
25361         (math-parse-eqn-matrix, math-parse-eqn-prime)
25362         (calc-yacas-language, calc-maxima-language, calc-giac-language)
25363         (math-read-giac-subscr, math-read-math-subscr)
25364         (math-read-big-rec, math-read-big-balance):
25365         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
25366         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
25367         (calc-auto-recompute):
25368         * lisp/calc/calc-prog.el (calc-fix-token-name)
25369         (calc-read-parse-table-part, calc-user-define-invocation)
25370         (math-do-arg-check):
25371         * lisp/calc/calc-store.el (calc-edit-variable):
25372         * lisp/calc/calc-units.el (math-build-units-table-buffer):
25373         * lisp/calc/calc-vec.el (math-read-brackets):
25374         * lisp/calc/calc-yank.el (calc-edit-mode):
25375         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
25376         * lisp/calendar/appt.el (appt-display-message):
25377         * lisp/calendar/diary-lib.el (diary-check-diary-file)
25378         (diary-mail-entries, diary-from-outlook):
25379         * lisp/calendar/icalendar.el (icalendar-export-region)
25380         (icalendar--convert-float-to-ical)
25381         (icalendar--convert-date-to-ical)
25382         (icalendar--convert-ical-to-diary)
25383         (icalendar--convert-recurring-to-diary)
25384         (icalendar--add-diary-entry):
25385         * lisp/calendar/time-date.el (format-seconds):
25386         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
25387         (timeclock-make-hours-explicit, timeclock-log-data):
25388         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
25389         (todo-item-mark, todo-check-format)
25390         (todo-insert-item--next-param, todo-edit-item--next-key)
25391         (todo-mode):
25392         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
25393         * lisp/cedet/mode-local.el (describe-mode-local-overload)
25394         (mode-local-print-binding, mode-local-describe-bindings-2):
25395         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
25396         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
25397         * lisp/cus-start.el (standard):
25398         * lisp/cus-theme.el (describe-theme-1):
25399         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
25400         (custom--sort-vars-1, load-theme):
25401         * lisp/descr-text.el (describe-text-properties-1, describe-char):
25402         * lisp/dired-x.el (dired-do-run-mail):
25403         * lisp/dired.el (dired-log):
25404         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
25405         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
25406         (ad-disable-advice, ad-remove-advice, ad-set-argument)
25407         (ad-set-arguments, ad--defalias-fset, ad-activate)
25408         (ad-deactivate):
25409         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
25410         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
25411         (byte-optimize-while, byte-optimize-apply):
25412         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
25413         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
25414         (byte-compile-log-file, byte-compile-format-warn)
25415         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
25416         (byte-compile-cl-warn)
25417         (byte-compile-warn-about-unresolved-functions)
25418         (byte-compile-file, byte-compile--declare-var)
25419         (byte-compile-file-form-defmumble, byte-compile-form)
25420         (byte-compile-normal-call, byte-compile-check-variable)
25421         (byte-compile-variable-ref, byte-compile-variable-set)
25422         (byte-compile-subr-wrong-args, byte-compile-setq-default)
25423         (byte-compile-negation-optimizer)
25424         (byte-compile-condition-case--old)
25425         (byte-compile-condition-case--new, byte-compile-save-excursion)
25426         (byte-compile-defvar, byte-compile-autoload)
25427         (byte-compile-lambda-form)
25428         (byte-compile-make-variable-buffer-local, display-call-tree)
25429         (batch-byte-compile):
25430         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
25431         * lisp/emacs-lisp/chart.el (chart-space-usage):
25432         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
25433         (check-declare-warn, check-declare-file)
25434         (check-declare-directory):
25435         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
25436         (checkdoc-message-text-engine):
25437         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
25438         (cl--describe-class):
25439         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
25440         (cl--generic-describe, cl-generic-generalizers):
25441         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
25442         (cl-symbol-macrolet):
25443         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
25444         * lisp/emacs-lisp/copyright.el (copyright)
25445         (copyright-update-directory):
25446         * lisp/emacs-lisp/edebug.el (edebug-read-list):
25447         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
25448         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
25449         (eieio-oref):
25450         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
25451         * lisp/emacs-lisp/eieio-speedbar.el:
25452         (eieio-speedbar-child-make-tag-lines)
25453         (eieio-speedbar-child-description):
25454         * lisp/emacs-lisp/eieio.el (defclass, change-class):
25455         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
25456         (elint-init-form, elint-check-defalias-form)
25457         (elint-check-let-form):
25458         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
25459         (ert-results-pop-to-backtrace-for-test-at-point)
25460         (ert-results-pop-to-messages-for-test-at-point)
25461         (ert-results-pop-to-should-forms-for-test-at-point)
25462         (ert-describe-test):
25463         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
25464         (find-function-library):
25465         * lisp/emacs-lisp/generator.el (iter-yield):
25466         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
25467         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
25468         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
25469         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
25470         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
25471         (advice--make, define-advice):
25472         * lisp/emacs-lisp/package-x.el (package-upload-file):
25473         * lisp/emacs-lisp/package.el (package-version-join)
25474         (package-disabled-p, package-activate-1, package-activate)
25475         (package--download-one-archive)
25476         (package--download-and-read-archives)
25477         (package-compute-transaction, package-install-from-archive)
25478         (package-install, package-install-selected-packages)
25479         (package-delete, package-autoremove, describe-package-1)
25480         (package-install-button-action, package-delete-button-action)
25481         (package-menu-hide-package, package-menu--list-to-prompt)
25482         (package-menu--perform-transaction)
25483         (package-menu--find-and-notify-upgrades):
25484         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
25485         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
25486         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
25487         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
25488         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
25489         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
25490         (rx-form):
25491         * lisp/emacs-lisp/smie.el (smie-config-save):
25492         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
25493         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
25494         * lisp/emacs-lisp/testcover.el (testcover-1value):
25495         * lisp/emacs-lisp/timer.el (timer-event-handler):
25496         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
25497         (viper-toggle-search-style, viper-kill-buffer)
25498         (viper-brac-function):
25499         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
25500         * lisp/env.el (setenv):
25501         * lisp/erc/erc-button.el (erc-nick-popup):
25502         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
25503         * lisp/eshell/em-dirs.el (eshell/cd):
25504         * lisp/eshell/em-glob.el (eshell-glob-regexp)
25505         (eshell-glob-entries):
25506         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
25507         * lisp/eshell/esh-opt.el (eshell-show-usage):
25508         * lisp/facemenu.el (facemenu-add-new-face)
25509         (facemenu-add-new-color):
25510         * lisp/faces.el (read-face-name, read-face-font, describe-face)
25511         (x-resolve-font-name):
25512         * lisp/files-x.el (modify-file-local-variable):
25513         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
25514         (set-auto-mode, hack-one-local-variable--obsolete)
25515         (dir-locals-set-directory-class, write-file, basic-save-buffer)
25516         (delete-directory, copy-directory, recover-session)
25517         (recover-session-finish, insert-directory)
25518         (file-modes-char-to-who, file-modes-symbolic-to-number)
25519         (move-file-to-trash):
25520         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
25521         * lisp/find-cmd.el (find-generic, find-to-string):
25522         * lisp/finder.el (finder-commentary):
25523         * lisp/font-lock.el (font-lock-fontify-buffer):
25524         * lisp/format.el (format-write-file, format-find-file)
25525         (format-insert-file):
25526         * lisp/frame.el (get-device-terminal, select-frame-by-name):
25527         * lisp/fringe.el (fringe--check-style):
25528         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
25529         * lisp/help-fns.el (help-fns--key-bindings)
25530         (help-fns--compiler-macro, help-fns--parent-mode)
25531         (help-fns--obsolete, help-fns--interactive-only)
25532         (describe-function-1, describe-variable):
25533         * lisp/help.el (describe-mode)
25534         (describe-minor-mode-from-indicator):
25535         * lisp/image.el (image-type):
25536         * lisp/international/ccl.el (ccl-dump):
25537         * lisp/international/fontset.el (x-must-resolve-font-name):
25538         * lisp/international/mule-cmds.el (prefer-coding-system)
25539         (select-safe-coding-system-interactively)
25540         (select-safe-coding-system, activate-input-method)
25541         (toggle-input-method, describe-current-input-method)
25542         (describe-language-environment):
25543         * lisp/international/mule-conf.el (code-offset):
25544         * lisp/international/mule-diag.el (describe-character-set)
25545         (list-input-methods-1):
25546         * lisp/mail/feedmail.el (feedmail-run-the-queue):
25547         * lisp/mouse.el (minor-mode-menu-from-indicator):
25548         * lisp/mpc.el (mpc-playlist-rename):
25549         * lisp/msb.el (msb--choose-menu):
25550         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
25551         * lisp/net/imap.el (imap-interactive-login):
25552         * lisp/net/mairix.el (mairix-widget-create-query):
25553         * lisp/net/newst-backend.el (newsticker--sentinel-work):
25554         * lisp/net/newst-treeview.el (newsticker--treeview-load):
25555         * lisp/net/rlogin.el (rlogin):
25556         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
25557         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
25558         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
25559         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
25560         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
25561         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
25562         (org-babel-goto-named-result):
25563         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
25564         * lisp/org/ob-ref.el (org-babel-ref-resolve):
25565         * lisp/org/org-agenda.el (org-agenda-prepare):
25566         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
25567         (org-clock-resolve):
25568         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
25569         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
25570         * lisp/org/org-habit.el (org-habit-parse-todo):
25571         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
25572         (org-mouse-context-menu):
25573         * lisp/org/org-table.el (org-table-edit-formulas):
25574         * lisp/org/ox.el (org-export-async-start):
25575         * lisp/proced.el (proced-log):
25576         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
25577         (ada-check-matching-start, ada-goto-matching-start):
25578         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
25579         * lisp/progmodes/ada-xref.el (ada-find-executable):
25580         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
25581         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
25582         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
25583         (flymake-start-syntax-check-process):
25584         * lisp/progmodes/python.el (python-shell-get-process-or-error)
25585         (python-define-auxiliary-skeleton):
25586         * lisp/progmodes/sql.el (sql-comint):
25587         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
25588         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
25589         * lisp/recentf.el (recentf-open-files):
25590         * lisp/replace.el (query-replace-read-from)
25591         (occur-after-change-function, occur-1):
25592         * lisp/scroll-bar.el (scroll-bar-columns):
25593         * lisp/server.el (server-get-auth-key):
25594         * lisp/simple.el (execute-extended-command)
25595         (undo-outer-limit-truncate, list-processes--refresh)
25596         (compose-mail, set-variable, choose-completion-string)
25597         (define-alternatives):
25598         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
25599         (command-line-1):
25600         * lisp/subr.el (noreturn, define-error, add-to-list)
25601         (read-char-choice, version-to-list):
25602         * lisp/term/common-win.el (x-handle-xrm-switch)
25603         (x-handle-name-switch, x-handle-args):
25604         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
25605         * lisp/textmodes/reftex-ref.el (reftex-label):
25606         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
25607         * lisp/textmodes/two-column.el (2C-split):
25608         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
25609         (tutorial--find-changed-keys):
25610         * lisp/type-break.el (type-break-noninteractive-query):
25611         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
25612         (wdired-do-perm-changes):
25613         * lisp/whitespace.el (whitespace-report-region):
25614         Prefer grave quoting in source-code strings used to generate help
25615         and diagnostics.
25616         * lisp/faces.el (face-documentation):
25617         No need to convert quotes, since the result is a docstring.
25618         * lisp/info.el (Info-virtual-index-find-node)
25619         (Info-virtual-index, info-apropos):
25620         Simplify by generating only curved quotes, since info files are
25621         typically that ways nowadays anyway.
25622         * lisp/international/mule-diag.el (list-input-methods):
25623         Don’t assume text quoting style is curved.
25624         * lisp/org/org-bibtex.el (org-bibtex-fields):
25625         Revert my recent changes, going back to the old quoting style.
25627 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25629         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
25630         (package--autoloads-file-name)
25631         (package--activate-autoloads-and-load-path): New function.
25632         (package-activate-1): Delegate autoloading and load-path
25633         configuration to `package--activate-autoloads-and-load-path'.
25634         (package--compile): Before compilation, call
25635         `package--activate-autoloads-and-load-path' instead of
25636         `package-activate-1'.
25638 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
25640         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
25642 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
25644         Fix deletion of symlinks to directories on MS-Windows
25645         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
25646         symlink to a directory, try again with 'rmdir'.
25647         (is_symlink): If the argument is a symlink to a directory, set a
25648         bit in the return value to indicate that fact.
25650 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25652         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
25653         When `package-initialize' is called as part of loading the init file,
25654         the user probably doesn't want it to be called again afterwards.
25655         In this situation, `package-initialize' now sets
25656         `package-enable-at-startup' to nil to prevent that.  The user can have
25657         the old behavior by setting this variable to t after the call to
25658         `package-initialize'.  (Bug#21423)
25659         * doc/emacs/package.texi (Package Installation): Document it.
25660         * doc/lispref/package.texi (Packaging Basics): Document it.
25661         * etc/NEWS: Document it.
25663 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
25665         Bump version of ntlm.el to 2.00
25666         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
25667         Add comm keyword.
25669 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
25671         * doc/misc/gnus.texi (Mail Source Specifiers):
25672         Allow :mailbox to be a list.
25674 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
25676         * lisp/progmodes/etags.el (etags-tags-completion-table):
25677         Allow even one non-regular character before the implicit tag name.
25678         Reported at http://emacs.stackexchange.com/questions/15269/.
25680 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
25682         Add support for NTLMv2 authentication
25683         * lisp/net/ntlm.el (ntlm): New customization group.
25684         (ntlm-compatibility-level): New defcustom.
25685         (ntlm-compute-timestamp): New function.
25686         (ntlm-generate-nonce): Likewise.
25687         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
25689 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
25691         * lisp/emacs-lisp/package.el: Rename custom faces.
25692         All of the recently introduced faces, like `package-name-face', have
25693         been renamed to no end in `-face' to comply with the convention
25694         described in (info "(elisp) Defining Faces").
25695         (package-name, package-description)
25696         (package-status-built-in, package-status-external)
25697         (package-status-available, package-status-new)
25698         (package-status-held, package-status-disabled)
25699         (package-status-installed, package-status-dependency)
25700         (package-status-unsigned, package-status-incompat)
25701         (package-status-avail-obso): New faces.
25702         (package-menu--print-info-simple): Use them.
25704 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
25706         mail-source.el: Make the imap mail-source's :mailbox handle a list
25707         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
25708         Allow :mailbox to be  a list.
25710 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
25712         nnimap.el: Handle nil arg to nnimap-request-group
25713         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
25714         This arg isn't always passed in, check it's not nil before making it
25715         into a list.  The active arg will also be nil if the group is new,
25716         check for that.
25718 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
25720         File notifications: Support renaming over directory boundaries
25721         * lisp/filenotify.el (file-notify-handle-event):
25722         (file-notify--pending-event): Adapt docstring.
25723         (file-notify--descriptor, file-notify-callback): Reimplement in
25724         order to support renaming over directory boundaries.
25725         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
25726         * doc/lispref/os.texi (File Notifications): Remove limitation of
25727         file renaming to the same directory.
25729 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
25731         Spelling fix (Bug#21420)
25733 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
25735         Improve the semantic of map-some
25736         Update map-some to return the returned by the predicate, similar to
25737         seq-some.
25738         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
25739           return value of the predicate.
25740         * test/automated/map-tests.el (test-map-some): Update the test to check
25741           for non-nil values only.
25743         Rename map-contains-key-p and map-some-p
25744         Remove the "-p" suffix from both function names.
25745         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
25746           Rename the functions.
25747         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
25748           Update both test functions.
25750         Improve the semantic of seq-some
25751         Update seq-some to return non-nil if the predicate returns non-nil for
25752         any element of the seq, in which case the returned value is the one
25753         returned by the predicate.
25754         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
25755           docstring.
25756         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
25757         * doc/lispref/sequences.texi (Sequence Functions): Update the
25758           documentation for seq-some.
25760         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
25761         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
25762           without the "-p" prefix.
25763         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
25764           the tests accordingly.
25765         * doc/lispref/sequences.texi (Sequence Functions): Update the
25766           documentation for seq.el.
25768 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
25770         text-quoting-style for usage of fn names with ‘’
25771         * lisp/help.el (help--docstring-quote): Don’t assume
25772         text-quoting-style is ‘curve’ when generating usage strings for
25773         functions whose names contain curved quotes.
25775 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
25777         Fix fix for describe-function keybinding confusion
25778         This fixes a bug introduced by the previous patch.
25779         * lisp/help-fns.el (help-fns--signature):
25780         Last arg of help-fns--signature is now a buffer, or nil if a
25781         raw signature is wanted.  All callers changed.
25782         (describe-function-1): Use this to do the right thing with signatures.
25784 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
25786         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
25788         Use PAT rather than UPAT in pcase macros
25789         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
25790         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
25791           than UPAT.
25793 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
25795         Fix describe-function keybinding confusion
25796         * lisp/help-fns.el (describe-function-1): Compute signature
25797         in the original buffer, not in standard-output, so that
25798         substitute-command-keys uses the proper keybindings.
25799         This fixes Bug#21412, introduced in commit
25800         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
25802 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
25804         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
25806 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
25808         Avoid read error messages from 'inotify'
25809         * src/process.c (wait_reading_process_output): Add a
25810         'tls_available' set and manipulate it instead of 'Available' when
25811         checking TLS inputs.  Assign the value to 'Available' only if we
25812         find any TLS data waiting to be read.  This avoids error messages
25813         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
25815 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
25817         Avoid errors in thing-at-point with 2nd argument non-nil
25818         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
25819         sequences.  (Bug#21391)
25821 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
25823         Fix segfaults due to using a stale face ID
25824         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
25825         (display_echo_area_1, redisplay_internal): Call it to avoid
25826         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
25827         faces, which could case a segfault if the frame's face cache was
25828         freed since the last redisplay.  (Bug#21394)
25829         * src/xfaces.c (free_realized_faces):
25830         Call forget_escape_and_glyphless_faces.
25831         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
25833 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
25835         Fix minor problems with " in manual
25837 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
25839         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
25840         multi-hop files.
25842 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
25844         Support automated ‘make check’ in non-C locale
25845         This lets the builder optionally test Emacs behavior in other locales.
25846         The C locale is still the default for tests.
25847         * test/automated/Makefile.in (TEST_LOCALE): New macro.
25848         (emacs): Use it.
25849         * test/automated/flymake-tests.el (flymake-tests--current-face):
25850         Use C locale for subprocesses so that tests behave as expected.
25851         * test/automated/python-tests.el:
25852         (python-shell-prompt-validate-regexps-1)
25853         (python-shell-prompt-validate-regexps-2)
25854         (python-shell-prompt-validate-regexps-3)
25855         (python-shell-prompt-validate-regexps-4)
25856         (python-shell-prompt-validate-regexps-5)
25857         (python-shell-prompt-validate-regexps-6)
25858         (python-shell-prompt-set-calculated-regexps-1):
25859         Adjust expected output to match locale.
25860         * test/automated/tildify-tests.el (tildify-test--test)
25861         (tildify-space-test--test, tildify-space-undo-test--test):
25862         This test assumes UTF-8 encoding.
25864 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
25866         Fix some more docstring etc. quoting problems
25867         Mostly these fixes prevent the transliteration of apostrophes
25868         that should stay apostrophes.  Also, prefer curved quotes in
25869         Bahá’í proper names, as that’s the preferred Bahá’í style and
25870         these names are chock-full of non-ASCII characters anyway.
25871         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
25872         (eieio-defclass-internal):
25873         * lisp/emacs-lisp/eieio.el (defclass):
25874         * lisp/hi-lock.el (hi-lock-mode):
25875         Don’t transliterate Lisp apostrophes when generating a
25876         doc string or diagnostic.
25877         * lisp/international/mule-diag.el (list-coding-systems-1):
25878         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
25879         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
25880         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
25881         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
25882         Substitute quotes before putting them in the help buffer.
25884 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
25886         Re-add the notion of echo_prompt lost in the translation
25887         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
25888         echo_prompt which contains the actual string.  Update all uses.
25889         * src/keyboard.c (kset_echo_prompt): New function.
25890         (echo_update): Add echo_prompt at the very beginning.
25891         (read_char): Remove workaround for bug#19875, not needed any more.
25892         (read_key_sequence): Set echo_prompt rather than echo_string
25893         (bug#21403).
25894         (mark_kboards): Mark echo_prompt.
25896         Fix disassembly of non-compiled lexical functions (bug#21377)
25897         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
25898         * lisp/emacs-lisp/disass.el: Use lexical-binding.
25899         (disassemble): Recognize `closure's as well.
25900         (disassemble-internal): Use indirect-function and
25901         help-function-arglist, and accept `closure's.
25902         (disassemble-internal): Use interactive-form.
25903         (disassemble-1): Use functionp.
25905         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
25906         Don't compose inside verbatim blocks!
25908 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
25910         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
25911         (bug#19441).
25913         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
25915 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
25917         vc-git-mode-line-string: Explicitly re-apply the face
25918         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
25919         the face (bug#21404).
25921 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
25923         Treat initial-scratch-message as a doc string
25924         * doc/emacs/building.texi (Lisp Interaction):
25925         * doc/lispref/os.texi (Startup Summary):
25926         * etc/NEWS: Document this.
25927         * lisp/startup.el (initial-scratch-message):
25928         Look up find-file’s key rather than hardcoding it.
25929         (command-line-1): Substitute the doc string.
25930         This also substitutes the quotes, which will help test display
25931         quoting at startup.
25933         Fix describe-char bug with glyphs on terminals
25934         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
25935         buffers too, so don’t treat them differently from graphic displays.
25936         Without this fix, describe-char would throw an error on a terminal
25937         if given a glyph with a non-default face.
25939         Follow text-quoting-style in display table init
25940         This attempts to fix a problem reported by Alan Mackenzie in:
25941         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
25942         * doc/lispref/display.texi (Active Display Table):
25943         Mention how text-quoting-style affects it.
25944         * doc/lispref/help.texi (Keys in Documentation):
25945         Say how to set text-quoting-style in ~/.emacs.
25946         * etc/NEWS: Document the change.
25947         * lisp/startup.el (startup--setup-quote-display):
25948         Follow user preference if text-quoting-style is set.
25949         (command-line): Setup quote display again if user expresses
25950         a preference in .emacs.
25952 2015-09-02  K. Handa  <handa@gnu.org>
25954         Fix typo
25955         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
25956         -> OTF_positioning_type_components_mask.
25958         Fix previous change
25959         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
25960         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
25962 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
25964         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
25965         Rename from vc-find-file-hook and make interactive.
25966         (vc-find-file-hook): Redefine as obsolete alias.
25968 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25970         Escape ` and ' in doc
25971         Escape apostrophes and grave accents in docstrings if they are
25972         are supposed to stand for themselves and are not quotes.  Remove
25973         apostrophes from docstring examples like ‘'(calendar-nth-named-day
25974         -1 0 10 year)’ that confuse source code with data.  Do some other
25975         minor docstring fixups as well, e.g., insert a missing close quote.
25977 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
25979         Generalize the prefix-command machinery of C-u
25980         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
25981         (prefix-command-preserve-state-hook): New hooks.
25982         (internal-echo-keystrokes-prefix): New function.
25983         (prefix-command--needs-update, prefix-command--last-echo): New vars.
25984         (prefix-command-update, prefix-command-preserve): New functions.
25985         (reset-this-command-lengths): New compatibility definition.
25986         (universal-argument--mode): Call prefix-command-update.
25987         (universal-argument, universal-argument-more, negative-argument)
25988         (digit-argument): Call prefix-command-preserve-state.
25989         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
25990         the "prefix argument" to echo.
25991         (this_command_key_count_reset, before_command_key_count)
25992         (before_command_echo_length): Delete variables.
25993         (echo_add_key): Always add a space.
25994         (echo_char): Remove.
25995         (echo_dash): Don't give up when this_command_key_count is 0, since that
25996         is now the case after a prefix command.
25997         (echo_update): New function, extracted from echo_now.
25998         (echo_now): Use it.
25999         (add_command_key, read_char, record_menu_key): Remove old disabled code.
26000         (command_loop_1): Don't refrain from pushing an undo boundary when
26001         prefix-arg is set.  Remove other prefix-arg special case, now handled
26002         directly in the prefix commands instead.  But call echo_now if there's
26003         a prefix state to echo.
26004         (read_char, record_menu_key): Use echo_update instead of echo_char.
26005         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
26006         (Freset_this_command_lengths): Delete function.
26007         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
26008         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
26009         * lisp/simple.el: Use those new hooks for C-u.
26010         (universal-argument--description): New function.
26011         (prefix-command-echo-keystrokes-functions): Use it.
26012         (universal-argument--preserve): New function.
26013         (prefix-command-preserve-state-hook): Use it.
26014         (command-execute): Call prefix-command-update if needed.
26015         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
26016         (kmacro-step-edit-prefix-index): Delete variables.
26017         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
26018         support for prefix arg commands.
26019         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
26020         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
26021         (cua--shift-control-prefix): Use prefix-command-preserve-state.
26022         Remove now unused arg `arg'.
26023         (cua--prefix-override-handler, cua--prefix-repeat-handler)
26024         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
26025         Update accordingly.
26026         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
26027         any more.
26028         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
26029         if the mark is not set.
26031 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26033         Rework quoting in Emacs Lisp Introduction
26034         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
26035         (if in more detail, type-of-animal in detail, else): Rework the
26036         early example to use " rather than ' so that we don’t burden
26037         complete novices with the low-priority detail of text quoting style.
26038         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
26039         (kill-new function, kill-ring-yank-pointer)
26040         (Complete forward-sentence, Loading Files)
26041         (Code for current-kill, Code for current-kill, yank):
26042         Resurrect the Emacs 22 versions of the code, which uses grave
26043         quoting style in doc strings.
26044         (Complete zap-to-char): Mention how quoting works in doc strings.
26046         Setup quote display only if interactive
26047         * lisp/startup.el (command-line):
26048         Skip call to startup--setup-quote-display if noninteractive.
26049         Without this change, python-shell-prompt-validate-regexps-1
26050         fails in test/automated/python-tests.el when run in an
26051         en_US.utf8 locale on Fedora.
26053 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
26055         Use defalias at the top level
26056         * lisp/gnus/gnus-util.el (gnus-format-message):
26057         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
26058         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
26060 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26062         terminal-init-w32console mimics command-line
26063         Problem reported by Eli Zaretskii.
26064         * lisp/startup.el (startup--setup-quote-display):
26065         New function, refactored from a part of ‘command-line’.
26066         (command-line): Use it.
26067         * lisp/term/w32console.el (terminal-init-w32console):
26068         Use it, so that this function stays consistent with ‘command-line’.
26070         Display replacement quotes with shadow glyphs
26071         * lisp/startup.el (command-line): When displaying ASCII
26072         replacements for curved quotes, use a shadow glyph instead of a
26073         regular one, to avoid ambiguity.
26075 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
26077         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
26079 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26081         Docstring fixes re quotes in C code
26082         Fix some docstring quoting problems, mostly by escaping apostrophe.
26084 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
26086         Some Tramp password fixes
26087         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
26088         of the hops.
26089         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
26090         at the beginning of the command.  Otherwise, it could be
26091         interpreted as password prompt if the remote host echoes the
26092         command.
26093         (tramp-remote-coding-commands): Add "openssl enc -base64".
26095 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
26097         Make vc-git-working-revision always return the commit hash
26098         * lisp/vc/vc-git.el (vc-git-working-revision):
26099         Return the commit hash (bug#21383).
26100         (vc-git--symbolic-ref): New function, extracted from above.
26101         (vc-git-mode-line-string): Use it.
26103 2015-09-01  K. Handa  <handa@gnu.org>
26105         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
26106         * src/ftfont.c (MFLTGlyphFT): New type.
26107         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
26108         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
26109         elements in the array MFLTGlyphString.glyphs.
26111 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
26113         Improve comments in elisp-mode.el, elisp-mode-tests.el
26114         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
26116         Delete Emacs 25 test in mode-local.el
26117         * lisp/cedet/mode-local.el (describe-mode-local-overload):
26118         Fix missed an edit in previous commit.
26120         Show all known mode-local overrides in *Help*
26121         * lisp/cedet/mode-local.el (describe-mode-local-overload):
26122         Assume Emacs 25. Add all known mode-local overrides.
26124 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
26126         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
26127         Ensure that the article where the search word is found is displayed
26128         and pointed to in the summary buffer.
26130 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
26132         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
26133         When the region is active, but is empty (length 0), act as though
26134         the region was not active; that is, put a comment at the end of
26135         the line.  (Bug#21119)
26137 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
26139         Port tls.el to older Emacs
26140         * lisp/net/tls.el (tls-format-message):
26141         Alias to format-message, or format if not available.
26142         (open-tls-stream): Use it.
26144 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
26146         hideif.el: Recognize .h++ as C++ header
26147         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
26149         isearch: Document character folding mode
26150         * lisp/isearch.el (isearch-forward):
26151         Mention `isearch-toggle-character-fold' in doc string.
26153 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26155         Quoting fixes in ERC and Eshell
26156         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
26157         * lisp/erc/erc-backend.el (define-erc-response-handler):
26158         * lisp/erc/erc-fill.el (erc-fill-static-center):
26159         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
26160         * lisp/eshell/em-glob.el (eshell-glob-entries):
26161         * lisp/eshell/em-hist.el (eshell-save-some-history):
26162         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
26163         (eshell-shuffle-files):
26164         * lisp/eshell/esh-cmd.el (eshell-do-eval):
26165         * lisp/eshell/esh-proc.el (eshell-process-interact)
26166         (eshell-query-kill-processes):
26167         Respect ‘text-quoting-style’ in diagnostics and doc strings.
26169         Quoting fixes in Gnus
26170         * lisp/gnus/gnus-agent.el:
26171         (gnus-agent-possibly-synchronize-flags-server):
26172         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
26173         * lisp/gnus/gnus-eform.el (gnus-edit-form):
26174         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
26175         (gnus-group-nnimap-edit-acl):
26176         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
26177         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
26178         * lisp/gnus/message.el (message-strip-subject-encoded-words)
26179         (message-check-recipients, message-send-form-letter):
26180         * lisp/gnus/mm-decode.el (mm-display-part):
26181         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
26182         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
26183         (mml-smime-get-ldap-cert):
26184         * lisp/gnus/spam-report.el (spam-report-process-queue):
26185         Respect ‘text-quoting-style’ in diagnostics.
26186         * lisp/gnus/gnus-art.el (article-display-face)
26187         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
26188         Use straight quoting in email.
26189         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
26190         Escape apostrophes in doc strings.
26192         Quoting fixes in lisp mail, mh-e, net, url
26193         * lisp/mail/emacsbug.el (report-emacs-bug)
26194         (report-emacs-bug-hook): Use straight quotes in outgoing email,
26195         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
26196         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
26197         * lisp/mail/rmailout.el (rmail-output-read-file-name):
26198         * lisp/net/imap.el (imap-interactive-login):
26199         * lisp/net/tls.el (open-tls-stream):
26200         * lisp/url/url-auth.el (url-register-auth-scheme):
26201         Respect ‘text-quoting-style’ in diagnostics.
26202         * lisp/mh-e/mh-e.el (mh-sortm-args):
26203         Quote docstring example using text quotes, not as a Lisp quote.
26205 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
26207         Fix some byte-compiler warnings in EDE
26208         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
26209         existing autoloader list, rather than add to it.
26210         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
26211         argument to eieio class constructor.
26212         (ede-show-supported-projects): New.
26213         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
26214         with (oref ... name).
26215         (ede-auto-load-project): Use slot name, not initarg key.
26216         * lisp/cedet/ede/generic.el (ede-generic-load)
26217         (ede-generic-find-matching-target): Use slot name, not initarg key.
26218         (ede-find-target): Use oref-default on class name.
26219         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
26220         class constructor.
26221         (ede-enable-generic-projects): Make project type names unique.
26223 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
26225         Fix directory accessibility tests for w32 network volumes
26226         * src/w32.c (faccessat): Don't fail with network volumes without a
26227         share.
26228         (w32_accessible_directory_p): Handle network volumes without a
26229         share.
26231         Fix handling long file names in readdir on MS-Windows
26232         * src/w32.c (sys_readdir): Append "\*" to the directory after
26233         converting it to UTF-16/ANSI, not before, to avoid overflowing the
26234         260-character limit on file names in filename_to_utf16/ansi.
26236         Make file-accessible-directory-p reliable on MS-Windows
26237         * src/w32.c (w32_accessible_directory_p): New function.
26238         * src/w32.h (w32_accessible_directory_p): Add prototype.
26239         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
26240         w32_accessible_directory_p to test a directory for accessibility
26241         by the current user.  (Bug#21346)
26242         (Ffile_accessible_directory_p): Remove the w32 specific caveat
26243         from the doc string.
26245 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
26247         Don't call do_pending_window_change in signal handlers (Bug#21380)
26248         * src/gtkutil.c (xg_frame_resized):
26249         * src/xterm.c (x_set_window_size):
26250         * src/w32term.c (x_set_window_size): Don't call
26251         do_pending_window_change.
26253 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26255         Quoting fixes in lisp/org
26256         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
26257         (org-tags-view):
26258         * lisp/org/org-capture.el (org-capture-mode)
26259         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
26260         (org-ctags-ask-append-topic):
26261         * lisp/org/org.el (org-time-string-to-time)
26262         (org-time-string-to-absolute):
26263         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
26264         (org-ctags-ask-append-topic):
26265         * lisp/org/org.el (org-time-string-to-time)
26266         (org-time-string-to-absolute):
26267         Respect ‘text-quoting-style’ in diagnostics.
26268         * lisp/org/org-agenda.el (org-agenda-custom-commands)
26269         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
26270         * lisp/org/org-capture.el (org-capture-fill-template):
26271         Avoid contraction in output file that might be ASCII.
26272         * lisp/org/org-compat.el (format-message):
26273         Define if not already defined, for backward compatibility.
26274         * lisp/org/org-src.el (org-edit-src-save):
26275         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
26276         Escape apostrophes in diagnostics.
26278         Treat “instead” strings as docstrings
26279         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
26280         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
26281         Substitute quotes in instead strings.
26283 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
26285         Better documentation of seq-let
26286         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
26287         documentation of seq-let.
26289 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26291         * lisp/international/ccl.el: Fix quoting.
26293         Quoting fixes in lisp/international and lisp/leim
26294         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
26295         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
26296         * lisp/international/mule-cmds.el:
26297         (select-safe-coding-system-interactively, leim-list-file-name):
26298         * lisp/international/quail.el (quail-use-package, quail-help):
26299         * lisp/international/titdic-cnv.el (tit-process-header)
26300         (miscdic-convert):
26301         Respect text quoting style in doc strings and diagnostics.
26302         * lisp/international/quail.el (lisp/international/quail.el):
26303         * lisp/leim/quail/ethiopic.el ("ethiopic"):
26304         Escape apostrophes in doc strings.
26306         Make ‘text-quoting-style’ a plain defvar
26307         It doesn’t need customization, as it’s likely useful only by experts.
26308         Suggested by Stefan Monnier in:
26309         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
26310         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
26312         Quoting fixes in lisp/textmodes
26313         * lisp/textmodes/bibtex.el (bibtex-validate)
26314         (bibtex-validate-globally, bibtex-search-entries):
26315         * lisp/textmodes/ispell.el (ispell-command-loop):
26316         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
26317         * lisp/textmodes/texinfmt.el (texinfmt-version)
26318         (texinfo-format-region, texinfo-format-buffer-1):
26319         * lisp/textmodes/two-column.el (2C-split):
26320         Respect text quoting style in doc strings and diagnostics.
26321         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
26322         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
26323         Escape apostrophes in doc strings.
26325         Documentation fixes re quotes
26326         Prefer curved quotes in examples if users will typically see
26327         curved quotes when the examples run.
26328         Mention format-message when appropriate.
26329         Don’t use @code in examples.
26330         Quote an apostrophe with @kbd.
26332         Quoting fixes in lisp/progmodes
26333         * lisp/progmodes/cc-engine.el (c-bos-report-error):
26334         * lisp/progmodes/cpp.el (cpp-edit-reset):
26335         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
26336         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
26337         (etags-tags-apropos, list-tags, tags-apropos):
26338         * lisp/progmodes/executable.el (executable-set-magic):
26339         * lisp/progmodes/octave.el (octave-sync-function-file-names)
26340         (octave-help, octave-find-definition-default-filename)
26341         (octave-find-definition):
26342         Respect text quoting style in doc strings and diagnostics.
26343         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
26344         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
26345         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
26346         Escape apostrophes in doc strings.
26347         * lisp/progmodes/cmacexp.el (c-macro-expansion):
26348         Use straight quoting in ASCII comment.
26349         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
26350         (idlwave-pad-keyword):
26351         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
26352         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
26353         (vhdl-electric-semicolon, vhdl-electric-comma)
26354         (vhdl-electric-period, vhdl-electric-equal):
26355         Use directed quotes in diagnostics and doc strings.
26357 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
26359         Minor documentation and NEWS tweak
26360         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
26361         Add an index entry.
26362         * etc/NEWS: Fix a typo in character-fold-to-regexp.
26364 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
26366         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
26367         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
26368         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
26369         Adapt test.
26371 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
26373         Text quoting fixes in cedet, emulation, emacs-lisp
26374         * lisp/cedet/ede.el (ede-check-project-directory):
26375         * lisp/cedet/semantic/analyze/debug.el
26376         (semantic-analyzer-debug-insert-include-summary):
26377         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
26378         * lisp/cedet/semantic/decorate/include.el
26379         (semantic-decoration-unknown-include-describe)
26380         (semantic-decoration-all-include-summary):
26381         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
26382         * lisp/emulation/edt.el (edt-load-keys):
26383         * lisp/emulation/viper-cmd.el
26384         (viper-display-current-destructive-command)
26385         (viper-query-replace, viper-brac-function):
26386         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
26387         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
26388         Respect text quoting style in doc string or diagnostic.
26389         * lisp/cedet/mode-local.el (describe-mode-local-overload):
26390         Use format-message to avoid overtranslating quotes.
26391         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
26392         Escape an apostrophe in a docstring.
26393         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
26395 2015-08-29  Daniel Colascione  <dancol@dancol.org>
26397         Fix which-func for curly quotes: look for symbol, not message
26398         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
26399         imenu-unavailable error symbol instead of trying to match message
26400         exactly.
26401         * lisp/imenu.el (imenu-unavailable): New error.
26402         (imenu-unavailable-error): New function.
26404 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
26406         Fix Python tests on MS-Windows
26407         * test/automated/python-tests.el
26408         (python-shell-calculate-command-1): Run python-shell-interpreter
26409         through shell-quote-argument before comparing with what
26410         python-shell-calculate-command returns.
26411         (python-shell-calculate-pythonpath-1)
26412         (python-shell-calculate-pythonpath-2)
26413         (python-shell-calculate-process-environment-2): Use path-separator
26414         instead of a literal ':'.
26415         (python-shell-calculate-exec-path-2)
26416         (python-shell-calculate-exec-path-3)
26417         (python-shell-calculate-exec-path-4)
26418         (python-shell-with-environment-1)
26419         (python-shell-with-environment-2): Run "/env/bin" through
26420         expand-file-name before comparing with exec-path.  (Bug#21375)
26422 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
26424         Use Core Text types/functions/variables/enumerators directly
26425         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
26426         (CharacterCollection): Remove typedefs.  All uses replaced with
26427         definitions.
26428         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
26429         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
26430         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
26431         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
26432         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
26433         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
26434         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
26435         definitions.
26436         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
26437         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
26438         (MAC_FONT_FORMAT_BITMAP)
26439         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
26440         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
26441         All uses replaced with definitions.
26442         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
26443         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
26444         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
26445         Add compatibility enumerators for older versions.
26446         (mac_font_descriptor_create_with_attributes)
26447         (mac_font_descriptor_create_matching_font_descriptors)
26448         (mac_font_descriptor_create_matching_font_descriptor)
26449         (mac_font_descriptor_copy_attribute)
26450         (mac_font_descriptor_supports_languages)
26451         (mac_font_create_with_name, mac_font_get_size)
26452         (mac_font_copy_family_name, mac_font_copy_character_set)
26453         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
26454         (mac_font_get_descent, mac_font_get_leading)
26455         (mac_font_get_underline_position)
26456         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
26457         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
26458         replaced with definitions.
26459         (mac_font_create_preferred_family_for_attributes)
26460         (mac_font_get_advance_width_for_glyph)
26461         (mac_font_get_bounding_rect_for_glyph)
26462         (mac_font_create_available_families, mac_font_shape):
26463         Remove macros for renamed functions.
26464         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
26465         * src/macfont.m (mac_font_descriptor_supports_languages):
26466         Rename from mac_ctfont_descriptor_supports_languages.
26467         (mac_font_create_preferred_family_for_attributes): Rename from
26468         mac_ctfont_create_preferred_family_for_attributes.
26469         (mac_font_get_advance_width_for_glyph): Rename from
26470         mac_ctfont_get_advance_width_for_glyph.
26471         Use kCTFontOrientationDefault also for older versions.
26472         (mac_font_get_bounding_rect_for_glyph): Rename from
26473         mac_ctfont_get_bounding_rect_for_glyph.
26474         Use kCTFontOrientationDefault also for older versions.
26475         (mac_font_create_available_families): Rename from
26476         mac_ctfont_create_available_families.
26477         (mac_font_equal_in_postscript_name): Rename from
26478         mac_ctfont_equal_in_postscript_name.  All uses changed.
26479         (mac_font_create_line_with_string_and_font): Rename from
26480         mac_ctfont_create_line_with_string_and_font.  All uses changed.
26481         (mac_font_shape): Rename from mac_ctfont_shape.
26482         (mac_font_family_compare): Remove unused declaration.
26484 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
26486         Fix minor text quoting in calc, calendar, vc
26487         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
26488         * lisp/calc/calc-help.el (calc-j-prefix-help):
26489         * lisp/calc/calc-misc.el (calc-help):
26490         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
26491         Escape an apostrophe in a docstring.
26492         * lisp/calc/calc-forms.el (calc-hms-notation):
26493         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
26494         Escape an apostrophe in a diagnostic.
26495         * lisp/calc/calc-misc.el (calc-help):
26496         * lisp/calendar/diary-lib.el (diary-include-files):
26497         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
26498         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
26499         * lisp/vc/ediff-diff.el (ediff-same-contents):
26500         * lisp/vc/ediff-merg.el (ediff-re-merge):
26501         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
26502         * lisp/vc/ediff-util.el (ediff-test-save-region)
26503         (ediff-status-info):
26504         * lisp/vc/ediff.el (ediff-merge-revisions)
26505         (ediff-merge-revisions-with-ancestor):
26506         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
26507         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
26508         Respect text quoting style in doc string or diagnostic.
26509         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
26510         * lisp/vc/add-log.el (change-log-goto-source):
26511         Avoid double-formatting.
26512         * lisp/vc/ediff-init.el (format-message):
26513         New backward-compatibility alias.
26515 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
26517         Fix minor text quoting problems in lisp top level
26518         * lisp/apropos.el (apropos-describe-plist):
26519         * lisp/cus-theme.el (customize-themes):
26520         * lisp/dired.el (dired-log):
26521         * lisp/help-fns.el (describe-variable):
26522         * lisp/hexl.el (hexl-insert-multibyte-char):
26523         * lisp/info.el (Info-finder-find-node):
26524         * lisp/json.el (json-read-string):
26525         * lisp/novice.el (disabled-command-function)
26526         (disabled-command-function):
26527         * lisp/startup.el (normal-mouse-startup-screen):
26528         * lisp/woman.el (WoMan-log, WoMan-warn):
26529         Respect text quoting style in doc string or diagnostic.
26530         * lisp/replace.el (replace-character-fold):
26531         * src/syntax.c (Fmodify_syntax_entry):
26532         Escape an apostrophe in a docstring.
26533         * lisp/tempo.el (tempo-define-template):
26534         Remove confusing apostrophe from docstring.
26535         * lisp/whitespace.el (whitespace-mark-x):
26536         Use directed quotes in docstring.
26538 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
26540         Fix indentation rule in css-mode
26541         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
26542         brackets in presence of pseudo-selectors.  (Bug#21328)
26544 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
26546         Fix a bug in recording a macro while flyspell-mode is active
26547         * lisp/subr.el (sit-for): Don't call read-event when recording a
26548         macro.  (Bug#21329)
26550 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
26552         Tweak startup screen quoting
26553         * lisp/startup.el (normal-splash-screen): Use standard
26554         "M-" abbrevation rather than a confusingly-different one.
26555         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
26557 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
26559         Add test case for ‘format’ bug and refactor
26560         * src/editfns.c (styled_format): Refactor internally, mostly by
26561         moving declarations closer to uses.  This should not affect behavior.
26562         * test/automated/textprop-tests.el (textprop-tests-format): New test.
26564         Fix ‘format’ bug with property offsets
26565         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
26566         bug in calculating string property offsets (Bug#21351).
26568         Use straight quotes in lib-src diagnostics
26569         These auxiliary programs can’t use Emacs’s text-quoting-style,
26570         and it’s too much trouble to redo that mechanism by hand.
26571         So just use straight quotes for now.
26572         * lib-src/ebrowse.c (main):
26573         * lib-src/emacsclient.c (decode_options, main):
26574         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
26575         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
26576         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
26577         (none_help, print_language_names, print_help, add_regex)
26578         (suggest_asking_for_help):
26579         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
26580         Use straight quotes in diagnostics.
26582         ‘text-quoting-style’ fixes for admin
26583         * admin/admin.el (cusver-scan, cusver-check):
26584         * admin/authors.el (authors-canonical-file-name):
26585         * admin/bzrmerge.el (bzrmerge-missing):
26586         Respect ‘text-quoting-style’ in diagnostics.
26588 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
26590         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
26591         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
26592         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
26593         * doc/lispref/internals.texi (Writing Emacs Primitives):
26594         * etc/NEWS:
26595         Document the change.
26596         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
26597         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
26598         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
26599         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
26600         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
26601         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
26602         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
26603         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
26604         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
26605         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
26606         Remove.  All uses removed.  The code now assumes
26607         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
26608         * src/bytecode.c (relocate_byte_stack):
26609         Rename from unmark_byte_stack, since it now only relocates.
26610         All callers changed.
26611         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
26612         with GCPROs removed.
26613         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
26614         * test/automated/finalizer-tests.el (finalizer-basic)
26615         (finalizer-circular-reference, finalizer-cross-reference)
26616         (finalizer-error):
26617         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
26618         Remove tests, as they depend on gc-precise.
26620 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
26622         Improve seq-concatenate for new sequence types
26623         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
26624         ensure that concatenation happens on sequences only.  This makes it
26625         possible to use `seq-concatenate' for new types of seqs.
26626         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
26627         New function used in `seq-concatenate'.
26628         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
26629         for seq-into-sequence.
26631 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
26633         Add mode local overrides to xref-find-definitions
26634         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
26635         (xref-mode-local-overload): New; add mode local overrides to
26636         xref-find-definitions.
26637         * test/automated/elisp-mode-tests.el: Add mode local override tests.
26638         (xref-elisp-test-run): Handle indented defuns.
26639         (xref-elisp-generic-*): Improve doc strings.
26640         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
26641         (elisp--xref-find-definitions): Use it.
26643         Add mode local overrides to describe-function
26644         * lisp/cedet/mode-local.el (describe-mode-local-overload):
26645         New; add mode local overrides to describe-function.
26646         * etc/NEWS: Document change.
26648 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
26650         Prefer straight quoting in some etc text files
26651         These files are plain text and might be used by non-Emacs apps.
26652         They’re mostly ASCII, so just use straight quotes.
26654         Fix quoting in ‘message_with_string’
26655         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
26656         should work now.
26657         * src/xdisp.c (message_to_stderr): New function, refactored from
26658         part of ‘message3_nolog’.
26659         (message3_nolog): Use it.
26660         (message_with_string): Use it.  Don’t mishandle NUL bytes when
26661         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
26662         Use ‘format-message’, not ‘format’, so that quotes are translated.
26664 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
26666         Mention false positives of file-accessible-directory on w32
26667         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
26668         (Bug#21346)
26670 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
26672         Treat error strings as help
26673         * src/print.c (print_error_message): Translate quotes and command
26674         keys in errmsg so that users see, e.g., "Symbol’s value as
26675         variable is void: foo" when text-quoting-style is curved.
26677 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
26679         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
26681 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
26683         Top-level elisp files respect ‘text-quoting-style’
26684         In top-level elisp files, use format-message in diagnostic formats,
26685         so that they follow user preference as per ‘text-quoting-style’
26686         rather than being hard-coded to quote `like this'.
26687         * lisp/allout.el (allout-get-configvar-values):
26688         * lisp/apropos.el (apropos-symbols-internal):
26689         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
26690         (dired-do-create-files-regexp, dired-create-files-non-directory):
26691         * lisp/dired-x.el (dired-do-run-mail):
26692         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
26693         * lisp/disp-table.el (standard-display-european):
26694         * lisp/find-dired.el (find-dired):
26695         * lisp/forms.el (forms-mode):
26696         * lisp/ido.el (ido-buffer-internal):
26697         * lisp/info.el (Info-index-next):
26698         * lisp/outline.el (outline-invent-heading):
26699         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
26700         * lisp/proced.el (proced-log):
26701         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
26702         * lisp/recentf.el (recentf-open-files, recentf-save-list):
26703         * lisp/savehist.el (savehist-save):
26704         * lisp/server.el (server-ensure-safe-dir):
26705         * lisp/ses.el (ses-rename-cell):
26706         * lisp/simple.el (list-processes--refresh):
26707         * lisp/startup.el (command-line):
26708         * lisp/strokes.el (strokes-unset-last-stroke)
26709         (strokes-execute-stroke):
26710         Use format-message so that quotes are restyled.
26711         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
26712         Don’t quote ‘raised’.
26713         * lisp/descr-text.el (describe-char):
26714         * lisp/dirtrack.el (dirtrack-debug-message):
26715         * lisp/hexl.el (hexl-insert-multibyte-char):
26716         Apply substitute-command-keys to help string.
26717         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
26718         (wdired-do-perm-changes):
26719         Let dired-log do the formatting.
26721 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26723         Go back to grave quoting in Tramp
26724         * lisp/net/tramp-adb.el:
26725         * lisp/net/tramp-cache.el:
26726         * lisp/net/tramp-compat.el:
26727         * lisp/net/tramp-gvfs.el:
26728         * lisp/net/tramp-gw.el:
26729         * lisp/net/tramp-sh.el:
26730         * lisp/net/tramp-smb.el:
26731         * lisp/net/tramp.el:
26732         Stick with grave quoting in diagnostics strings.  This is more
26733         portable to older Emacs, desirable for Tramp.
26734         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
26735         for diagnostic that needs requoting.
26736         * lisp/net/tramp-compat.el (format-message):
26737         Fall back on simple ‘format’, since that’s good enough now.
26739         Go back to grave quoting in Gnus
26740         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
26741         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
26742         (gnus-agent-fetch-headers):
26743         * lisp/gnus/gnus-int.el (gnus-start-news-server):
26744         * lisp/gnus/gnus-registry.el:
26745         (gnus-registry--split-fancy-with-parent-internal)
26746         (gnus-registry-post-process-groups):
26747         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
26748         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
26749         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
26750         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
26751         * lisp/gnus/spam.el (spam-check-blackholes):
26752         Stick with grave quoting in diagnostics strings.  This is more
26753         portable to older Emacs, desirable for Gnus.
26755         Fix customization of text-quoting-style
26756         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
26757         * lisp/wid-edit.el (widget-docstring):
26758         Get raw docstring here since it’s cooked later and should not be
26759         cooked twice.
26760         * lisp/cus-edit.el (custom-group-value-create):
26761         Cook the docstring before inserting it.
26762         * lisp/cus-start.el (text-quoting-style): Quote the customization
26763         docstrings according to the new rules.  Give curved examples.
26765         format-message now curves ` and '
26766         That way, the caller doesn’t have to use curved quotes to
26767         get diagnostics that match the text-quoting-style preferences.
26768         Suggested by Dmitry Gutov in:
26769         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
26770         This means we no longer need %qs, so remove that format.
26771         While we’re at it, fix an unlikely bug and lessen the pressure
26772         on the garbage collector by processing the string once rather
26773         than twice in the usual case.
26774         * doc/lispref/strings.texi (Formatting Strings):
26775         * etc/NEWS: Document this.
26776         * lisp/subr.el (format-message): Remove; now done in C.
26777         * src/callint.c (Fcall_interactively):
26778         * src/editfns.c (Fmessage, Fmessage_box):
26779         Use Fformat_message instead of Finternal__text_restyle
26780         followed by Fformat.
26781         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
26782         uLSQM and uRSQM.
26783         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
26784         when pure ASCII now suffices.  Fix unlikely bug when parsing
26785         unibyte string containing non-ASCII bytes.  Use inline code
26786         rather than memcpy, as it’s a tiny number of bytes.
26787         (Finternal__text_restyle): Remove; no longer used.
26788         (syms_of_doc): Don’t declare it.
26789         * src/editfns.c (Fformat): Rewrite in terms of new function
26790         ‘styled_format’.
26791         (Fformat_message): New function, moved here from subr.el.
26792         (styled_format): New function, with the old guts of Fformat,
26793         except it now optionally transliterates quotes, and it transliterates
26794         traditional grave accent and apostrophe quoting as well.
26795         Remove recently-added q flag; no longer needed or used.
26796         (syms_of_editfns): Define format-message.
26797         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
26798         Remove; no longer need to be global symbols.
26799         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
26800         so that callers can use `%s'.
26801         * src/image.c (image_size_error, xbm_load_image, xbm_load)
26802         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
26803         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
26804         (svg_load_image, gs_load, x_kill_gs_process):
26805         * src/lread.c (load_warn_old_style_backquotes):
26806         * src/xfaces.c (load_pixmap):
26807         * src/xselect.c (x_clipboard_manager_error_1):
26808         Use `%s' instead of %qs in formats.
26810 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
26812         Minor fixes in doc/emacs/search.texi
26813         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
26814         (Special Isearch): Use @w{} to generate several consecutive spaces
26815         with Texinfo 6.  (Bug#21345)
26817 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
26819         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
26820         (tramp-awk-coding-test): New defconsts.
26821         (tramp-remote-coding-commands): Use them.
26822         (tramp-find-inline-encoding): Check for Perl only if necessary.
26824 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
26826         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
26827         index entries for the special form `quote'.
26829 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26831         Spelling fixes
26833         Gnus format-message typo fix
26834         * lisp/gnus/gnus-util.el (gnus-format-message):
26835         Fix typo when running in older Emacs.
26837         Prefer directed to neutral quotes in docstings and diagnostics.
26838         In docstrings, escape apostrophes that would otherwise be translated
26839         to curved quotes using the newer, simpler rules.
26840         * admin/unidata/unidata-gen.el (unidata-gen-table):
26841         * lisp/align.el (align-region):
26842         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
26843         * lisp/bookmark.el (bookmark-default-annotation-text):
26844         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
26845         * lisp/calc/calc-lang.el (math-read-giac-subscr)
26846         (math-read-math-subscr):
26847         * lisp/calc/calc-misc.el (report-calc-bug):
26848         * lisp/calc/calc-prog.el (calc-fix-token-name)
26849         (calc-read-parse-table-part):
26850         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
26851         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
26852         * lisp/dabbrev.el (dabbrev-expand):
26853         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
26854         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
26855         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
26856         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
26857         * lisp/erc/erc-button.el (erc-nick-popup):
26858         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
26859         * lisp/eshell/em-dirs.el (eshell/cd):
26860         * lisp/eshell/em-glob.el (eshell-glob-regexp):
26861         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
26862         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
26863         * lisp/eshell/esh-opt.el (eshell-show-usage):
26864         * lisp/files-x.el (modify-file-local-variable):
26865         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
26866         (filesets-update-pre010505):
26867         * lisp/find-cmd.el (find-generic, find-to-string):
26868         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
26869         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
26870         (gnus-agent-fetch-headers):
26871         * lisp/gnus/gnus-int.el (gnus-start-news-server):
26872         * lisp/gnus/gnus-registry.el:
26873         (gnus-registry--split-fancy-with-parent-internal):
26874         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
26875         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
26876         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
26877         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
26878         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
26879         * lisp/gnus/spam.el (spam-check-blackholes):
26880         * lisp/mail/feedmail.el (feedmail-run-the-queue):
26881         * lisp/mpc.el (mpc-playlist-rename):
26882         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
26883         * lisp/net/mairix.el (mairix-widget-create-query):
26884         * lisp/net/tramp-cache.el:
26885         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
26886         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
26887         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
26888         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
26889         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
26890         (org-babel-goto-named-result):
26891         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
26892         * lisp/org/ob-ref.el (org-babel-ref-resolve):
26893         * lisp/org/org-agenda.el (org-agenda-prepare):
26894         * lisp/org/org-bibtex.el (org-bibtex-fields):
26895         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
26896         (org-clock-resolve):
26897         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
26898         * lisp/org/org-habit.el (org-habit-parse-todo):
26899         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
26900         (org-mouse-context-menu):
26901         * lisp/org/org-table.el (org-table-edit-formulas):
26902         * lisp/org/ox.el (org-export-async-start):
26903         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
26904         (dun-rooms, dun-endgame-questions):
26905         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
26906         * lisp/progmodes/ada-xref.el (ada-find-executable):
26907         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
26908         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
26909         (flymake-start-syntax-check-process):
26910         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
26911         * lisp/progmodes/sql.el (sql-comint):
26912         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
26913         * lisp/server.el (server-get-auth-key):
26914         * lisp/subr.el (version-to-list):
26915         * lisp/textmodes/reftex-ref.el (reftex-label):
26916         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
26917         * lisp/vc/ediff-diff.el (ediff-same-contents):
26918         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
26919         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
26920         Use directed rather than neutral quotes in diagnostics.
26922         Treat ' like ’ even when not matching `
26923         This is simpler and easier to explain, and should encourage better
26924         typography.  Do this in Electric Quote mode and when translating
26925         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
26926         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
26927         * doc/emacs/text.texi (Quotation Marks):
26928         * doc/lispref/help.texi (Keys in Documentation):
26929         * etc/NEWS:
26930         Document this.
26931         * lisp/electric.el (electric-quote-post-self-insert-function):
26932         * src/doc.c (Fsubstitute_command_keys):
26933         Always treat ' like ’ even when not matched by an open quote.
26935 2015-08-25  Glenn Morris  <rgm@gnu.org>
26937         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
26938         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
26940 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
26942         * src/macfont.m (macfont_create_family_with_symbol):
26943         Accept localized names.
26945 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26947         Tramp diagnostics as per ‘text-quoting-style’
26948         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
26949         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
26950         (tramp-adb-handle-delete-directory)
26951         (tramp-adb-handle-delete-file)
26952         (tramp-adb-handle-file-local-copy)
26953         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
26954         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
26955         (tramp-adb-maybe-open-connection):
26956         * lisp/net/tramp-cache.el:
26957         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
26958         (tramp-compat-octal-to-decimal)
26959         (tramp-compat-coding-system-change-eol-conversion):
26960         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
26961         (tramp-gvfs-do-copy-or-rename-file)
26962         (tramp-gvfs-handle-delete-directory)
26963         (tramp-gvfs-handle-delete-file)
26964         (tramp-gvfs-handle-expand-file-name)
26965         (tramp-gvfs-handle-file-local-copy)
26966         (tramp-gvfs-handle-file-notify-add-watch)
26967         (tramp-gvfs-handle-make-directory)
26968         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
26969         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
26970         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
26971         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
26972         (tramp-sh-handle-set-visited-file-modtime)
26973         (tramp-sh-handle-set-file-modes)
26974         (tramp-sh-handle-file-name-all-completions)
26975         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
26976         (tramp-do-copy-or-rename-file-directly)
26977         (tramp-do-copy-or-rename-file-out-of-band)
26978         (tramp-sh-handle-make-directory)
26979         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
26980         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
26981         (tramp-sh-handle-start-file-process)
26982         (tramp-sh-handle-file-local-copy)
26983         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
26984         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
26985         (tramp-find-file-exists-command, tramp-open-shell)
26986         (tramp-find-shell)
26987         (tramp-open-connection-setup-interactive-shell)
26988         (tramp-find-inline-encoding, tramp-find-inline-compress)
26989         (tramp-compute-multi-hops, tramp-maybe-open-connection)
26990         (tramp-wait-for-output, tramp-send-command-and-check)
26991         (tramp-send-command-and-read, tramp-get-remote-path)
26992         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
26993         (tramp-get-ls-command-with-quoting-style)
26994         (tramp-get-test-command, tramp-get-remote-ln)
26995         (tramp-get-remote-perl, tramp-get-remote-stat)
26996         (tramp-get-remote-readlink, tramp-get-remote-trash)
26997         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
26998         (tramp-get-remote-inotifywait, tramp-get-remote-id)
26999         (tramp-get-remote-python):
27000         * lisp/net/tramp-smb.el (tramp-smb-errors)
27001         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
27002         (tramp-smb-handle-delete-directory)
27003         (tramp-smb-handle-delete-file)
27004         (tramp-smb-handle-file-local-copy)
27005         (tramp-smb-handle-make-directory)
27006         (tramp-smb-handle-make-directory-internal)
27007         (tramp-smb-handle-make-symbolic-link)
27008         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
27009         (tramp-smb-handle-set-file-modes)
27010         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
27011         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
27012         (tramp-process-actions):
27013         Generate diagnostics according to ‘text-quoting-style’, by
27014         using curved quotes in format strings and ‘format-message’
27015         when appropriate.
27016         * lisp/net/tramp-compat.el (format-message):
27017         Define a replacement, if it’s an older version of Emacs
27018         that doesn’t have it already.
27020         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
27022 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
27024         Fix documentation for `save-excursion'
27025         * doc/lispref/positions.texi (Excursions):
27026         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
27027         (Template for save-excursion, Point and mark): `save-excursion'
27028         does not save&restore the mark any more.
27030 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
27032         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
27033         New defconsts.
27034         (tramp-do-file-attributes-with-stat)
27035         (tramp-do-directory-files-and-attributes-with-stat): Use them.
27036         (tramp-convert-file-attributes): Remove double slashes in symlinks.
27037         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
27038         Handle symlinks with "//" in the file name.
27040         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
27042 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
27044         Fix cl-subseq and cl-concatenate
27045         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
27046         seq functions.
27047         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
27048         seq-concatenate.
27050 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
27052         Fix full-screen code when there is no window manager (Bug#21317)
27053         * src/xterm.h (x_wm_supports): Declare external.
27054         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
27055         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
27056         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
27057         `fullscreen' frame parameter.
27058         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
27059         without a window manager.
27061 2015-08-24  Glenn Morris  <rgm@gnu.org>
27063         * lisp/version.el (emacs-version): No longer include build host.
27064         * doc/lispref/intro.texi (Version Info): Update example.
27066 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
27068         * doc/lispref/elisp.texi: Fix typo in previous change.
27070         More-conservative ‘format’ quote restyling
27071         Instead of restyling curved quotes for every call to ‘format’,
27072         create a new function ‘format-message’ that does the restyling,
27073         and using the new function instead of ‘format’ only in contexts
27074         where this seems appropriate.
27075         Problem reported by Dmitry Gutov and Andreas Schwab in:
27076         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
27077         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
27078         * doc/lispref/commands.texi (Using Interactive):
27079         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
27080         * doc/lispref/display.texi (Displaying Messages, Progress):
27081         * doc/lispref/elisp.texi:
27082         * doc/lispref/help.texi (Keys in Documentation):
27083         * doc/lispref/minibuf.texi (Minibuffer Misc):
27084         * doc/lispref/strings.texi (Formatting Strings):
27085         * etc/NEWS:
27086         Document the changes.
27087         * lisp/abbrev.el (expand-region-abbrevs):
27088         * lisp/apropos.el (apropos-library):
27089         * lisp/calc/calc-ext.el (calc-record-message)
27090         (calc-user-function-list):
27091         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
27092         * lisp/calc/calc-lang.el (math-read-big-balance):
27093         * lisp/calc/calc-store.el (calc-edit-variable):
27094         * lisp/calc/calc-units.el (math-build-units-table-buffer):
27095         * lisp/calc/calc-yank.el (calc-edit-mode):
27096         * lisp/calendar/icalendar.el (icalendar-export-region)
27097         (icalendar--add-diary-entry):
27098         * lisp/cedet/mode-local.el (mode-local-print-binding)
27099         (mode-local-describe-bindings-2):
27100         * lisp/cedet/semantic/complete.el (semantic-completion-message):
27101         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
27102         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
27103         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
27104         * lisp/descr-text.el (describe-text-properties-1, describe-char):
27105         * lisp/dframe.el (dframe-message):
27106         * lisp/dired-aux.el (dired-query):
27107         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
27108         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
27109         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
27110         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
27111         (cconv-analyze-form):
27112         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
27113         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
27114         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
27115         * lisp/emacs-lisp/edebug.el (edebug-format):
27116         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
27117         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
27118         (eldoc-message):
27119         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
27120         * lisp/emacs-lisp/find-func.el (find-function-library):
27121         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
27122         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
27123         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
27124         * lisp/emacs-lisp/package.el (package-compute-transaction)
27125         (package-install-button-action, package-delete-button-action)
27126         (package-menu--list-to-prompt):
27127         * lisp/emacs-lisp/timer.el (timer-event-handler):
27128         * lisp/emacs-lisp/warnings.el (lwarn, warn):
27129         * lisp/emulation/viper-cmd.el:
27130         (viper-toggle-parse-sexp-ignore-comments)
27131         (viper-kill-buffer, viper-brac-function):
27132         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
27133         * lisp/facemenu.el (facemenu-add-new-face):
27134         * lisp/faces.el (face-documentation, read-face-name)
27135         (face-read-string, read-face-font, describe-face):
27136         * lisp/files.el (find-alternate-file, hack-local-variables)
27137         (hack-one-local-variable--obsolete, write-file)
27138         (basic-save-buffer, delete-directory):
27139         * lisp/format.el (format-write-file, format-find-file)
27140         (format-insert-file):
27141         * lisp/help-fns.el (help-fns--key-bindings)
27142         (help-fns--compiler-macro, help-fns--obsolete)
27143         (help-fns--interactive-only, describe-function-1)
27144         (describe-variable):
27145         * lisp/help.el (describe-mode):
27146         * lisp/info-xref.el (info-xref-output):
27147         * lisp/info.el (Info-virtual-index-find-node)
27148         (Info-virtual-index, info-apropos):
27149         * lisp/international/kkc.el (kkc-error):
27150         * lisp/international/mule-cmds.el:
27151         (select-safe-coding-system-interactively)
27152         (select-safe-coding-system, describe-input-method):
27153         * lisp/international/mule-conf.el (code-offset):
27154         * lisp/international/mule-diag.el (describe-character-set)
27155         (list-input-methods-1):
27156         * lisp/international/quail.el (quail-error):
27157         * lisp/minibuffer.el (minibuffer-message):
27158         * lisp/mpc.el (mpc--debug):
27159         * lisp/msb.el (msb--choose-menu):
27160         * lisp/net/ange-ftp.el (ange-ftp-message):
27161         * lisp/net/gnutls.el (gnutls-message-maybe):
27162         * lisp/net/newst-backend.el (newsticker--sentinel-work):
27163         * lisp/net/newst-treeview.el (newsticker--treeview-load):
27164         * lisp/net/nsm.el (nsm-query-user):
27165         * lisp/net/rlogin.el (rlogin):
27166         * lisp/net/soap-client.el (soap-warning):
27167         * lisp/net/tramp.el (tramp-debug-message):
27168         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
27169         * lisp/nxml/nxml-parse.el (nxml-parse-error):
27170         * lisp/nxml/rng-cmpct.el (rng-c-error):
27171         * lisp/nxml/rng-match.el (rng-compile-error):
27172         * lisp/nxml/rng-uri.el (rng-uri-error):
27173         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
27174         * lisp/org/org-ctags.el:
27175         (org-ctags-ask-rebuild-tags-file-then-find-tag):
27176         * lisp/proced.el (proced-log):
27177         * lisp/progmodes/ebnf2ps.el (ebnf-log):
27178         * lisp/progmodes/flymake.el (flymake-log):
27179         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
27180         * lisp/replace.el (occur-1):
27181         * lisp/simple.el (execute-extended-command)
27182         (undo-outer-limit-truncate, define-alternatives):
27183         * lisp/startup.el (command-line):
27184         * lisp/subr.el (error, user-error, add-to-list):
27185         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
27186         (tutorial--find-changed-keys):
27187         * src/callint.c (Fcall_interactively):
27188         * src/editfns.c (Fmessage, Fmessage_box):
27189         Restyle the quotes of format strings intended for use as a
27190         diagnostic, when restyling seems appropriate.
27191         * lisp/subr.el (format-message): New function.
27192         * src/doc.c (Finternal__text_restyle): New function.
27193         (syms_of_doc): Define it.
27195 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
27197         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
27199 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27201         python.el: Fix python-shell-buffer-substring on indented code
27202         (Bug#21086)
27203         * lisp/progmodes/python.el (python-shell-buffer-substring):
27204         Respect current line indentation when calculating string.
27205         * test/automated/python-tests.el
27206         (python-shell-buffer-substring-10)
27207         (python-shell-buffer-substring-11)
27208         (python-shell-buffer-substring-12): New tests.
27210 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
27212         Fix minor glitches from ‘format’ reversion
27213         * doc/lispref/strings.texi (Formatting Strings):
27214         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
27215         Documentation’, not below.
27216         * src/syntax.c (Finternal_describe_syntax_value):
27217         Prefer AUTO_STRING to build_string where either will do, as
27218         AUTO_STRING is a bit faster.
27220 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27222         python.el: Defer shell setup code until first interactive prompt
27223         * lisp/progmodes/python.el
27224         (python-shell-comint-watch-for-first-prompt-output-filter):
27225         New function.
27226         (inferior-python-mode): Use it.
27227         (python-shell-first-prompt-hook): New hook.
27228         (python-shell-send-setup-code)
27229         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
27230         this hook instead of inferior-python-hook.
27232 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
27234         Remove the calls to `seq-into` from `seq-concatenate`
27235         Since most new types of seq would have to be defined as sequences (cons
27236         cells or CL structs, mostly), there is no need to convert the seqs to
27237         sequences (which can be a fairly expensive operation).
27238         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
27239         sequences.
27241 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27243         python.el: Fix completion for pdb interactions
27244         * lisp/progmodes/python.el (python-shell-completion-setup-code):
27245         Simplify.  Toggle print_mode for native wrapped completer.
27246         (python-shell-completion-native-setup): Ensure process buffer.
27247         Add print_mode attribute to completer wrapper to toggle returning
27248         or printing candidates.
27249         (python-shell-completion-native-get-completions): Cleanup.
27250         (python-shell-completion-get-completions): Cleanup.
27251         (python-shell-completion-at-point): Perform prompt checks.
27252         Force fallback completion in pdb interactions.
27254 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
27256         Make seq.el more extensible by using cl-defmethod
27257         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
27258         make it easier to extend seq.el with new "seq types".
27259         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
27260         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
27261         subseq in cl-extra.el, and use it in seq.el.
27263 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27265         python.el: Fix prompt detection with user overridden interpreter
27266         * lisp/progmodes/python.el (python-shell-prompt-detect):
27267         Honor buffer local python-shell-interpreter and
27268         python-shell-interpreter-interactive-arg.
27270 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
27272         Support exec-directory with non-ASCII characters on Windows
27273         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
27274         in the system's ANSI codepage, when it is used for invoking
27275         cmdproxy.
27277 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
27279         Revert "Extend ‘format’ to translate curved quotes"
27280         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
27282         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
27283         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
27285 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
27287         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
27288         Clarify "invisible window".
27290 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
27292         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
27293         magic-fallback-mode-alist.
27295 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27297         python.el: fallback completion, ffap and eldoc setup enhancements
27298         Setup codes are now sent continuously so that the current frame is
27299         always taken into account.  This allows working within debuggers
27300         and always keeping a fresh version of setup codes that will return
27301         proper results.
27302         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
27303         (python-shell-send-setup-code): Send code only when
27304         python-shell-setup-codes is non-nil.
27305         (python-shell-completion-string-code): Cleanup trailing newline.
27306         (python-shell-completion-get-completions): Always use
27307         python-shell-completion-setup-code.
27308         (python-ffap-setup-code): Work with any object, not only modules.
27309         (python-ffap-string-code): Cleanup trailing newline.
27310         (python-ffap-module-path): Always use python-ffap-setup-code.
27311         (python-eldoc-string-code): Cleanup trailing newline.
27312         (python-eldoc--get-doc-at-point): Always use
27313         python-eldoc-setup-code.  Return non-nil only if docstring is
27314         found.
27316         python.el: Increase native completion robustness
27317         * lisp/progmodes/python.el (python-shell-completion-native-setup):
27318         Make completer print real candidates and just return dummy ones to
27319         avoid input modification.
27320         (python-shell-completion-native-get-completions): Set
27321         comint-redirect-insert-matching-regexp to non-nil and make
27322         comint-redirect-finished-regexp match the last dummy candidate.
27323         Use python-shell-accept-process-output to wait for the full list
27324         of candidates.
27326 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
27328         Fix invocation of programs via cmdproxy.exe
27329         * src/w32proc.c (sys_spawnve): Use exec-directory, not
27330         invocation-directory, for finding cmdproxy.exe.  When Emacs is
27331         run from the source tree, look for cmdproxy.exe in the same source
27332         tree.  (Bug#21323)
27334 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
27336         Handle comments inside unquoted URIs in css-mode
27337         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
27338         (css-syntax-propertize-function): New defconst.
27339         (css--font-lock-keywords): Handle parens around unquoted URIs.
27340         (css-mode): Set `syntax-propertize-function'.
27342 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
27344         Support invocation of Hunspell with multiple dictionaries
27345         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
27346         Support lists of dictionaries of the form "DICT1,DICT2,...".
27347         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
27349         Minor formatting changes in ispell.el
27350         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
27351         (ispell-print-if-debug, ispell-aspell-find-dictionary)
27352         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
27353         (ispell-hunspell-dictionary-alist)
27354         (ispell-hunspell-fill-dictionary-entry)
27355         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
27356         (ispell-buffer-with-debug, ispell-complete-word)
27357         (ispell-current-dictionary, ispell-current-personal-dictionary)
27358         (ispell-accept-output, ispell-minor-mode)
27359         (ispell-personal-dictionary, ispell-dictionary-alist)
27360         (ispell-really-aspell, ispell-really-hunspell)
27361         (ispell-encoding8-command, ispell-aspell-supports-utf8)
27362         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
27363         Fix whitespace, inconsistent capitalization, and arguments in doc
27364         strings.
27366 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
27368         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
27369         function refused to resize a size-preserved window.
27371 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
27373         * doc/lispref/windows.texi (Selecting Windows): Improve
27374         documentation and indexing of 'window-use-time'.
27376 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
27378         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
27379         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
27380         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
27381         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
27382         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
27383         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
27384         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
27385         Fix up commenting style.
27387 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27389         text-quoting-style in emacs-lisp diagnostics
27390         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
27391         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
27392         (ad-disable-advice, ad-remove-advice, ad-set-argument)
27393         (ad-set-arguments):
27394         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
27395         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
27396         (byte-optimize-while, byte-optimize-apply):
27397         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
27398         (byte-compile-log-file, byte-compile-format-warn)
27399         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
27400         (byte-compile-cl-warn)
27401         (byte-compile-warn-about-unresolved-functions)
27402         (byte-compile-file, byte-compile-fix-header)
27403         (byte-compile--declare-var, byte-compile-file-form-defmumble)
27404         (byte-compile-form, byte-compile-normal-call)
27405         (byte-compile-variable-ref, byte-compile-variable-set)
27406         (byte-compile-subr-wrong-args, byte-compile-setq-default)
27407         (byte-compile-negation-optimizer)
27408         (byte-compile-condition-case--old)
27409         (byte-compile-condition-case--new, byte-compile-save-excursion)
27410         (byte-compile-defvar, byte-compile-autoload)
27411         (byte-compile-lambda-form)
27412         (byte-compile-make-variable-buffer-local, display-call-tree)
27413         (batch-byte-compile):
27414         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
27415         (cconv-analyze-form):
27416         * lisp/emacs-lisp/chart.el (chart-space-usage):
27417         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
27418         (check-declare-warn, check-declare-file)
27419         (check-declare-directory):
27420         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
27421         (checkdoc-message-text-engine):
27422         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
27423         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
27424         (cl-symbol-macrolet):
27425         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
27426         * lisp/emacs-lisp/copyright.el (copyright)
27427         (copyright-update-directory):
27428         * lisp/emacs-lisp/edebug.el (edebug-read-list):
27429         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
27430         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
27431         (eieio-oref, eieio-oset-default):
27432         * lisp/emacs-lisp/eieio-speedbar.el:
27433         (eieio-speedbar-child-make-tag-lines)
27434         (eieio-speedbar-child-description):
27435         * lisp/emacs-lisp/eieio.el (defclass, change-class):
27436         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
27437         (elint-init-form, elint-check-defalias-form)
27438         (elint-check-let-form):
27439         * lisp/emacs-lisp/ert.el (ert-get-test):
27440         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
27441         (find-function-library):
27442         * lisp/emacs-lisp/generator.el (iter-yield):
27443         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
27444         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
27445         * lisp/emacs-lisp/package-x.el (package-upload-file):
27446         * lisp/emacs-lisp/package.el (package-version-join)
27447         (package-disabled-p, package-activate-1, package-activate)
27448         (package--download-one-archive)
27449         (package--download-and-read-archives)
27450         (package-compute-transaction, package-install-from-archive)
27451         (package-install, package-install-selected-packages)
27452         (package-delete, package-autoremove)
27453         (package-install-button-action, package-delete-button-action)
27454         (package-menu-hide-package, package-menu--list-to-prompt)
27455         (package-menu--perform-transaction)
27456         (package-menu--find-and-notify-upgrades):
27457         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
27458         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
27459         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
27460         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
27461         * lisp/emacs-lisp/smie.el (smie-config-save):
27462         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
27463         * lisp/emacs-lisp/testcover.el (testcover-1value):
27464         Use curved quotes in diagnostic format strings.
27466 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27468         python.el: Ensure remote process-environment on non-interactive processes
27469         * lisp/progmodes/python.el
27470         (python-shell-tramp-refresh-process-environment): New function.
27471         (python-shell-with-environment): Use it.
27472         * test/automated/python-tests.el (python-shell-with-environment-2):
27473         Update.
27475         python.el: Enhancements to process environment setup.
27476         * lisp/progmodes/python.el (python-shell-process-environment)
27477         (python-shell-extra-pythonpaths, python-shell-exec-path)
27478         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
27479         (python-shell-setup-codes): Remove :safe.
27480         (python-shell-remote-exec-path): New defcustom.
27481         (python-shell--add-to-path-with-priority): New macro.
27482         (python-shell-calculate-pythonpath): Give priority to
27483         python-shell-extra-pythonpaths.  Update docstring.
27484         (python-shell-calculate-process-environment): Give priority to
27485         python-shell-process-environment.  Update docstring.
27486         (python-shell-calculate-exec-path): Give priority to
27487         python-shell-exec-path and calculated virtualenv bin directory.
27488         Update docstring.
27489         (python-shell-tramp-refresh-remote-path): New function.
27490         (python-shell-with-environment): Use it when working remotely and
27491         do not modify tramp-remote-path.  Allow nesting.
27492         (python-shell-calculate-command): Remove useless
27493         python-shell-with-environment call.
27494         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
27495         (python-shell-calculate-pythonpath-2)
27496         (python-shell-calculate-process-environment-6)
27497         (python-shell-calculate-process-environment-7)
27498         (python-shell-calculate-process-environment-8)
27499         (python-shell-calculate-exec-path-3)
27500         (python-shell-calculate-exec-path-4)
27501         (python-shell-calculate-exec-path-5)
27502         (python-shell-calculate-exec-path-6)
27503         (python-shell-with-environment-3): New tests.
27504         (python-shell-calculate-process-environment-2)
27505         (python-shell-calculate-process-environment-3)
27506         (python-shell-calculate-process-environment-4)
27507         (python-shell-calculate-process-environment-5)
27508         (python-shell-calculate-exec-path-1)
27509         (python-shell-calculate-exec-path-2)
27510         (python-shell-with-environment-1)
27511         (python-shell-with-environment-2): Update and simplify.
27513 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27515         Avoid hard-coding "M-x command" in docstrings
27516         * lisp/calendar/todo-mode.el (todo-mode):
27517         * lisp/desktop.el (desktop-save-mode):
27518         * lisp/edmacro.el (edit-kbd-macro):
27519         * lisp/emacs-lisp/package.el (package-menu-execute):
27520         * lisp/emulation/viper-cmd.el (viper-ask-level):
27521         * lisp/emulation/viper-init.el (viper-expert-level):
27522         * lisp/filesets.el (filesets-add-buffer):
27523         * lisp/follow.el (follow-mode):
27524         * lisp/gnus/auth-source.el (auth-sources):
27525         * lisp/international/ogonek.el (ogonek-informacja)
27526         (ogonek-information):
27527         * lisp/net/tramp.el (tramp-process-actions):
27528         * lisp/org/org-gnus.el (org-gnus-no-new-news):
27529         * lisp/org/org.el (org-ellipsis):
27530         * lisp/progmodes/python.el (python-shell-get-process-or-error):
27531         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
27532         * lisp/server.el (server-start):
27533         * lisp/type-break.el (type-break-noninteractive-query):
27534         * lisp/userlock.el (ask-user-about-supersession-help):
27535         * lisp/whitespace.el (whitespace-report-region):
27536         Prefer (substitute-command-keys "`\\[foo-command]'")
27537         to "`M-x foo-command'" in docstrings and the like.
27539 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
27541         Use add-function for prettify-symbols-compose-predicate
27542         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
27543         prettify-symbols-compose-predicate in terms of add-function.
27544         * etc/NEWS: Mention prettify-symbols-compose-predicate and
27545         prettify-symbols-mode support in tex-mode.
27547 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
27549         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
27550         (smie-indent-exps, smie-indent-keyword): Use it.
27551         * test/indent/css-mode.css: Test alignment with leading comment.
27553 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27555         Respect text-quoting-style in (*Finder*) menus
27556         * lisp/info.el (info--prettify-description):
27557         Treat description as a docstring, so that it's requoted as
27558         per text-quoting-style.
27560 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
27562         Document `window-use-time' in Elisp manual
27563         * doc/lispref/windows.texi (Selecting Windows): Document
27564         `window-use-time'.
27566 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
27568         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
27569         This is a cleaner fix for Bug#21260 than the previous change.
27571 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27573         Respect text-quoting-style in calc
27574         In calc, tespect text-quoting-style preference in diagnostic
27575         formats and fix a few similar problems in docstrings.
27576         * lisp/calc/calc-aent.el (math-read-factor):
27577         * lisp/calc/calc-embed.el (calc-do-embedded):
27578         * lisp/calc/calc-ext.el (calc-user-function-list)
27579         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
27580         * lisp/calc/calc-help.el (calc-describe-key)
27581         (calc-describe-thing):
27582         * lisp/calc/calc-lang.el (calc-c-language)
27583         (math-parse-fortran-vector-end, math-parse-tex-sum)
27584         (math-parse-eqn-matrix, math-parse-eqn-prime)
27585         (calc-yacas-language, calc-maxima-language, calc-giac-language)
27586         (math-read-big-rec, math-read-big-balance):
27587         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
27588         (calc-auto-recompute):
27589         * lisp/calc/calc-prog.el (calc-user-define-invocation)
27590         (math-do-arg-check):
27591         * lisp/calc/calc-store.el (calc-edit-variable):
27592         * lisp/calc/calc-units.el (math-build-units-table-buffer):
27593         * lisp/calc/calc-vec.el (math-read-brackets):
27594         * lisp/calc/calc-yank.el (calc-edit-mode):
27595         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
27596         Use curved quotes in diagnostic format strings.
27597         * lisp/calc/calc-help.el (calc-describe-thing):
27598         Format docstrings with substitute-command-keys.
27599         * lisp/calc/calc-help.el (calc-j-prefix-help):
27600         * lisp/calc/calc-misc.el (calc-help):
27601         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
27602         Escape a docstring "`".
27604 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
27606         Fix documentation of 'menu-set-font' and 'set-frame-font'
27607         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
27608         * doc/lispref/frames.texi (Frame Font): Document that
27609         set-frame-font with the last argument 't' will also make the font
27610         the default for the future GUI frames.
27612         Document '--create-frame' option to emacsclient
27613         * doc/emacs/misc.texi (emacsclient Options): Document the
27614         '--create-frame' option.  (Bug#21308)
27616 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
27618         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
27620 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
27622         Document 'get-mru-window' in the ELisp manual
27623         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
27624         'get-mru-window'.  (Bug#21306)
27626         Clarify documentation of 'get-buffer-window-list'
27627         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
27628         current window, if relevant, will be the first in the list
27629         returned by 'get-buffer-window-list'.
27630         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
27632 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
27634         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
27635         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
27636         `switch-to-buffer'.
27638 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
27640         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
27641         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
27642         `display-buffer' instead of `switch-to-buffer'.
27644 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27646         Follow user preference in calendar diagnostics
27647         Respect text-quoting-style preference in diagnostic formats by
27648         using curved quotes (which are translated as per text-quoting-style)
27649         instead of grave accent and apostrophe (which are not).
27650         * lisp/calendar/appt.el (appt-display-message):
27651         * lisp/calendar/diary-lib.el (diary-check-diary-file)
27652         (diary-mail-entries, diary-from-outlook):
27653         * lisp/calendar/icalendar.el (icalendar-export-region)
27654         (icalendar--convert-float-to-ical)
27655         (icalendar--convert-date-to-ical)
27656         (icalendar--convert-ical-to-diary)
27657         (icalendar--convert-recurring-to-diary)
27658         (icalendar--add-diary-entry):
27659         * lisp/calendar/time-date.el (format-seconds):
27660         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
27661         (timeclock-make-hours-explicit):
27662         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
27663         (todo-item-mark, todo-check-format)
27664         (todo-insert-item--next-param, todo-edit-item--next-key)
27665         (todo-mode):
27666         Use curved quotes in diagnostic format strings.
27667         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
27668         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
27669         Just use straight quoting for simple test case.
27671 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
27673         * src/gfilenotify.c (Fgfile_add_watch):
27674         Handle errors from g_file_monitor.
27676 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
27678         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
27679         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
27680         frame" instead of "non-minibuffer frame".
27682         Fix frame geometry related text
27683         * doc/lispref/frames.texi (Frame Layout):
27684         Rename `x-frame-geometry' to `frame-geometry'.
27685         * doc/lispref/frames.texi (Mouse Position):
27686         * doc/lispref/windows.texi (Coordinates and Windows):
27687         Use `set-mouse-absolute-pixel-position' instead of
27688         `x-set-mouse-absolute-pixel-position'.
27690         Sanitize frame geometry related functions
27691         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
27692         (Fx_frame_edges): Rename to Fns_frame_edges.
27693         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
27694         (Fx_frame_edges): Rename to Fw32_frame_edges.
27695         (Fx_mouse_absolute_pixel_position): Rename to
27696         Fw32_mouse_absolute_pixel_position.
27697         (Fx_set_mouse_absolute_pixel_position): Rename to
27698         Fw32_set_mouse_absolute_pixel_position.
27699         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
27700         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
27701         (ns-frame-edges, w32-mouse-absolute-pixel-position)
27702         (x-mouse-absolute-pixel-position)
27703         (w32-set-mouse-absolute-pixel-position)
27704         (x-set-mouse-absolute-pixel-position): Declare.
27705         (frame-geometry, mouse-absolute-pixel-position)
27706         (set-mouse-absolute-pixel-position): New functions.
27707         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
27709 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
27711         Fix MinGW64 build broken by latest w32uniscribe.c changes
27712         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
27713         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
27714         (Bug#21260)
27716 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
27718         Add TeX defaults for prettify-symbol-mode
27719         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
27720         Rename from tex-prettify-symbols-alist.
27721         (tex--prettify-symbols-compose-p): New function.
27722         (tex-common-initialization): Use them as prettify-symbols-alist
27723         and prettify-symbols-compose-predicate.
27725         Generalize prettify-symbols to arbitrary modes
27726         * lisp/progmodes/prog-mode.el
27727         (prettify-symbols-default-compose-p): New function.
27728         (prettify-symbols-compose-predicate): New variable.
27729         (prettify-symbols--compose-symbol): Use it.
27731 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27733         Don't quote symbols 'like-this' in docstrings etc.
27734         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
27735         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
27736         * lisp/allout.el (allout-add-resumptions, allout-mode):
27737         * lisp/calculator.el (calculator-operators):
27738         * lisp/cedet/data-debug.el (dd-propertize):
27739         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
27740         * lisp/cedet/semantic/analyze/debug.el:
27741         (semantic-analyzer-debug-global-miss-text):
27742         * lisp/cedet/semantic/lex-spp.el:
27743         (semantic-lex-spp-replace-or-symbol-or-keyword):
27744         * lisp/cedet/semantic/symref.el:
27745         (semantic-symref-cleanup-recent-buffers-fcn):
27746         * lisp/cedet/semantic/tag.el (semantic-tag-class):
27747         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
27748         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
27749         * lisp/gnus/pop3.el (pop3-authentication-scheme):
27750         * lisp/help-fns.el (describe-function-orig-buffer):
27751         * lisp/imenu.el (imenu--history-list):
27752         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
27753         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
27754         (feedmail-queue-default-file-slug)
27755         (feedmail-queue-buffer-file-name):
27756         * lisp/net/mairix.el (mairix-searches-mode-map):
27757         * lisp/net/newst-backend.el (newsticker-retrieval-method)
27758         (newsticker-auto-mark-filter-list):
27759         * lisp/obsolete/vi.el (vi-mode):
27760         * lisp/progmodes/cc-engine.el (c-literal-type):
27761         * lisp/progmodes/cpp.el (cpp-face):
27762         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
27763         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
27764         * lisp/progmodes/pascal.el (pascal-auto-lineup):
27765         * lisp/progmodes/prog-mode.el (prog-widen):
27766         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
27767         (verilog-auto-lineup, verilog-auto-reset-widths)
27768         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
27769         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
27770         (flyspell-maybe-correct-doubling):
27771         * lisp/textmodes/table.el (table-justify, table-justify-cell)
27772         (table-justify-row, table-justify-column, table-insert-sequence)
27773         (table--justify-cell-contents):
27774         * lisp/url/url-auth.el (url-get-authentication):
27775         * lisp/window.el (display-buffer-record-window):
27776         * lisp/xml.el (xml-parse-file, xml-parse-region):
27777         * src/gfilenotify.c (Fgfile_add_watch):
27778         Don't quote symbols with apostrophes in doc strings.
27779         Use asymmetric quotes instead.
27780         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
27781         Likewise for symbol in diagnostic.
27782         * lisp/image.el (image-extension-data):
27783         * lisp/register.el (frame-configuration-to-register):
27784         * src/buffer.c (syms_of_buffer):
27785         Remove bogus apostrophes after symbols.
27786         * lisp/thumbs.el (thumbs-conversion-program):
27787         Quote Lisp string values using double-quotes, not apostrophes.
27789 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
27791         Describe frame geometry and related functions in Elisp manual
27792         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
27793         (Showing Images): Update references.
27794         * doc/lispref/elisp.texi (Top): Update node listing.
27795         * doc/lispref/frames.texi (Frame Geometry): New node.
27796         Move `Size and Position' section here.
27797         (Size Parameters): Update references.
27798         (Mouse Position): Update references and nomenclature.
27799         Describe new functions `x-mouse-absolute-pixel-position' and
27800         `x-set-mouse-absolute-pixel-position'.
27801         * doc/lispref/windows.texi (Window Sizes): Update references.
27802         (Resizing Windows): Update references.  Move description of
27803         `fit-frame-to-buffer' here.
27804         (Coordinates and Windows): Update nomenclature and references.
27805         Describe new arguments of `window-edges'.  Comment out
27806         descriptions of `window-left-column', `window-top-line',
27807         `window-pixel-left' and `window-pixel-top'.  Describe
27808         `window-absolute-pixel-position'.
27810 2015-08-20  Alan Mackenzie  <acm@muc.de>
27812         Handling of `c-parse-state'.  Fix low level bug.
27813         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
27814         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
27816 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
27818         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
27819         window instead of deleting it.
27821 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
27823         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
27824         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
27825         determine whether frame has a titlebar.
27826         Suggested by Eli Zaretskii <eliz@gnu.org>
27828 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
27830         Add a prettify-symbols-alist for (La)TeX
27831         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
27832         New variable holding an alist suitable as prettify-symbols-alist in
27833         (La)TeX modes.
27835 2015-08-19  Alan Mackenzie  <acm@muc.de>
27837         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
27838         Fixes debbugs#21275.
27839         In Emacs >= 25, let electric-pair-mode take precedence over
27840         delete-selection-mode.
27841         * lisp/delsel.el (delete-selection-uses-region-p): New function,
27842         previously a lambda expression in a property value for
27843         `self-insert-command'.
27844         (top-level): Set the `delete-selection' property of
27845         `self-insert-command' to `delete-selection-uses-region-p'.
27846         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
27847         property for c-electric-\(brace\|paren\) the value
27848         `delete-selection-uses-region-p' when the latter function exists.
27850 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27852         Fix key binding quoting in tutorial *Help*
27853         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
27854         When generating help for custom key bindings, use the user-preferred
27855         quoting style rather than hardcoding the grave style.
27857 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
27859         Improve and future-proof OTF fonts support in w32uniscribe.c
27860         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
27861         about the expected results and why the new Uniscribe APIs are not
27862         used in this function.
27863         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
27864         (ScriptGetFontFeatureTags_Proc): New function typedefs.
27865         (uniscribe_new_apis): New static variable.
27866         (uniscribe_check_features): New function, implements OTF features
27867         verification while correctly accounting for features in the list
27868         after the nil member, if any.
27869         (uniscribe_check_otf_1): New function, retrieves the features
27870         supported by the font for the requested script and language using
27871         the Uniscribe APIs available from Windows Vista onwards.
27872         (uniscribe_check_otf): If the new Uniscribe APIs are available,
27873         use them in preference to reading the font data directly.  Call
27874         uniscribe_check_features to verify that the requested features are
27875         supported, replacing the original incomplete code.
27876         (syms_of_w32uniscribe): Initialize function pointers for the new
27877         Uniscribe APIs.  (Bug#21260)
27878         (otf_features): Scan the script, langsys, and feature arrays back
27879         to front, so that the result we return has them in alphabetical
27880         order, like ftfont.c does.
27881         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
27882         New variable for debugging w32uniscribe.c code.
27884 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
27886         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
27887         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
27888         clause of `isearch-search-fun-default'.  That lax variable does not
27889         refer to lax-whitespacing.  Related to (bug#21777).
27890         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
27891         * lisp/character-fold.el (character-fold-search): Set to nil.
27892         Default to nil for now, until someone implements proper
27893         lax-whitespacing with char-fold searching.
27895 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
27897         Fix doc-string of `help-mode-finish'.
27898         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
27900         In nsimage.m include coding.h (Bug#21292)
27901         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
27903         Move window edge functions to Elisp.
27904         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
27905         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
27906         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
27907         Move to window.el.
27908         (calc_absolute_offset): Remove.
27909         * lisp/frame.el (frame-edges): New function.
27910         * lisp/window.el (window-edges, window-pixel-edges)
27911         (window-absolute-pixel-edges): Move here from window.c.
27912         (window-body-edges, window-body-pixel-edges)
27913         (window-absolute-body-pixel-edges): Move here from window.c and
27914         rename "inside" to "body".  Keep old names as aliases.
27915         (window-absolute-pixel-position): New function.
27917 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
27919         [Gnus]: Use overlay functions directly
27920         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
27921         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
27922         (gnus-article-highlight-signature, gnus-article-extend-url-button)
27923         (gnus-article-add-button, gnus-insert-prev-page-button)
27924         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
27925         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
27926         (gnus-cite-add-face):
27927         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
27928         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
27929         (gnus-tree-recenter, gnus-highlight-selected-tree):
27930         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
27931         (gnus-summary-show-thread, gnus-summary-hide-thread)
27932         (gnus-highlight-selected-summary):
27933         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
27934         * lisp/gnus/message.el (message-fix-before-sending)
27935         (message-toggle-image-thumbnails):
27936         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
27937         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
27938         Use overlay functions directly instead of using gnus-overlay-*,
27939         message-overlay-*, and sieve-overlay-*.
27940         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
27941         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
27942         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
27943         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
27944         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
27945         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
27946         (message-overlay-get, message-overlay-put, message-overlays-in):
27947         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
27948         (sieve-overlays-at): Remove.
27950 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
27952         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
27953         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
27954         builds can use the declaration from the system headers.
27955         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
27956         definition of TITLEBAR_INFO.
27957         Suggested by Eli Zaretskii  <eliz@gnu.org>
27959 2015-08-19  Glenn Morris  <rgm@gnu.org>
27961         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
27963 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27965         Use new q ‘format’ flag when fixing quotes in C
27966         * src/image.c (image_size_error): New function.  All uses of
27967         image_error with "Invalid image size ..."  changed to use it.
27968         * src/image.c (image_size_error, xbm_load_image, xbm_load)
27969         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
27970         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
27971         (imagemagick_load, svg_load, svg_load_image, gs_load)
27972         (x_kill_gs_process):
27973         * src/lread.c (load_warn_old_style_backquotes):
27974         * src/xfaces.c (load_pixmap):
27975         * src/xselect.c (x_clipboard_manager_error_1):
27976         Use %qs, not uLSQM and uRSQM.
27977         * src/syntax.c (Finternal_describe_syntax_value):
27978         Prefer Fsubstitute_command_keys to Fformat, as this lets
27979         us use AUTO_STRING.
27980         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
27981         as it's now guaranteed to be ASCII.
27982         * src/xselect.c (x_clipboard_manager_error_2):
27983         Avoid grave accent in low-level stderr diagnostic.
27985 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
27987         New q flag for ‘format’
27988         * doc/lispref/processes.texi (Sentinels):
27989         Don't hardwire grave quoting style in example.
27990         * doc/lispref/strings.texi (Formatting Strings):
27991         * etc/NEWS:
27992         Document new q flag.
27993         * src/editfns.c (Fformat): Implement it.
27995 2015-08-18  Daiki Ueno  <ueno@gnu.org>
27997         pinentry.el: Add debugging support
27998         * lisp/net/pinentry.el (pinentry-debug): New variable.
27999         (pinentry-debug-buffer): New variable.
28000         (pinentry--process-filter): Send input to the debug buffer, if
28001         `pinentry-debug' is set.
28003         pinentry.el: Improve multiline prompt
28004         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
28005         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
28006         command.
28008 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
28010         Fix multibyte confusion in diagnostics
28011         * src/print.c (print_error_message):
28012         Don't assume that the caller's name is unibyte.
28013         * src/xdisp.c (vadd_to_log):
28014         Don't assume that the formatted diagnostic is unibyte.
28016         Fix file name encodings in diagnostics
28017         Also, close some minor races when opening image files, by opening
28018         them once instead of multiple times.
28019         * src/gtkutil.c (xg_get_image_for_pixmap):
28020         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
28021         (svg_load):
28022         * src/nsimage.m (allocInitFromFile:):
28023         * src/xfns.c (xg_set_icon):
28024         Encode file name, since x_find_image_file no longer does that.
28025         * src/image.c (x_find_image_fd): New function.
28026         (x_find_image_file): Use it.  Do not encode resulting file name,
28027         since callers sometimes need it decoded.
28028         (slurp_file): File arg is now a fd, not a file name.
28029         All callers changed.  This saves us having to open the file twice.
28030         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
28031         (svg_load):
28032         Use x_find_image_fd and fdopen to save a file-open.
28033         Report file name that failed.
28034         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
28036 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
28038         Allow blink-matching-paren to jump off screen
28039         * doc/emacs/programs.texi (Matching): Mention the
28040         `blink-matching-paren' value `jump-offscreen'.
28041         * lisp/simple.el (blink-matching-paren): New possible value.
28042         (blink-matching-paren-on-screen): Clarify the docstring.
28043         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
28045         Refine the previous change
28046         * lisp/simple.el (blink-matching-open): Use minibuffer-message
28047         outside of save-excursion (bug#21286).
28049 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
28051         Rewrite and add frame geometry related functions.
28052         * src/frame.c (Fframe_position): New function.
28053         (Fset_frame_position): Rename parameters and rewrite doc-string.
28054         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
28055         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
28056         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
28057         Qtitle_bar_size.
28058         * src/nsfns.m (frame_geometry): New function.
28059         (Fx_frame_geometry): Call frame_geometry.
28060         (Fx_frame_edges): New function.
28061         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
28062         (GetTitleBarInfo_Proc): Define these so we can use the
28063         GetTitleBarInfo API.
28064         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
28065         (Fx_frame_geometry): Rewrite.
28066         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
28067         (Fx_set_mouse_absolute_pixel_position): New functions.
28068         * src/xfns.c (frame_geometry): New function.
28069         (Fx_frame_geometry): Call frame_geometry.
28070         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
28071         (Fx_set_mouse_absolute_pixel_position): New functions.
28073 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
28075         Improve Tramp's compatibility
28076         * lisp/net/tramp.el (tramp-get-method-parameter):
28077         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
28078         (tramp-adb-get-device):
28079         * lisp/net/trampver.el (tramp-repository-get-version):
28080         Use `tramp-compat-replace-regexp-in-string'.
28082 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
28084         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
28085         Encode/decode string.
28087 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
28089         Clarify what happens to match data on failure
28090         Problem reported by Ernesto Alfonso (Bug#21279).
28091         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
28092         Document more carefully what happens to match data after a failed
28093         search.
28094         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
28095         the return value is undefined if the last search failed.
28096         (Fmatch_data): Simplify doc string line 1.
28098 2015-08-18  Daiki Ueno  <ueno@gnu.org>
28100         Revert "pinentry.el: Support external passphrase cache"
28101         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
28102         pinentry.el shouldn't directly interact with the secrets service,
28103         but ask the caller to cache the passphrase.
28105 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
28107         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
28108         Message mode hooks.
28110 2015-08-17  Daiki Ueno  <ueno@gnu.org>
28112         epg.el: Make gpgconf output parsing future proof
28113         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
28114         --list-options" output.
28116         pinentry.el: Support external passphrase cache
28117         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
28118         (pinentry--allow-external-password-cache): New local variable.
28119         (pinentry--key-info): New local variable.
28120         (secrets-enabled, secrets-search-items, secrets-get-secret):
28121         Declare.
28122         (pinentry--send-passphrase): New function, split from
28123         `pinentry--process-filter'.
28124         (pinentry--process-filter): Use secrets.el to retrieve passphrase
28125         from login keyring.
28127         pinentry.el: Popup window for multiline prompt
28128         * lisp/net/pinentry.el (pinentry): New custom group.
28129         (pinentry-popup-prompt-window): New user option.
28130         (pinentry-prompt-window-height): New user option.
28131         (pinentry--prompt-buffer): New variable.
28132         (pinentry-prompt-mode-map): New variable.
28133         (pinentry-prompt-mode): New function.
28134         (pinentry--prompt): New function.
28135         (pinentry--process-filter): Use `pinentry--prompt' instead of
28136         `read-passwd' and `y-or-n-p'.
28138 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
28140         message.el: Silent the byte compiler
28141         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
28142         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
28143         (message-delete-overlay, message-window-inside-pixel-edges):
28144         Declare before using.
28146         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
28147         (message-window-inside-pixel-edges): XEmacs compatible functions.
28149 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
28151         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
28153 2015-08-17  Noah Friedman  <friedman@splode.com>
28155         * lisp/simple.el (blink-matching-open): Restore point before
28156         calling minibuffer-message.
28158 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
28160         * lisp/play/dunnet.el: Update version number in header (now
28161         matches help).
28163 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
28165         Curved quotes in --batch diagnostics in non-UTF-8
28166         When run with --batch, check that curved quotes are compatible with
28167         the system locale before outputting them in diagnostics.
28168         Problem reported by Eli Zaretskii in:
28169         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
28170         * lisp/startup.el (command-line): Set internal--text-quoting-flag
28171         after the standard display table is initialized.
28172         * src/doc.c (default_to_grave_quoting_style): New function.
28173         (text_quoting_style): Use it.
28174         (text_quoting_flag): New static var, visible to Lisp as
28175         internal--text-quoting-flag.
28176         * src/emacs.c: Include <wchar.h> if available.
28177         (using_utf8): New function.
28178         (main): Use it to initialize text_quoting_flag.
28179         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
28180         Don't define, as it's not needed and it clashes with wchar.h.
28182 2015-08-17  Glenn Morris  <rgm@gnu.org>
28184         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
28185         from makeinfo about spurious "Note:" cross-reference, and for grammar.
28187 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
28189         Minor change in variable initialization on MS-Windows
28190         * src/w32fns.c <after_dead_key>: Initialize to -1.
28191         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
28192         non-zero.
28194         Fix a bug with LWindow key remapping on MS-Windows
28195         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
28197 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
28199         Improve fontset support for latest OTF script tags
28200         * lisp/international/fontset.el (otf-script-alist): Add some
28201         missing script tags.
28202         (setup-default-fontset): Include settings for v2 versions of the
28203         script tags used by some modern OTF/TTF fonts.
28205 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
28207         Spelling fixes
28209 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
28211         Use curved quotes in core elisp diagnostics
28212         In the core elisp files, use curved quotes in diagnostic formats,
28213         so that they follow user preference as per ‘text-quoting-style’
28214         rather than being hard-coded to quote `like this'.
28215         * lisp/abbrev.el (expand-region-abbrevs):
28216         * lisp/button.el (button-category-symbol, button-put)
28217         (make-text-button):
28218         * lisp/cus-start.el:
28219         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
28220         (custom--sort-vars-1, load-theme):
28221         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
28222         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
28223         (cl-generic-generalizers):
28224         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
28225         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
28226         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
28227         (advice--make, define-advice):
28228         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
28229         * lisp/emacs-lisp/timer.el (timer-event-handler):
28230         * lisp/env.el (setenv):
28231         * lisp/facemenu.el (facemenu-add-new-face)
28232         (facemenu-add-new-color):
28233         * lisp/faces.el (face-documentation, read-face-name)
28234         (face-read-string, read-face-font, face-spec-set-match-display)
28235         (read-color, x-resolve-font-name):
28236         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
28237         (set-auto-mode, hack-local-variables)
28238         (hack-one-local-variable--obsolete)
28239         (dir-locals-set-directory-class, write-file)
28240         (basic-save-buffer, delete-directory, copy-directory)
28241         (recover-session, recover-session-finish, insert-directory)
28242         (file-modes-char-to-who, file-modes-symbolic-to-number)
28243         (move-file-to-trash):
28244         * lisp/font-lock.el (font-lock-fontify-buffer):
28245         * lisp/format.el (format-write-file, format-find-file)
28246         (format-insert-file):
28247         * lisp/frame.el (get-device-terminal, select-frame-by-name):
28248         * lisp/fringe.el (fringe--check-style):
28249         * lisp/help.el (describe-minor-mode-from-indicator):
28250         * lisp/image.el (image-type):
28251         * lisp/international/fontset.el (x-must-resolve-font-name):
28252         * lisp/international/mule-cmds.el (prefer-coding-system)
28253         (select-safe-coding-system-interactively)
28254         (select-safe-coding-system, activate-input-method)
28255         (toggle-input-method, describe-current-input-method):
28256         * lisp/international/mule-conf.el (code-offset):
28257         * lisp/mouse.el (minor-mode-menu-from-indicator):
28258         * lisp/replace.el (query-replace-read-from)
28259         (occur-after-change-function, occur-1):
28260         * lisp/scroll-bar.el (scroll-bar-columns):
28261         * lisp/simple.el (execute-extended-command)
28262         (undo-outer-limit-truncate, compose-mail, set-variable)
28263         (choose-completion-string, define-alternatives):
28264         * lisp/startup.el (site-run-file, tty-handle-args)
28265         (command-line, command-line-1):
28266         * lisp/subr.el (noreturn, define-error, add-to-list)
28267         (read-char-choice):
28268         * lisp/term/common-win.el (x-handle-xrm-switch)
28269         (x-handle-name-switch, x-handle-args):
28270         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
28271         Use curved quotes in diagnostics.
28272         * lisp/international/mule.el (find-auto-coding):
28273         Use " to quote in a diagnostic, to be consistent with the rest of
28274         this file.
28276         Convert lisp/term/x-win.el to UTF-8
28277         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
28278         runtime behavior, and the file is multilingual so compile-time
28279         appearance shouldn't be an issue.
28280         * admin/notes/unicode: Document this.
28282 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
28284         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
28285         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
28286         issues and comments, bug#943.
28287         (verilog-type-font-keywords): Cycle delay operators like ##1 and
28288         ##[0:$] are now highlighted in their entirety similarly to the #
28289         delay-control operator.  Likewise, the followed-by operators #-#
28290         and #=# are no longer partially highlighed.
28291         (verilog-backward-syntactic-ws-quick)
28292         (verilog-skip-backward-comments): Minor performance improvements
28293         to buffer traversal functions for reduced latency.
28294         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
28295         keyword 'final' follows 'assert/assume/cover', then it is part of
28296         a deferred immediate assertion item and should not be treated as a
28297         final construct for indentation.  Reported by Yuri Sugihara.
28298         (verilog-do-indent): Virtual task/function/class definition lines
28299         should not be considered as declarations.  Reported by Enzo Chi.
28300         (verilog-do-indent): Do not falsely indent to '=' of
28301         property/sequence operators on subsequent lines of a multi-line
28302         statement.
28303         (verilog-assignment-operator-re): Fix '!==' operator and add
28304         support for '<->', ':/', '#-#', and '#=#' operators.
28305         (verilog-calculate-indent, verilog-label-be): Enable
28306         case-sensitive regular expression parsing when looking for
28307         keywords.
28308         (verilog-calc-1): Detect 'pure virtual method' declarations which
28309         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
28310         (verilog-backward-ws&directives): When moving back to the start of
28311         a line and the preceeding line ended with an escaped-newline, then
28312         jump up one line.  This properly consumes a multi-line
28313         pre-processor directive.  Reported by Kaushal Modi.
28314         (verilog-dpi-import-export-re, verilog-extended-complete-re)
28315         (verilog-calc-1): Teach verilog-mode to properly indent after a
28316         DPI import/export statement that resides outside of a module.
28317         Reported by Kaushal Modi.
28318         (verilog-extended-complete-re): Update regexp to match both
28319         "DPI-C" and "DPI".  Reported by Kaushal Modi.
28321 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
28323         substitute-command-keys a few more doc strings
28324         * lisp/allout.el (outlineify-sticky):
28325         * lisp/files.el (hack-one-local-variable--obsolete):
28326         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
28327         Use substitute-command-keys on some doc strings so that
28328         they don't use hard-coded key bindings or quoting styles.
28330         Fix quoting in Fformat calls
28331         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
28332         (xpm_load, xpm_load_image, pbm_load, png_load_body)
28333         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
28334         (imagemagick_load, svg_load, svg_load_image, gs_load)
28335         (x_kill_gs_process):
28336         * src/lread.c (load_warn_old_style_backquotes):
28337         * src/xfaces.c (load_pixmap):
28338         * src/xselect.c (x_clipboard_manager_error_1):
28339         Quote diagnostics according to user preference when calling
28340         Fformat or its derivatives.
28342 2015-08-15  Glenn Morris  <rgm@gnu.org>
28344         * admin/admin.el (set-version, set-copyright): Remove deleted files.
28346 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
28348         Allow describe-function helpers to access buffer-local values
28349         This will be used by cedet/mode-local.el `describe-mode-local-override'
28350         on `help-fns-describe-function-functions' in upstream CEDET.
28351         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
28352         `describe-function'.
28353         (describe-function): Bind it, save it on the help xref stack.
28355         Handle pulse-background being nil
28356         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
28357         pulse-background, handle it being nil.
28359 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
28361         Fix "\`" confusion in Lisp strings
28362         * admin/authors.el (authors-canonical-author-name):
28363         Fix typo by using "\\`" not "\`" in string RE.
28364         * lisp/obsolete/complete.el (PC-complete-as-file-name):
28365         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
28366         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
28367         Use plain "`", not the equivalent-but-confusing "\`", in strings.
28368         * lisp/textmodes/texinfmt.el: Fix comment likewise.
28370 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
28372         * nt/zipdist.bat: Remove -- no longer used.
28374 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
28376         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
28377         rather than "getenforce".
28378         (tramp-sh-handle-set-file-selinux-context): Do not
28379         cache SELinux context if not all context components are given.
28381 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
28383         Add doc strings to 2 help-mode.el functions
28384         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
28385         strings.  (Bug#21263)
28387         Remove files used by the old MS-Windows specific build procedure
28388         * admin/unidata/makefile.w32-in:
28389         * doc/emacs/makefile.w32-in:
28390         * doc/lispintro/makefile.w32-in:
28391         * doc/lispref/makefile.w32-in:
28392         * doc/misc/makefile.w32-in:
28393         * leim/makefile.w32-in:
28394         * lib-src/makefile.w32-in:
28395         * lib/makefile.w32-in:
28396         * lisp/makefile.w32-in:
28397         * nt/INSTALL.OLD:
28398         * nt/config.nt:
28399         * nt/emacs-src.tags:
28400         * nt/envadd.bat:
28401         * nt/gmake.defs:
28402         * nt/makefile.w32-in:
28403         * nt/multi-install-info.bat:
28404         * nt/nmake.defs:
28405         * nt/paths.h:
28406         * src/makefile.w32-in: Files deleted.
28407         * nt/configure.bat: Remove everything except the blurb about the
28408         new build procedure.
28409         * make-dist: Remove references to makefile.w32-in in various
28410         directories, and to files in nt/ that were deleted.
28411         * etc/NEWS: Mention the fact that the files were dropped.
28413 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
28415         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
28416         (Bug#21248)
28418 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
28420         Default to inotify instead of gfile
28421         * configure.ac (with_file_notification): Fix typo that
28422         prevented suppression of file notification if HAVE_NS.
28423         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
28424         with_file_notification is 'yes' (Bug#21241).
28425         * etc/NEWS: Mention this.
28427         Fix broken URLs for ISO-IR
28428         * doc/emacs/mule.texi (Charsets):
28429         * lisp/international/mule-conf.el:
28430         Fix broken URL (Bug#21248).
28432         Low-level diagnostics now use ‘text-quoting-style’
28433         * src/doprnt.c (doprnt):
28434         Format ` and ' as per ‘text-quoting-style’.
28435         * src/xdisp.c (vmessage, message): Mention that the format should
28436         not contain ` or '.
28438         Prefer ‘format’ to ‘substitute-command-keys’
28439         * src/character.h (uLSQM, uRSQM): Move here ...
28440         * src/doc.c (uLSQM, uRSQM): ... from here.
28441         * src/doc.c (Fsubstitute_command_keys):
28442         * src/syntax.c (Finternal_describe_syntax_value):
28443         * lisp/cedet/mode-local.el (mode-local-print-binding)
28444         (mode-local-describe-bindings-2):
28445         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
28446         * lisp/cus-theme.el (describe-theme-1):
28447         * lisp/descr-text.el (describe-text-properties-1, describe-char):
28448         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
28449         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
28450         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
28451         * lisp/emacs-lisp/package.el (describe-package-1):
28452         * lisp/faces.el (describe-face):
28453         * lisp/help-fns.el (help-fns--key-bindings)
28454         (help-fns--compiler-macro, help-fns--parent-mode)
28455         (help-fns--obsolete, help-fns--interactive-only)
28456         (describe-function-1, describe-variable):
28457         * lisp/help.el (describe-mode):
28458         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
28459         to implement quoting style.  This generally makes the code simpler.
28461         Extend ‘format’ to translate curved quotes
28462         This is a followup to the recent doc string change, and deals with
28463         diagnostics and the like.  This patch is more conservative than
28464         the doc string change, in that the behavior of ‘format’ changes
28465         only if its first arg contains curved quotes and the user prefers
28466         straight or grave quotes.  (Come to think of it, perhaps we should
28467         be similarly conservative with doc strings too, but that can wait.)
28468         The upside of this conservatism is that existing usage is almost
28469         surely unaffected.  The downside is that we'll eventually have to
28470         change Emacs's format strings to use curved quotes in places where
28471         the user might want curved quotes, but that's a simple and
28472         mechanical translation that I'm willing to do later.  (Bug#21222)
28473         * doc/lispref/help.texi (Keys in Documentation):
28474         Move description of text-quoting-style from here ...
28475         * doc/lispref/strings.texi (Formatting Strings):
28476         ... to here, and describe new behavior of ‘format’.
28477         * etc/NEWS: Describe new behavior.
28478         * lisp/calc/calc-help.el (calc-describe-thing):
28479         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
28480         * lisp/info.el (Info-find-index-name):
28481         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
28482         of recently-added curved quotes.
28483         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
28484         Move from here ...
28485         * src/lisp.h: ... to here.
28486         * src/doc.c (text_quoting_style): New function.
28487         (Fsubstitute_command_keys): Use it.
28488         * src/editfns.c (Fformat): Implement new behavior.
28489         * src/lisp.h (enum text_quoting_style): New enum.
28491 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
28493         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
28494         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
28496 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
28498         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
28499         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
28501 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
28503         Flush file properties in Tramp
28504         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
28505         (tramp-sh-handle-set-file-times):
28506         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
28507         (tramp-adb-handle-set-file-times): Flush the file properties of
28508         the directory.
28510 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
28512         * doc/emacs/misc.texi (Amusements): Fixed typo.
28514 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
28516         Don't miss warnings about removing string text properties while dumping
28517         * src/alloc.c (purecopy): Warn about removing a string's text
28518         properties even when the same string was already pure-copied
28519         earlier.
28520         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
28521         (elisp--xref-format-extra): Fix the commentary.
28523 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
28525         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
28527 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
28529         * lisp/progmodes/compile.el: Use lexical-binding.
28530         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
28532 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
28534         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
28535         * lisp/uniquify.el: Remove redundant `:group's.
28537 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
28539         * lisp/net/tramp-adb.el
28540         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
28541         result to prevent modification of the tramp-cache by side effects.
28542         Use the correct cache key.
28544 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
28546         Make add_to_log varargs
28547         * src/alloc.c (run_finalizer_handler):
28548         * src/charset.c (load_charset_map_from_vector):
28549         * src/nsimage.m (ns_load_image):
28550         * src/xfaces.c (load_pixmap, load_color2):
28551         Simplify, now that add_to_log has a variable number of args.
28552         * src/image.c (image_error): Take a variable number of args.
28553         Callers simplified.
28554         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
28555         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
28556         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
28557         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
28559         Optional args for holiday-greek-orthodox-easter
28560         * etc/NEWS: Document this.
28561         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
28562         Add optional args N and STRING, mimicking the API and code of
28563         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
28565 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
28567         xref-find-definitions: Exclude more generic function items.
28568         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
28569         Add doc string.
28570         (cl--generic-find-defgeneric-regexp): New.
28571         (find-function-regexp-alist): Add it.
28572         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
28573         elisp-mode.el, change to search for ";;; Code:"
28574         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
28575         (find-function-regexp-alist): Add them.
28576         * lisp/progmodes/elisp-mode.el:
28577         (elisp--xref-format, elisp--xref-format-extra): Change back to
28578         defvar due to bug#21237.
28579         (elisp--xref-find-definitions): Exclude co-located default methods for
28580         generic functions.  Also exclude implicitly declared defgeneric.
28581         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
28582         mode variables defined by 'define-minor-mode'.
28583         * test/automated/elisp-mode-tests.el: Declare generic functions, add
28584         tests for them.
28585         (xref-elisp-test-run): Fix bug.
28586         (emacs-test-dir): Improve initial value.
28587         (find-defs-defun-defvar-el): Don't expect defvar.
28588         (find-defs-feature-el): Match change to find-feature-regexp.
28590 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
28592         Improve warning about purecopy of strings with properties
28593         * src/alloc.c (purecopy): Show the offending string with the
28594         warning about removing its text properties.
28596 2015-08-12  Alan Mackenzie  <acm@muc.de>
28598         Introduce new macros to cover Emacs's new names in cl-lib.el
28599         This also eliminates `mapcan' warnings in XEmacs.
28600         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
28601         characterise [X]Emacs versions.
28602         (top-level): Require either 'cl or 'cl-lib, depending on
28603         c--mapcan-status.
28604         Change this back to cc-external-require from an eval-when-compile
28605         require.
28606         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
28607         (c--delete-duplicates): New macros which expand into either old or new
28608         names.
28609         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
28610         rather than the old names.
28611         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
28612         rather than mapcan.
28613         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
28614         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
28615         depending on c--mapcan-status.
28616         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
28617         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
28618         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
28619         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
28620         (c-decl-block-key, c-keywords, c-keywords-obarray)
28621         (c-regular-keywords-regexp, c-primary-expr-regexp)
28622         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
28623         (c-known-type-key, c-nonlabel-token-key)
28624         (c-make-init-lang-vars-fun): Use the new macros rather than the old
28625         names.
28627 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
28629         loadhist.el (read-feature): Conform to completing-read
28630         * lisp/loadhist.el (read-feature): According to `completing-read'
28631         documentation, if collection is a list, then it must be a list of
28632         strings, not a list of symbols like before.
28634 2015-08-12  David Kastrup  <dak@gnu.org>
28636         Deal gracefully with up-events (Bug#19746)
28637         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
28638         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
28639         those may easily be injected by user-level Lisp code.
28640         (read_key_sequence): Discard unbound up-events like unbound
28641         down-events: they are even more likely only relevant for special
28642         purposes.
28643         While Emacs will not produce up-events on its own currently (those are
28644         converted to drag or click events before being converted to
28645         Lisp-readable structures), the input queue can be made to contain them
28646         by synthesizing events to `unread-command-events'.  Emacs should deal
28647         consistently with such events.
28649 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
28651         Fix display of thin lines whose newline has line-height property of t
28652         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
28653         and descent values of non-empty glyph rows, since they could have
28654         forced low values deliberately.  (Bug#21243)
28656 2015-08-12  Richard Stallman  <rms@gnu.org>
28658         Offer to combine multiple To or CC fields.
28659         * lisp/mail/sendmail.el (mail-combine-fields): New function.
28660         (mail-send): Call 'mail-combine-fields'.
28662         Don't decrypt encrypted files.
28663         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
28665         Handle encrypted mbox files.
28666         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
28667         the mbox file if necessary.
28669         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
28670         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
28671         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
28672         In a mime message, reenable Mime and show the parts that
28673         were shown before.
28674         Add keyword "decrypt" if anything decrypted.
28676         epa-inhibit inhibits auto-recognition of .gpg files
28677         * lisp/epa-file.el (epa-inhibit): New variable.
28678         (epa-file-handler): Check epa-inhibit.
28680 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
28682         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
28684 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28686         Respect python.el imenu when semantic-mode is off
28687         Fixes bug#21220
28688         * lisp/cedet/semantic/wisent/python.el: Do not force
28689         wisent-python-default-setup on python-mode-hook.
28691 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
28693         Give names to Unicode code points in C code
28694         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
28695         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
28696         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
28697         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
28698         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
28699         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
28700         (OBJECT_REPLACEMENT_CHARACTER):
28701         New named constants for Unicode code points.
28702         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
28703         * src/composite.c (char_composable_p):
28704         * src/lread.c (readevalloop, read1):
28705         * src/xdisp.c (get_next_display_element):
28706         Use them.
28707         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
28708         Remove; now in character.h.
28710 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
28712         elisp--xref-find-definitions handle cl-defstuct default constructor
28713         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
28714         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
28715         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
28716         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
28717         from xref-elisp-test for ease of debugging.
28718         (xref-elisp-deftest): Rename from xref-elisp-test.
28719         (find-defs-constructor): New test.
28720         (find-defs-defgeneric-el): Match batch test config.
28721         (compile): Required for find-defs compilation-minor-mode test.
28722         (find-defs-defvar-el): Match code change.
28723         (find-defs-face-el): Match code change.
28724         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
28725         Improve doc string.
28727 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
28729         * lisp/replace.el (perform-replace): Document `replacements'.
28730         (perform-replace): Move the description of the format of `replacements'
28731         from the body's comment to the doc string.
28733 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
28735         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
28736         sequence.  Recent adb version send initial escape sequences, even
28737         when terminal type is set to TERM=dumb.
28739 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
28741         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
28742         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
28743         Function deleted.
28744         (elisp--xref-format-cl-defmethod): New defconst.
28745         (find-feature-regexp, find-alias-regexp): New defcustoms.
28746         (elisp--xref-make-xref): New function.
28747         (elisp--xref-find-definitions): Rewrite using the above, handle many
28748         more cases.  Always output all available definitions.
28749         (xref-location-marker): No need for special cases.
28750         * test/automated/elisp-mode-tests.el: Add more tests of
28751         elisp--xref-find-definitions, improve current tests.
28753 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
28755         Fix recording of events pushed onto unread-command-events
28756         * src/keyboard.c (read_char): Make sure events read from
28757         unread-command-events and unread-post-input-method-events are
28758         always recorded by record_char.  Reported by David Kastrup
28759         <dak@gnu.org>, see
28760         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
28762 2015-08-10  Samer Masterson  <samer@samertm.com>
28764         Set file buffer as current for "--file"
28765         * lisp/startup.el (command-line-1): Set file buffer as current before
28766         it is displayed so it can be used with options like "--eval".
28767         (Bug#21095)
28769 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
28771         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
28772         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
28773         after setting LC_ALL to the desired locale, to avoid affecting how
28774         numbers are read and printed.  (Bug#21223)
28776 2015-08-10  Alan Mackenzie  <acm@muc.de>
28778         Fix "Invalid search bound (wrong side of point)" in fontification
28779         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
28780         an initialization expression, check point is not beyond the
28781         fontification limit.
28783 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
28785         Fix DPI calculation when Xft/DPI is default
28786         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
28787         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
28788         Remove unnecessary cast while we're in the neighborhood.
28790 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
28792         Add project-vc-search-path and project-vc-ignores
28793         * lisp/progmodes/project.el (project-vc): New group.
28794         (project-vc-search-path, project-vc-ignores): New variables.
28795         (project--value-in-dir): Utility function.
28796         (project-search-path, project-ignores): Use them.
28797         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
28798         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
28800 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
28802         Fix some minor quoting issues with grave accent
28803         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
28804         Remove redundant quotes.
28805         * src/doc.c (uLSQM, uRSQM): New macros.
28806         * src/doc.c (Fsubstitute_command_keys):
28807         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
28808         preference for quotes rather than hardcoding the ‘grave’ style.
28809         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
28810         (re_match_2_internal) [DEBUG]: In debugging output, quote C
28811         strings with "...", not `...'.
28813         ChangeLog.2 ignores remote-tracking merges
28814         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
28815         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
28816         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
28818 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
28820         Use kpsewhich in ffap-latex-mode, if available
28821         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
28822         (ffap-latex-mode): Use kpsewhich if available.
28824         ffap: disallow braces in filenames for tex modes
28825         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
28826         braces in tex-related modes.
28828         Remove useless backslashes from ffap-string-at-point-mode-alist
28829         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
28830         misleading backslashes from default value.
28832         Augment docstring of ffap-string-at-point-mode-alist
28833         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
28834         and END are handled.
28836 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
28838         * lisp/org/org-src.el (org-edit-src-code)
28839         (org-edit-fixed-width-region):
28840         * lisp/simple.el (completion-setup-function):
28841         Remove calls to substitute-command-keys that always just return
28842         their argument.
28844 2015-08-09  Daiki Ueno  <ueno@gnu.org>
28846         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
28847         (Bug#21210)
28849 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
28851         Fix link to source code in help window
28852         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
28853         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
28854         'No longer include timestamp in header of .elc files'.  Add code
28855         that will return .el source file in load-path.
28857 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
28859         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
28860         Respect `isearch-lax-whitespace' when searching through
28861         `isearch-word'.
28863 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
28865         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
28867         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
28868         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
28869         (org-set-regexps-and-options, org-assign-fast-keys)
28870         (org-contextualize-keys, org-contextualize-validate-key)
28871         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
28872         (org-find-olp, org-find-exact-heading-in-directory)
28873         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
28874         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
28875         (org-replace-escapes): Use dolist.
28876         (org-mode): Optimize away XEmacs-only code.
28877         (org-refile-get-targets): Remove unused var `f'.
28878         (org-fast-todo-selection): Remove unused var `e'.
28879         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
28880         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
28881         (org-format-latex): Use dolist.  Remove unused var `e'.
28882         (org-toggle-heading): Access vars lexically rather than dynamically.
28883         (org-backward-sentence, org-forward-sentence, org-meta-return)
28884         (org-kill-line): Mark arg as unused.
28885         (org-submit-bug-report): Silence compiler warning.
28886         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
28887         (org-get-cursor-date): Remove unused var `tm'.
28888         (org-comment-or-uncomment-region): Use standard name `_'.
28889         (reftex-docstruct-symbol, reftex-cite-format): Declare to
28890         silence byte-compiler.
28891         (org-reftex-citation): Add `org--' prefix to dynamically scoped
28892         `rds' var.
28894 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
28896         Electric quote if coding is undecided or no conv
28897         * lisp/electric.el (electric--insertable-p): Also say that a
28898         string is insertable if the buffer file coding system is undecided
28899         or uses no conversion, as curved quotes will work in either case.
28901         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
28903 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
28905         Fix overlay string display regressions introduced in Emacs 24.5
28906         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
28907         buffer position, if we move the iterator to a new position as
28908         result of jumping over text covered by a "replacing" display
28909         property.
28910         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
28912         Support recovery from C stack overflow on MS-Windows
28913         * src/w32fns.c (w32_reset_stack_overflow_guard)
28914         (stack_overflow_handler): New functions for handling C stack
28915         overflow exceptions.
28916         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
28917         specially, and zero out except_addr if we do.
28918         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
28919         mode.
28920         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
28921         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
28922         the MinGW build, but the code guarded by that is for Posix hosts.
28923         * src/keyboard.c (command_loop) [WINDOWSNT]:
28924         Call w32_reset_stack_overflow_guard.
28925         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
28926         (sigsetjmp): New macro.
28927         (w32_reset_stack_overflow_guard): Declare the prototype.
28928         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
28930 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
28932         Improve error signalling for seq-subseq
28933         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
28934         when indexes are too large, but to silently ignore numbers which
28935         are too negative for lists.  String and vector handling errors in
28936         both cases.  This has been regularized.  Error signaling behavior
28937         has been explicitly added to the doc string.
28939         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
28940         therefore also impacted by this change.  Update the doc string
28941         to reflect this.
28943         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
28944         added for these exceptional cases, as well as one non exceptional
28945         base case.
28947 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
28949         Improve error checking in tramp-adb.el
28950         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
28951         Improve error checking.  "ls -l" on Android in Enforcing mode can
28952         print "lstat './FILENAME failed: Permission denied".
28954 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
28956         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
28957         non-struct vectors.
28959 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
28961         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
28962         * lisp/window.el: Fix typo that broke build.
28963         (display-buffer--action-function-custom-type):
28964         Add `display-buffer-use-some-frame'.
28965         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
28967         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
28968         * lisp/window.el (display-buffer-use-some-frame): Add support for
28969         'inhibit-same-window in alist.
28970         * doc/lispref/windows.texi (display-buffer-use-some-frame):
28971         Doc support for 'inhibit-same-window in alist.
28973 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
28975         Avoid infinite loop in display of invisible text in strings
28976         * src/xdisp.c (handle_invisible_prop): If the next change of
28977         invisibility spec does not mean the beginning of a visible text,
28978         update the string position from which to start the search for the
28979         next invisibility change.  This avoids an infinite loop when we
28980         have more than one invisibility spec that are made inactive by
28981         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
28982         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
28983         for the situation that caused bug #21200.
28985 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
28987         * lisp/emacs-lisp/package.el: Simplify describe-package-1
28988         (package-help-section-name-face): New face.
28989         (package--print-help-section): New function.
28990         (describe-package-1): Refactor section printing.
28991         (package-make-button): Use face instead of font-lock-face, which
28992         doesn't work on buttons.
28994         * lisp/emacs-lisp/package.el: Define custom faces
28995         (package-name-face, package-description-face)
28996         (package-status-built-in-face, package-status-external-face)
28997         (package-status-available-face, package-status-new-face)
28998         (package-status-held-face, package-status-disabled-face)
28999         (package-status-installed-face, package-status-dependency-face)
29000         (package-status-unsigned-face, package-status-incompat-face)
29001         (package-status-avail-obso-face): New faces.
29002         (package-menu--print-info-simple): Use them.
29004 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
29006         Fix some confusion with ‘format’
29007         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
29008         (allout-graphics-modification-handler):
29009         Protect arbitrary string in a format context with "%s" format.
29010         * lisp/avoid.el:
29011         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
29012         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
29013         * lisp/erc/erc-button.el (erc-button-beats-to-time):
29014         * lisp/gnus/message.el (message-send-form-letter):
29015         * lisp/org/ob-core.el (org-babel-check-evaluate)
29016         (org-babel-confirm-evaluate):
29017         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
29018         * lisp/org/ox-latex.el (org-latex-compile):
29019         * lisp/org/ox-man.el (org-man-compile):
29020         * lisp/org/ox-odt.el (org-odt-template):
29021         * lisp/org/ox-texinfo.el (org-texinfo-compile):
29022         * lisp/progmodes/prolog.el (prolog-help-info)
29023         (prolog-view-predspec):
29024         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
29025         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
29026         * lisp/textmodes/rst.el (rst-replace-lines):
29027         Change (message (format ...)) to (message ...), and likewise
29028         for ‘error’.  This lessens the probability of confusion when the
29029         output of ‘format’ contains ‘%’.
29031 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
29033         * lisp/replace.el (replace-character-fold): Default to nil.
29035         * lisp/character-fold.el: Fix lax whitespace.
29036         (character-fold-table): Don't make space match other whitespace chars.
29037         (character-fold-to-regexp): Simplify lax behavior.
29039 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
29041         Preserve window point in xref-find-definitions-other-window
29042         Fix the problem reported by Ingo Logmar in
29043         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
29044         * lisp/progmodes/xref.el (xref--goto-char): Extract from
29045         xref--goto-location.
29046         (xref--pop-to-location): Use it.  Replace xref--goto-location with
29047         a direct xref-location-marker call.
29048         (xref--show-location): Likewise.
29049         (xref--display-position): Use xref--goto-char.
29051         * lisp/progmodes/project.el: Add a paragraph to the front matter.
29053 2015-08-04  David Kastrup  <dak@gnu.org>
29055         * lisp/vc/emerge.el (emerge-show-file-name):
29056         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
29057         (vhdl-comment-insert, vhdl-hooked-abbrev):
29058         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
29059         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
29060         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
29061         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
29062         * lisp/obsolete/vip.el (vip-escape-to-emacs)
29063         (vip-prefix-arg-value, vip-prefix-arg-com):
29064         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
29065         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
29066         (quail-tibkey-update-translation):
29067         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
29068         * lisp/leim/quail/lao.el (quail-lao-update-translation):
29069         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
29070         (quail-japanese-self-insert-and-switch-to-alpha):
29071         * lisp/leim/quail/hangul.el (hangul2-input-method)
29072         (hangul3-input-method, hangul390-input-method):
29073         * lisp/language/hanja-util.el (hangul-to-hanja-char):
29074         * lisp/international/robin.el (robin-input-method):
29075         * lisp/international/quail.el (quail-start-translation)
29076         (quail-start-conversion):
29077         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
29078         (gnus-article-describe-key-briefly):
29079         * lisp/eshell/em-hist.el (eshell-list-history):
29080         * lisp/term.el (term-dynamic-list-input-ring)
29081         (term-dynamic-list-completions):
29082         * lisp/subr.el (momentary-string-display):
29083         * lisp/simple.el (read-quoted-char):
29084         * lisp/pcomplete.el (pcomplete-show-completions):
29085         * lisp/kmacro.el (kmacro-repeat-on-last-key):
29086         * lisp/info.el (Info-summary):
29087         * lisp/ehelp.el (electric-help-command-loop):
29088         * lisp/ebuff-menu.el (electric-buffer-list)
29089         (Electric-buffer-menu-exit):
29090         * lisp/double.el (double-translate-key):
29091         * lisp/comint.el (comint-dynamic-list-input-ring)
29092         (comint-dynamic-list-completions): Do not overwrite preexisting
29093         contents of `unread-command-events' when putting new events into it.
29095 2015-08-04  Daniel Colascione  <dancol@dancol.org>
29097         Improve ansi-color filtering of unrecognized escape sequences
29098         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
29099         escape sequences.
29100         (ansi-color-filter-apply, ansi-color-apply): Filter out
29101         unrecognized escape sequences.
29103 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
29105         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
29106         definitions to `easy-menu-define', improve a couple to account for
29107         async, and add a couple of new commands.
29109 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
29111         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
29113 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
29115         Add new 'calendar-weekend-days' option
29116         Make the days receiving the 'calendar-weekend-header' face freely
29117         customizable, as they differ by region/culture.
29118         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
29119         new variable.
29120         * lisp/calendar/calendar.el (calendar-generate-month): New variable
29121         calendar-weekend-days to customize day header fontification.
29123 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
29125         Redo text-quoting-style variable
29126         Rename help-quote-translation to text-quoting-style,
29127         and use symbols rather than characters as values.
29128         This follows suggestions along these lines by Alan Mackenzie in:
29129         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
29130         and by Drew Adams in:
29131         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
29132         * doc/lispref/help.texi (Keys in Documentation)
29133         * etc/NEWS:
29134         * lisp/cus-start.el (standard):
29135         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
29136         Document and/or implement the new behavior instead of the old.
29137         (syms_of_doc): New symbols 'grave' and 'straight'.
29139 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
29141         nnimap.el: Use IMAP MOVE extension if available
29142         * lisp/gnus/nnimap.el (nnimap-request-move-article)
29143         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
29144         Use MOVE extension if available.
29146         nnimap.el: Explicitly ask for server capabilities
29147         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
29148         capabilities will be returned in the login-result.
29150 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
29152         Treat help strings like other doc strings
29153         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
29154         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
29155         substitute-command-keys.
29156         * src/keyboard.c (show_help_echo, parse_menu_item): Call
29157         substitute-command-keys on the help string before displaying it.
29159         Also mention "curly quotes"
29160         See Drew Adams's email in:
29161         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
29162         * doc/lispref/help.texi (Keys in Documentation):
29163         Add index entry "curly quotes".
29164         * etc/NEWS: Use the phrase "curly quotes" too.
29166         ede-proj-target-makefile docstring tweaks
29167         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
29168         Consistently use "all:" to describe the all: target,
29169         replacing three different and confusingly-quoted usages.
29171 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
29173         Don't abort emacsclientw when -a was specified
29174         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
29175         out if we are in emacsclientw and -a was specified.
29177 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
29179         Fix handling of 1st keystroke on MS-Windows
29180         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
29181         This is needed to correctly handle the session's first keystroke,
29182         if it has any modifiers.  (Bug#19994)
29184 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
29186         Substitute some customization etc. doc strings
29187         These changes apply substitute-command-keys to some
29188         doc strings that were going through untranslated
29189         when creating customization or other widgets.
29190         * lisp/cus-edit.el (custom-group-value-create):
29191         * lisp/wid-edit.el (widget-default-create):
29192         (widget-push-button-value-create):
29193         Treat the widget tag as a doc string.
29194         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
29195         Treat the :documentation value as a doc string.
29196         * lisp/wid-edit.el (widget-choose):
29197         Treat the choice names as doc strings.
29198         (widget-default-create): Treat the :doc value as a doc string.
29199         (widget-toggle-value-create): Treat the :on and :off values
29200         as doc strings.
29201         (widget-documentation-string-value-create):
29202         Substitute the doc string.
29204 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
29206         Add a second argument to project-ignores
29207         * lisp/progmodes/project.el (project-ignores): Add a second
29208         argument DIR.
29209         * lisp/progmodes/project.el (project-ignores): Only include the VC
29210         ignores if DIR is the VC root.
29211         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
29213 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
29215         Prevent incorrect display when 'line-spacing' variable is set
29216         * src/xdisp.c (try_window_id): Give up this optimization if the
29217         buffer has its 'line-spacing' variable set non-nil.
29219 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
29221         Don't pass NOVISIT to find-file
29222         * lisp/progmodes/etags.el (next-file):
29223         Don't pass NOVISIT to find-file (bug#21175).
29225         Ignore buffer restriction for tags-loop-eval
29226         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
29227         restriction (bug#21167).
29229 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
29231         Fix a thinko in 'ffap-gopher-at-point'
29232         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
29234         Honor 'line-spacing' for empty lines
29235         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
29236         property and 'line-spacing' frame parameter or variable or
29237         property for empty lines, by doing the same processing as in
29238         x_produce_glyph for newline characters.  (Bug#21165)
29240 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
29242         Simplify by assuming C99 integer division
29243         * src/floatfns.c (ceiling2, floor2, truncate2):
29244         Assume C99 (i.e., Fortran) semantics for integer division.
29245         This simplifies the code.
29247 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
29249         Don't overflow if computing approximate percentage
29250         * lisp/align.el (align-region):
29251         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
29252         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
29253         * lisp/cus-edit.el (custom-buffer-create-internal):
29254         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
29255         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
29256         (checkdoc-next-message-error):
29257         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
29258         * lisp/epa.el (epa-progress-callback-function):
29259         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
29260         * lisp/ffap.el (ffap-menu-rescan):
29261         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
29262         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
29263         * lisp/gnus/nneething.el (nneething-retrieve-headers):
29264         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
29265         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
29266         * lisp/gnus/nnml.el (nnml-retrieve-headers):
29267         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
29268         * lisp/gnus/nntp.el (nntp-retrieve-headers)
29269         (nntp-retrieve-articles):
29270         * lisp/imenu.el (imenu--relative-position):
29271         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
29272         (skkdic-convert-okuri-nasi):
29273         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
29274         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
29275         * lisp/org/org-list.el (org-update-checkbox-count):
29276         * lisp/org/org.el (org-table-map-tables)
29277         (org-update-parent-todo-statistics):
29278         * lisp/play/decipher.el (decipher-insert-frequency-counts)
29279         (decipher-analyze-buffer):
29280         * lisp/profiler.el (profiler-format-percent):
29281         * lisp/progmodes/cc-cmds.el (c-progress-update):
29282         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
29283         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
29284         (idlwave-list-load-path-shadows):
29285         * lisp/progmodes/opascal.el (opascal-step-progress):
29286         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
29287         (vhdl-scan-directory-contents):
29288         * lisp/textmodes/bibtex.el (bibtex-progress-message):
29289         * lisp/textmodes/flyspell.el (flyspell-small-region)
29290         (flyspell-external-point-words):
29291         * lisp/textmodes/table.el (table-recognize):
29292         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
29293         progress-report percentages and the like.  This avoids problems
29294         if (* 100 NUMERATOR) would overflow.
29295         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
29296         * lisp/gnus/registry.el (registry-reindex):
29297         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
29298         * lisp/descr-text.el (describe-char):
29299         * lisp/org/org-colview.el (org-nofm-to-completion):
29300         * lisp/ps-print.el (ps-plot):
29301         * lisp/simple.el (what-cursor-position):
29302         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
29303         more-complicated and less-accurate approximation.
29305         Fix some int overflows in profiler.c
29306         * src/profiler.c (make_log): Make args EMACS_INT, not int,
29307         to avoid unwanted behavior on 'int' overflow.
29308         (make_log, evict_lower_half, record_backtrace):
29309         Use ptrdiff_t, not int, for object indexes.
29311         Port to pedantic memcpy
29312         * src/keyboard.c (menu_bar_items, tool_bar_items):
29313         * src/xrdb.c (magic_db):
29314         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
29316         Merge from gnulib
29317         This incorporates:
29318         2015-07-29 time_rz: port to pedantic memcpy
29319         * lib/time_rz.c: Copy from gnulib.
29321 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
29323         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
29324         When updating the very last entry, tabulated-list-print would
29325         erase it and then try to look at the next one (which obviously
29326         isn't there).
29328 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
29330         Allow to use the old key processing code on MS-Windows
29331         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
29332         New variable.
29333         (w32_wnd_proc): Use it to invoke the old code that processed
29334         character keys, as fallback, when this variable is non-nil.
29335         Fix typos in comments.  (Bug#19994)
29337 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
29339         Improve handling of Unicode keyboard input on MS-Windows
29340         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
29341         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
29342         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
29343         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
29344         successful, don't call TranslateMessage.  (Bug#19994)
29346 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
29348         Fix default-directory in changeset diffs after vc-print-log
29349         * lisp/vc/log-view.el (log-view-diff-common): Move the
29350         revision-granularity check back into log-view-diff-changeset.
29351         (log-view-diff-changeset): Bind default-directory to the current
29352         VC root.
29354         Rename project-directories to project-roots
29355         * lisp/progmodes/project.el (project-search-path-function)
29356         (project-search-path): Update the docstring.
29357         (project-directories): Rename to `project-roots', update all
29358         callers and implementations accordingly.
29359         (project-root): Remove.
29360         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
29361         as the default file mask.
29363 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
29365         Support long URLs in w32-shell-execute
29366         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
29367         and filename_to_ansi to convert the DOCUMENT argument, as it could
29368         be a URL that is not limited to MAX_PATH characters.  Instead, use
29369         MultiByteToWideChar directly, and allocate heap storage as
29370         required to accommodate the converted string.  Likewise with
29371         non-Unicode operation.  Ensure OPERATION is null-terminated, even
29372         if it is longer than 32K bytes.  (Bug#21158)
29374 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
29376         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
29378 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
29380         Add docs for display-buffer action display-buffer-use-some-frame
29381         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
29382         * doc/lispref/windows.texi (Display Action Functions):
29383         Add display-buffer-use-some-frame.
29384         * etc/NEWS: Mention display-buffer-use-some-frame.
29386         Add display-buffer action display-buffer-use-some-frame
29387         * lisp/window.el (display-buffer-use-some-frame): New.
29389         Handle vc-mtn error more gently
29390         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
29391         branch is nil.
29393 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
29395         Fix Tramp problems with multihops, and nc
29396         * lisp/net/tramp-cache.el (tramp-get-file-property)
29397         (tramp-set-file-property, tramp-flush-file-property)
29398         (tramp-get-connection-property, tramp-set-connection-property)
29399         (tramp-flush-connection-property): Remove hop from vector.
29400         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
29401         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
29402         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
29403         netstat to 60".
29404         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
29405         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
29406         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
29407         Keep hop in result.
29408         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
29409         Add hop tests.
29411 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
29413         Resurrect highlighting of repeated words by Flyspell Mode
29414         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
29415         characters between point and the doublon candidate, so that
29416         flyspell-word-search-backward finds it.  (Bug#21157)
29418         Fix redisplay of large images on expose events
29419         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
29420         between signed negative values and unsigned values.  This
29421         prevented redisplay on expose events when the window showed a very
29422         large image.
29424 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
29426         Remove unnecessary stack overflow dependency
29427         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
29428         Don't worry about $ac_cv_header_sys_resource_h and
29429         $ac_cv_func_getrlimit, as they're no longer needed for this.
29430         Problem reported by Eli Zaretskii in:
29431         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
29433 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
29435         Pacify compilation -Wincompatible-pointer-types warnings
29436         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
29437         warning.
29438         (CompareStringW_Proc): New typedef.
29439         (w32_compare_strings): Use it, to pacify compiler warnings under
29440         "-Wincompatible-pointer-types".
29441         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
29442         (GetDiskFreeSpaceExA_Proc): New typedefs.
29443         (Ffile_system_info): Use them, to pacify compiler warnings under
29444         "-Wincompatible-pointer-types".
29446 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
29448         Fix subscript error in calculate_direct_scrolling
29449         Use slightly-longer cost vectors.  Without this change,
29450         calculate_direct_scrolling can have a subscript violation when
29451         FRAME_LINES (frame) <= delta.
29452         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
29453         (line_ins_del, do_line_insertion_deletion_costs):
29454         Allocate and use slightly-larger cost vectors, ones based on
29455         FRAME_TOTAL_LINES instead of FRAME_LINES.
29457         Fix uninitalized value in encode_coding_object
29458         * src/coding.c (encode_coding_object): Also initialize
29459         coding->src_pos and coding->src_pos_byte when NILP (src_object).
29460         This avoids later use of uninitialized storage.
29462 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
29464         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
29465         (Bug#21141)
29467 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
29469         Merge from gnulib
29470         This incorporates:
29471         2015-07-27 time_rz: port better to MinGW
29472         2015-07-27 time: port __need_time_t to MinGW
29473         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
29474         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
29475         * lib/time-internal.h: New file, from gnulib.
29477 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
29479         Handle NULL pointers in w32heap.c allocation routines
29480         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
29481         freeable".
29482         (realloc_after_dump, realloc_before_dump, free_before_dump):
29483         Handle NULL pointers gracefully, as Emacs now seems to expect that.
29485         Fix Cairo build without PNG
29486         * src/image.c: Define PNG function when USE_CAIRO is defined, even
29487         if HAVE_PNG is not.  (Bug#21133)
29489         MS-Windows follow-up for recent TZ-related changes
29490         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
29491         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
29492         picking up 'struct timespec' from pthread.h, if it is installed on
29493         the user's system.  We want either the definitions from MinGW
29494         system headers, if available, or the Gnulib replacements if not.
29495         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
29496         lib/time.h.
29497         * lib/time.in.h: Don't let __need_* symbols affect what happens on
29498         MinGW.  These symbols are defined by MinGW system headers, but we
29499         don't want that to affect whether Gnulib portions of the header
29500         are or aren't used.
29502 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
29504         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
29506         New optional ZONE arg for format-time-string etc.
29507         This simplifies time conversions in other time zones.
29508         It also prevents display-time-world tampering with TZ (Bug#21020).
29509         * admin/admin.el (add-release-logs):
29510         Use improved add-log-time-format API.
29511         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
29512         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
29513         * configure.ac (tzalloc): Remove test for this, since
29514         Emacs no longer uses HAVE_TZALLOC directly.
29515         * doc/lispref/os.texi (Time of Day, Time Conversion)
29516         (Time Parsing):
29517         * etc/NEWS: Document the new behavior.
29518         Merge from gnulib, incorporating:
29519         2015-07-25 strftime: fix newly-introduced bug on Solaris
29520         2015-07-23 fprintftime, strftime: use timezone_t args
29521         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
29522         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
29523         * m4/time_h.m4:
29524         Update from gnulib.
29525         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
29526         New files from gnulib.
29527         * lisp/time-stamp.el (time-stamp-string):
29528         * lisp/time.el (display-time-world-list)
29529         (display-time-world-display):
29530         Use new API, with time zone arg.
29531         * lisp/time.el (display-time-world-display):
29532         Fix race when current-time advances while we're running.
29533         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
29534         (add-log-iso8601-time-string): Accept optional time zone arg.
29535         * lisp/vc/add-log.el (add-change-log-entry):
29536         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
29537         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
29538         Add rules for the time module, since they're now needed
29539         for tzalloc etc.
29540         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
29541         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
29542         * src/editfns.c: Include errno.h.
29543         (set_time_zone_rule): Omit unnecessary forward decl.
29544         (initial_tz): Remove, replacing with ...
29545         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
29546         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
29547         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
29548         (tzlookup): New static functions.
29549         (init_editfns): New arg DUMPING.  All uses changed.
29550         (init_editfns): Omit most initialization if dumping, not if
29551         !initialized.  Initialize wall_clock_tz and local_tz.
29552         (emacs_nmemftime, format_time_string): Time zone argument can now
29553         be any time zone, not just a boolean for UTC or local time.  All
29554         callers changed.
29555         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
29556         (Fcurrent_time_zone): New optional arg ZONE.
29557         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
29558         the same form as with the other new additions.
29559         (decode_time_zone): Remove; no longer needed.
29560         (tzvalbuf): Now file-scope.
29561         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
29562         (syms_of_editfns): Define Qwall.
29563         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
29564         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
29565         [!HAVE_TZALLOC]:
29566         Remove; now supplied by gnulib.
29567         * src/emacs.c (main):
29568         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
29570 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
29572         Fix infinite loop in delete-consecutive-dups
29573         * lisp/subr.el (delete-consecutive-dups): Work even if the last
29574         element is nil (Bug#20588).  Avoid rescan of a circular list in
29575         deletion of last element.
29577 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
29579         Have `x-frame-geometry' return nil for terminal and initial
29580         frames (Bug#21132)
29581         * src/nsfns.m (Fx_frame_geometry):
29582         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
29583         terminal frames.
29584         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
29585         (Fx_frame_geometry): Return nil for terminal frames
29587 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
29589         * etc/tutorials/TUTORIAL.ja: Improve translation.
29591 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
29593         Avoid crashes when w32 GUI functions are called in -batch
29594         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
29595         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
29596         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
29598         Fix flyspell-check-previous-highlighted-word
29599         * lisp/textmodes/flyspell.el
29600         (flyspell-check-previous-highlighted-word): Really accept a
29601         numeric argument, as the doc string describes.  Fix an off-by-one
29602         error in looking up overlays, so invocation with point immediately
29603         after a word would check that word.  Clarify the doc string as
29604         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
29606 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
29608         Minor cleanup in tramp-tests.el
29609         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
29610         Implement using the documented interface
29611         `tramp-connection-properties', rather than with internal functions.
29613 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
29615         Pass lambdas to `skeleton-read'
29616         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
29617         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
29618         lambdas to `skeleton-read' (bug#20386).
29620 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
29622         * INSTALL (DETAILED BUILDING AND INSTALLATION):
29623         Mention --without-imagemagick.
29625         Don't require GUI frames and mouse for Flyspell menus
29626         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
29627         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
29628         support, since pop-up menus work with text terminals and can be
29629         controlled via the keyboard.
29631         Improve documentation of Flyspell commands
29632         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
29633         can be invoked via the keyboard.  Mention those commands by name
29634         and add them to the fn index.  (Bug#21125)
29636 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
29638         Fix some Tramp problems with HP-UX
29639         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
29640         Add "tab0" to stty call.
29641         * test/automated/tramp-tests.el (tramp-persistency-file-name):
29642         Set to nil.
29643         (tramp--test-hpux-p): New defun.
29644         (tramp--test-utf8): Use it.
29646 2015-07-22  Glenn Morris  <rgm@gnu.org>
29648         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
29650 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
29652         Fix point positioning in ffap-next-guess
29653         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
29654         as our callers expect.  This was clobbered as part of fixing
29655         bug#5673.  (Bug#21107)
29656         (ffap-gopher-at-point): Set ffap-string-at-point-region.
29658 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
29660         * lisp/window.el (even-window-sizes): Fix customization type.
29662         Optionally even widths of `display-buffer' windows.  (Bug#21100)
29663         * lisp/window.el (quit-restore-window): Restore width if
29664         requested.
29665         (display-buffer-record-window): Record width when window is
29666         reused and horizontally combined.
29667         (even-window-sizes): New option to allow evening window widths.
29668         (even-window-heights): Defalias to `even-window-sizes'.
29669         (window--even-window-heights): Rename to
29670         `window--even-window-sizes'.  Handle side-by-side windows.
29671         (display-buffer-use-some-window): Call `window--even-window-sizes'
29672         instead of `window--even-window-heights'.
29673         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
29674         * doc/lispref/windows.texi (Choosing Window Options): Describe
29675         `even-window-sizes'.
29676         (Coordinates and Windows): Fix typo.
29678 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
29680         Add file name to autoload error messages
29681         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
29682         Add condition-case to add file name to error message.
29684 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
29686         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
29687         Use 0.0.0.1 as test host.
29689 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
29691         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
29692         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
29693         Fix inf-loop (bug#21083).
29695 2015-07-21  Glenn Morris  <rgm@gnu.org>
29697         * test/automated/package-test.el (package-test-signed):
29698         Update for recent changes.
29700         * test/automated/elisp-mode-tests.el
29701         (elisp-xref-finds-both-function-and-variable)
29702         (elisp-xref-finds-only-function-for-minor-mode):
29703         Update for recent xref name changes.
29705 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
29707         Make eldoc timer non-repeatable
29708         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
29709         non-repeatable.  Since it's on post-command hook, that just wasted
29710         CPU cycles.
29712 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
29714         Mention `tramp-connection-properties' in NEWS
29716         Sync with Tramp repository
29717         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
29718         required prior changing its configuration.
29719         (Connection caching, Predefined connection information)
29720         (Remote shell setup): Fix typos.
29721         (Predefined connection information): Describe, how to overwrite
29722         parameters of `tramp-methods'.
29723         (Remote programs, Remote processes, Traces and Profiles):
29724         Simplify example.
29725         (Remote programs): Remove superfluous comment.
29726         * doc/misc/trampver.texi: Update release number.
29727         * lisp/net/tramp-cache.el (tramp-connection-properties):
29728         Adapt docstring.
29729         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
29730         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
29731         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
29732         "gvfs-mkdir -p ..." does not work robust.
29733         (tramp-gvfs-maybe-open-connection):
29734         Adapt `tramp-get-method-parameter' call.
29735         * lisp/net/tramp-sh.el (tramp-methods):
29736         Add `tramp-remote-shell-login' parameter where it fits.
29737         (tramp-get-remote-path): Use it.
29738         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
29739         (all): Adapt `tramp-get-method-parameter' calls.
29740         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
29741         (tramp-get-method-parameter): Replace argument METHOD by VEC.
29742         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
29743         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
29744         (all): Adapt `tramp-get-method-parameter' calls.
29745         * lisp/net/trampver.el: Update release number.
29746         * test/automated/tramp-tests.el (tramp--instrument-test-case):
29747         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
29748         (tramp-test13-make-directory, tramp--test-adb-p)
29749         (tramp--test-smb-or-windows-nt-p): Simplify.
29750         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
29751         (tramp--test-special-characters): Fix docstring.  Add gvfs and
29752         ftp tests.
29753         (tramp--test-utf8): Fix docstring.
29755 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
29757         Add new xref-query-replace command
29758         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
29759         New function, extracted from xref-pulse-momentarily.
29760         (xref-query-replace): New command.
29761         (xref--query-replace-1): New helper function.
29762         (xref--xref-buffer-mode-map): Add `r' binding.
29764 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
29766         Simplify icalendar decoding of Z dates
29767         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
29768         Simplify calculation of time strings with trailing "Z".
29770 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
29772         Do not corrupt grep-find-ignored-files
29773         * lisp/progmodes/project.el (project-ignores): Change the order of
29774         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
29776         Add xref-match-item, and use it
29777         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
29778         (xref-file-location): Add reader for the column slot.
29779         (xref-match-item): New class.
29780         (xref-match-bounds): A method implementation for it.
29781         (xref-make-match): New constructor function.
29782         (xref--current-item): New private variable.
29783         (xref-pulse-momentarily): Use it.
29784         (xref--pop-to-location): Change the first argument to an xref
29785         item, instead of location, bind xref--current-item.
29786         Update all callers.
29787         (xref-next-line, xref-prev-line, xref--next-error-function)
29788         (xref--mouse-2): Look for the property `xref-item',
29789         instead of `xref-location'.
29790         (xref--item-at-point): Likewise.  This function replaces
29791         `xref-location-at-point'.  Update all callers.
29792         (xref--insert-xrefs): Add the `xref-item' text property, instead
29793         of `xref-location'.
29794         (xref--collect-match): Use xref-make-match.
29796         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
29797         Update all references.
29799         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
29800         slot to `summary'.
29802         vc-hg: Perform the print-log call asynchronously
29803         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
29804         asynchronously (bug#21067).
29806         Add xref-after-jump-hook and xref-after-return-hook
29807         * lisp/progmodes/xref.el (xref-after-jump-hook)
29808         (xref-after-return-hook): New hooks.
29809         (xref-pulse-on-jump): Remove, in favor of the above.
29810         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
29811         (xref--pop-to-location, xref--display-position)
29812         (xref-pop-marker-stack): Use the new hooks, as requested in
29813         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
29815 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
29817         * lisp/progmodes/js.el (js-mode): Correct the lighter.
29819 2015-07-19  Leo Liu  <sdl.web@gmail.com>
29821         Fix a bug in cfengine3-mode
29822         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
29823         eldoc-documentation-function.
29825 2015-07-18  Julien Danjou  <julien@danjou.info>
29827         sieve-mode: support "body" test command
29828         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
29829         Add missing "body" test command.
29831 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
29833         Fix info-apropos when the default encoding is Latin-N
29834         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
29835         'undecided', so that it is set to the encoding of the Info file we
29836         are about to insert.  Otherwise, 'info-apropos' will fail to find
29837         some index nodes in some UTF-8 encoded files, if the buffer's
29838         previous encoding is Latin-N or some such.
29840 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
29842         * lisp/epg.el (epg--start): Check that gpgconf can be found
29843         before calling it.
29845         Expose more file types to OS X that Emacs understands
29846         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
29847         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
29849 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
29851         Fix visual-order cursor movement when lines are truncated
29852         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
29853         simulate display in a window of infinite width, to allow move_it_*
29854         functions reach positions outside of normal window dimensions.
29855         Remove code that tried to handle a subset of these situations by
29856         manual iteration of buffer text.  (Bug#17777)
29858         Fix following Info cross-references to anchors
29859         * lisp/info.el (Info-read-subfile): Add to the returned value the
29860         length of subfile preamble, after converting it to file's byte
29861         offset, as expected by the caller.  Use bufferpos-to-filepos.
29862         (Info-find-node-2): If searching for a node with a
29863         1000-character slop fails, try again with a 10000-character slop,
29864         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
29865         * lisp/international/mule-util.el (bufferpos-to-filepos): New
29866         function.
29867         * etc/NEWS: Mention bufferpos-to-filepos.
29869         Fix scrolling backwards on TTY frames under scroll-conservatively
29870         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
29871         in moving backwards on TTY frames.  (Bug#21080)
29873 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
29875         Consider a jsdoc tag to be a beginning of a paragraph as well
29876         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
29877         consider a jsdoc tag to be a beginning of a paragraph as well.
29879 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29881         * lisp/emacs-lisp/package.el: Fix warnings.
29883         * lisp/emacs-lisp/package.el (package-buffer-info):
29884         Add author and maintainers to `package-buffer-info'.
29886         * lisp/emacs-lisp/package.el: Many small changes.
29887         Replace all instances of 'face with 'font-lock-face.
29888         (describe-package-1): Improve some strings and move the summary
29889         up the list.
29890         (package-install-file): Update docstring.
29891         (package-menu-hide-package): Bind to `H'.
29893         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29894         Fix error handling.
29896 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
29898         Fix hang with large yanks This should fix the bug fixed by Mike
29899         Crowe's patch in:
29900         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
29901         A problem in this area has been reported by several users; see
29902         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
29903         This fix differs from Mike Crowe's patch in that it should avoid a
29904         race condition that could lose SIGIO signals.  ignore_sigio dates
29905         back to the 1980s when some platforms couldn't block signals, and
29906         could only ignore them, which led to races when signals arrived
29907         while being ignored.  We shouldn't have to worry about those old
29908         platforms now.
29909         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
29910         * src/emacs.c (shut_down_emacs):
29911         Don't call ignore_sigio; unrequest_sigio should suffice.
29912         * src/keyboard.c (kbd_buffer_store_buffered_event):
29913         Use unrequest_sigio, not ignore_sigio.
29914         (kbd_buffer_get_event):
29915         Call request_sigio when getting the ball rolling again.
29917 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29919         * lisp/obsolete/longlines.el (longlines-search-function):
29920         Fallback on `isearch-search-fun-default'.
29922 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
29924         Support @-mentions
29925         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
29926         of mentions/messages with @nick instead of just nick.
29928 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
29930         Fix bug#20943
29931         * lisp/autorevert.el (auto-revert-handler): Do not check for
29932         `buffer-modified-p'.
29933         * lisp/files.el (buffer-stale--default-function): Check for
29934         `buffer-modified-p'.
29935         * test/automated/auto-revert-tests.el
29936         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
29938 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
29940         Fix delete-dups bug on long lists
29941         * lisp/subr.el (delete-dups):
29942         Don't mistakenly keep some dups when applied to long lists.
29944 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
29946         Better heuristic for C stack overflow
29947         Improve the heuristic for distinguishing stack overflows from
29948         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
29949         the getrlimit method wasn't portable to Cygwin; see:
29950         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
29951         Corinna suggested pthread_getattr_np but this also has problems.
29952         Instead, replace the low-level system stuff with a simple
29953         heuristic based on known good stack addresses.
29954         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
29955         * src/sysdep.c: Don't include <sys/resource.h>.
29956         (stack_direction): Remove.  All uses removed.
29957         (stack_overflow): New function.
29958         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
29959         Make SEGV fatal in non-main threads.
29961 2015-07-16  Daiki Ueno  <ueno@gnu.org>
29963         epg: Automatically start pinentry server
29964         * lisp/epg-config.el (epg-gpgconf-program): New variable.
29965         * lisp/epg.el (epg--start): Call `pinentry-start' if
29966         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
29968 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
29970         * lisp/gnus/nnimap.el: Fix my last bogus change.
29971         Reinstall Stefan Monnier's change that was made in
29972         <83d824bc4041332f338ad7e5e830f443535aa300>.
29974 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
29976         Merge from gnulib
29977         This incorporates:
29978         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
29979         2015-07-05 acl-permissions: Fix on FreeBSD
29980         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
29981         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
29982         * lib/set-permissions.c: Copy from gnulib.
29984         Port to stricter C99
29985         * src/keyboard.h (kbd_buffer_store_event_hold):
29986         Don't return a void expression.
29988 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
29990         * doc/emacs/frames.texi (Creating Frames):
29991         Fix the command `C-x 5 m' runs.
29993 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
29995         New autorevert tests
29996         * test/automated/auto-revert-tests.el: New file.
29998 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
30000         Clear gcprolist etc. after stack overflow
30001         After stack overflow, command_loop calls init_eval, and this needs to
30002         clear gcprolist and byte_stack_list (Bug#20996).
30003         * src/alloc.c (init_alloc):
30004         Move gcprolist and byte_stack_list initialization from here ...
30005         * src/eval.c (init_eval): ... to here.
30007 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
30009         * doc/emacs/windows.texi (Pop Up Window): Fix the description
30010         of `C-x 4 m'.
30012 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30014         Avoid deprecated enums in mac-ct font backend driver
30015         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
30016         (mac_ctfont_get_advance_width_for_glyph)
30017         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
30019         Cache font family in mac-ct font backend driver
30020         * src/macfont.m (macfont_family_cache): New variable.
30021         (syms_of_macfont): Initialize it.
30022         (macfont_available_families_cache): New variable.
30023         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
30024         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
30025         (macfont_handle_font_change_notification)
30026         (macfont_init_font_change_handler)
30027         (macfont_copy_available_families_cache): New functions.
30028         (macfont_create_family_with_symbol): Use font family caches.
30029         (macfont_list, macfont_list_family):
30030         Use macfont_copy_available_families_cache instead of
30031         mac_font_create_available_families.
30033 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
30035         Show the default value in the prompt
30036         * lisp/progmodes/xref.el: Add `M-?' binding for
30037         xref-find-references.  Declare functions `grep-read-files' and
30038         `grep-expand-template'.
30039         (xref--read-identifier): Show the default value in the prompt.
30041         * lisp/progmodes/xref.el (xref-find-regexp): When called with
30042         prefix argument, ask for file patterns to search as well.  When
30043         prompting for the directory, require an existing one.
30044         (xref-collect-matches): Add a new argument, FILES.  Use it in the
30045         above function.
30047         Add `project-ignores'
30048         * lisp/progmodes/project.el (project-ignores): New generic
30049         function, and an implementation for the VC project type.
30050         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
30051         variant of rgrep-default-command that handles a generic list of
30052         ignores.
30053         (xref-collect-matches): Use it, and pass through to it the value
30054         of the newly added argument.
30055         (xref-find-regexp): Handle ignored paths within the project.
30056         Remove outdated comment.
30057         * lisp/vc/vc.el (vc-default-ignore-completion-table):
30058         Skip the comments and the empty lines.
30060 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
30062         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
30064 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
30066         gnus-registry.el: Correct function argument order
30067         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
30068         Reverse the order of function arguments.
30070 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
30072         Bind grep-highlight-matches to nil
30073         * lisp/progmodes/xref.el (xref-collect-matches):
30074         Bind grep-highlight-matches to nil (bug#20728).
30076 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
30078         nnimap.el: Fix IMAP message size parsing
30079         * lisp/gnus/nnimap.el (nnimap-transform-headers):
30080         Don't assume that UID comes before RFC822.SIZE.
30082 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
30084         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
30085         (auth-source-creation-prompts): Declare.
30086         (nnimap-retrieve-headers, nnimap-status-message)
30087         (nnimap-request-create-group, nnimap-request-delete-group)
30088         (nnimap-close-group, nnimap-request-move-article)
30089         (nnimap-request-accept-article, nnimap-request-newgroups)
30090         (nnimap-request-post, nnimap-dummy-active-number)
30091         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
30092         (nnimap-parse-flags): Remove unused var `p'.
30093         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
30094         (nnimap-flags-to-marks): Remove unused var `totalp'.
30096 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
30098         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
30100 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30102         * src/macfont.m (macfont_list): Ignore font families lacking
30103         font descriptors.
30105 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
30107         Don't check the exit status, it can be misleading
30108         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
30109         exit status, it can be misleading.
30111         Introduce a Project API
30112         * lisp/progmodes/project.el: New file.
30113         * lisp/cedet/ede.el (project-try-ede): New function.
30114         (project-root): New implementation.
30115         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
30116         Set project-search-path-function.
30117         (elisp--xref-find-references): Delegate some logic to
30118         project-search-path.
30119         (elisp-search-path): New function.
30120         (elisp-xref-find): Don't implement `matches' anymore.
30121         * lisp/progmodes/etags.el: Don't implement `matches'.
30122         Delegate some logic to project-search-path.
30123         (etags-search-path): New function.
30124         * lisp/progmodes/xref.el (xref-find-function):
30125         Remove `matches' from the API.
30126         (xref-find-regexp): Move whatever common logic was in elisp and
30127         etags implementations, and search the directories returned by
30128         project-directories and project-search-path.
30130 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
30132         * test/automated/map-tests.el (test-map-delete-return-value):
30133         Uncomment test.
30135         Add support for gv.el in map.el
30136         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
30137         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
30138         * test/automated/map-tests.el: Update tests to work with the new
30139         implementations of map-elt and map-put.
30141 2015-07-09  Glenn Morris  <rgm@gnu.org>
30143         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
30145 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
30147         Syntax-propertize until the end of the line first
30148         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
30149         until the end of the line first.
30151 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
30153         * doc/emacs/files.texi (File Archives): Add a cross reference.
30155 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
30157         nnimap.el: Handle plain value for nnimap-stream
30158         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
30159         capabilities, so that a 'plain value for the `nnimap-stream' server
30160         variable is handled correctly.
30161         * doc/misc/gnus.texi (Customizing the IMAP Connection):
30162         Document the 'plain option.
30164 2015-07-08  Leo Liu  <sdl.web@gmail.com>
30166         Fix bug in thing-at-point--bounds-of-well-formed-url
30167         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
30168         sure boundary contains current point.
30170 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
30172         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
30173         in the end.
30175         Declare whitespace-line-column a safe file-local
30176         * lisp/whitespace.el (whitespace-line-column): Declare to be a
30177         safe file-local when the value is an integer.
30179 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
30181         gnus-group.el: Check if group names are already strings
30182         * lisp/gnus/gnus-group.el (gnus-group-group-name):
30183         The group name may already be a string.
30184         Specifically, in the group list reached from the *Server* buffer,
30185         the 'gnus-group text property returns a string.  Everywhere else
30186         it returns a symbol.
30188         nnimap.el: Remove unused let variables
30189         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
30191 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
30193         Support "maximized" property of runemacs's shortcut
30194         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
30195         the '--maximized' switch to Emacs.
30197         Support "minimized" property of runemacs's shortcut
30198         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
30199         pass the '--iconic' switch to Emacs.  (Bug#20991)
30201 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
30203         Doc fixes
30204         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
30205         C-w' in Diff mode.
30206         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
30207         Add a cross reference.
30209 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
30211         * lisp/obsolete/landmark.el: Add Obsolete-since header.
30213 2015-07-07  Glenn Morris  <rgm@gnu.org>
30215         * test/automated/ert-tests.el (ert-test-deftest):
30216         Update for recent changes.
30218 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
30220         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
30221         * lisp/emacs-lisp/gv.el (gv-setter): New function.
30222         (gv-invalid-place): New error.
30223         (gv-get): Use them.
30224         (gv-synthetic-place, gv-delay-error): New places.
30225         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
30226         (cl-defgeneric, cl-defmethod): Use gv-setter.
30228 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
30230         Make vc-tests work with MSYS svn program
30231         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
30232         svn is an MSYS program.
30234 2015-07-07  Ken Brown  <kbrown@cornell.edu>
30236         Improve recent change to emacsclient on Cygwin
30237         * lisp/server.el (server-process-filter): Remove redundant check
30238         that 'cygwin-convert-file-name-from-windows' is defined as a
30239         function on Cygwin.  Don't call that function unless its argument
30240         starts with a drive letter.
30242 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
30244         * lisp/emacs-lisp/package.el (package-compute-transaction):
30245         Fix void variable due to `found-something' being in the wrong `let'.
30247 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
30249         * lisp/play/landmark.el: Move to lisp/obsolete/.
30251 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
30253         Have `x-show-tip' handle `right' and `bottom' frame parameters
30254         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
30255         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
30256         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
30257         tooltips also via `right' and `bottom' frame parameters.
30259 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
30261         Add online-help support to describe types
30262         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
30263         (describe-symbol): Improve the selection of default.
30264         * lisp/help-mode.el: Require cl-lib.
30265         (describe-symbol-backends): Move from help-fns.el.
30266         (help-make-xrefs): Use it.
30267         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
30268         for types.
30269         (cl--typedef-regexp): New const.
30270         (find-function-regexp-alist): Add entry for types.
30271         (cl-help-type, cl-type-definition): New buttons.
30272         (cl-find-class): New function.
30273         (cl-describe-type): New command.
30274         (cl--describe-class, cl--describe-class-slot)
30275         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
30276         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
30277         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
30278         New functions.  Moved from eieio-opt.el.
30279         (cl--generic-class-parents): New function, extracted from
30280         cl--generic-struct-specializers.
30281         (cl--generic-struct-specializers): Use it.
30282         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
30283         Improve constructor's docstrings.
30284         (cl-struct-unknown-slot): New error.
30285         (cl-struct-slot-offset): Use it.
30286         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
30287         definition in current-load-list.
30288         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
30289         (eieio--add-new-slot): Set it.
30290         (eieio-defclass-internal): Use new name for current-load-list.
30291         (eieio-oref): Add compiler-macro to warn about unknown slots.
30292         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
30293         as compile-time as well.  Improve constructor docstrings.
30294         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
30295         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
30296         (eieio-class-def): Remove button.
30297         (eieio-help-constructor): Use new name for load-history element.
30298         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
30299         (eieio-method-documentation): Move to cl-generic.el.
30300         (eieio-display-method-list): Use new names.
30301         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
30302         Add "define-linline".
30303         (lisp-fdefs): Remove "defsubst".
30304         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
30305         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
30306         (macroexp--warn-and-return): Use it to avoid inf-loops.
30307         Add `compile-only' argument.
30309 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
30311         python.el: Fix local/remote shell environment setup
30312         * lisp/progmodes/python.el (python-shell-with-environment):
30313         Fix remote/local environment setup.
30314         * test/automated/python-tests.el (python-shell-with-environment-1)
30315         (python-shell-with-environment-2): New tests.
30317 2015-07-06  Glenn Morris  <rgm@gnu.org>
30319         * lisp/simple.el (set-variable): Tweak recent doc fix.
30321 2015-07-06  Ken Brown  <kbrown@cornell.edu>
30323         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
30325 2015-07-06  Glenn Morris  <rgm@gnu.org>
30327         * lisp/simple.el (set-variable): Use user-error for type mismatch.
30329 2015-07-06  Ken Brown  <kbrown@cornell.edu>
30331         * src/emacs.c (main): Don't increase the stack size on Cygwin.
30333 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30335         (describe-symbol): Rewrite describe-function-or-variable
30336         * lisp/help-fns.el (describe-symbol-backends): New var.
30337         (help-xref-stack-item): Declare.
30338         (describe-symbol): Rename from describe-function-or-variable.
30339         Rewrite using describe-symbol-backends instead of help-xref-interned.
30340         * lisp/help.el (help-map): Use it.
30341         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
30342         (help-xref-interned): Make it into an obsolete alias.
30344         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
30345         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
30346         and cl-letf.
30348 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
30350         Fix parsing glitches in dired-mark-sexp (bug#13575)
30351         * lisp/dired-x.el (dired-x--string-to-number): New function.
30352         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
30353         of directory-listing-before-filename-regexp.  Consider
30354         forward-word harmful and replace it.  Add more verbiage in
30355         comments and doc string.
30357 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
30359         python.el: Respect process environment for remote shells
30360         * lisp/progmodes/python.el
30361         (python-shell-calculate-process-environment): Calculate
30362         process-environment or tramp-remote-process-environment depending
30363         whether current file is remote.
30364         (python-shell-calculate-exec-path): Calculate exec-path or
30365         tramp-remote-path depending whether current file is remote.
30366         (python-shell-with-environment): New macro.
30367         (python-shell-prompt-detect, python-shell-calculate-command)
30368         (python-shell-make-comint, python-check): Use it.
30370         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
30371         * lisp/progmodes/python.el (python-shell--interpreter)
30372         (python-shell--interpreter-args): New vars.
30373         (inferior-python-mode, python-shell-make-comint): Use them.
30375         python.el: Fixes for IPython 3.x  (Bug#20580)
30376         * lisp/progmodes/python.el:
30377         (python-shell-completion-native-setup): Fix IPython 3.x setup.
30378         (python-shell-completion-native-get-completions): Fix timeout
30379         logic.
30381         python.el: Fix mark-defun behavior  (Bug#19665)
30382         * lisp/progmodes/python.el (python-mark-defun): New function.
30383         * test/automated/python-tests.el (python-mark-defun-1)
30384         (python-mark-defun-2, python-mark-defun-3): New tests.
30386 2015-07-05  Glenn Morris  <rgm@gnu.org>
30388         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
30389         such as "extends(parent), private".  (Bug#20969)
30390         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
30391         New tests.
30393 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
30395         Avoid duplicate calls to current_timespec
30396         * src/process.c (wait_reading_process_output):
30397         Cache current_timespec results as long as we're not waiting.
30399 2015-07-05  Ian Kelling  <ian@iankelling.org>
30401         Avoid returning early reading process output due to SIGIO
30402         * src/process.c (wait_reading_process_output): Extend the behavior of
30403         not breaking due to not finding output when a timer has lowered the
30404         timeout to include when SIGIO lowers the timeout.
30406         Don't return as fast reading any process output
30407         * src/process.c (wait_reading_process_output):
30408         The patch for Bug#17647 returns too fast sometimes when reading
30409         from any processes.  Revert part of it, and limit the timeout more
30410         sensibly (Bug#20978).
30412         Refactor timeouts in wait_reading_process_output
30413         * src/process.c (wait_reading_process_output):
30414         Simplify timeouts with an enum.  Remove a redundant condition.
30415         (Bug#20978)
30417         Remove ADAPTIVE_READ_BUFFERING ifdef
30418         * src/process.c (make-process, make-pipe-process, deactivate_process)
30419         (wait_reading_process_output, read_process_output, send_process)
30420         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
30421         added in case there was an operating system in which it was not
30422         useful.  That was 11 years ago and it hasn't happened.  Make
30423         development easier by not considering the effect of changes on a
30424         theoretical OS where this is disabled (Bug#20978).
30426 2015-07-05  Glenn Morris  <rgm@gnu.org>
30428         * lisp/simple.el (set-variable): Doc fix.
30430         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
30432 2015-07-05  Ian Kelling  <ian@iankelling.org>
30434         accept-process-output fix
30435         This is a followon to the fix for bug#17647 (Bug#20976).
30436         * src/process.c (status_notify): Fix too high return in some cases.
30438 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
30440         * lisp/character-fold.el (character-fold-table):
30441         Only fold decompositions if at least one character is non-spacing.
30442         (Bug#20975)
30444 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
30446         Merge from gnulib
30447         This incorporates:
30448         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
30449         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
30450         2015-07-02 update-copyright: fix test failure with perl >= 5.22
30451         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
30452         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
30453         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
30454         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
30456 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
30458         Respect `prog-indentation-context' in python.el
30459         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
30460         (python-indent-context, python-indent--calculate-indentation)
30461         (python-info-current-defun)
30462         (python-info-dedenter-opening-block-message)
30463         (python-info-line-ends-backslash-p)
30464         (python-info-beginning-of-backslash)
30465         (python-info-continuation-line-p): Use `prog-widen'.
30466         (python-indent--calculate-indentation)
30467         (python-indent--calculate-levels)
30468         (python-indent-calculate-indentation): Use `prog-first-column'.
30469         (python-indent--calculate-levels): Simplify.
30470         Ignore also initial empty lines for syntax calculation.
30471         * lisp/progmodes/python.el (python-indent-context): Return
30472         :no-indent for first non-empty line, not just in line 1.
30473         * test/automated/python-tests.el (python-indent-base-case)
30474         (python-indent-inside-paren-1, python-indent-inside-paren-2)
30475         (python-indent-inside-paren-3, python-indent-inside-paren-4)
30476         (python-indent-inside-paren-5, python-indent-inside-paren-6)
30477         (python-indent-after-backslash-1)
30478         (python-indent-after-backslash-2)
30479         (python-indent-after-backslash-3)
30480         (python-indent-after-backslash-4, python-indent-inside-string-1):
30481         Expect :no-indent for first non-empty line.
30483 2015-07-04  Daniel Colascione  <dancol@dancol.org>
30485         Factor isearch word description into new function
30486         * lisp/isearch.el (isearch--describe-word-mode): New function.
30487         (isearch-message-prefix, isearch-query-replace): Use it.
30489 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
30491         Fix mouse pointer on w32 when a menu is active
30492         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
30493         shape while a menu is in use.  This started happening since we now
30494         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
30496 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
30498         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
30499         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
30500         parameter.  (Bug#17344)
30502         Have `compilation-set-window' use right window for getting fringes
30503         (Bug#20829)
30504         * lisp/progmodes/compile.el (compilation-set-window):
30505         Take `window-fringes' from argument window.
30507 2015-07-03  Glenn Morris  <rgm@gnu.org>
30509         Update eieio tests for recent eieio-core change.
30510         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
30511         * test/automated/eieio-tests.el
30512         (eieio-test-32-slot-attribute-override-2):
30513         Replace the deleted eieio--class-v with cl--find-class.
30515 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
30517         Fix some issues with `window-divider-mode'
30518         * lisp/frame.el (window-divider-default-places): New option.
30519         (window-divider-mode): Remove option.
30520         (window-divider-mode): Make it a "regular" minor mode.
30521         (window-divider-width-valid-p): Drop frame- prefix.
30522         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
30523         prefix.  Handle `window-divider-default-places'.
30524         (frame--window-divider-mode-set-and-apply): Remove.
30525         (window-divider-default-bottom-width)
30526         (window-divider-default-right-width): Drop :group entries.
30527         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
30528         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
30529         (menu-bar-no-window-divider): Set `window-divider-default-places'
30530         and call `window-divider-mode'.
30531         * doc/emacs/frames.texi (Window Dividers): Document
30532         `window-divider-default-places'.
30534 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
30536         * doc/emacs/display.texi (Displaying Boundaries):
30537         * doc/emacs/search.texi (Word Search): Add cross references.
30539 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30541         -batch should not affect ‘’ -> `' display
30542         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
30543         -batch (Bug#20926).
30545 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
30547         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
30548         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
30549         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
30550         Use cl--find-class instead.
30552         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
30554 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
30556         Some further fixes in Change Window node (Bug#20183)
30557         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
30558         by "resizing" in section title.  Add some concept indices.
30559         Suggested by N. Jackson (Bug#20183).
30561         * doc/emacs/windows.texi (Change Window): Reference window
30562         dividers.
30564         Document new `window-divider-mode'.
30565         * lisp/frame.el (window-divider-mode): Fix doc-string.
30566         * doc/emacs/frames.texi (Window Dividers): New section.
30568         Improve accessibility of window dividers (Bug#20183)
30569         * lisp/faces.el (window-divider)
30570         (window-divider-first-pixel, window-divider-last-pixel): Change
30571         membership from `frames' to `window-divider' customization group.
30572         * lisp/frame.el (window-divider): New customization group.
30573         (window-divider-mode): New minor mode.
30574         (window-divider-default-bottom-width)
30575         (window-divider-default-right-width): New options.
30576         (frame--window-divider-previous-mode): New variable.
30577         (frame-window-divider-width-valid-p)
30578         (frame--window-divider-mode-apply)
30579         (frame--window-divider-mode-set-and-apply): New functions.
30580         * lisp/menu-bar.el (menu-bar-options-save): Save
30581         window-divider-mode settings.
30582         (menu-bar-window-divider-customize)
30583         (menu-bar-bottom-and-right-window-divider)
30584         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
30585         (menu-bar-no-window-divider): New functions.
30586         (menu-bar-showhide-window-divider-menu): New variable.
30587         (menu-bar-showhide-menu): Show/hide window divider menu.
30588         * lisp/mouse.el (mouse-split-window-vertically)
30589         (mouse-split-window-horizontally): Replace `error' by
30590         `user-error'.  Bind `window-combination-resize' to nil.
30591         (top-level): Add/reorder mouse key bindings on mode- and
30592         vertical-line.
30594 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30596         Don't display ‘’ as `' under X in en_GB
30597         The curved quote setup code invokes (char-displayable-p ?‘),
30598         but this isn’t reliable until after the X frame replaces the
30599         terminal frame (Bug#20926).
30600         * lisp/international/mule-cmds.el (set-locale-environment):
30601         Move curved quote setup code from here ...
30602         * lisp/startup.el (command-line): ... to here, after creating
30603         the X frame.
30605 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
30607         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
30609         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
30610         to reverse the meaning (Bug#15631).
30612 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
30614         Be more tolerant to fonts named "Foobar-12"
30615         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
30616         don't barf; instead, request a new fontset to be generated.  This
30617         avoids unnecessarily rejecting fonts named against XLFD rules.  See
30618         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
30619         for the description of the original problem.
30620         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
30621         by a hyphen in a font's name.
30623         Fix value of posn-at-pont in R2L lines
30624         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
30625         coordinate of -1, for a newline in a right-to-left line that
30626         overflowed into the left fringe.
30628 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
30630         (cl--copy-slot-descriptor): Copy the `props' alist as well
30631         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
30632         Rename from cl--copy-slot-descriptor.
30633         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
30635 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
30637         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
30638         (xterm-query-timeout): New var.
30639         (xterm--query): Use it.  Fallback on async method if we timeout before
30640         getting the first byte of the reply (bug#12354).
30642 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30644         Spelling fixes
30645         * lisp/character-fold.el (character-fold-search):
30646         * lisp/emacs-lisp/package.el (package-hidden-regexps):
30647         Fix typos.
30649 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
30651         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
30653 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30655         In strings, prefer plain ` and ' to \` and \'
30656         * lisp/allout.el (allout-insert-listified):
30657         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
30658         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
30659         (ls-lisp-string-lessp):
30660         * lisp/menu-bar.el (menu-bar-open):
30661         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
30662         * lisp/progmodes/compile.el (compile):
30663         * lisp/progmodes/etags.el (tags-loop-scan):
30664         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
30665         * lisp/subr.el (posn-actual-col-row):
30666         * lisp/term/pc-win.el (x-list-fonts):
30667         * lisp/textmodes/texinfmt.el (texinfmt-version):
30668         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
30669         * lisp/time.el (display-time-world-list):
30670         * lisp/tmm.el (tmm-menubar):
30671         * src/buffer.c (syms_of_buffer):
30672         * src/fileio.c (syms_of_fileio):
30673         Omit unnecessary and confusing backslash before quote.
30674         * lisp/erc/erc.el (erc-cmd-LASTLOG):
30675         * lisp/progmodes/flymake.el (flymake-fix-file-name):
30676         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
30677         Fix string that was intended to escape a backslash and not a quote.
30679 2015-06-30  Glenn Morris  <rgm@gnu.org>
30681         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
30683         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
30684         Replace hard-coded lists with wildcard + filter-out.
30686         * configure.ac (system-configuration-features): Add X11, NS.
30688         Improve reproducibility of generated loaddefs file
30689         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
30690         Make the return value the modtime of the input file (if no autoloads).
30691         (update-directory-autoloads): In the "no autoloads" section,
30692         use "most recent modtime" rather than "current time".
30694 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
30696         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
30697         (Bug#20930)
30699 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
30701         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
30703         Add seq-min and seq-max
30704         Bump version number.
30705         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
30706         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
30708 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
30710         Make sure sleep-for always delays for as long as it's told
30711         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
30712         a loop, to ensure we always wait exactly the required amount of
30713         time.  (Bug#15990)
30715 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30717         Fix pointer signedness glitch
30718         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
30720 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
30722         Don't block changes in mouse pointer inside 'track-mouse'
30723         * etc/NEWS:
30724         * doc/lispref/frames.texi (Mouse Tracking): Document the special
30725         effect of setting 'track-mouse' to 'dragging'.
30726         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
30727         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
30728         * lisp/mouse-drag.el (mouse-drag-throw):
30729         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
30730         to avoid changes in the shape of the mouse pointer.
30731         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
30732         pointer shape when do_mouse_tracking has the value of 'dragging',
30733         not just any non-nil value.  (Bug#20934)
30734         (syms_of_xdisp): DEFSYM 'dragging'.
30736 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
30738         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
30740         * lisp/emacs-lisp/package.el (package-compute-transaction):
30741         Don't assume version sorting.
30743         * lisp/emacs-lisp/package.el (package--save-selected-packages):
30744         Don't save before init time, to avoid overwriting configurations.
30745         (Bug#20855)
30747 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
30749         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
30750         references.
30752 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
30754         Update for the upcoming CFEngine 3.7 release: support macros and
30755         quoted context strings; reformat JSON; indent promise attributes 2
30756         units by default; give function parameter descriptions in the eldoc
30757         glue.
30758         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
30759         Autoload `json-pretty-print'.  Support new features in 3.7.
30760         (cfengine-parameters-indent): Set default promise attribute indent to
30761         2 more than the promise itself.
30762         (cfengine3-macro-regex): New variable to match the new macro syntax.
30763         (cfengine3-font-lock-keywords): Use it to highlight macros.
30764         (cfengine3-indent-line): Use it to indent macros to column 0.
30765         (cfengine3-class-selector-regex): Update for the new quoted strings
30766         format.
30767         (cfengine3-reformat-json-string): New function to reformat a JSON
30768         string using `json-pretty-print'.
30769         (cfengine3-format-function-docstring): Use function parameter
30770         description if it's provided by the cf-promises syntax dump.
30772 2015-06-29  Michael R. Mauger  <michael@mauger.com>
30774         Cygwin emacsclient handles w32 file names
30775         * lisp/server.el (server-process-filter): Allow Cygwin's
30776         emacsclient to be used as a file handler on MS-Windows.
30778 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
30780         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
30781         (bug#20925).
30783 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
30785         * doc/lispref/text.texi (Sticky Properties): Improve wording.
30786         (Bug#20924)
30788         Allow font names that end in "-NN", where NN is a number
30789         * src/font.c (font_load_for_lface): If the font-spec didn't match
30790         any available fonts, try again without interpreting trailing "-NN"
30791         as the font size.  For the description of the original problem, see
30792         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
30794         .gdbinit followup to changes in !USE_LSB_TAG
30795         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
30796         !USE_LSB_TAG, as Emacs no longer does.
30798 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
30800         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
30801         Otherwise `s p' of f and F will stomp on each other's value.
30802         (Bug#20916)
30804 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30806         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
30807         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
30809 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
30811         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
30812         as additional guess.
30814         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
30815         to a string.
30817 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
30819         apropos-library quoting fix
30820         * lisp/apropos.el (apropos-library): Quote library consistently
30821         with the rest of the quoting used by apropos.
30823         Clarify interpreter-mode-alist doc
30824         * lisp/files.el (interpreter-mode-alist):
30825         Reword to avoid confusing quoting that wasn't working anyway.
30827 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
30829         Sync with Tramp 2.2.12
30830         * doc/misc/trampver.texi:
30831         * lisp/net/trampver.el: Update release number.
30832         * test/automated/tramp-tests.el (tramp-test13-make-directory):
30833         Fix cleanup.
30835 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
30837         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
30839 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
30841         Bind grep-highlight-matches around the rgrep call
30842         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
30843         around the rgrep call (bug#20728).
30845         Put "--color" before the other options in grep-command
30846         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
30847         before the other options in grep-command (bug#20912).
30849         Add --color Grep option to the command dynamically
30850         * lisp/progmodes/grep.el (grep-template, grep-find-template):
30851         Update the description for <C>.  (Bug#20728)
30852         (grep-compute-defaults): Don't add the --color option to
30853         grep-options.  Only add it to grep-command.
30854         (grep-expand-keywords): Expand the env value opts into <C>.
30855         (grep-expand-template): Replace cf in the env with the opts list,
30856         that can include -i and --color.
30857         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
30858         "--color=always" from the template, because we don't have to.
30860 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
30862         cl-extra fixes for most-negative-fixnum
30863         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
30864         Don't mishandle an argument equal to most-negative-fixnum,
30865         whose absolute value equals itself.
30866         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
30868         Initialize cl--gensym-counter to 0
30869         Previously it was initialized to a random value, which made it
30870         harder to reproduce earlier Emacs runs.  The need for a random
30871         value went away when Emacs introduced and used the #: syntax for
30872         uninterned symbols (Bug#20862).
30873         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
30874         Document that cl--gensym-counter now starts with 0.
30875         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
30876         (cl--random-time): Move to near only remaining use.
30877         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
30879         Improve docstring for macroexp-let2
30880         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
30881         Improve as per suggestion by RMS in:
30882         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
30883         Also, rename args to match new doc string.
30885 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
30887         Fix VC test suite on MS-Windows
30888         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
30889         always starts with 3 slashes after the colon.
30890         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
30891         'w32-application-type' to invoke CVS on MS-Windows with properly
30892         formatted CVSROOT directory name.
30894         Add a new function w32-application-type
30895         * src/w32proc.c (Fw32_application_type): New function.
30897         Avoid error in TLS connections due to incorrect format
30898         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
30899         the call to 'error', instead of the unsupported %u.  Reported by
30900         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
30902 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
30904         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
30906 2015-06-26  Leo Liu  <sdl.web@gmail.com>
30908         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
30909         `with-output-to-string' in elisp.
30911         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
30912         with-output-to-string".
30913         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
30915 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
30917         Minor corrections in ELisp manual
30918         * doc/lispref/nonascii.texi (Character Properties): Correct
30919         inaccuracies in description of values of the Unicode properties.
30921         Fix invisible mouse pointers on Windows.
30922         * src/w32fns.c: Include windowsx.h.
30923         (w32_wnd_proc): If the mouse moved and the mouse pointer is
30924         invisible, make it visible again even when the main (Lisp)
30925         thread is busy.
30926         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
30927         garbaging the frame have the input thread call SetCursor.
30929 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
30931         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
30932         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
30933         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
30934         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
30935         (w32_toggle_invisible_pointer): New function.
30936         (w32_create_terminal): Add w32_toggle_invisible_pointer as
30937         toggle_invisible_pointer_hook for this terminal.
30939 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
30941         Doc fix for deletion commands
30942         'delete-char' does not respect the value of 'delete-active-region'.
30943         * doc/emacs/killing.texi (Deletion):
30944         Fix documentation for some single-char deletion commands.
30946         * doc/emacs/help.texi (Apropos):
30947         Improve documentation of 'apropos-do-all'.
30949         * doc/emacs/help.texi (Help Summary):
30950         Improve documentation of 'describe-mode'.
30952 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
30954         Fix submake dependency bug with .h files
30955         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
30956         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
30957         before the submake in $(libsrc) would spin off a subsubmake
30958         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
30960 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
30962         * lisp/character-fold.el (character-fold-table): Reuse `table'.
30964 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
30966         Translate undisplayable ‘ to `
30967         * doc/lispref/help.texi (Keys in Documentation):
30968         * lisp/international/mule-cmds.el (set-locale-environment):
30969         * lisp/term/w32console.el (terminal-init-w32console):
30970         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
30971         If ‘ is not displayable, transliterate it to `, not to '.  See:
30972         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
30974         Fix C99 incompatibilities in Cairo code
30975         * src/image.c (xpm_load) [USE_CAIRO]:
30976         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
30977         Fix pointer signedness problem.
30979 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
30981         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
30982         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
30983         `with-output-to-string' should have the same indent as `progn'.
30984         This is in line with the declaration of `with-output-to-string'.
30986 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
30988         Get ‘./configure; make -C src emacs’ to work
30989         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
30990         * lib-src/Makefile.in (../lib/libgnu.a):
30991         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
30993 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
30995         Fix GC bugs --with-wide-int and Qnil == 0
30996         Use the same alignment for the !USE_LSB_TAG case as for the
30997         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
30998         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
30999         once we changed the representation of symbols so that Qnil == 0.
31000         Problem reported by Eli Zaretskii (Bug#20862).
31001         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
31002         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
31003         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
31004         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
31005         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
31006         This optimization in the !USE_LSB_TAG case is no longer valid when
31007         symbols are represented via offsets.  Change the only use to
31008         assume that pointers might hide in objects.
31009         * src/lisp.h (alignas) [!USE_LSB_TAG]:
31010         Require support in this case, too.
31011         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
31012         This is OK, because the !USE_LSB_TAG case now applies only when
31013         Lisp_Object is wider than void *, so there's no longer any need
31014         to shift the offset.  Not shifting the offset means that
31015         symbol representations have the same alignment as pointers,
31016         which the GC assumes.
31018 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
31020         * doc/lispintro/emacs-lisp-intro.texi (Data types):
31021         Improve documentation of 'substring'.
31023 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
31025         * lisp/character-fold.el (character-fold-table): Fix table generation.
31027 2015-06-24  Glenn Morris  <rgm@gnu.org>
31029         * nextstep/Makefile.in (all): Make it the first target.
31030         (../src/emacs${EXEEXT}): Add rule for making it.
31032 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
31034         * etc/NEWS: Fix mention to old function name.
31036         * lisp/character-fold.el: New file (Bug#20887)
31037         (character-fold-to-regexp): New function.
31038         * lisp/replace.el (replace-search): Check value of
31039         `character-fold-search'.
31040         * lisp/isearch.el: Move character-folding code to
31041         character-fold.el
31042         (isearch-toggle-character-fold): New command.
31043         (isearch-mode-map): Bind it to "\M-sf".
31044         (isearch-mode): Check value of `character-fold-search'.
31046 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
31048         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
31049         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
31050         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
31052         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
31053         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
31055 2015-06-24  Glenn Morris  <rgm@gnu.org>
31057         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
31059 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
31061         lisp/gnus/nnmaildir.el: Silence lexical warnings
31062         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
31063         functional style.
31064         (nnmaildir--update-nov): Remove unused var `numdir'.
31065         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
31066         (nnmaildir-request-group, nnmaildir-request-create-group)
31067         (nnmaildir-request-post, nnmaildir-request-move-article)
31068         (nnmaildir-request-accept-article, nnmaildir-active-number):
31069         Mark unused args.
31070         (nnmaildir-get-new-mail, nnmaildir-group-alist)
31071         (nnmaildir-active-file): Declare.
31072         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
31073         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
31074         `mark', `end', `new-mark', and `mark-sym'.
31075         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
31076         `nlist2'.
31077         (nnmaildir-request-expire-articles):
31078         Remove unused vars `article', `stop' and `nlist2'.
31079         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
31080         `end'.  Use nnmaildir--article when dyn-binding is needed.
31081         Give the value directly in the `let' for `del-mark', `del-action',
31082         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
31083         (nnmaildir-close-server): Declare those local vars that need to be
31084         dyn-bound.
31086 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
31088         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
31090         Port selection info fix to clang
31091         * src/keyboard.h (kbd_buffer_store_event_hold):
31092         Don't assume C11 semantics for alignof (Bug#20756).
31094         Fix bug that munged selection info
31095         On some optimizing C compilers, copying a structure did not
31096         copy the padding bytes between elements, and the type punning
31097         between struct input_data and struct selection_input_data did
31098         not work.  Change the C code to use a proper union type instead.
31099         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
31100         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
31101         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
31102         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
31103         (mark_kboards):
31104         Use union buffered_input_event, not struct input_event.
31105         (clear_event, deliver_input_available_signal, process_special_events):
31106         Remove unnecessary forward decls.
31107         (kbd_buffer_store_buffered_event): New function, mostly just the
31108         old kbd_buffer_store_event_hold, except its argument is of type
31109         union buffered_input_event, not struct input_event.
31110         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
31111         not needed otherwise.  Argument is now of type
31112         struct selection_input_event *, not struct input_event *.
31113         All callers changed.
31114         (clear_event): Arg is now of type union buffered_input_event *,
31115         not struct input_event *.  All callers changed.
31116         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
31117         (union buffered_input_event): New type.
31118         (kbd_buffer_store_event_hold): Now an inline function,
31119         defined here.
31120         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
31121         (struct input_event): Use it.
31122         * src/xselect.c (struct selection_event_queue):
31123         Make elements be of type struct selection_input_event,
31124         not struct input_event.
31125         (selection_input_event_equal): New static function.
31126         (x_queue_event): Use it.
31127         (x_queue_event, x_decline_selection_request)
31128         (x_selection_current_request, x_reply_selection_request)
31129         (x_handle_selection_request, x_handle_selection_clear)
31130         (x_handle_selection_event): Use struct selection_input_event,
31131         not struct input_event.  All callers changed.
31132         (x_convert_selection): Omit unused first arg.  All callers changed.
31133         (Fx_disown_selection_internal): Omit unnecessary union.
31134         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
31135         rather than rolling our own equivalent.  Prefer sie.kind when
31136         setting up that kind of structure.
31137         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
31138         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
31139         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
31140         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
31141         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
31142         (SELECTION_EVENT_TIME, x_handle_selection_event):
31143         Arg is now of type struct selection_input_event *)
31144         not struct input_event *.  All callers changed.
31146 2015-06-23  Glenn Morris  <rgm@gnu.org>
31148         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
31150 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
31152         * lisp/isearch.el: Fold many unicode characters to ASCII.
31153         (isearch-character-fold-search, isearch--character-fold-extras)
31154         (isearch--character-fold-table): New variable.
31155         (isearch--character-folded-regexp): New function.
31156         (isearch-search-fun-default): Use them.
31157         * lisp/replace.el (replace-character-fold): New variable.
31158         (replace-search): Use it.
31159         * etc/NEWS: Document it.
31161 2015-06-23  Glenn Morris  <rgm@gnu.org>
31163         Check for an input event before showing a dialog box.  (Bug#20813)
31164         * lisp/subr.el (y-or-n-p):
31165         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
31166         as last-nonmenu-event.
31168 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
31170         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
31171         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
31172         (switch-to-prev-buffer, switch-to-next-buffer): Respect
31173         switch-to-visible-buffer independent of the windows history.
31175 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
31177         * src/keyboard.c (last_timer_event): Remove unused var.
31179 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
31181         * test/automated/package-test.el (package-test-update-listing):
31182         Fix test.
31184 2015-06-23  Glenn Morris  <rgm@gnu.org>
31186         Revert 2014-06-25 nextstep/Makefile change.
31187         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
31188         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
31189         not as an order-only prerequisite.
31191         * configure.ac (--with-ns): Enable by default on OS X.
31193 2015-06-23  Leo Liu  <sdl.web@gmail.com>
31195         Fix shell-for/backward-command to exclude spaces
31196         * lisp/shell.el (shell-forward-command, shell-backward-command):
31197           Handle the 'move case from re-search-forward/backward.
31198           fixes debbugs:20873
31200 2015-06-22  Juri Linkov  <juri@linkov.net>
31202         * lisp/replace.el (query-replace-read-from): Add separator to
31203         the local binding of text-property-default-nonsticky.  (Bug#20690)
31205         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
31206         (Bug#20785)
31208 2015-06-22  Ken Brown  <kbrown@cornell.edu>
31210         Enable CPU profiling on Cygwin
31211         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
31212         change that undefined this.
31213         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
31214         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
31215           Cygwin.
31217         Improve diagnostics of profiler-cpu-start
31218         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
31219         return -1 if the sampling interval is invalid.
31220         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
31221         fails.  (Bug#20843)
31223 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
31225         * lisp/emacs-lisp/package.el: Exclude packages by name.
31226         (package-hidden-regexps): New variable.
31227         (package-menu--refresh): Use it.
31228         (package-menu-hide-package): New command.
31230         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
31232 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
31234         Fix debug-timer-check on systems without HAVE_TIMERFD
31235         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
31236         the expired timers, since wait_reading_process_output doesn't.
31237         (debug_timer_callback): Enlarge the tolerance to 20 msec.
31239         Fix RCS crashes in vc-test
31240         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
31241         ports of 'ci' on MS-Windows by always passing the -t- switch.
31243 2015-06-22  Glenn Morris  <rgm@gnu.org>
31245         * doc/emacs/package.texi (Packages):
31246         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
31248         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
31250 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
31252         Port tests to help-quote-translation
31253         * test/automated/ert-x-tests.el (ert-test-describe-test):
31254         * test/automated/package-test.el (package-test-describe-package)
31255         (package-test-signed): Allow straight quotes, too.
31257 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
31259         Make find-function-on-key use the current window
31260         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
31261         Extract from `find-function-on-key', add a second argument.
31262         (find-function-on-key): Use it (bug#19679).
31263         (find-function-on-key-other-window)
31264         (find-function-on-key-other-frame): New commands.
31266 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
31268         Revert "Define `map-elt' as a generalized variable"
31269         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
31271 2015-06-21  Ken Brown  <kbrown@cornell.edu>
31273         Drop support for CPU profiling on Cygwin
31274         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
31275         (Bug#20843)
31277 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
31279         Fix some “nested” quoting confusion in doc strings
31280         * lisp/emacs-lisp/advice.el (ad-map-arglists):
31281         * lisp/kermit.el (kermit-clean-on):
31282         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
31283         * src/keyboard.c (Frecursive_edit):
31284         Use curved quotes when quoting text containing apostrophe,
31285         so that the apostrophe isn't curved in the output.
31287 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
31289         Define `map-elt' as a generalized variable
31290         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
31291         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
31292         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
31293         `setf' with `map-elt'.
31294         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
31296 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
31298         Improve error handling in tramp-adb.el
31299         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
31300         Improve error handling.
31302 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
31304         Reuse `alist-get' in map.el
31305         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
31306         elements.
31308 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
31310         Fix bytecomp-tests--warnings when $TMPDIR has a long name
31311         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
31312         Allow the warning to begin on the 3rd, not only 2nd line, which
31313         happens if temporary-file-directory has a very long name.
31315         Expect 2 icalendar tests to fail on MS-Windows
31316         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
31317         (icalendar-real-world): Make them expected failures on MS-Windows.
31319 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
31321         Improve port of settings UI to older displays
31322         * lisp/cus-start.el (standard): Don't assume curved quotes are
31323         easily distinguishable when users are tinkering with a setting
31324         that affects how curved quotes are generated.
31326         Fix quoting in electric-quote-mode doc string
31327         * lisp/electric.el (electric-quote-mode): Fix quoting.
31328         This is a fallout from the recent change introducing
31329         ‘help-quote-translation’.
31331         Spelling fix
31333         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
31335         * src/doc.c (syms_of_doc): Remove unused symbols.
31337 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
31339         * lisp/window.el (window-state-put): Undedicate target window
31340         before putting STATE into it.  (Bug#20848)
31342 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
31344         Merge from origin/emacs-24
31345         a5e6f33 Fixes: debbugs:20832
31346         b9f02cf Fixes: debbugs:20832
31348 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
31350         Fix file-in-directory-p when the directory is UNC
31351         * lisp/files.el (file-in-directory-p): Support files and
31352         directories that begin with "//".  (Bug#20844)
31354 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
31356         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
31357         in the minibuffer.  (Bug#20832)
31359 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
31361         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
31362         for adding new todo file is empty but modified.  (Bug#20832)
31364 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
31366         (filepos-to-bufferpos): Further tweaks to the utf-16 code
31367         * lisp/international/mule-util.el (filepos-to-bufferpos):
31368         Fix typo.  Move non-exact check to the utf-16 branch (the only one
31369         affected).  Don't use byte-to-position for the utf-16 case.
31371 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
31373         Minor fixes in filepos-to-bufferpos
31374         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
31375         test for utf-8-emacs.  Exempt single-byte encodings from the
31376         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
31377         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
31378         UTF-16 encoded files for CR-LF EOLs.
31380 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
31382         Improve the optional translation of quotes
31383         Fix several problems with the recently-added custom variable
31384         help-quote-translation where the code would quote inconsistently
31385         in help buffers.  Add support for quoting 'like this', which
31386         is common in other GNU programs in ASCII environments.  Change
31387         help-quote-translation to use more mnemonic values: values are now the
31388         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
31389         traditional Emacs help-buffer quoting style `like this'.  Change the
31390         default behavior of substitute-command-keys to match what's done in
31391         set-locale-environment, i.e., quote ‘like this’ if displayable,
31392         'like this' otherwise.
31393         * doc/lispref/help.texi (Keys in Documentation): Document
31394         new behavior of substitute-command-keys, and document
31395         help-quote-translation.
31396         * doc/lispref/tips.texi (Documentation Tips):
31397         Mention the effect of help-quote-translation.
31398         * etc/NEWS: Mention new behavior of substitute-command-keys,
31399         and merge help-quote-translation news into it.
31400         When talking about doc strings, mention new ways to type quotes.
31401         * lisp/cedet/mode-local.el (overload-docstring-extension):
31402         Revert my recent change to this function, which shouldn't be
31403         needed as the result is a doc string.
31404         * lisp/cedet/mode-local.el (mode-local-print-binding)
31405         (mode-local-describe-bindings-2):
31406         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
31407         * lisp/cus-theme.el (describe-theme-1):
31408         * lisp/descr-text.el (describe-text-properties-1, describe-char):
31409         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
31410         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
31411         (eieio-help-constructor):
31412         * lisp/emacs-lisp/package.el (describe-package-1):
31413         * lisp/faces.el (describe-face):
31414         * lisp/help-fns.el (help-fns--key-bindings)
31415         (help-fns--compiler-macro, help-fns--parent-mode)
31416         (help-fns--obsolete, help-fns--interactive-only)
31417         (describe-function-1, describe-variable):
31418         * lisp/help.el (describe-mode):
31419         Use substitute-command-keys to ensure a more-consistent quoting
31420         style in help buffers.
31421         * lisp/cus-start.el (standard):
31422         Document new help-quote-translation behavior.
31423         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
31424         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
31425         (help-xref-url-regexp):
31426         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
31427         * lisp/wid-edit.el (widget-documentation-link-regexp):
31428         Also match 'foo', in case we're in a help buffer generated when
31429         help-quote-translation is ?'.
31430         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
31431         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
31432         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
31433         (Fsubstitute_command_keys): Document and implement new behavior.
31434         (Vhelp_quote_translation): Document new behavior.
31436 2015-06-18  Glenn Morris  <rgm@gnu.org>
31438         * lisp/cus-start.el (help-quote-translation): Add :version.
31440         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
31442 2015-06-18  Alan Mackenzie  <acm@muc.de>
31444         Make translation of quotes to curly in doc strings optional.
31445         * src/doc.c (traditional, prefer-unicode): New symbols.
31446         (help-quote-translation): New variable.
31447         (Fsubstitute_command_keys): Make translation of quotes dependent on
31448         `help-quote-translation'; also translate curly quotes back to ASCII
31449         ones.
31450         * lisp/cus-start.el (top-level): Add a customization entry for
31451         `help-quote-translation'.
31453 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
31455         * lisp/emacs-lisp/package.el: Don't always propagate async errors
31456         (package--with-work-buffer-async): Only propagate the error if the
31457         callback returns non-nil.
31458         (package--download-one-archive): Return nil on the signature
31459         checking callback if we accept unsigned.
31460         (package--download-and-read-archives): Return non-nil on the
31461         archive download callback.
31463 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
31465         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
31466         * src/nsfns.m (Fx_create_frame):
31467         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
31468         image_cache_refcount before first x_default_parameter call.
31470 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
31472         Improve and extend filepos-to-bufferpos
31473         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
31474         Don't barf if F returns nil for some argument.
31475         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
31476         that every encoding of type 'charset' is single-byte.
31478 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
31480         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
31481         Properly delete packages.  (Bug#20836)
31483 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
31485         Update data files from just-released Unicode 8.0
31486         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
31487         status.
31488         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
31489         * admin/unidata/BidiMirroring.txt:
31490         * admin/unidata/BidiBrackets.txt:
31491         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
31493 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
31495         Document curved quotes a bit better
31496         * doc/emacs/basic.texi (Inserting Text):
31497         Mention C-x 8.  Change example to use curved quote rather
31498         than infinity, as this lets us give more ways to do it.
31499         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
31500         and quotation marks.
31501         * doc/emacs/text.texi (Quotation Marks):
31502         * doc/lispref/tips.texi (Documentation Tips):
31503         Add "curly quotes" and "curved quotes" to the index.
31504         * doc/emacs/text.texi (Quotation Marks):
31505         Give the C-x 8 shorthands for curved quotes.
31506         Cross-reference to "Quotation Marks".
31508 2015-06-17  Daiki Ueno  <ueno@gnu.org>
31510         Add pinentry.el for better GnuPG integration
31511         * lisp/pinentry.el: New file.
31512         * etc/NEWS: Add entry about pinentry.el.
31513         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
31514         (Bug#20550)
31516 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
31518         * lisp/emacs-lisp/package.el: Slightly better error reporting.
31520 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
31522         (define-minor-mode): Use setq-default for :global minor modes
31523         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
31524         Use setq-default for :global minor modes (bug#20712).
31526 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
31528         Avoid infloop in redisplay with tall images
31529         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
31530         down near ZV.  (Bug#20808)
31531         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
31532         instead of CHARPOS.
31534 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
31536         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
31537         Fix error reporting.
31539         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
31541         * lisp/emacs-lisp/package.el: Revert buffer after any operation
31542         Call `package-menu--post-refresh' after any operation that changes
31543         the package database (`package-install' and `package-delete').  To
31544         avoid performance issues in large transactions, these functions
31545         add `post-refresh' to `post-command-hook' instead of calling it
31546         immediately.
31547         (package-menu--mark-or-notify-upgrades): New function.
31548         (list-packages): Add it to `package--post-download-archives-hook'.
31549         (package-menu--post-refresh): Lose the upgrade-checking code, add
31550         code to remove itself from `post-command-hook'.
31551         (package-install, package-delete): Add it to `post-command-hook'.
31552         (package-menu-execute): Don't call `package-menu--post-refresh'.
31554 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
31556         Add missing function xref-location-group for elisp-mode.
31557         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
31559 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
31561         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
31562         The behavior now matches the description in the manual.  (Bug#20783)
31564 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
31566         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
31568 2015-06-17  Glenn Morris  <rgm@gnu.org>
31570         Generate char-script-table from Unicode source.  (Bug#20789)
31571         * admin/unidata/Makefile.in (AWK): New, set by configure.
31572         (all): Add charscript.el.
31573         (blocks): New variable.
31574         (charscript.el, ${unidir}/charscript.el): New targets.
31575         (extraclean): Also remove generated charscript.el.
31576         * admin/unidata/blocks.awk: New script.
31577         * admin/unidata/Blocks.txt: New data file, from unicode.org.
31578         * lisp/international/characters.el: Load charscript.
31579         * src/Makefile.in (charscript): New variable.
31580         (${charscript}): New target.
31581         (${lispintdir}/characters.elc): Depend on charscript.elc.
31582         (temacs$(EXEEXT)): Depend on charscript.
31584         * lisp/international/characters.el (char-script-table): Tweak
31585         some ranges to better match the source.  (Bug#20789#17)
31587         Remove "no-byte-compile: t" from a few files.
31588         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
31589         * lisp/obsolete/patcomp.el: No reason not to compile these.
31591 2015-06-16  Glenn Morris  <rgm@gnu.org>
31593         Fix some typos in copied Unicode data.  (Bug#20789)
31594         * lisp/international/characters.el (char-script-table):
31595         * lisp/international/fontset.el (script-representative-chars)
31596         (setup-default-fontset): Fix typos.
31598         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
31599         Don't print filename twice (it's in the prefix now).
31601         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
31602         No longer needed.
31604         Address a compilation warning.
31605         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
31606         Replace 't' with '_' in pcase.
31608         Address some check-declare warnings.
31609         * lisp/simple.el (tabulated-list-print):
31610         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
31611         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
31612         (ns-get-selection): Update declarations.
31614         Address some compilation warnings.
31615         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
31616         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
31617         Replace 't' with '_' in pcase.
31619         Address some compilation warnings.
31620         * lisp/face-remap.el (text-scale-adjust):
31621         * lisp/menu-bar.el (popup-menu-normalize-position):
31622         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
31623         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
31624         * lisp/emacs-lisp/generator.el (cps--transform-1):
31625         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
31626         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
31627         * lisp/progmodes/octave.el (octave-goto-function-definition)
31628         (octave-find-definition-default-filename):
31629         Replace 't' with '_' in pcase.
31631         * lisp/emacs-lisp/pcase.el (pcase--u1):
31632         Paper-over today's bootstrap failure.
31634 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
31636         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
31638         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
31640         Better confirmation message in `find-alternate-file' (Bug#20830)
31641         * lisp/files.el (find-alternate-file'): Improve the confirmation
31642         message to show the buffer name.
31644         Better docstring for null.  (Bug#20815)
31645         * src/data.c (null): Improves the docstring, saying what null returns
31646         when OBJECT is non-nil.
31648 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
31650         * lisp/net/newst-treeview.el: Use lexical-binding.
31652         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
31653         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
31654         New auxiliary function, extracted from filepos-to-bufferpos.
31655         Make sure it terminates.
31656         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
31657         Add support for the `exact' quality.
31659 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
31661         Identify feeds in newsticker treeview with :nt-feed property
31662         * lisp/net/newst-treeview.el:
31663         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
31665 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
31667         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
31668         (pcase--self-quoting-p): Floats aren't self-quoting.
31669         (pcase): Tweak docstring.
31670         (pcase--u1): Deprecate the t pattern.  Improve error detection for
31671         the nil pattern.
31672         (\`): Tweak docstring.  Signal an error for unrecognized cases.
31673         (bug#20784)
31675 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
31677         Fix infloop in filepos-to-bufferpos
31678         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
31679         offset calculation, and make it conditional on the eol-type of the
31680         file's encoding.  (Bug#20825)
31682 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
31684         Fix handling of image cache refcounts.  (Bug#20802)
31685         This backports Eli Zaretskii's solution of this problem for W32
31686         to X and NS.
31687         * src/nsfns.m (image_cache_refcount): Define unconditionally.
31688         (unwind_create_frame): If the image cache's reference count
31689         hasn't been updated yet, do that now.
31690         (Fx_create_frame): Set image_cache_refcount unconditionally.
31691         * src/xfns.c (image_cache_refcount): Define unconditionally.
31692         (unwind_create_frame): If the image cache's reference count
31693         hasn't been updated yet, do that now.
31694         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
31695         unconditionally.
31696         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
31697         X and NS.
31699 2015-06-16  Nils Ackermann  <nils@ackermath.info>
31701         Improve reftex-label-regexps default value
31702         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
31703         keyvals label regexp more strict to better cope with unbalanced
31704         brackets common in math documents.
31706 2015-06-16  Glenn Morris  <rgm@gnu.org>
31708         * doc/emacs/calendar.texi (Format of Diary File):
31709         Move "nonmarking" from here...
31710         (Displaying the Diary): ... to here.
31712         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
31713         Swap the order of these nodes.
31714         * doc/emacs/emacs.texi: Update detailed menu for the above change.
31716         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
31717         Update date of examples.
31718         (Diary, Format of Diary File): Move example from former to latter.
31719         Reduce duplication.
31721         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
31722         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
31723         Don't set no-byte-compile in the outputs.
31724         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
31726 2015-06-15  Glenn Morris  <rgm@gnu.org>
31728         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
31729         * doc/emacs/calendar.texi (Diary, Format of Diary File):
31730         Update for above diary-file change.
31732         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
31733         (apply-macro-to-region-lines): Use user-error.
31735         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
31736         (pages-directory-for-addresses): Doc fixes.
31738 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
31740         * lisp/info.el: Cleanup bytepos/charpos issues
31741         * lisp/international/mule-util.el: Use lexical-binding.
31742         (filepos-to-bufferpos): New function.
31743         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
31744         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
31745         (Info-read-subfile, Info-search): Use 0-based file positions.
31747         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
31748         (perl--syntax-exp-intro-keywords): New var.
31749         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
31750         (bug#20800).
31752 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
31754         Fix quoting when making derived mode docstring
31755         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
31756         Nest regexp-quote inside format, not the reverse.
31757         Problem reported by Artur Malabarba in:
31758         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
31760 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
31762         Fix current-iso639-language on MS-Windows
31763         * lisp/international/mule-cmds.el (set-locale-environment):
31764         Downcase the locale name before interning it.  This is so the
31765         'current-iso639-language' on MS-Windows matches the ':lang'
31766         property of font-spec objects.
31768         Limit Symbola usage some more
31769         * lisp/international/fontset.el (setup-default-fontset): Limit
31770         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
31771         (Bug#20727)
31773 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
31775         * lisp/emacs-lisp/map.el (map-let): Better docstring.
31777 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
31779         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
31780         (help-fns-test-funny-names): Spelling fixes.
31782 2015-06-14  Glenn Morris  <rgm@gnu.org>
31784         * lisp/version.el (emacs-repository-version-git): Demote errors.
31785         Check result is a hash.
31787 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
31789         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
31790         Catch errors that happen before going async.  (Bug#20809)
31792 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
31794         Another improvement of documentation of set-fontset-font
31795         * doc/lispref/display.texi (Fontsets): Say explicitly that
31796         CHARACTER can be a single codepoint.
31797         * src/fontset.c (Fset_fontset_font): Doc fix.
31799         Another improvement for symbol and punctuation characters
31800         * lisp/international/fontset.el (setup-default-fontset): Exclude
31801         from Symbola character ranges for symbols and punctuation covered
31802         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
31803         installed and where its coverage of symbols and punctuation is
31804         known to be good.  (Bug#20727)
31806 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
31808         Some generic support for multi-mode indentation.
31809         * lisp/progmodes/prog-mode.el (prog-indentation-context):
31810         New variable.
31811         (prog-first-column, prog-widen): New convenience functions.
31813 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
31815         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
31816         Don't assume that `tabulated-list-printer' will leave point at the
31817         end of the buffer.  (Bug#20810)
31819 2015-06-13  Glenn Morris  <rgm@gnu.org>
31821         Tweaks for getting repository version; a bit more like it was for bzr
31822         * lisp/version.el (emacs-repository-version-git)
31823         (emacs-repository--version-git-1): New functions,
31824         split from emacs-repository-get-version.
31825         (emacs-repository-get-version): Make the second argument meaningful.
31827         * lisp/startup.el (command-line-1): Inform if skipping relative
31828         file names due to deleted PWD.
31830         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
31831         when starup directory is missing.  (Bug#18851)
31832         (errno.h): Include it.
31834 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
31836         Better fix for documenting `X as "`X"
31837         Fix suggested by Stefan Monnier.
31838         * lisp/help-fns.el (help-fns--signature):
31839         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
31840         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
31841         Don't treat `X specially, as help-fns--signature now handles this.
31843 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
31845         Improve the default fontset when Symbola is not installed
31846         * lisp/international/fontset.el (setup-default-fontset): Only
31847         prepend Symbola and FreeMono font specs for symbols and
31848         punctuation; do not replace the default spec for them.  This
31849         should have better results when Symbola/FreeMono are not
31850         installed.  (Bug#20727)
31852         Improve documentation of ':lang' in font specs
31853         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
31854         use of the ':lang' property of the font spec.
31855         * doc/emacs/frames.texi (Fonts): Document the language names that
31856         can be in the STYLE part of XLFD.
31857         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
31858         property.
31860         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
31862         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
31864         Revert last change in fontset.el
31865         * lisp/international/fontset.el (setup-default-fontset): Revert
31866         the change "Configure Symbola font only if installed", since font
31867         search is evidently not yet set up when this function is called.
31868         (Bug#20727)
31870 2015-06-12  Glenn Morris  <rgm@gnu.org>
31872         Ensure early startup warnings are visible at the end.  (Bug#20792)
31873         * lisp/emacs-lisp/warnings.el (display-warning):
31874         If startup isn't complete, delay the warning.
31875         * lisp/startup.el (normal-top-level, command-line):
31876         Let display-warning automatically handle the needed delays.
31877         Run delayed-warnings-hook.
31879         * lisp/version.el (emacs-repository-get-version):
31880         Avoid calling external executable if possible.  (Bug#20799)
31882 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
31884         Document `X as "`X", not as "(` X)"
31885         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
31886         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
31888         * src/print.c (print_object): Minor simplification.
31890 2015-06-12  Glenn Morris  <rgm@gnu.org>
31892         * src/buffer.c (init_buffer): Add final newline to message.
31894 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
31896         Configure Symbola font only if installed
31897         * lisp/international/fontset.el (setup-default-fontset):
31898         Don't specify the Symbola font if it's not installed.
31899         Likewise for FreeMono.  (Bug#20727)
31901 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
31903         Configure Symbola font only for symbols and punctuation
31904         * lisp/international/fontset.el (setup-default-fontset): Leave
31905         only symbols and punctuation in the fontset setup for Symbola
31906         font; remove "Greek and Coptic" and "Cyrillic Supplement".
31907         (Bug#20798)
31909 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
31911         Fix crash in fontset-info
31912         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
31913         non-nil.
31915 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
31917         Port to Solaris 10 sparc + Sun C 5.13
31918         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
31919         Adjust to process.c change.
31920         * src/process.c (create_process): Declare volatile variables at
31921         top level of this function, so that they're less likely to be
31922         reused later in the function in the code executed by the vforked
31923         child.  Do not declare locals used only in the vforked child, as
31924         they might share memory with locals still live in the parent.
31925         Instead, use the same variables in the child as in the parent.
31926         This works around a subtle bug that causes a garbage collector
31927         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
31929 2015-06-12  Glenn Morris  <rgm@gnu.org>
31931         * lisp/startup.el (normal-top-level): Don't let *Messages* get
31932         a nil default-directory.
31934 2015-06-11  Glenn Morris  <rgm@gnu.org>
31936         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
31938         Some progress towards starting with PWD deleted.  (Bug#18851)
31939         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
31940         * lisp/startup.el (normal-top-level, command-line-1):
31941         * lisp/minibuffer.el (read-file-name-default):
31942         Handle default-directory being nil.
31944 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
31946         Fix "not a tty" bug on Solaris 10
31947         * configure.ac (PTY_OPEN): Define to plain 'open'
31948         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
31949         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
31950         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
31951         hosts that call grantpt which does its work via a setuid subcommand
31952         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
31953         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
31954         seems relevant in that case too.
31956 2015-06-11  Juri Linkov  <juri@linkov.net>
31958         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
31959         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
31960         (Bug#20785)
31962 2015-06-11  Glenn Morris  <rgm@gnu.org>
31964         * lisp/international/characters.el (char-script-table): Fix typo.
31966 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
31968         Fix quoting of help for functions with odd names
31969         While investigating Bug#20759, I discovered other quoting problems:
31970         C-h f mishandled characters like backslash and quote in function names.
31971         This fix changes the behavior so that 'C-h f pcase RET' now
31972         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
31973         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
31974         in src/lread.c's read1 function says that the backslash will be
31975         needed starting in Emacs 25, which implies that 'format' is
31976         correct and the old pcase documention was wrong to omit the backslash.
31977         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
31978         * lisp/help-fns.el (help-fns--signature):
31979         * lisp/help.el (help-add-fundoc-usage):
31980         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
31981         Use help--make-usage-docstring rather than formatting
31982         help-make-usage.
31983         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
31984         Return raw docstring.
31985         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
31986         raw docstring.  Take more care to distinguish raw from cooked dstrings.
31987         (describe-function-1): Let help-fns--signature substitute
31988         command keys.
31989         * lisp/help.el (help--docstring-quote): New function.
31990         (help-split-fundoc): Use it, to quote funny characters more
31991         systematically.
31992         (help--make-usage): Rename from help-make-usage, since this
31993         should be private.  Leave an obsolete alias for the old name.
31994         (help--make-usage-docstring): New function.
31995         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
31997 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
31999         * lisp/thingatpt.el (in-string-p): Revert last change,
32000         since in-string-p is not used in thingatpt.el but only from outside.
32001         Also, use lexical binding.
32003 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
32005         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
32006         * test/automated/let-alist.el (let-alist-cons): Test it.
32008 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
32010         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
32012 2015-06-10  Glenn Morris  <rgm@gnu.org>
32014         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
32016         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
32017         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
32018         * admin/gitmerge.el (gitmerge-commit-message):
32019         Exclude "skipped" messages from ChangeLog once again.
32021         Slight namespace cleanup for thingatpt.el.
32022         * lisp/thingatpt.el (thing-at-point--in-string-p)
32023         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
32024         (thing-at-point--read-from-whole-string): Rename from
32025         old versions without "thing-at-point--" prefix.
32026         Keep old versions as obsolete aliases.  Update all uses.
32028         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
32029         Move requiring of finder from here...
32030         (checkdoc-package-keywords): ... to here.
32032         Use 'user-error' in a few calendar files.
32033         * lisp/calendar/appt.el (appt-add):
32034         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
32035         (calendar-generate):
32036         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
32037         Replace 'error' with 'user-error'.
32039         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
32041         * lisp/files-x.el (add-file-local-variable):
32042         Special-case 'lexical-binding'.  (Bug#20641)
32044         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
32045         No longer autoload.
32046         * doc/misc/autotype.texi (Executables):
32047         Undocument executable-self-display.
32049         * lisp/progmodes/executable.el (executable-self-display):
32050         Use non-obsolete tail syntax.  (Bug#20779)
32051         (executable-self-display): Doc update.
32053 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
32055         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
32056         (finder-known-keywords): Silence byte-compiler.
32058 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
32060         * lisp/simple.el (eval-expression): Macroexpand before evaluating
32061         (bug#20730).
32063         * lisp/progmodes/sh-script.el: Better handle nested quotes.
32064         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
32065         (sh-font-lock-quoted-subshell): Make sure double quotes within single
32066         quotes don't mistakenly end prematurely the surrounding string.
32068         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
32070 2015-06-09  Glenn Morris  <rgm@gnu.org>
32072         * test/automated/Makefile.in (ELFILES): Sort.
32074         * Makefile.in (SUBDIR_MAKEFILES):
32075         * lwlib/Makefile.in (WARN_CFLAGS):
32076         Use built-in Make functions rather than echo+sed.
32078 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
32080         Update char-script-table
32081         * lisp/international/characters.el (char-script-table): Update
32082         from Unicode 8.0 Draft.
32084         Improve font selection for punctuation and other symbols
32085         * src/fontset.c (face_for_char): If the character's script is
32086         'symbol', and the font used for ASCII face has a glyph for it, use
32087         the font for the ASCII face instead of searching the fontsets.
32088         This comes instead of NS-specific code that used the current
32089         face's font instead, which is now disabled due to undesirable
32090         consequences.  (Bug#20727)
32092 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
32094         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
32095         Skip past `#' to find BEG (bug#20771).
32096         * test/automated/elisp-mode-tests.el
32097         (elisp-completes-functions-after-hash-quote): New test.
32099 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
32101         Fix compilation warning/error in --without-x builds
32102         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
32103         code on HAVE_WINDOW_SYSTEM.
32105         Improve the default fontset wrt symbols
32106         * lisp/international/fontset.el (setup-default-fontset): Better
32107         setup of fontset-default for symbols: use Symbola and FreeMono.
32108         (Bug#20727)
32110 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
32112         Add new command checkdoc-package-keywords
32113         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
32114         New defcustom.
32115         (checkdoc-list-of-strings-p): Add doc.
32116         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
32117         non-nil, call `checkdoc-package-keywords'.
32118         (checkdoc-get-keywords): New defun.
32119         (checkdoc-package-keywords): New command.  Warns if the current file
32120         has package.el-style keywords that aren't in `finder-known-keywords'.
32121         * etc/NEWS: Add entry.
32123 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
32125         Avoid crashes when key-binding is called from a timer
32126         * src/keymap.c (Fkey_binding): Don't segfault if called with an
32127         empty vector as KEY.  (Bug#20705)
32129         Fix a thinko in arc-mode.el
32130         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
32131         non-Zip64 case.  (Bug#20769)
32133 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
32135         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
32137 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
32139         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
32140         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
32141         "*warn*", print the warning to the standard output.  (bug#20754)
32143 2015-06-07  Glenn Morris  <rgm@gnu.org>
32145         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
32147         * src/font.c (syms_of_font) <font-log>: Doc fix.
32149         Remove the obsolete leading "*" from some C doc strings.
32150         * src/coding.c (syms_of_coding):
32151         * src/font.c (syms_of_font): Remove leading "*" from docs.
32152         * lisp/cus-start.el (enable-character-translation): Add it.
32154 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
32156         Move gen_origin from program to data
32157         That way, 'make change-history' needs to change only ChangeLog.2,
32158         instead of having to change two files.
32159         * ChangeLog.2: Add commit info for range that this file covers.
32160         * Makefile.in (new_commit_regexp): New macro.
32161         (change-history-nocommit): Simplify, by putting what used to be
32162         the gen_origin value into the data (ChangeLog.2) rather than
32163         into the program (gitlog-to-emacslog).
32164         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
32165         the input file (e.g., ChangeLog.2) rather than by having a
32166         constant in the program.  Substitute it into the output.
32168 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
32170         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
32171         function name (bug#20759).
32173 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
32175         Adapt 'struct timespec' to next release of MinGW runtime
32176         * nt/inc/ms-w32.h (struct timespec): Don't declare if
32177         __struct_timespec_defined is defined.
32179 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
32181         Merge from gnulib
32182         This incorporates:
32183         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
32184         2015-06-05 stdio: Don't redefine gets when using C++
32185         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
32186         2015-06-02 file-has-acl: fix build on Mac OS X 10
32187         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
32188         2015-06-01 pthread_sigmask: discount system version if a simple macro
32189         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
32190         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
32191         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
32192         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
32193         * lib/gnulib.mk: Regenerate.
32195 2015-06-06  Juri Linkov  <juri@linkov.net>
32197         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
32198         before calling grep-compute-defaults because now it affects the
32199         command lines computed in grep-compute-defaults.  (Bug#20728)
32201 2015-06-06  Glenn Morris  <rgm@gnu.org>
32203         Address some compilation warnings.
32204         * lisp/international/mule-cmds.el (w32-get-console-codepage)
32205         (w32-get-console-output-codepage):
32206         * lisp/progmodes/elisp-mode.el (xref-collect-references):
32207         * lisp/version.el (cairo-version-string): Declare.
32208         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
32210 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
32212         Fix display when a font claims large values of ascent and descent
32213         This fixes bug#20628.
32214         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
32215         coordinate of a hollow cursor glyph when the original glyph's
32216         ascent is too small.
32217         (get_font_ascent_descent, normal_char_ascent_descent)
32218         (normal_char_height): New functions.
32219         (handle_single_display_spec, append_space_for_newline)
32220         (calc_pixel_width_or_height, produce_stretch_glyph)
32221         (calc_line_height_property): Use normal_char_ascent_descent and
32222         normal_char_height.
32223         (x_produce_glyphs): When font-global values of ascent and descent
32224         are too large, use per-character glyph metrics instead, if
32225         possible.  But don't allow the glyph row's ascent and descent
32226         values become smaller than the values from the metrics of the
32227         font's "normal" character.
32228         * src/xftfont.c (xftfont_draw):
32229         * src/w32font.c (w32font_draw): Correct the values of ascent and
32230         descent used to draw glyphless characters' hex code in a box.
32231         * src/xterm.c (x_draw_glyph_string_background):
32232         * src/xdisp.c (x_produce_glyphs):
32233         * src/w32term.c (x_draw_glyph_string_background):
32234         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
32235         to detect fonts whose global ascent and descent values are too
32236         large to be used in layout decision, and redraw the background
32237         when that happens.
32238         * src/dispextern.h (FONT_TOO_HIGH): New macro.
32239         (get_font_ascent_descent): Add prototype.
32240         * src/xterm.c (x_new_font):
32241         * src/w32term.c (x_new_font):
32242         * src/nsterm.m (x_new_font):
32243         * src/font.c (font_open_entity):
32244         * src/composite.c (composition_gstring_width):
32245         Use get_font_ascent_descent to obtain reasonable values for ascent
32246         and descent of a font.
32248 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
32250         Add assertion in adjust_point_for_property
32251         * src/keyboard.c (adjust_point_for_property): Add eassert for
32252         current buffer being shown in selected window.
32254 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
32256         Replace uses of in-string-p; make it obsolete
32257         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
32258         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
32260 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
32262         Fix Dired display of an explicit list of files by ls-lisp.el
32263         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
32264         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
32265         correct for when displaying individual files separately, not as
32266         part of listing a directory, in which case these values are not
32267         recomputed by 'ls-lisp-insert-directory', but used verbatim.
32269         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
32271 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
32273         Do not adjust point in a non-selected window
32274         * src/keyboard.c (command_loop_1): Do not adjust point when
32275         current buffer is not shown in selected window (Bug#20590).
32277         * etc/DEBUG: Mention 'maybe_call_debugger'
32279 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
32281         Fix a unit test for map.el
32282         * test/automated/map-tests.el (test-map-let): Fix the test to work
32283         with the new syntax of `map-let'.
32285         * lisp/emacs-lisp/map.el (map-let): Better docstring.
32287         Better syntax for the map pcase pattern
32288         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
32289         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
32291         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
32293         Fix a byte-compiler error in map-put and map-delete
32294         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
32295         called with a symbol.
32297 2015-06-05  Glenn Morris  <rgm@gnu.org>
32299         * admin/gitmerge.el (gitmerge-commit-message):
32300         Revert to including "skipped" messages in ChangeLog once again.
32302 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
32304         Use string> instead of equiv lambda with string<
32305         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
32306         lambda with string<.
32308 2015-06-05  Glenn Morris  <rgm@gnu.org>
32310         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
32311         (map--delete-array): Fix typo.
32313         * test/automated/map-tests.el: Replace "assert" with "should".
32315         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
32316         (SUBDIRS_REL): Derive from SUBDIRS.
32318         Tweak some build messages.
32319         * lisp/Makefile.in ($(lisp)/loaddefs.el):
32320         * lisp/cus-dep.el (custom-make-dependencies):
32321         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
32322         * lisp/international/titdic-cnv.el (batch-titdic-convert):
32323         Don't say how to compile.
32325 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
32327         Omit U+0332 COMBINING LOW LINE in previous change
32328         It turns out that it does not work on Ubuntu 15.04.
32330         Fix transliteration of Bahá'í months
32331         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
32332         Improve quality of Latin transliteration of Bahá'í month names.
32334         Fix curved quotes in a few places
32335         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
32336         The strings in question are not doc strings, so this partially
32337         undoes the recent change that assumed they were doc strings.
32338         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
32339         * lisp/info.el (Info-finder-find-node):
32340         Use curved quotes.
32341         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
32342         Also allow curved quotes in doc strings.
32344 2015-06-04  Glenn Morris  <rgm@gnu.org>
32346         * lisp/Makefile.in (AM_V_at): Add missing definition.
32348         * lisp/Makefile.in: Quieten output a bit.
32349         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
32350         Don't echo directories, since the commands we invoke print them.
32352         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
32353         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
32354         (SUBDIRS_SUBDIRS): New variables.
32355         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
32356         Remove.
32357         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
32358         (update-subdirs, compile-main, compile-clean):
32359         Replace "setwins" usage with new "SUBDIRS" variables.
32361         * lisp/vc/compare-w.el (compare-windows-get-window-function):
32362         Fix :version tag.
32364 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32366         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
32368         Undo removal of x_clear_area call on expose for GTK3 or cairo
32369         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
32370         Clear exposed area.  (Bug#20677)
32372 2015-06-04  Glenn Morris  <rgm@gnu.org>
32374         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
32376         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
32378         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
32379         Rename from quail-lao-update-translation, since lao.el defines that.
32381 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
32383         Handle new-style advice in find-funct
32384         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
32385         Handle new-style advice.  Return the symbol's function definition.
32386         (Bug#20718)
32387         (find-function-library): Update accordingly.
32389 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
32391         Merge branch 'map'
32393         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
32395         Add new function string-greaterp
32396         * lisp/subr.el (string-greaterp): New function.  Also aliased to
32397         `string>'.
32398         * test/automated/subr-tests.el (string-comparison-test): Add unit
32399         tests for `string>'and `string<'.
32400         * src/fns.c (string-lessp): Better docstring.
32402 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
32404         Fix timezone-related functions on MS-Windows
32405         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
32406         'xputenv', even if no reallocation of tzvalbuf was necessary.
32407         This fixes a bug in timezone-related functions on MS-Windows.
32408         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
32410 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
32412         Don't pass raw directory name to 'error'
32413         * lisp/files.el (basic-save-buffer-2): Avoid format error if
32414         a directory name contains a string like "%s".
32416 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
32418         Override 'grep --color=always'
32419         * lisp/progmodes/xref.el (xref-collect-matches):
32420         Override --color=always in grep-find-template.
32422 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
32424         Fix error introduced recently in file-notify-tests.el
32425         * test/automated/file-notify-tests.el
32426         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
32427         (file-notify--deftest-remote): Revert previous patch, not
32428         necessary anymore.
32430 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
32432         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
32433         Starting from a display string after a newline, point went to the
32434         previous line.  Also, fix an inadvertent use of a buffer position
32435         with FETCH_BYTE.  (Bug#20701)
32437 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
32439         Instrument file-notify-test.el in order to catch hydra error
32440         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
32441         Wrap body by `ignore-case', in order to trap non-local errors.
32443 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32445         Undo previous changes in non-toolkit scroll bar drawing
32446         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
32447         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
32449 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
32451         * .gitignore: Also ignore doc/*/*/*.html and .ps.
32453         Support quotes 'like this' in info files
32454         This is possible when 'makeinfo --disable-encoding' is used
32455         in Texinfo 5.
32456         * lisp/calc/calc-help.el (calc-describe-thing):
32457         * lisp/gnus/gnus-art.el (gnus-button-alist):
32458         * lisp/info.el (Info-find-index-name):
32459         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
32460         Also support quotes 'like this'.
32461         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
32462         * lisp/finder.el (finder-font-lock-keywords): Remove var that
32463         hasn't been used in years, instead of bothering to fix its quoting.
32465 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
32467         * .gitignore: Remove !test/etags/html-src/*.html.
32468         It's no longer needed, since *.html was removed.  Sort.
32470 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
32472         Restore <D> instead of '.' in grep-find-template
32473         * lisp/cedet/semantic/symref/grep.el
32474         (semantic-symref-grep-use-template): Update a comment.
32475         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
32476         instead of '.' in grep-find-template (bug#20719).
32477         (rgrep): Pass nil as the directory to rgrep-default-command.
32478         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
32479         default value for DIR.
32480         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
32481         workaround.
32483 2015-06-02  Glenn Morris  <rgm@gnu.org>
32485         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
32487         * configure.ac (emacs_config_features): Add Cairo.
32489         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
32491 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
32493         Ensure that autorevert works for remote files in file-notify-tests.el
32494         * test/automated/file-notify-tests.el (file-notify--test-desc):
32495         New defvar.
32496         (file-notify--test-remote-enabled)
32497         (file-notify-test00-availability, file-notify-test01-add-watch)
32498         (file-notify-test02-events): Use it.
32499         (file-notify--test-event-test): Check proper descriptor.
32500         (file-notify-test03-autorevert): Ensure that
32501         `visited-file-modtime' has changed.  (Bug#20392)
32503 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
32505         Add a pcase pattern for maps and `map-let' based on it
32506         * lisp/emacs-lisp/map.el (map-let): New macro.
32507         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
32508         * test/automated/map-tests.el: New test for `map-let'.
32510 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
32512         Reuse rgrep mechanics in xref-find-regexp
32513         * lisp/progmodes/grep.el (rgrep-default-command):
32514         Extract from `rgrep'.
32515         * lisp/progmodes/xref.el (xref-collect-references): Split from
32516         `xref-collect-matches'.  Only handle the case of symbol search.
32517         (xref-collect-matches): Instead of Semantic Symref, use
32518         `rgrep-default-command', to take advantage of its directory and
32519         file ignore settings.
32520         (xref--collect-match): Remove the last argument, leaving the
32521         regexp construction up to the caller.
32522         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
32523         Change to take the xref-collect- function to use as an argument.
32524         (elisp-xref-find): Update accordingly.
32525         * lisp/progmodes/etags.el (etags--xref-find-matches)
32526         (etags-xref-find): Same.
32528         Move xref-elisp-location to elisp-mode.el
32529         * lisp/progmodes/xref.el (xref-elisp-location)
32530         (xref-make-elisp-location, xref-location-marker): Remove here.
32531         (xref--xref): Don't limit the type of the location slot.
32532         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
32533         Define as a cl-struct here.
32534         (xref-location-marker): Move here.
32536 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
32538         Minor tweaks for .gitignore
32539         * .gitignore: Don't ignore versioned *.html and *.ps files.
32540         Don't ignore admin/notes/tags that might be ignored as TAGS
32541         on case-insensitive filesystems.  (Bug#20710)
32543 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
32545         Generate curved quotes in ert doc
32546         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
32547         (ert-results-mode-menu)
32548         (ert-results-pop-to-backtrace-for-test-at-point)
32549         (ert-results-pop-to-messages-for-test-at-point)
32550         (ert-results-pop-to-should-forms-for-test-at-point)
32551         (ert-describe-test):
32552         Quote ‘like this’, not `like this', when generating doc strings
32553         and the like.
32554         * test/automated/ert-x-tests.el (ert-test-describe-test):
32555         Allow quoting ‘like this’.
32557 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
32559         Add test for previous commit
32560         * test/automated/replace-tests.el: New file.
32561         (query-replace--split-string-tests): Add test for previous commit.
32563         Avoid confusion in query-replace history when replacing NUL chars
32564         * lisp/replace.el (query-replace--split-string): New function.
32565         (query-replace-read-from): Rely on the 'separator' property
32566         instead of searching for the NUL character (Bug#20690).
32568 2015-06-02  Glenn Morris  <rgm@gnu.org>
32570         Merge from origin/emacs-24
32571         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
32573         * admin/gitmerge.el (gitmerge-commit-message):
32574         Exclude "skipped" messages from ChangeLog.
32576 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
32578         Sync with Tramp repository
32579         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
32580         messages.
32581         (tramp-handle-make-auto-save-file-name): When calling
32582         `make-auto-save-file-name' internally, make sure it uses Unix-like
32583         behavior, not Windows-like behavior.
32584         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
32585         the local case, because "chown" might fail on w32.
32586         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
32587         for XEmacs.
32589 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
32591         MS-Windows followup for batch stdout/stderr output changes
32592         * lisp/international/mule-cmds.el (set-locale-environment):
32593         In batch mode, use console codepages for keyboard and terminal
32594         encoding.  (Bug#20545)
32596         Update .gitattributes for DOS EOL files
32597         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
32598         CRLF end-of-line format.
32600         NS equivalents of xterm.c and w32term.c changes
32601         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
32602         glyph string background also when the font in use claims
32603         preposterously large global height value.  Helps to remove
32604         artifacts left from previous displays when glyphless characters
32605         are displayed as hex code in a box.
32606         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
32607         value for FRAME_LINE_HEIGHT, even when a font claims very large
32608         value for its height.
32610 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
32612         Avoid grave accent quoting in stderr diagnostics
32613         A few Emacs diagnostics go directly to stderr, and so can't easily
32614         contain curved quotes (as non-UTF-8 locales might mishandle them).
32615         Instead of bothering to add support for this rarity, reword the
32616         diagnostics so that they don't use grave accent to quote.
32617         * src/alloc.c (mark_memory): Fix comment.
32618         * src/buffer.c (init_buffer):
32619         * src/dispnew.c (init_display):
32620         * src/emacs.c (main, sort_args):
32621         * src/lread.c (dir_warning):
32622         * src/term.c (init_tty):
32623         * src/unexmacosx.c (unexec):
32624         * src/xfns.c (select_visual):
32625         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
32626         Reword stderr diagnostics to avoid quoting `like this'.
32627         * src/unexmacosx.c: Include errno.h.
32628         * src/xfns.c (select_visual): Encode value for locale.
32630 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
32632         Treat batch stdout/stderr like standard display
32633         Calls like (print FOO) could generate improperly encoded or
32634         hard-to-read output if FOO contains characters outside the system
32635         locale.  Fix this by treating batch stdout and stderr like
32636         interactive standard display, when it comes to transliterating and
32637         encoding characters (Bug#20545).
32638         * doc/emacs/mule.texi (Communication Coding):
32639         * doc/lispref/display.texi (Active Display Table):
32640         * doc/lispref/nonascii.texi (Locales):
32641         * etc/NEWS:
32642         * src/coding.c (syms_of_coding):
32643         * src/dispnew.c (syms_of_display):
32644         Document this.
32645         * src/print.c: Include disptab.h.
32646         (printchar_to_stream): New function, with much of the guts of the
32647         old Fexternal_debugging_output, except this one also uses the
32648         standard display table.
32649         (printchar, strout, Fexternal_debugging_output): Use it.
32651 2015-05-31  Glenn Morris  <rgm@gnu.org>
32653         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
32655 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
32657         Remove DEFSYMs that aren't used at the C level.  Also:
32658         * src/decompress.c (Qzlib_dll):
32659         * src/font.c (Qunicode_sip):
32660         * src/frame.c (Qtip_frame):
32661         * src/ftfont.c (Qserif):
32662         * src/gnutls.c (Qgnutls_dll):
32663         * src/xml.c (Qlibxml2_dll):
32664         Move from here ...
32665         * src/w32fns.c (syms_of_w32fns): ... to here,
32666         as these are used only on MS-Windows.
32668 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
32670         Use another default value for tramp-histfile-override
32671         * lisp/net/tramp-sh.el (tramp-histfile-override):
32672         Use ".tramp_history" as default.
32673         Fixes bug#20446
32675 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
32677         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
32679 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
32681         * etc/NEWS: Add an entry about map.el.
32683         Improve the docstring of functions in map.el
32684         Since a map is not a data structure but a concept, adding information
32685         about the possible types of maps can be useful information.
32686         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
32687         each public function.
32689 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
32691         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
32692         specific tests depending on the type of the map.
32694         * lisp/emacs-lisp/map.el: Better docstrings.
32696 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
32698         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
32700 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
32702         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
32704         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
32706         Fix a false negative in `map-elt' with alists and values being nil
32707         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
32708         found but its associated value is nil, do not return the default
32709         value.
32710         * test/automated/map-tests.el: Add a regression test.
32712 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
32714         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
32716         Do not signal an error when trying to delete a key from an array
32717         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
32718         the key is present to avoid signaling an error.
32719         * test/automated/map-tests.el: Add a test for deleting non-existing
32720         keys from maps.
32722         * lisp/emacs-lisp/map.el: Better docstring.
32724         Minor improvement in map-elt
32725         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
32726         doing a lookup in arrays, but check the boundaries of the array
32727         instead.
32728         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
32729         and a negative integer as key.
32731 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
32733         * test/automated/map-tests.el: Refactoring of test methods.
32735         * test/automated/map-tests.el: Renamed from map-test.el.
32737 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
32739         * lisp/emacs-lisp/map.el (map-into): Better error message.
32741         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
32743         Throw an error when converting a map into an unknown map type
32744         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
32745         not valid.
32746         * test/automated/map-tests.el: Add a regression test.
32748         New library map.el similar to seq.el but for mapping data structures.
32749         * test/automated/map-tests.el: New file.
32750         * lisp/emacs-lisp/map.el: New file.
32752 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
32754         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
32755         there's no explicit tag name (bug#20629).
32757 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
32759         Remove format2
32760         * src/editfns.c, src/lisp.h (format2): Remove.
32761         It is more trouble than it's worth, now that we have CALLN.
32762         This is just a minor refactoring.
32763         * src/buffer.c (Fkill_buffer):
32764         * src/dbusbind.c (XD_OBJECT_TO_STRING):
32765         * src/fileio.c (barf_or_query_if_file_exists):
32766         Adjust to format2 going away.
32768         Don't misencode C-generated messages
32769         Also, be more consistent about calls to 'Fmessage' vs 'message'.
32770         * src/alloc.c (Fgc_status):
32771         Prefer AUTO_STRING to build_string for Fmessage call.
32772         * src/data.c (Fmake_variable_buffer_local)
32773         (Fmake_local_variable, Fmake_variable_frame_local):
32774         * src/doc.c (store_function_docstring):
32775         Use Fmessage, not message, since the argument can contain
32776         non-ASCII characters, and this can cause the resulting message
32777         to be incorrectly encoded for the current environment.
32778         * src/fns.c (maybe_resize_hash_table):
32779         * src/xselect.c (x_clipboard_manager_save_all):
32780         Use message, not Fmessage, since Fmessage's power isn't needed here.
32781         * src/process.c (Fmake_network_process): Reword message to avoid %s.
32782         * src/xdisp.c (vmessage): Document restrictions on message contents.
32783         (message_nolog) [false]: Remove unused code.
32785         Use \r rather than ^M in string literals
32786         This is less likely to cause problems on platforms that
32787         use CRLF (or CR!) termination for lines.
32789         Update .gitattributes to match current sources
32790         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
32791         * .gitattributes: Accommodate tests that insist on DOS format.
32792         Remove test/automated/data/decompress/foo-gzipped.
32793         Add etc/e/eterm-color.
32795 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
32797         * doc/emacs/mule.texi (Modifying Fontsets):
32798         Document face-ignored-fonts.  (Bug#20628)
32800         Add etags test for the new -Q option
32801         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
32802         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
32803         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
32804         test-case changes below.
32805         * test/etags/ETAGS.good_6: New file.
32806         * test/etags/cp-src/x.cc: New file.
32807         * test/etags/Makefile (CPSRC): Add x.cc.
32808         (check): Add one more test, for -Q.
32810 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
32812         Use list for the tags completion table, not obarray
32813         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
32814         list instead of an obarray
32815         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
32816         (tags-completion-table): Combine those lists.
32817         (tags-completion-table): Update the docstring.
32819 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
32821         Restore EOL format testing in etags
32822         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
32823         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
32824         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
32825         test-case changes below.
32826         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
32827         * test/etags/cp-src/c.C (B): Add back stray CR character.
32828         * test/etags/c-src/dostorture.c: Add back.
32829         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
32831 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
32833         Declare Emacs on MS-Windows to be DPI-aware
32834         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
32835         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
32836         This avoids Windows entering compatibility mode for Emacs,
32837         which causes fonts to look less nice.
32839 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
32841         Improve Tramp traces
32842         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
32843         * lisp/net/tramp.el (tramp-debug-message): Use it.
32845 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
32847         backup-buffer minor reworking of internals
32848         * lisp/files.el (backup-buffer): Rework to avoid a couple of
32849         unused locals inadvertently introduced in the previous change.
32851         backup-buffer now reports .emacs.d/%backup% ills
32852         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
32853         fails due to disk space exhaustion or whatever, do not pretend
32854         that it succeeded.  More generally, do a better job of checking
32855         for I/O failures, and limit the scope of the condition-case to
32856         just the operations where file errors should be caught and ignored
32857         (Bug#20595).  Also, don't bother trying to delete later backups if
32858         an earlier deletion fails, as this is a sign of trouble and it's
32859         better to stop when there's trouble.
32861         copy-file now truncates output after writing
32862         * src/fileio.c (Fcopy_file): Truncate output after writing rather
32863         than before.  This is more likely to work than truncation before
32864         writing, if the file system is out of space or the user is over
32865         disk quota (Bug#20595).  Also, check for read errors.
32867 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
32869         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
32870         Don't load descriptors from directories above the package directories.
32872 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
32874         Merge from gnulib
32875         This incorporates the following (Bug#20681):
32876         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
32877         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
32878         * lib/set-permissions.c: Copy from gnulib.
32880 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
32882         Improve Tramp traces
32883         * lisp/net/tramp.el (tramp-call-process-region): New defun.
32884         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
32886 2015-05-29  Glenn Morris  <rgm@gnu.org>
32888         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
32890 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
32892         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
32893         The signature was changed in the cairo branch, merged on 2015-05-23.
32894         This oversight broke compiling only the non-toolkit X version.
32896 2015-05-29  Samer Masterson  <samer@samertm.com>
32898         * doc/lispref/os.texi: Update initial-buffer-choice docs.
32900 2015-05-29  Glenn Morris  <rgm@gnu.org>
32902         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
32903         Mark as an expected failure.
32905 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
32907         Change package test to look for curved quotes
32908         * test/automated/package-test.el (package-test-describe-package)
32909         (package-test-signed): Search for curved single quotes as well as
32910         for grave accent and apostrophe.
32912 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
32914         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
32915         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
32917 2015-05-28  Samer Masterson  <samer@samertm.com>
32919         Show files when `initial-buffer-choice' is non-nil
32920         * lisp/startup.el (command-line-1): When Emacs is given a file as an
32921         argument and `initial-buffer-choice' is non-nil, display both the file
32922         and `initial-buffer-choice'.  For more than one file, show
32923         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
32924         commands out of the command line arg parser.
32925         (initial-buffer-choice): Clarify docstring.
32927 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
32929         Fix last commit
32930         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
32931         (gnulib module qcopy-acl): Add back, as it is harmless.  This
32932         minimizes differences wrt lib/gnulib.mk.
32934         Fix the MS-Windows build as followup to gnulib update
32935         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
32936         set-permissions.c, as they don't compile on MinGW.
32937         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
32939 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
32941         Revert my change to gnus-art.el
32942         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
32943         It wasn't that important, and it caused a Gnus build to fail.  See:
32944         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
32946         New minor mode Electric Quote
32947         This lets you easily insert quotes ‘like this’ by typing
32948         quotes `like this', and similarly you can easily insert
32949         quotes “like this” by typing quotes ``like this'' (Bug#20545).
32950         * doc/emacs/basic.texi (Inserting Text):
32951         * doc/emacs/modes.texi (Minor Modes):
32952         * etc/NEWS: Document it.
32953         * doc/emacs/text.texi (Quotation Marks): New section.
32954         * lisp/electric.el (electric-quote-comment)
32955         (electric-quote-string, electric-quote-paragraph):
32956         New custom vars.
32957         (electric--insertable-p)
32958         (electric-quote-post-self-insert-function): New functions.
32959         (electric-quote-mode, electric-quote-local-mode): New minor modes.
32960         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
32961         Add curved single quotes to electric-pair-text-pairs.
32962         Set electric-quote-string in this buffer.
32964         A few more doc string fixes (Bug#20385)
32966         Accept curved quotes in doc strings
32967         * lisp/info-look.el (info-lookup-guess-custom-symbol):
32968         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
32970         Generate curved quotes in pseudo-info nodes
32971         * lisp/info.el (Info-virtual-index-find-node)
32972         (Info-virtual-index, Info-apropos-find-node, info-apropos):
32973         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
32975         Fix minor quoting problems in doc strings
32976         Most of these fixes involve escaping grave accents that are
32977         actually intended to be grave accents, not left quotes.
32978         (Bug#20385)
32980         Support curved quotes in doc strings
32981         Emacs's traditional doc string style has been to quote symbols
32982         `like this'.  This worked well on now-obsolete terminals where
32983         ` and ' were symmetric quotes, but nowadays curved quotes
32984         ‘like this’ look better.  Support quoting the new way too.
32985         (Bug#20385)
32986         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
32987         ‘like-this’ as well as `like-this'.
32988         * etc/NEWS: Mention this.
32989         * lisp/cedet/mode-local.el (overload-docstring-extension)
32990         (mode-local-print-binding, mode-local-describe-bindings-2):
32991         * lisp/cus-theme.el (describe-theme-1):
32992         * lisp/descr-text.el (describe-text-properties-1, describe-char):
32993         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
32994         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
32995         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
32996         (eieio-help-constructor):
32997         * lisp/emacs-lisp/package.el (describe-package-1):
32998         * lisp/faces.el (describe-face):
32999         * lisp/help-fns.el (help-fns--key-bindings)
33000         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
33001         (help-fns--interactive-only, describe-function-1):
33002         (describe-variable):
33003         * lisp/help.el (describe-mode):
33004         * lisp/international/mule-cmds.el (describe-input-method)
33005         (describe-language-environment):
33006         * lisp/international/mule-diag.el (describe-character-set)
33007         (print-coding-system-briefly, list-input-methods)
33008         (list-input-methods-1):
33009         Insert curved quotes rather than grave accent and apostrophe.
33010         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
33011         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
33012         (checkdoc-proper-noun-region-engine):
33013         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
33014         (lisp-cl-font-lock-keywords-2):
33015         * lisp/finder.el (finder-font-lock-keywords):
33016         * lisp/gnus/gnus-art.el (gnus-button-alist):
33017         * lisp/help-fns.el (help-do-arg-highlight)
33018         (describe-function-1, describe-variable):
33019         * lisp/help-mode.el (help-xref-symbol-regexp)
33020         (help-xref-info-regexp, help-xref-url-regexp):
33021         * lisp/help.el (describe-mode):
33022         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
33023         * lisp/wid-edit.el (widget-documentation-link-regexp):
33024         Parse symbols quoted ‘like-this’ as well as `like-this'.
33025         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
33026         Add "‘" and "’" to electric-pair-text-pairs.
33027         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
33028         (elisp-completion-at-point, elisp--preceding-sexp):
33029         Also treat "‘" and "’" as quoting chars.
33031         substitute-command-keys now curves quotes
33032         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
33033         * doc/lispref/help.texi (Keys in Documentation):
33034         * etc/NEWS: Document this.
33035         * src/doc.c (Fsubstitute_command_keys): Implement it.
33037 2015-05-28  Glenn Morris  <rgm@gnu.org>
33039         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
33040         (rmail-summary-by-topic, rmail-summary-by-senders):
33041         No longer strip leading/trailing whitespace.
33043         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
33044         (f90-no-block-limit): Add "enum".  (Bug#20680)
33045         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
33046         New tests.
33048 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33050         * lisp/isearch.el (isearch--current-buffer): Give a default value.
33051         Un-revert changes mistakenly dropped by f9fabb2b.
33053 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
33055         Merge from gnulib
33056         This incorporates:
33057         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
33058         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
33059         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
33060         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
33061         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
33062         2015-05-26 stdio: fix probe on mingw under gcc 5.1
33063         * admin/merge-gnulib (GNULIB_MODULES):
33064         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
33065         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
33066         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
33067         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
33068         Get latest versions from gnulib.
33069         * lib/get-permissions.c, lib/set-permissions.c: New files.
33070         * lib/gnulib.mk, m4/gnulib-comp.m4:
33071         Regenerate.
33072         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
33074 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
33076         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
33077         process here.
33078         (vc-do-command): Rather than here (bug#20608).
33080 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
33082         Avoid gratuitous delete-dups in face-at-point
33083         * lisp/faces.el (face-at-point): Do not compute the properly
33084         ordered, duplicate-free list if only a single value is
33085         requested anyway.  (Bug#20519)
33087         Show the exact C-x 8 RET invocation in describe-char
33088         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
33089         invocation instead of a template.  (Bug#20522)
33091 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
33093         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
33094         (package-menu--post-refresh): Call `tabulated-list-print' with the
33095         UPDATE argument.  This only affects the refresh action, the revert
33096         action still erases tags.
33097         (package-menu-get-status): Change `assq' to `assoc'.
33098         (package-menu--mark-upgrades-1): New function.
33099         (package-menu--mark-upgrades-pending): New variable.
33100         (package-menu-mark-upgrades): Use them to delay marking until
33101         after refresh is done.
33102         (package-menu--post-refresh): Call mark-upgrades-1 if
33103         mark-upgrades-pending is non-nil.
33105 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
33107         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
33108         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
33109         (commit 3953c4be2816537be95520605d45b866dc731f4b).
33111 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33113         * lisp/isearch.el (isearch--current-buffer): New var.
33114         (isearch-update): Set cursor-sensor-inhibit here.
33115         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
33116         (bug#20532).
33118         Change inhibit-point-motion-hooks to t
33119         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
33120         to t and document it as obsolete.
33122 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
33124         Support ZIP files that use Zip64 extensions
33125         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
33126         format of central directory offsets used by Zip64 extensions.
33127         (Bug#20665)
33129 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
33131         New test tramp-test30-make-auto-save-file-name
33132         * test/automated/tramp-tests.el
33133         (tramp-test30-make-auto-save-file-name): New test.
33134         (tramp-test31-special-characters)
33135         (tramp-test31-special-characters-with-stat)
33136         (tramp-test31-special-characters-with-perl)
33137         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
33138         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
33139         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
33140         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
33142         Improve tramp-handle-make-auto-save-file-name
33143         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
33144         (tramp-handle-make-auto-save-file-name): Let native
33145         `make-auto-save-file-name' use `auto-save-file-name-transforms',
33146         if `tramp-auto-save-directory' is not set.
33148 2015-05-27  Glenn Morris  <rgm@gnu.org>
33150         No longer set dired-directory in eshell.  (Bug#16477)
33151         * lisp/eshell/esh-mode.el (eshell-mode):
33152         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
33154         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
33156         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
33157         * lisp/progmodes/cc-mode.el (c-mode-help-address):
33158         Change to submit@debbugs.
33159         (c-mode-bug-package): New constant.
33160         (mail-position-on-field): Declare.
33161         (c-submit-bug-report): Insert X-Debbugs-Package header.
33162         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
33163         Mention debbugs.gnu.org.
33165 2015-05-26  Glenn Morris  <rgm@gnu.org>
33167         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
33168         (rmail-summary-by-recipients, rmail-summary-by-topic)
33169         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
33170         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
33172 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
33174         Handle curved quotes in info files
33175         * lisp/calc/calc-help.el (calc-describe-thing):
33176         * lisp/info.el (Info-find-index-name)
33177         (Info-try-follow-nearest-node, Info-fontify-node):
33178         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
33179         In info files, process quotes ‘like this’ the same way we process
33180         quotes `like this'.  This catches a few places we missed earlier.
33182 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
33184         xref-prompt-for-identifier: Use a list value
33185         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
33186         value, to be interpreted as a list of commands.
33187         (xref--prompt-p): New function.
33188         (xref--read-identifier): Use it.
33190 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
33192         Teach MS-Windows font back-end return per-glyph ascent/descent
33193         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
33194         values.
33195         * src/w32font.c (w32font_text_extents): Compute, cache, and
33196         accumulate per-glyph ascent and descent values, instead of copying
33197         global values from the font.  If the values are not available from
33198         the font data, i.e., non-TTF fonts, fall back on font-global values.
33199         (compute_metrics): Compute and return per-glyph ascent and descent
33200         values, if returned by GetGlyphOutlineW, falling back on
33201         font-global values.  (Bug#20628)
33202         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
33203         height of rectangle to be drawn, to be compatible with
33204         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
33205         box, when per-glyph ascent/descent values are used.
33207 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
33209         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
33210         Don't sort if sorter is nil.
33212 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
33214         Fix Bug#20621
33215         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
33216         are major modes which set `auto-save-mode' on their own rules;
33217         Tramp shall not overwrite such settings.
33219 2015-05-26  Glenn Morris  <rgm@gnu.org>
33221         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
33222         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
33223         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
33224         Doc updates.
33225         (vc-dir-mode): Remove unnecessary autoload.
33227 2015-05-25  Philipp Stephani  <phst@google.com>
33229         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
33230         (xterm--extra-capabilities-type): Add `getSelection'.
33231         (xterm--query): Add `no-async' argument.
33232         (xterm--init-activate-get-selection): New function.
33233         (terminal-init-xterm): Use it.
33234         (xterm--init-modify-other-keys): Rename from
33235         terminal-init-xterm-modify-other-keys.
33236         (xterm--init-bracketed-paste-mode): Rename from
33237         terminal-init-xterm-bracketed-paste-mode.
33238         (xterm--init-activate-set-selection): Rename from
33239         terminal-init-xterm-activate-set-selection.
33240         (xterm--selection-char): New function.
33241         (gui-backend-set-selection): Use it.  Use the &context to only apply
33242         this method in terminals where we enabled the feature.
33243         (gui-backend-get-selection): New method.
33245 2015-05-25  Daniel Colascione  <dancol@dancol.org>
33247         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
33248         keyword constants to C++.
33250 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
33252         Make TAGS files more portable to MS-Windows
33253         * etc/NEWS: Document this.
33254         * lib-src/etags.c (readline_internal) [DOS_NT]:
33255         Don't treat CRs differently from GNUish hosts.
33256         * lisp/progmodes/etags.el (etags-goto-tag-location):
33257         Adjust STARTPOS to account for the skipped CRs in dos-style files.
33259 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
33261         Improve fix of bug#20634 in tramp-sh.el
33263 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
33265         Fix a typo in last commit
33266         * lib-src/etags.c (C_entries): Fix a typo.
33267         * test/etags/ETAGS.good_1:
33268         * test/etags/ETAGS.good_2:
33269         * test/etags/ETAGS.good_3:
33270         * test/etags/ETAGS.good_4:
33271         * test/etags/ETAGS.good_5:
33272         * test/etags/CTAGS.good: Update due to the change in etags.c.
33274         Fix tagging of class members in C-like OO languages
33275         * lib-src/etags.c (longopts): Add new option --class-qualify and
33276         its shorthand -Q.
33277         (print_help): Add help text for --class-qualify.
33278         (main): Add handling of -Q.
33279         (consider_token, C_entries) <omethodparm>: Append argument types
33280         to Objective C methods only if --class-qualify was specified.
33281         Qualify C++, Objective C, and Java class members with their class
33282         names only if --class-qualify was specified.
33283         (C_entries): If --class-qualify was not specified, remove the
33284         namespace and class qualifiers from tag names of C++ methods.
33285         This allows to use etags.el as xref back-end without the
33286         tag-symbol-match-p method, which greatly increases the number of
33287         potentially false positives.  (Bug#20629)
33288         * doc/man/etags.1: Update to document the new --class-qualify
33289         option.
33290         * test/etags/ETAGS.good_1:
33291         * test/etags/ETAGS.good_2:
33292         * test/etags/ETAGS.good_3:
33293         * test/etags/ETAGS.good_4:
33294         * test/etags/ETAGS.good_5:
33295         * test/etags/CTAGS.good: Update due to changes in etags.c.
33297 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
33299         (cl-generic-define-method): Side effects are evil (bug#20644)
33300         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
33301         cons-cells that might be used as keys in an `equal' hash-table.
33303 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
33305         Make erc timestamps visible again
33306         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
33307         Make timestamps visible again (if requested).
33309 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
33311         Fix last change in etags.c that broke tagging compresed files
33312         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
33313         quoting of decompression shell command for MS-Windows/MS-DOS.
33315 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
33317         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
33318         (Bug#20639)
33320 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
33322         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
33323         Fix typo in "Inhibit `epa-file-handler' in Tramp"
33324         (commit 89035e247591c8d688fce922b7079881aa110f33).
33326 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
33328         Fix IPv6 addresses in Tramp
33329         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
33330         Add square brackets around host name.
33332 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
33334         Inhibit `epa-file-handler' in Tramp (Bug#20634)
33335         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
33336         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
33337         `epa-file-handler'.
33339 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
33341         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
33342         (pcase-let): Document the behavior in case the pattern doesn't match.
33344 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
33346         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
33347         (tabulated-list-print): New optional argument, UPDATE.  If
33348         non-nil, the list is printed by only adding and deleting the
33349         changed entries, instead of erasing the whole buffer.  This method
33350         is much faster when few or no entries have changed.
33351         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
33352         * etc/NEWS: Document it.
33354         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
33355         (tabulated-list--get-sorter): New function.
33356         (tabulated-list-print): Restore window-line when remember-pos is
33357         passed and optimize away the `nreverse'.
33359 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
33361         Simpilify etags TEX mode scanning
33362         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
33363         Remove static vars.
33364         (TeX_commands): Deduce escapes here instead.
33365         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
33366         This removes the need for a reset_input call.
33368         Improve etags I/O error reporting
33369         * lib-src/etags.c:
33370         Don't include sys/types.h and sys/stat.h; no longer needed.
33371         (infilename): New static var.
33372         (process_file_name): Don't call 'stat'.  Instead, just open the
33373         file for reading and report any errors.  Don't bother making
33374         a copy of the file argument; it's not needed.  Be more careful to
33375         use the failing errno when reporting an error.
33376         Quote the real name better (though no perfectly)
33377         when passing it to the shell.
33378         (reset_input): New function, which reports I/O errors.
33379         All uses of 'rewind' changed to use this function.
33380         (perhaps_more_input): New function, which also checks for
33381         I/O errors.  All uses of 'feof' changed to use this function.
33382         (analyze_regex): Report an error if fclose fails.
33383         (readline_internal): Report an error if getc fails.
33384         (etags_mktmp): Return an error if close fails.
33386         etags.c: avoid side effects in 'if'
33387         * lib-src/etags.c (process_file_name, Perl_functions)
33388         (TEX_decode_env): Hoist side effects into previous statement.
33390         .gitignore tweaks
33391         * .gitignore: Ignore all *.stamp files.  Sort.
33392         Ignore [0-9]*.txt (commonly used name for git patches)
33393         and /vc-dwim-log-* (vc-dwim temporary).
33395 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
33397         Fix last change in etags.c, which failed the test suite
33398         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
33399         before the last change.
33401 2015-05-23  Glenn Morris  <rgm@gnu.org>
33403         Remove charset map files from repository, generate in first bootstrap
33404         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
33405         (all): Create the stamp file.
33406         (extraclean): Delete the stamp file.
33407         * src/Makefile.in (lispintdir, charsets): New variables.
33408         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
33409         New rules.
33410         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
33411         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
33412         * etc/charsets/*.map: Remove from repository.
33414 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
33416         Cleanup etags.c to use locale-independent code
33417         Although this doesn't alter behavior (as etags doesn't use
33418         setlocale), the new version is more clearly locale-independent and
33419         the executable is a bit smaller on my platform.
33420         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
33421         Include <c-ctype.h> instead of <ctype.h>.
33422         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
33423         (begtk, midtk):
33424         Remove; no longer needed.
33425         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
33426         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
33427         c_islower, c_tolower, respectively.
33428         (notinname, begtoken, intoken, endtoken): Rewrite as functions
33429         instead of macros, and initialize the tables at compile-time
33430         rather than at run-time.
33432         Put default action first in src/Makefile
33433         * src/Makefile.in (all): Put this rule before lisp.mk.
33434         That way, plain 'make' works in the src directory again.
33436 2015-05-23  Glenn Morris  <rgm@gnu.org>
33438         * Makefile.in: Fix extraclean rule.
33439         (extraclean_dirs): New.
33440         (extraclean): Use it.
33442 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
33444         Avoid compiler warning in image.c on MS-Windows
33445         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
33446         warning in image.c.
33448 2015-05-23  Glenn Morris  <rgm@gnu.org>
33450         Fix --without-toolkit-scroll-bars builds.
33451         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
33452         Add new argument to x_clear_area1.
33453         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
33454         Update x_clear_area arguments.
33456         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
33457         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
33458         Change to included version.
33459         (LOCAL, local, totalclean): Remove.
33460         (extraclean): Delete all generated files.
33462 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
33464         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
33465         CVS/Entries exists.
33467         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
33469         * lisp/progmodes/etags.el (tags-completion-at-point-function):
33470         Don't trust the find-tag function.
33472 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
33474         Pacify --enable-gcc-warnings
33475         * src/frame.h (x_query_color): Remove redundant extern decl.
33476         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
33477         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
33478         (ftcrfont_text_extents, ftcrfont_draw):
33479         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
33480         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
33481         (x_ins_del_lines, frame_highlight, frame_unhighlight)
33482         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
33483         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
33484         (x_update_window_begin, x_connection_closed)
33485         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
33486         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
33487         (*x_gc_get_ext_data, x_extension_initialize)
33488         (x_cr_accumulate_data):
33489         Remove redundant static decl.  Many of these GCC doesn't complain
33490         about, but we might as well clean out the duplication while we're
33491         in the neighborhood.
33492         * src/xterm.c (x_fill_trapezoid_for_relief):
33493         Remove decl of nonexistent function.
33495 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
33497         Replace gui-method macros with cl-generic with &context
33498         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
33499         (gui-method-declare, gui-call): Remove.
33500         (frame-creation-function): Use cl-defgeneric.
33501         (make-frame): Adjust callers.
33502         * lisp/menu-bar.el (menu-bar-edit-menu):
33503         Use gui-backend-selection-exists-p.
33504         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
33505         (gui-backend-get-selection): New cl-generic to replace
33506         gui-get-selection method.
33507         (gui-backend-set-selection): New cl-generic to replace
33508         gui-set-selection method.
33509         (gui-selection-owner-p): New cl-generic to replace
33510         gui-selection-owner-p method.
33511         (gui-backend-selection-exists-p): New cl-generic to replace
33512         gui-selection-exists-p method.  Adjust all callers.
33513         * lisp/server.el (server-create-window-system-frame): Don't ignore
33514         window-system spec even when unsupported.
33515         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
33516         * lisp/startup.el (handle-args-function, window-system-initialization):
33517         Use cl-defgeneric.
33518         (command-line): Adjust calls accordingly.
33519         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
33520         a window-system-initialization method.
33521         (handle-args-function, frame-creation-function): Use cl-defmethod.
33522         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
33523         (gui-get-selection): Use cl-defmethod on the new functions instead.
33524         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
33525         a gui-backend-get-selection method.
33526         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
33527         Use cl-defmethod on the new functions instead.
33528         (msdos-window-system-initialization): Turn into
33529         a window-system-initialization method.
33530         (frame-creation-function, handle-args-function): Use cl-defmethod.
33531         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
33532         a window-system-initialization method.
33533         (handle-args-function, frame-creation-function): Use cl-defmethod.
33534         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
33535         (gui-get-selection): Use cl-defmethod on the new functions instead.
33536         * lisp/term/x-win.el (x-window-system-initialization): Turn into
33537         a window-system-initialization method.
33538         (handle-args-function, frame-creation-function): Use cl-defmethod.
33539         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
33540         (gui-get-selection): Use cl-defmethod on the new functions instead.
33541         * lisp/term/xterm.el (xterm--set-selection): Turn into
33542         a gui-backend-set-selection method.
33543         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
33544         (Fns_selection_owner_p): Remove unused arg `terminal'.
33545         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
33547 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
33549         Revert "Fix etags Bug#20629 that broke C++ support"
33550         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
33552 2015-05-23  Jan D  <jan.h.d@swipnet.se>
33554         Fix etags Bug#20629 that broke C++ support
33555         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
33556         Revert commit from Sun May 10 (Bug#20629).
33558         Merge branch 'cairo'.
33559         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
33560         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
33562         Merge branch 'master' into cairo
33564         Fixes to compile cairo branch without cairo
33565         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
33566         first argument.
33567         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
33568         USE_CAIRO.
33570 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
33572         * lisp/emacs-lisp/package.el: Always update selected-packages.
33573         (package--update-selected-packages): New function.
33574         (package-menu-execute): Use it before starting the transaction,
33575         this way the list of selected packages is updated even when the
33576         transaction fails.
33577         (package-menu--perform-transaction): Don't edit selected-packages.
33579 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
33581         Fix etags reading of compressed files
33582         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
33583         Include fcntl.h, for O_CLOEXEC.
33584         (process_file_name): Don't use 'popen', whose streams cannot be
33585         rewound.  Instead, uncompress the file to a temporary file,
33586         created by 'etags_mktmp', and read from that as usual.
33587         (etags_mktmp): New function.
33588         * test/etags/ETAGS.good_1:
33589         * test/etags/ETAGS.good_2:
33590         * test/etags/ETAGS.good_3:
33591         * test/etags/ETAGS.good_4:
33592         * test/etags/ETAGS.good_5: Update to be consistent with latest
33593         changes in etags.c regarding reading compressed files.
33595         Improve documentation of 'set-fontset-font'
33596         * doc/lispref/display.texi (Fontsets): Document the value of nil
33597         for the 3rd argument of 'set-fontset-font'.
33599         Fix documentation of forward-line
33600         * src/cmds.c (Fforward_line): Clarify the return value if the line
33601         at end of accessible portion of the buffer has no newline.
33602         * doc/lispref/positions.texi (Text Lines): Document what happens
33603         if the line at end of accessible portion of buffer has no newline.
33604         (Bug#20587)
33606 2015-05-22  Glenn Morris  <rgm@gnu.org>
33608         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
33610         * admin/charsets/mapconv (LC_ALL): Set to C.
33612         * Makefile.in: Add admin/charsets into top-level clean rules.
33613         (clean): Add admin/charsets.
33614         (maybeclean_dirs): New variable.
33615         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
33617         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
33619 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
33621         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
33623 2015-05-22  Glenn Morris  <rgm@gnu.org>
33625         Generate admin/charsets Makefile via configure, and make more portable
33626         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
33627         (admin/charsets/Makefile): Generate it.
33628         * admin/charsets/Makefile.in: Rename from Makefile.
33629         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
33630         New variables, set by configure.
33631         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
33632         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
33633         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
33634         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
33635         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
33636         (all): Declare PHONY.
33637         (local): New PHONY target.
33638         (map_template): New template.  Use to define short PHONY aliases.
33639         (*.map): Add directory prefixes to targets and prerequisites.
33640         Respect make verbosity.
33641         (JISC6226.map): Replace non-portable sed append without newline.
33642         (install): Remove rule.
33643         (clean): Only delete temporary sedscript.
33644         (bootstrap-clean, distclean, maintainer-clean, extraclean)
33645         (totalclean): New PHONY rules.
33646         * admin/charsets/mapconv (BASE): Replace basename with expr.
33647         (FILE): Add "mapfiles" subdirectory.
33648         (AWK): New variable.  Use throughout in place of "awk".
33649         (main): Use "gunzip -c" in place of "zcat".
33650         Don't leave whitespace before "p", for older sed.
33651         * admin/charsets/mapfiles/PTCP154: Add final newline,
33652         to make older sed versions happy.
33654 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
33656         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
33657         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
33658         (auto-revert-notify-watch-descriptor): Use defvar-local.
33659         (find-file-hook, auto-revert-tail-mode)
33660         (auto-revert-notify-add-watch): Use setq-local.
33661         (auto-revert-notify-add-watch): Don't call make-local-variable on
33662         kill-buffer-hook (bug#20601).
33664 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
33666         Change defgeneric so it doesn't completely redefine the function
33667         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
33668         previously defined methods.
33669         (cl-generic-define-method): Let-bind purify-flag instead of
33670         using `fset'.
33671         (cl--generic-prefill-dispatchers): Only define during compilation.
33672         (cl-method-qualifiers): Remove redundant alias.
33673         (help-fns-short-filename): Silence byte-compiler.
33674         * test/automated/cl-generic-tests.el:
33675         Adjust to new defgeneric semantics.
33677 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
33679         * lisp/emacs-lisp/package.el (package-menu-execute):
33680         Remove reference to remove-dups.
33682 2015-05-21  kwhite  <kwhite@gnu.org>
33684         * lisp/erc/erc.el: Hide network/channel messages.
33685         (erc-network-hide-list, erc-channel-hide-list): New lists to define
33686         message types per network/channel.
33687         (erc-add-targets): New function to parse list of targets.
33688         (erc-hide-current-message-p): Modify to check for new targets.
33690 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
33692         Don't quote nil and t in doc strings
33693         This is as per "Tips for Documentation Strings" in the elisp manual.
33694         For consistency, do the same in diagnostics and comments.
33696 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
33698         Fix a minor problem with mouse-face on mode line
33699         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
33700         mouse face also if the mouse pointer hovers above mode-line glyphs
33701         that don't come from any Lisp string.  (Bug#20620)
33703 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
33705         * lisp/emacs-lisp/package.el: Fix selected-package logic.
33706         (package-menu-execute): Mark as selected all non-upgrade packages
33707         being installed.
33708         (package-menu--perform-transaction): Don't mark anything.
33710         * lisp/emacs-lisp/package.el: Mode-line progress report.
33711         (package-menu--transaction-status): New variable.
33712         (package-menu-mode, package-menu--perform-transaction): Use it.
33714         * lisp/emacs-lisp/package.el: Better transaction messages.
33715         (package-menu--partition-transaction): New function.
33716         (package-menu--prompt-transaction-p, package-menu-execute):
33717         Use it.
33718         (package-menu--perform-transaction): Don't do any messaging.
33720         * lisp/emacs-lisp/package.el: Revert async package transactions.
33721         (package-menu-async): Update doc.
33722         (package-install-from-archive, package-download-transaction)
33723         (package-install, package-menu--perform-transaction)
33724         (package-menu-execute): Remove asynchronous functionality.
33726 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
33728         Revert doc string changes to f90.el
33729         Problem reported by Glenn Morris in:
33730         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
33731         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
33732         Revert recent changes to doc strings, as it's intended that they
33733         use grave accent, not quote.
33735 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
33737         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
33738         Improve parameter name.
33740         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
33742 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
33744         Don't require help-fns when not needed
33745         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
33746         * lisp/emacs-lisp/elint.el:
33747         Don't require help-fns at the top level
33748         * lisp/emacs-lisp/advice.el (ad-arglist):
33749         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
33750         Don't require help-fns.  (Bug#17001)
33752 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
33754         Fix slash collapsing in etags on MS-Windows
33755         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
33756         MS-Windows code from the Posix code, and support collapsing both
33757         forward- and back-slashes on MS-Windows.  Fixes a regression found
33758         by the test suite.
33760         Improve documentation of glyphless-char-display
33761         * doc/lispref/display.texi (Glyphless Chars): Improve
33762         documentation of glyphless character display.
33764         Fix "acronym" display of glyphless characters on w32
33765         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
33766         ignore "acronym" substitutes of 1 character for glyphless characters.
33768 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
33770         Add an automated test for let-when-compile
33771         * test/automated/subr-tests.el (let-when-compile): New test.
33773         Add let-when-compile macro instead of using pcase-let
33774         * lisp/subr.el (let-when-compile): New let-like macro that makes its
33775         bindings known to macros like `eval-when-compile' in the body.
33776         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
33777         a `let-when-compile'.  Also comment out the unused lexical var
33778         `el-kws-re'.
33779         The change greatly improves readability, while providing almost the
33780         same (even shorter) byte code: instead of pre-evaluating 10 variables,
33781         tossing them into a list, and destructuring that list a full screen
33782         page later, the variables are simply bound as they are evaluated,
33783         wrapped individually in `eval-when-compile'.
33785 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
33787         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
33788         (package-delete-button-action): New function.
33789         (describe-package-1): Add Delete button.
33791         * lisp/emacs-lisp/package.el: Better dependency description.
33792         (package--used-elsewhere-p): New optional arg, ALL, and return
33793         package-desc objects instead of names.
33794         (package-delete): Update accordingly.
33795         (describe-package-1): Describe which packages require the package.
33797 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
33799         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
33800         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
33801         Fix doc-string.
33803         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
33804         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
33805         (switch-to-buffer): If the selected window is strongly dedicated
33806         to its buffer, signal error before prompting for buffer name.
33807         Handle `switch-to-buffer-in-dedicated-window'.
33808         * doc/lispref/windows.texi (Switching Buffers):
33809         Document `switch-to-buffer-in-dedicated-window'.
33811 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
33813         Prefer "this" to “this” in doc strings
33814         This mostly just straightens quotes introduced in my previous patch.
33815         Suggested by Dmitry Gutov in:
33816         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
33817         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
33818         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
33819         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
33820         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
33821         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
33822         Prefer straight double quotes to curved double quotes in doc strings.
33824         Fix minor quoting problems in doc strings
33825         These were glitches regardless of how or whether we tackle the
33826         problem of grave accent in doc strings.
33827         * lisp/calc/calc-aent.el (math-restore-placeholders):
33828         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
33829         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
33830         * lisp/leim/quail/hebrew.el ("hebrew-new")
33831         ("hebrew-biblical-sil"):
33832         * lisp/leim/quail/thai.el ("thai-kesmanee"):
33833         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
33834         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
33835         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
33836         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
33837         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
33838         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
33839         (semantic-tag-components):
33840         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
33841         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
33842         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
33843         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
33844         * lisp/emacs-lisp/generator.el (iter-next):
33845         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
33846         (gnus-article-mode-syntax-table):
33847         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
33848         * lisp/net/soap-client.el (soap-wsdl-get):
33849         * lisp/net/telnet.el (telnet-mode):
33850         * lisp/org/org-compat.el (org-number-sequence):
33851         * lisp/org/org.el (org-remove-highlights-with-change)
33852         (org-structure-template-alist):
33853         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
33854         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
33855         (handwrite-12pt, handwrite-13pt):
33856         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
33857         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
33858         * lisp/progmodes/verilog-mode.el (verilog-tool)
33859         (verilog-string-replace-matches, verilog-preprocess)
33860         (verilog-auto-insert-lisp, verilog-auto-insert-last):
33861         * lisp/textmodes/makeinfo.el (makeinfo-options):
33862         * src/font.c (Ffont_spec):
33863         Fix minor quoting problems in doc strings, e.g., missing quote,
33864         ``x'' where `x' was meant, etc.
33865         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
33866         Fix minor quoting problem in other string.
33867         * lisp/leim/quail/ethiopic.el ("ethiopic"):
33868         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
33869         Omit unnecessary quotes.
33870         * lisp/faces.el (set-face-attribute, set-face-underline)
33871         (set-face-inverse-video, x-create-frame-with-faces):
33872         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
33873         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
33874         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
33875         * lisp/net/tramp.el (tramp-methods):
33876         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
33877         * lisp/textmodes/artist.el (artist-ellipse-right-char)
33878         (artist-ellipse-left-char, artist-vaporize-fuzziness)
33879         (artist-spray-chars, artist-mode, artist-replace-string)
33880         (artist-put-pixel, artist-text-see-thru):
33881         * lisp/vc/ediff-util.el (ediff-submit-report):
33882         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
33883         Use double-quotes rather than TeX markup in doc strings.
33884         * lisp/skeleton.el (skeleton-pair-insert-maybe):
33885         Reword to avoid the need for grave accent and apostrophe.
33886         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
33887         Don't use grave and acute accents to quote.
33889 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
33891         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
33892         Silence compiler.
33894 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
33896         Try to port new etags tests to MS-Windows
33897         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
33898         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
33899         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
33900         Adjust to test-case changes below.
33901         * test/etags/Makefile (CSRC): Remove dostorture.c.
33902         Whatever it was trying to test, wasn't working portably.
33903         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
33904         just a line-ending problem.
33905         * test/etags/c-src/dostorture.c: Remove.
33906         * test/etags/cp-src/c.C: Remove stray CR.
33907         * test/etags/html-src/algrthms.html: Remove trailing CRs.
33908         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
33909         but if someone edits it later it should stay UTF-8-compatible.
33911 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
33913         Fix display of overlapping window-specific overlays
33914         * src/keyboard.c (adjust_point_for_property): When adjusting point
33915         due to display strings, ignore overlays that are specific to
33916         windows other than the currently selected one.
33917         * src/xdisp.c (handle_single_display_spec): If the display
33918         property comes from an overlay, arrange for buffer iteration to
33919         resume only after the end of that overlay.  (Bug#20607)
33921 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
33923         New command icomplete-force-complete-and-exit
33924         * lisp/icomplete.el (icomplete-force-complete-and-exit):
33925         New command
33926         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
33927         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
33928         (icomplete-minibuffer-map): Bind C-j to it.
33929         (icomplete-forward-completions, icomplete-backward-completions):
33930         Mention the new command in the docstring.
33931         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
33932         Revert the previous fix for bug#17545.
33934 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
33936         Fix last commit
33938         In Elisp manual explain how to override window manager positioning
33939         (Bug#20552)
33940         * doc/lispref/frames.texi (Position Parameters): Give example of
33941         how to override a window manager positioning decision.
33943         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
33944         * src/frame.c (Fdelete_frame): In doc-string mention that frame
33945         can't be deleted if it has a surrogate minibuffer.
33946         * doc/lispref/frames.texi (Minibuffers and Frames)
33947         (Deleting Frames): Explain "surrogate minibuffer frames".
33949         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
33951 2015-05-18  Glenn Morris  <rgm@gnu.org>
33953         Add option to ignore commit lines matching a pattern in ChangeLog
33954         * build-aux/gitlog-to-changelog: Add --ignore-line option.
33955         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
33957 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
33959         Don't skip new etags tests on non-UTF-8 hosts
33960         Problem reported by Eli Zaretskii for MS-Windows.
33961         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
33962         (LC_ALL): Set to C if the current locale isn't UTF-8.
33963         (.PHONY): Remove ediff_1 thru ediff_5.
33964         (check): Always run.
33966 2015-05-18  Glenn Morris  <rgm@gnu.org>
33968         * lisp/calculator.el (calculator-funcall):
33969         * lisp/textmodes/artist.el (artist-spray-random-points):
33970         Use standard degree/radian conversion utilities.
33972         Further lisp-complete-symbol related cleanup.
33973         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
33974         Unadvertise non-functional argument.  Replace obsolete alias.
33976 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
33978         Add a test case for Maven warning ouput
33979         * test/automated/compile-tests.el
33980         (compile-tests--test-regexps-data): Add a case for Maven warning
33981         ouput.
33982         (compile--test-error-line): Check the compilation message type, if
33983         it's specified in the test data.
33985 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
33987         Update Maven compilation-mode entry to distinguish warnings
33988         * lisp/progmodes/compile.el
33989         (compilation-error-regexp-alist-alist): Update Maven entry to
33990         distinguish warnings (bug#20556).
33992 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
33994         * test/automated/sgml-mode-tests.el: New file.
33996 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
33998         Improve handling of the first Git revision
33999         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
34000         there's no next entry, delete until the end of the buffer.
34001         (log-view-end-of-defun-1): Stop at eob.
34002         * lisp/vc/vc-annotate.el
34003         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
34004         when previous-revision is nil.
34005         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
34006         with `--' to avoid ambiguity.
34007         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
34008         returned revision string.
34009         (vc-git-annotate-time): Expect `^' before the first revision.
34010         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
34011         REV1 is nil, and REV2 is not.
34012         * lisp/vc/vc.el: Update the description of the `diff' function.
34014 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
34016         Allow checkdoc to be called in batch
34017         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
34018         is non-nil, echo the error with `warn'.
34019         How it can be used in -batch:
34020         (with-current-buffer (find-file "checkdoc.el")
34021           (checkdoc-current-buffer t))
34023 2015-05-18  Glenn Morris  <rgm@gnu.org>
34025         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
34027 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
34029         * admin/notes/unicode: New section "binary files".
34031         Change new etags test to use UTF-8 encoding
34032         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
34033         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
34034         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
34035         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
34036         * test/etags/html-src/softwarelibero.html:
34037         Switch to UTF-8 encoding.
34038         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
34039         Remove Makefile, as it's too incestuous to have the test input
34040         include the build procedure.
34041         (UTF8_LOCALE, UTF_ENCODING): New macros.
34042         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
34043         (check): Skip if not UTF-8.
34044         (.PHONY): New rule.
34045         (FRC): Remove, as superseded by .PHONY.  All uses removed.
34046         (regexfile): Prefer printf to echo when outputting oddball chars.
34047         (.PRECIOUS): Remove, as these files are not built.
34049         Rename 'foo-gzipped' to 'foo.gz'
34050         * test/automated/data/decompress/foo.gz:
34051         Rename from test/automated/data/decompress/foo-gzipped,
34052         to make it easier for other tools to tell that it's compressed.
34053         * test/automated/zlib-tests.el (zlib--decompress):
34054         Adjust to renamed file.
34056 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
34058         Set up default-directory
34059         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
34060         binding for `v'.
34061         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
34062         appropriate value for default-directory.
34064 2015-05-17  Samer Masterson  <samer@samertm.com>
34066         * lisp/eshell/em-term.el (eshell-term-sentinel):
34067         No-op by default, only kills term buffer if
34068         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
34069         (eshell-destroy-buffer-when-process-dies): New custom to preserve
34070         previous behavior.
34072         eshell: Introduce new buffer syntax
34073         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
34074         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
34075         needed (Bug#19319).
34076         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
34077         (eshell-get-target): Remove shorthand-specific code.
34078         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
34079         '#<buffer-name>'.
34081 2015-05-17  Jan D  <jan.h.d@swipnet.se>
34083         Merge branch 'master' into cairo
34085 2015-04-26  Jan D  <jan.h.d@swipnet.se>
34087         Merge branch 'master' into cairo
34089         Add PBM support for cairo
34090         * src/image.c (xcolor_to_argb32): New function.
34091         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
34092         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
34093         XImagePtr if ! USE_CAIRO.
34094         (pbm_load): Add cairo support.
34096 2015-04-12  Jan D  <jan.h.d@swipnet.se>
34098         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
34099         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
34100         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
34101         x_free_cr_resources.
34103         Handle specified bg in images.  Use generic libpng code for PNGs.
34104         * src/image.c (get_spec_bg_or_alpha_as_argb)
34105         (create_cairo_image_surface): New functions when USE_CAIRO.
34106         (xpm_load): Call the above functions.  Handle XPM without mask
34107         when USE_CAIRO.
34108         (png_load_body): Handle USE_CAIRO case.
34109         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
34110         instead.
34111         (jpeg_load_body): Call create_cairo_image_surface.
34112         (gif_load, svg_load_image): Handle specified background, call
34113         create_cairo_image_surface.
34114         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
34116 2015-04-11  Jan D  <jan.h.d@swipnet.se>
34118         Support GIF and TIFF with cairo
34119         * configure.ac: Allow jpeg with cairo.
34120         Allow tiff and gif with cairo.
34121         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
34122         (tiff_load): Create cairo image surface if USE_CAIRO.
34123         (gif_load): Ditto.
34125         Support JPEG with USE_CAIRO
34126         * configure.ac: Allow jpeg with cairo.
34127         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
34129 2015-04-05  Jan D  <jan.h.d@swipnet.se>
34131         Support RSVG and cairo
34132         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
34133         * src/dispextern.h (struct image): Add cr_data2 if cairo.
34134         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
34135         (x_clear_image): Free cr_data and cr_data2 if set.
34136         (xpm_load): Assign data to cr_data2.
34137         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
34139 2015-04-03  Jan D  <jan.h.d@swipnet.se>
34141         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
34142         * configure.ac (HAVE_RSVG): Move after cairo.
34143         (USE_CAIRO): Disable rsvg, don't disable Xpm.
34144         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
34145         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
34146         don't return early.
34147         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
34148         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
34149         and create a surface.
34151         Tool tips for menus did not show any text.
34152         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
34153         tip frames, the geometry may be wrong.
34155         Merge branch 'master' into cairo, fixes tooltips not shown.
34157         Merge branch 'master' into cairo
34159         Add CAIRO_CFLAGS to lwlib/Makefile.in
34160         * Makefile.in (CAIRO_CFLAGS): Add.
34162 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
34164         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
34166 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
34168         Draw outermost line using black relief and erase corners also for cairo.
34169         * src/xterm.c [USE_CAIRO]: Include math.h.
34170         (enum corners) [USE_CAIRO]: New enum.
34171         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
34172         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
34173         than 1, draw the outermost line using the black relief.
34175         * src/xterm.c (x_fill_trapezoid_for_relief):
34176         Remove unnecessary cairo_close_path.
34178 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
34180         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
34182         * src/xterm.c (x_draw_stretch_glyph_string):
34183         Call x_reset_clip_rectangles instead of XSetClipMask.
34185         Use int instead of unsigned int for width and height args.
34186         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
34187         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
34188         width and height args.
34190         Modernize k&r cairo-related function declarations.
34191         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
34192         (xg_print_frames_dialog): Modernize k&r declarations.
34193         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
34194         (Fx_print_frames_dialog): Modernize k&r declarations.
34195         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
34196         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
34197         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
34198         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
34199         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
34200         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
34201         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
34202         (x_clear_area): Modernize k&r declarations.
34204         Implement wave-style variant of underlining for cairo.
34205         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
34206         (x_draw_underwave) [USE_CAIRO]: Use it.
34208         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
34209         instead of XFillRectangle.
34211 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
34213         Fix fringe bitmap initialization for cairo
34214         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
34215         data for cairo image surface.
34216         * src/xterm.c (x_cr_define_fringe_bitmap):
34217         Call cairo_surface_mark_dirty.
34219 2015-02-11  Jan D  <jan.h.d@swipnet.se>
34221         Add cairo drawing
34222         * configure.ac (with-cairo): New option.
34223         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
34224         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
34225         Output "Does Emacs use cairo?".
34226         * lisp/version.el (emacs-version): Add cairo version.
34227         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
34228         (FONT_OBJ): Add comment about ftcrfont.
34229         (ALL_CFLAGS): Add CAIRO_CFLAGS.
34230         (LIBES): Add CAIRO_LIBS.
34231         * src/dispextern.h (struct image): Add cr_data for cairo.
34232         (x_cr_init_fringe): Declare.
34233         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
34234         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
34235         * src/fringe.c (x_cr_init_fringe): New function name that shares code
34236         with w32_init_fringe.
34237         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
34238         * src/ftfont.c (ftfont_info_size); New global variable.
34239         (ftfont_open2): New extern function almost the same as old ftfont_open,
34240         but takes the font_object as argument.
34241         (ftfont_open): Build font object and call ftfont_open2.
34242         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
34243         * src/gtkutil.c (xg_clear_under_internal_border)
34244         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
34245         Only queue_draw if not cairo.  Change args to x_clear_area.
34246         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
34247         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
34248         (xg_print_frames_dialog): New functions for printing.
34249         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
34250         (xg_print_frames_dialog): Declare.
34251         * src/image.c: Add defined (USE_CAIRO) for PNG.
34252         Add !defined USE_CAIRO for W32 PNG code.
34253         (x_clear_image): If cairo, destroy the surface in cr_data.
34254         (png_load): Add new cairo compatible implementation.
34255         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
34256         * src/xfns.c: New section Printing.
34257         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
34258         (x-print-frames-dialog): New printing functions.
34259         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
34260         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
34261         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
34262         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
34263         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
34264         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
34265         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
34266         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
34267         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
34268         Declare.
34269         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
34270         (max_fringe_bmp, fringe_bmp): New variables.
34271         (x_gc_get_ext_data, x_extension_initialize)
34272         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
34273         (x_set_cr_source_with_gc_foreground)
34274         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
34275         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
34276         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
34277         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
34278         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
34279         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
34280         (x_update_begin): Create cairo surface if needed.
34281         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
34282         (x_update_end): Paint cairo drawing surface to xlib surface.
34283         (x_clear_under_internal_border, x_after_update_window_line): Adjust
34284         arguments to x_clear_area.
34285         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
34286         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
34287         of XSetClipMask.
34288         (x_set_glyph_string_clipping)
34289         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
34290         instead of XSetClipRectangles.
34291         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
34292         Use x_fill_rectangle instead of XFillRectangle.
34293         (x_draw_glyph_string_foreground)
34294         (x_draw_composite_glyph_string_foreground)
34295         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
34296         instead of XDrawRectangle.
34297         (x_draw_relief_rect): Add code for USE_CAIRO.
34298         Call x_reset_clip_rectangles instead of XSetClipMask.
34299         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
34300         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
34301         instead of XSetClipMask.
34302         (x_draw_image_foreground, x_draw_image_foreground_1):
34303         x_draw_rectangle instead of XDrawRectangle.
34304         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
34305         XFillRectangle.
34306         (x_draw_image_glyph_string): If img has cr_data, use it as
34307         a cairo surface.
34308         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
34309         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
34310         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
34311         x_reset_clip_rectangles instead of XSetClipMask.
34312         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
34313         (x_clear_area1): New function that calls XClearArea.
34314         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
34315         non-cairo.
34316         (x_clear_frame): x_clear_window instead of XClearWindow.
34317         (x_scroll_run): Set frame garbaged if cairo.
34318         (XTmouse_position): Initialize *part to 0.
34319         (x_scroll_bar_create): Adjust arguments to x_clear_area.
34320         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
34321         x_fill_rectangle instead of XFillRectangle.
34322         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
34323         arguments to x_clear_area.
34324         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
34325         (handle_one_xevent): Adjust arguments to x_clear_area.
34326         Destroy cairo surface for frame if ConfigureNotify.
34327         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
34328         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
34329         x_reset_clip_rectangles instead of XSetClipMask.
34330         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
34331         x_reset_clip_rectangles instead of XSetClipMask.
34332         (x_clear_frame_area): Adjust arguments to x_clear_area.
34333         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
34334         (x_term_init): Call x_extension_initialize if cairo.
34335         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
34336         x_cr_destroy_fringe_bitmap for cairo.
34337         (x_initialize): Call x_cr_init_fringe for cairo.
34338         * src/xterm.h: Add include of cairo header files.
34339         (x_bitmap_record): Add img if cairo.
34340         (x_gc_ext_data): New struct for cairo.
34341         (x_display_info): Add ext_codes for cairo.
34342         (x_output): Add cr_context and cr_surface for cairo.
34343         (x_clear_area): Change arguments from Display*/Window to frame pointer.
34344         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
34345         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
34346         (x_cr_draw_frame, x_cr_export_frames): Declare.
34348 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
34350         Fix integer-valued `mouse-highlight' (Bug#20590)
34351         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
34353 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
34355         MS-Windows followup for ASCIIfication of curved quotes
34356         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
34357         test for curved quotes being displayable, after switching the
34358         terminal encoding.  (Bug#20545)
34360 2015-05-17  Jan D  <jan.h.d@swipnet.se>
34362         Add comment that x_shift_glyphs_for_insert is never called
34363         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
34364         Add comment that this function is never called.
34366 2015-05-16  Glenn Morris  <rgm@gnu.org>
34368         * src/lisp.mk: Remove from repository and generate at build-time.
34369         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
34370         (shortlisp_filter): New variable.
34371         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
34372         (distclean): Remove lisp.mk.
34373         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
34374         * lisp/loadup.el: Tweak layout to make it easier to parse.
34375         * make-dist: Do not distribute src/lisp.mk.
34377 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
34379         Display shorter dates in Git annotate output
34380         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
34381         format (when not overridden with vc-git-annotate-switches).
34382         (vc-git-annotate-time): Support the short format, as well as ISO
34383         8601 that has been used until now (bug#5428).
34385 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
34387         ASCIIfy curved quotes on displays lacking them
34388         * lisp/international/mule-cmds.el (set-locale-environment):
34389         If curved quotes don't work, display straight ASCII approximations
34390         (Bug#20545).
34392 2015-05-16  Glenn Morris  <rgm@gnu.org>
34394         Small src/Makefile simplification
34395         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
34396         * src/Makefile.in (lisp): Derive from shortlisp.
34397         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
34399 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
34401         * lisp/help-mode.el (help-go-forward): Doc fix.
34402         (Bug#20577)
34404         * doc/lispref/debugging.texi (Profiling): Improve indexing.
34405         (Bug#20576)
34407 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
34409         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
34410         have one fewer `not'.
34412         * lisp/vc/vc-git.el (vc-git-diff-switches)
34413         (vc-git-annotate-switches, vc-git-resolve-conflicts)
34414         (vc-git-program, vc-git-root-log-format): Remove the redundant
34415         :group declarations.
34417 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
34419         Removes the predicate from lisp-complete-symbol (Bug#20456)
34420         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
34421         and remove it from the docstring.
34423 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
34425         Add new option vc-git-resolve-conflicts
34426         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
34427         (vc-git-find-file-hook): Add to after-save-hook only when the
34428         above is non-nil.
34429         (vc-git-resolve-when-done): Update to honor the new variable.
34430         (Bug#20292)
34432 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
34434         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
34435         (tabulated-list-init-header): Document new behavior.
34436         (tabulated-list-print-fake-header): Do nothing if
34437         `tabulated-list--header-string' is nil.
34438         (tabulated-list--header-string): Add a docstring.
34439         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
34440         * etc/NEWS: Document it.
34442 2015-05-15  Leo Liu  <sdl.web@gmail.com>
34444         Revert "Fix cps--gensym"
34445         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
34446         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
34448 2015-05-15  Glenn Morris  <rgm@gnu.org>
34450         Replace AC_SUBST_FILE in configure with include in Makefiles
34451         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
34452         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
34453         (AUTO_DEPEND): New output variable.
34454         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
34455         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
34456         (lwlib_deps_frag): Replace by conditional include.
34457         * lwlib/autodeps.mk: Remove file.
34458         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
34459         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
34460         (oldxmenu_deps_frag): Replace by conditional include.
34461         * oldXMenu/autodeps.mk: Remove file.
34462         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
34463         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
34464         (lisp_frag): Replace by an include.
34465         (deps_frag): Replace by conditional include.
34466         * src/autodeps.mk: Remove file.
34468         Tweak japanese.el's loading of dependencies
34469         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
34470         * lisp/language/japanese.el: Use require rather than load.
34471         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
34472         Provide a feature.
34473         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
34474         Provide a feature in the generated file.
34476 2015-05-15  Jan D  <jan.h.d@swipnet.se>
34478         Fix NS warnings
34479         * src/nsmenu.m (ns_popup_dialog)
34480         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
34481         * src/nsfns.m (Fx_create_frame): Remove unused variables.
34482         (Fns_read_file_name): Initialize fname, remove ret.
34483         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
34484         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
34485         Remove unused variable.
34486         (init): Add parantesis in if.
34487         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
34489 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
34491         Fix a enum conversion warning in macfont.m
34492         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
34493         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
34495 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
34497         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
34498         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
34500 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
34502         * lisp/cus-start.el: Add ns-confirm-quit.
34504         Fix warnings on OSX 10.10
34505         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
34506         OSX versions.
34507         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
34508         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
34509         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
34510         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
34511         setScalesWhenResized for OSX < 10.6.
34512         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
34513         * src/nsterm.m (ns_copy_bits): New function that does not use
34514         deprecated NSCopyBits.
34515         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
34516         (runAlertPanel): New function.
34517         (applicationShouldTerminate:): Call runAlertPanel.
34518         (initFrameFromEmacs, toggleFullScreen:): Only call
34519         useOptimizedDrawing for OSX < 10.10.
34520         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
34521         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
34522         (draggingEntered:): Returns NSDragOperation.
34523         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
34525 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
34527         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
34528         (package--init-file-ensured): New variable.
34529         (package-initialize, package--ensure-init-file): Use it.
34531 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
34533         Honor :fore/background for XBM on NS (Bug#14969)
34534         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
34535         initFromXBM takes bg, fg args, remove flip arg.
34536         (ns_image_from_XBM): Add bg, fg args.
34537         * src/image.c (x_create_bitmap_from_data)
34538         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
34539         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
34540         initFromXBM.  Remove flip arg.
34541         (initFromSkipXBM): Move code to initFromXBM.
34542         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
34543         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
34544         always false.
34545         Remove bit flipping (bitPat, swt), generated incorrect images when
34546         width/height wasn't a multiple of 8.
34547         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
34548         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
34549         remove flip arg.
34551 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
34553         * lisp/emacs-lisp/package.el: Be more careful with the init file.
34554         (package--ensure-init-file): Check that user-init-file is set,
34555         exists, is readable, and is writable.  (Bug#20584)
34556         Also expand the docstring.
34558 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
34560         Sync with upstream verilog-mode revision 6232468
34561         * lisp/progmodes/verilog-mode.el
34562         (verilog-font-lock-grouping-keywords-face)
34563         (verilog-highlight-grouping-keywords): Fix use of face when
34564         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
34565         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
34566         parent is reset, bug906.  Reported by Ken Schmidt.
34567         (verilog-auto-inout-module): Add fourth regexp argument to
34568         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
34569         Reported by John Tillema.
34570         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
34571         modport if signal attachment is itself a modport.  Reported by
34572         Matthew Lovell.
34573         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
34574         always_comb and always_latch, bug844.  Reported by Greg Hilton.
34575         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
34576         with many curly-bracket pairs, bug663.
34577         (verilog-set-auto-endcomments): Fix end comments for functions of
34578         type void, etc.  Reported by Alex Reed.
34579         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
34580         caused by indent-line-to deleting tabls pre 24.5.
34581         (verilog-nameable-item-re): Fix nameable items that can have an
34582         end-identifier to include endchecker, endgroup, endprogram,
34583         endproperty, and endsequence.  Reported by Alex Reed.
34584         (verilog-label-be): When auto-commenting a buffer, consider
34585         auto-comments on all known keywords (not just a subset thereof).
34586         Reported by Alex Reed.
34587         (verilog-auto-end-comment-lines-re)
34588         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
34589         Automatically comment property/endproperty blocks to match other
34590         similar blocks like sequence/endsequence, function/endfunction, etc.
34591         Reported by Alex Reed.
34592         (verilog-set-auto-endcomments): Detect the function- or task-name
34593         when auto-commenting blocks that lack an explicit portlist.
34594         Reported by Alex Reed.
34595         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
34596         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
34597         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
34598         is nil, fix indenting initial/final to match always statements,
34599         bug825.  Reported by Tim Clapp.
34600         (verilog-extended-complete-re): Fix indentation of DPI-C imports
34601         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
34602         Mao and Jason Forkey.
34603         (verilog-read-decls): Fix parsing typed interfaces.  Fix
34604         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
34605         Fix localparam not being ignored in AUTOINSTPARAM,
34606         bug889.  Reported by Shannon Hill.
34607         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
34608         bug793.  Reported by Pierre-David Pfister.
34609         (verilog-auto-arg-format, verilog-auto-arg-ports):
34610         Add verilog-auto-arg-format to support newlines in AUTOARG.
34611         Reported by Jie Xiao.
34612         (verilog-batch-execute-func): Do not batch re-auto files loaded by
34613         Local Variables.  Fix printing "no changes to be saved" with
34614         verilog-batch.  Reported by Dan Dever.
34615         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
34616         interface-only modules, bug721.  Reported by Dean Hoyt.
34617         Author: Alex Reed <acreed4@gmail.com>
34618         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
34619         Don't treat '<keyword>:<identifier>' as the start of a labeled
34620         statement, bug905.  Reported by Enzo Chi.
34621         (verilog-directive-re, verilog-compiler-directives)
34622         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
34623         directives (plus some extras) when determining indentation, bug
34624         901.  Reported by Bernd Beuster.
34625         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
34626         iff expression doesn't start with word-character, bug900.
34627         (verilog-optional-signed-range-re, verilog-optional-signed-re):
34628         Fix incorrect indentation/alignment of unsigned declarations,
34629         bug897.
34630         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
34631         always constructs, bug895.
34632         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
34633         Reported by Eric Mastromarchi.
34634         (verilog-beg-of-statement): Fix indenting for some forms of
34635         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
34636         continued assignment incorrect if first line ends with ']', bug437.
34637         Reported by Dan Dever.  Fix indention of cover inside an
34638         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
34639         blocks, bug842.
34640         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
34641         Reported by Kaushal Modi.
34642         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
34643         (verilog-backward-token): Fix indenting sensitivity lists with
34644         named events, bug840.  Reed.
34645         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
34646         nil not honoring 'forever', 'foreach', and 'do' keywords.
34648 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
34650         Check for invalid GTK+ monitor scales
34651         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
34652         INT_MAX for too-large scales.  All callers changed to assume the
34653         result is valid (Bug#20432).
34654         (xg_frame_set_char_size, xg_update_scrollbar_pos):
34655         Calculate scale only if needed.
34656         Show ASCII approximations instead.
34658 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
34660         Fix daemon crashes when linum-mode is turned on early on
34661         * src/window.c (Fwindow_end): Don't try calling display engine
34662         functions on initial-frame frame.  (Bug#20565)
34664         Fix selective diff browsing in Ediff
34665         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
34666         Go to the beginning of the region before searching for the
34667         ediff-regexp-focus-* regexps.  (Bug#20568)
34669 2015-05-14  Jan D  <jan.h.d@swipnet.se>
34671         Fixes bug#20142
34672         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
34673         arrive in the main loop, even for Gtk 3 (Bug#20142).
34675         Don't access display after i/o error (Bug#19147).
34676         * src/xterm.c (x_connection_closed): Add third arg ioerror.
34677         If ioerror, set display to 0 (Bug#19147).
34678         (x_error_quitter): Call x_connection_closed with third arg false.
34679         (x_io_error_quitter): Call x_connection_closed with third arg true.
34681         Handle GTK_SCALE, fixes Bug#20432.
34682         * src/gtkutil.c (xg_get_gdk_scale): New function.
34683         (xg_frame_set_char_size)
34684         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
34685         (xg_get_default_scrollbar_height)
34686         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
34687         when setting sizes (Bug#20432).
34689 2015-05-13  Leo Liu  <sdl.web@gmail.com>
34691         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
34693 2015-05-13  Glenn Morris  <rgm@gnu.org>
34695         Fix bootstrap (void function cl-member).
34696         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
34697         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
34699 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34701         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
34702         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
34703         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
34704         Avoid defalias for closures which are not immutable.
34705         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
34706         the dispatchers table with various entries.
34707         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
34708         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
34710 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
34712         Improve tagging of C bindings in DEFVAR_*
34713         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
34714         from DEFVAR_*.
34716 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
34718         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
34720 2015-05-12  Glenn Morris  <rgm@gnu.org>
34722         * lisp/progmodes/tcl.el (tcl-filter):
34723         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
34725         Add basic VC push support
34726         * lisp/vc/vc.el (vc-push): New autoloaded command.
34727         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
34728         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
34729         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
34730         (vc-bzr-push): New.
34731         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
34732         (vc-git-pull): Reimplement using vc-git--pushpull.
34733         (vc-git-push): New.
34734         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
34735         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
34736         * doc/emacs/maintaining.texi (Pulling / Pushing):
34737         Rename from "VC Pull".  Mention pushing.
34738         (VC With A Merging VCS, VC Change Log): Update xrefs.
34739         (Branches): Update menu.
34740         * doc/emacs/emacs.texi: Update menu.
34741         * etc/NEWS: Mention this.
34743 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
34745         Improve the seq pcase pattern and the `seq-let' macro
34746         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
34747         object is a sequence, and binds each element of ARGS to the
34748         corresponding element of the sequence.
34750 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
34752         Fix tags created from DEFVAR_* declarations in C
34753         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
34754         to make tags extracted from DEFVAR_* declarations more accurate.
34756         Add a test suite for etags
34757         * test/etags/: New test suite, adapted from
34758         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
34759         whose original author is Francesco Potortì <pot@gnu.org>.
34761         Fix tagging of symbols in C enumerations
34762         * lib-src/etags.c (consider_token): Don't tag symbols in
34763         expressions that assign values to enum constants.  See
34764         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
34765         for details.
34766         (C_entries): Reset fvdef to fvnone after processing a preprocessor
34767         conditional and after a comma outside of parentheses.
34769 2015-05-12  Glenn Morris  <rgm@gnu.org>
34771         * lisp/url/url-handlers.el (url-file-name-completion)
34772         (url-file-name-all-completions): Silence compiler.
34774         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
34776         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
34778 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
34780         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
34781         (cl--generic-mandatory-args): Remove.
34782         (cl--generic-split-args): New function.
34783         (cl-generic-define, cl--generic-lambda): Use it.
34784         (cl-generic-define-method): Use it as well, and add support for
34785         context args.
34786         (cl--generic-get-dispatcher): Handle &context dispatch.
34787         (cl--generic-cache-miss): `dispatch-arg' can now be a
34788         context expression.
34789         (cl--generic-dispatchers): Pre-fill.
34790         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
34791         New test.
34793 2015-05-11  Glenn Morris  <rgm@gnu.org>
34795         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
34797 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
34799         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
34800         * lisp/term/rxvt.el: Require term/xterm.
34801         (rxvt-function-map): Use xterm-rxvt-function-map.
34802         (rxvt-standard-colors): Move before first use.
34803         (terminal-init-rxvt): Use xterm--push-map and
34804         xterm-register-default-colors.
34805         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
34806         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
34807         Move shared bindings between rxvt and xterm to it.
34808         (xterm-function-map): Use it.  Move the xterm-paste binding to
34809         xterm-rxvt-function-map (bug#20444).
34810         (xterm-standard-colors): Move before first use.
34811         (xterm--push-map): New function.
34812         (xterm-register-default-colors): Take standard colors as argument.
34813         (terminal-init-xterm): Use it.  Adjust call to
34814         xterm-register-default-colors.
34816 2015-05-11  Glenn Morris  <rgm@gnu.org>
34818         * lisp/term/x-win.el: Quieten --without-x compilation.
34819         (x-own-selection-internal, x-disown-selection-internal)
34820         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
34821         Declare.
34823         * Makefile.in (emacslog): Remove srcdir.
34824         (ChangeLog): Update for the above.
34826 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
34828         python.el: better limit for looking-back calls
34829         * lisp/progmodes/python.el (python-shell-accept-process-output):
34830         Use last comint prompt start as limit for looking-back.
34832 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
34834         CEDET (srecode-insert-fcn): Fix use of oref on a class
34835         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
34836         on a class.  Reported by Pierre Lorenzon.
34837         (srecode-template-inserter-point): Remove declaration.
34839         CEDET (srecode-create-dictionary): Avoid obsolete object name
34840         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
34841         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
34843 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
34845         C-x 8 shorthands for curved quotes, Euro, etc.
34846         Although C-x 8 lets you insert arbitrary Unicode characters,
34847         it's awkward to use this to insert commonly used symbols such as curved
34848         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
34849         characters commonly found in English text and in basic math.
34850         For example, assuming the Alt key works on your keyboard and iso-transl
34851         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
34852         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
34853         (Bug#20499)
34854         * doc/emacs/mule.texi (Unibyte Mode):
34855         A few other printing characters now work too.
34856         * etc/NEWS: Document this.
34857         * lisp/international/iso-transl.el (iso-transl-char-map):
34858         Also support the following characters:
34859         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
34861 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
34863         Add xref-find-regexp
34864         * lisp/progmodes/xref.el (xref-find-function): Describe the
34865         `matches' action.
34866         (xref-find-regexp): New command, using it.
34867         (xref-collect-references): Rename to xref-collect-matches.
34868         (xref--collect-reference): Rename to xref--collect-match.
34869         (xref-collect-matches, xref--collect-match): Accept new argument,
34870         KIND.  Update accordingly.
34871         (xref--regexp-to-extended): New function.
34872         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
34873         `matches' action.
34874         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
34875         * lisp/progmodes/etags.el (etags-xref-find):
34876         Support the `matches' action.
34877         (etags--xref-find-matches): New function.
34879 2015-05-10  Glenn Morris  <rgm@gnu.org>
34881         * Makefile.in: Fixes for recent change-history changes.
34882         (change-history-nocommit): Update footer regexp.
34883         Ensure output script stays executable.
34885 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
34887         New version of `seq-let' based on a pcase pattern
34888         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
34889         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
34891 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
34893         Add basic HTML5 tags and a template
34894         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
34895         (html-tag-alist): Add HTML5 tags.
34896         (html-tag-help): Add new tags descriptions.
34897         (html-navigational-links): Template for nav links.
34898         (html-html5-template): Template for a HTML5 page.
34900 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
34902         semantic/symref/grep: Don't use word boundaries
34903         * lisp/cedet/semantic/symref/grep.el
34904         (semantic-symref-perform-search): Instead of wrapping input in
34905         word boundaries, check that the characters before and after are
34906         not word constituents.
34908         semantic/symref/grep: Support regexp search
34909         * lisp/cedet/semantic/symref.el
34910         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
34911         the search type is regexp.
34912         * lisp/cedet/semantic/symref/grep.el
34913         (semantic-symref-perform-search): Support the regexp search type.
34914         Pass -E to Grep when it's used.
34916         semantic-symref-regexp: Allow to input an arbitrary string
34917         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
34918         Allow to input an arbitrary string interactively.
34920         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
34921         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
34922         Remove tag-symbol-match-p from the default value
34923         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
34925         Declare find-tag obsolete
34926         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
34927         xref-find-definitions.
34929 2015-05-10  Jan D  <jan.h.d@swipnet.se>
34931         Draw composite string correctly (Bug#20537)
34932         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
34933         New function.
34934         (ns_draw_glyph_string): Call it.
34936 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
34938         Avoid infloop in ERC
34939         * lisp/simple.el (line-move-to-column): Ignore field boundaries
34940         while computing line beginning position.  (Bug#20498)
34942 2015-05-08  Glenn Morris  <rgm@gnu.org>
34944         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
34945         * build-aux/gitlog-to-emacslog: Check called from right directory.
34946         (srcprefix): Remove.
34948         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
34949         * Makefile.in (ChangeLog): No longer pass "distprefix".
34950         * make-dist: Update "make ChangeLog" syntax for the above change.
34952         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
34953         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
34955         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
34957         Add command-line option-parsing to gitlog-to-emacslog
34958         * build-aux/gitlog-to-emacslog: Add command-line options.
34959         By default, refuse to remove an existing output file.
34960         * Makefile.in (CHANGELOG): Update default.
34961         (ChangeLog): Do not test for existing file.
34962         (change-history-nocommit): Ensure temp file does not exist.
34964         Quieten --without-x compilation
34965         * lisp/term/common-win.el: Provide a feature.
34966         * lisp/term/x-win.el (term/common-win): Require it.
34968         * lisp/dired-aux.el (dired-do-print): Require lpr.
34970         Quieten compilation, eg in --without-x builds
34971         * lisp/dired-aux.el (lpr-printer-switch):
34972         * lisp/frame.el (tool-bar-height):
34973         * lisp/linum.el (font-info):
34974         * lisp/window.el (font-info, overflow-newline-into-fringe)
34975         (tool-bar-height):
34976         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
34977         * lisp/gnus/gnus-util.el (iswitchb-mode):
34978         * lisp/mail/rmailmm.el (libxml-parse-html-region):
34979         * lisp/net/nsm.el (gnutls-peer-status)
34980         (gnutls-peer-status-warning-describe):
34981         * lisp/net/shr.el (libxml-parse-xml-region):
34982         * lisp/url/url-http.el (gnutls-peer-status): Declare.
34984 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
34986         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
34987         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
34988         `subclass' since they're never called with a class.
34989         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
34990         srecode-dictionary-child-p.
34992 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
34994         * lisp/help.el (help--binding-locus): Document argument POSITION.
34995         (Bug#20530)
34997 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
34999         Merge from gnulib
35000         * doc/misc/texinfo.tex: Get latest version.
35002 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
35004         ffap.el (ffap-read-file-or-url): Fix completing-read call
35005         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
35006         `completing-read' should be a symbol.
35008 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
35010         Verify file modifications by other programs
35011         * src/filelock.c (lock_file): Check whether the file was modified
35012         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
35014         Fix keyboard macros that include function keys
35015         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
35016         keys in the macro before returning.  (Bug#20454)
35018 2015-05-08  Glenn Morris  <rgm@gnu.org>
35020         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
35021         "Copyright-paperwork-exempt".  (Bug#20324)
35023         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
35024         (log-edit-rewrite-tiny-change): New variable.
35025         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
35026         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
35027         * etc/NEWS: Mention this.
35029         * lisp/calc/calc.el (math-zerop): Declare.
35031         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
35033 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
35035         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
35036         Support the case when BINDINGS is a single tuple.  (Bug#20525)
35038         * etc/NEWS: Fix typo in previous commit
35039         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
35041 2015-05-07  Jan D  <jan.h.d@swipnet.se>
35043         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
35044         Output URL to Gtk+ bug (Bug#20452).
35046         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
35048 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
35050         * lisp/emacs-lisp/package.el: New "external" package status.
35051         An external package is any installed package that's not built-in
35052         and not from `package-user-dir', which usually means it's from an
35053         entry in `package-directory-list'.  They are treated much like
35054         built-in packages, in that they cannot be through the Package Menu
35055         deleted and are not considered for upgrades.
35056         (package-desc-status): Identify if a package is installed outside
35057         `package-user-dir'.
35058         (package-menu--print-info-simple)
35059         (package-menu--status-predicate): Add support for it.
35060         * etc/NEWS: Document it.
35062 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
35064         * lisp/mail/rmail.el: Use lexical-binding.
35065         (rmail-bury): Remove unused var `buffer-to-bury'.
35066         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
35067         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
35068         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
35069         (rmail-insert-inbox-text): Remove unused var `movemail'.
35070         (rmail-add-mbox-headers): Remove unused var `limit'.
35071         (rmail-undelete-previous-message): Remove unused var `value'.
35072         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
35073         `resent-reply-to'.
35074         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
35075         (rmail-restore-desktop-buffer): Rename arguments.
35077 2015-05-06  Glenn Morris  <rgm@gnu.org>
35079         * Makefile.in (change-history-commit): Add missing piece of previous.
35081         Avoid unnecessary bumping of Makefile.in's timestamp
35082         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
35083         (emacslog): New variable.
35084         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
35085         (unchanged-history-files): Use $emacslog rather than Makefile.in.
35086         (change-history-nocommit): Store hash in $emacslog.
35087         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
35088         * admin/update_autogen (changelog_files): Update for the above.
35090         * Makefile.in: Don't always insist on removing existing "ChangeLog".
35091         (CHANGELOG): New variable.
35092         (no-ChangeLog): Remove.
35093         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
35094         (change-history-nocommit): Use a temp file rather than insisting
35095         on deletion of any existing "ChangeLog".
35097         * build-aux/gitlog-to-emacslog: Allow specification of output.
35099         * admin/update_autogen: Add option to update ChangeLog.
35100         (usage): Mention -H.
35101         (changelog_flag, changelog_n, changelog_files): New variables.
35102         (main): Check for -H, and maybe run change-history-nocommit.
35104 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
35106         * lisp/subr.el (delete-dups): Pre-size the hashtable.
35108         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
35109         cl--arglist-args is defined (bug#20517).
35111 2015-05-06  Glenn Morris  <rgm@gnu.org>
35113         * Makefile.in (change-history-nocommit): New.
35115 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
35117         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
35118         timer when it is non-nil
35119         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
35121 2015-05-06  Glenn Morris  <rgm@gnu.org>
35123         Quieten CEDET compilation
35124         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
35125         Invert fboundp test to quieten on current Emacs.
35126         * lisp/cedet/ede/config.el (ede-shell-run-something)
35127         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
35128         (semanticdb-refresh-table): Declare.
35129         (ede-preprocessor-map): Require semantic/db.
35131         Quieten cc-mode compilation
35132         * lisp/progmodes/cc-awk.el (c-forward-sws):
35133         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
35134         Declare.
35136 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
35138         * lisp/subr.el (delete-dups): Avoid nreverse.
35140 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
35142         * lisp/subr.el (delete-dups): Make it destructive again.
35144 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
35146         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
35148 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
35150         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
35151         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
35152         (testcover--read): Rename from testcover-read.  Change calling
35153         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
35154         is gone.
35155         (testcover-start): Use add-function.  Move edebug-all-defs binding to
35156         testcover--read.
35157         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
35158         (testcover-mark): Remove unused var `item'.
35159         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
35161 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
35163         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
35164           use a hash table.  This can result in ~500 times speed-up for typical
35165           collections of size 5000, like that of `load-library'.
35167 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
35169         CEDET: Avoid `oref' on classes in a few more cases
35170         * lisp/cedet/ede/generic.el (ede-find-target):
35171         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
35172         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
35173         var `prefix'.
35175         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
35176         (grepflags, greppattern): Declare.
35177         (semantic-symref-perform-search): Remove unused var `pat'.
35179         CEDET (srecode-compile-inserter): Avoid `oref' on classes
35180         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
35181         Avoid `oref' on classes (bug#20491).
35182         (srecode-compile-split-code): Remove unused var `key'.
35184 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
35186         Clean up pulse.el a little
35187         * lisp/cedet/pulse.el (pulse): Remove.
35188         (pulse-momentary-timer): Save instead of the stop time.
35189         (pulse-momentary-highlight-overlay):
35190         Call pulse-momentary-unhighlight first thing.
35191         Treat pulse-momentary-overlay as a single value, not a list.
35192         Save the created timer.  Only pass the stop time to the timer.
35193         (pulse-tick): Update accordingly.
35194         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
35195         single value.  Cancel the timer.
35197 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
35199         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
35200         Support the biblatex journaltitle field.
35202 2015-05-05  Glenn Morris  <rgm@gnu.org>
35204         Minor declare-function improvement
35205         * lisp/emacs-lisp/bytecomp.el
35206         (byte-compile-macroexpand-declare-function):
35207         Handle declarations after calls.  (Bug#20509)
35209         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
35211         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
35213 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
35215         Pulse using a timer
35216         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
35217         (pulse-momentary-highlight-overlay): Set up the timer instead of
35218         calling `pulse'
35219         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
35220         (pulse-tick): New function.
35221         (pulse-momentary-unhighlight): Cut off the stop time.
35222         (pulse-delay): Update the docstring WRT to not using sit-for.
35224         Add semantic/symref/grep file patterns for ruby-mode
35225         * lisp/cedet/semantic/symref/grep.el
35226         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
35227         Clarify the docstring.
35229         Don't require match
35230         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
35231         match.  That doesn't work for every command, and some identifier
35232         completion tables are bound to be imperfect anyway.
35234 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
35236         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
35237         (semantic-grammar--template-expand): New function.
35238         (semantic-grammar-header, semantic-grammar-footer): Use it.
35239         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
35240         (semantic-grammar-file-regexp): Refine regexp.
35241         (semantic-grammar-eldoc-get-macro-docstring):
35242         Use elisp-get-fnsym-args-string when available.
35243         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
35244         instead of the old eldoc-* names.
35245         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
35246         from elisp-mode.el.  Tweak calling convention.
35247         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
35248         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
35249         elisp--get-fnsym-args-string.
35250         (elisp--highlight-function-argument): Add `prefix' arg.
35251         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
35252         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
35254 2015-05-05  Glenn Morris  <rgm@gnu.org>
35256         * lisp/help-fns.el (describe-function-1):
35257         Handle builtins with advertised calling conventions.  (Bug#20479)
35259 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
35261         Merge branch 'seq-let'
35263         Update `seq-let' documentation
35264         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
35265         with the support of  `&rest'.
35267         Add support for &rest in `seq-let'
35268         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
35269         in the argument list.
35270         * test/automated/seq-tests.el: Add a test for parsing and binding
35271         `&rest' in `seq-let'.
35273 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
35275         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
35276         Add missing increment (Bug#20467).
35277         (eieio-object-value-create): Adjust to new slots representation
35278         (Bug#20467).
35279         (eieio-object-value-create): Fix missed adjustment to new
35280         representation of slots metadata.
35282 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
35284         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
35286 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
35288         Work around "Attempt to modify read-only object"
35289         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
35290         elisp--xref-find-definitions, to work around "Attempt to modify
35291         read-only object" error.
35293         Only skip some variables that have function counterparts
35294         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
35295         Only skip minor-mode-named variable if it's defined in a Lisp
35296         file, and it's in minor-mode-list (bug#20506).
35297         * test/automated/elisp-mode-tests.el
35298         (elisp-xref-finds-both-function-and-variable)
35299         (elisp-xref-finds-only-function-for-minor-mode): New tests.
35301 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
35303         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
35304         previous change.
35305         (xref--insert-xrefs): Buttonize the whole line, including the
35306         number at the beginning.
35308         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
35309         Make sure we're inside the let bindings.
35310         * test/automated/elisp-mode-tests.el
35311         (elisp-completes-functions-after-let-bindings): New test.
35313 2015-05-04  Glenn Morris  <rgm@gnu.org>
35315         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
35316         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
35317         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
35318         Remove outdated declarations.
35320         Replace instances of "(eval-when-compile (autoload ...))"
35321         * lisp/gnus/gnus-art.el (nneething-get-file-name):
35322         Declare rather than autoload.
35323         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
35324         Remove pointless autoload.
35325         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
35326         (gnus-topic-create-topic, gnus-topic-enter-dribble):
35327         Declare rather than autoload.
35328         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
35329         (mailcap-extension-to-mime): Autoload at run-time.
35330         * lisp/gnus/mm-util.el (latin-unity-massage-name)
35331         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
35332         (latin-unity-representations-present-region):
35333         Declare rather than autoload.
35334         * lisp/gnus/mml-smime.el (epg-make-context)
35335         (epg-passphrase-callback-function): Autoload at run-time.
35336         (epg-context-set-signers, epg-context-result-for)
35337         (epg-new-signature-digest-algorithm)
35338         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
35339         (epg-sign-string, epg-encrypt-string)
35340         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
35341         (epg-configuration, epg-expand-group, epa-select-keys):
35342         Declare rather than autoload.
35343         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
35344         Autoload at run-time.
35345         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
35346         (gnus-registry-get-id-key, gnus-registry-action):
35347         Declare rather than autoload.
35348         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
35349         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
35350         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
35351         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
35352         (spam-stat-split-fancy): Remove pointless autoloads.
35353         * lisp/net/mairix.el: Load gnus-util when compiling.
35354         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
35355         (message-field-value): Declare rather than autoload.
35356         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
35357         Check gnus-alive-p is fbound.
35358         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
35359         (vm-check-for-killed-summary, vm-error-if-folder-empty)
35360         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
35361         Declare rather than autoload.
35363         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
35365         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
35366         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
35368         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
35370         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
35372         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
35373         * lisp/emacs-lisp/package.el (epg-signature-status):
35374         Fix declarations.
35376         * lisp/play/gametree.el (gametree-show-children-and-entry)
35377         (gametree-apply-layout, gametree-mouse-show-subtree)
35378         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
35380         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
35381         Handle cl-defgeneric, cl-defmethod.
35383 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
35385         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
35386         Highlight both type and symbol name.
35388         Insert, highlight and align line numbers in xref output
35389         * lisp/progmodes/etags.el (xref-location-line): Specialize for
35390         xref-etags-location.
35391         * lisp/progmodes/xref.el (xref-location-line): New generic method.
35392         (xref-file-location): Add reader for the line slot.
35393         (xref--location-at-point): Skip to the `xref-location' property.
35394         (xref--collect-reference): Drop the line number from description.
35395         (xref--insert-xrefs): Insert, highlight and align line numbers.
35397 2015-05-04  Daniel Colascione  <dancol@dancol.org>
35399         * lisp/simple.el (save-mark-and-excursion--save)
35400         (save-mark-and-excursion--restore): Fix previous commit
35401         (255a011f0ecf004b31c59945b10154b10fac3af1).
35403 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
35405         Don't pulse the indentation, or the newline
35406         * lisp/cedet/pulse.el (pulse-lighten-highlight)
35407         (pulse-reset-face): Fall back to the inherited background
35408         attribute in FACE.
35409         (pulse-momentary-highlight-region): Add autoload cookie.
35410         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
35411         indentation, or the newline, if the line's non-empty
35412         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
35414 2015-05-04  Daniel Colascione  <dancol@dancol.org>
35416         Add `save-mark-and-excursion', which has the old
35417         `save-excursion' behavior
35418         * doc/lispref/positions.texi (Excursions):
35419         Document `save-mark-and-excursion'.
35420         * lisp/font-lock.el (font-lock-fontify-block):
35421         Use `save-mark-and-excursion' instead of `save-excursion',
35422         restoring Emacs 24 behavior.
35423         * lisp/simple.el (save-mark-and-excursion--save)
35424         (save-mark-and-excursion--restore): New functions.
35425         (save-mark-and-excursion): New user macro.
35426         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
35427         in `save-excursion' documentation.
35429 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
35431         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
35432         Classify lone symbol inside let varlist as variable.
35433         * test/automated/elisp-mode-tests.el
35434         (completest-variables-in-let-bindings): New test.
35436         Add xref-pulse-on-jump
35437         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
35438         Add autoload cookie.
35439         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
35440         (xref--maybe-pulse): New function.
35441         (xref-pop-marker-stack, xref--pop-to-location)
35442         (xref--display-position): Use it.
35443         (xref--location-at-point): Use back-to-indentation.
35445 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
35447         lisp/org/org-{macs,list}.el: Fix lexical warnings
35448         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
35449         (org-list-get-next-item, org-list-get-prev-item)
35450         (org-list-get-children): Mark unused arg `struct'.
35451         (org-list-use-alpha-bul-p): Remove unused var `bul'.
35452         (org-toggle-checkbox): Mark unused var.
35453         (org-update-checkbox-count): Remove unused var `box-num'.
35454         (org-adapt-indentation): Declare.
35455         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
35456         (org-list-send-list): Remove unused var `txt'.
35457         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
35458         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
35459         * lisp/org/org-macs.el: Use `declare'.
35460         (org-with-limited-levels): Declare dyn-bound vars.
35462 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
35464         Fix minor issues with CEDET on MS-Windows
35465         * lisp/cedet/semantic/symref/idutils.el
35466         (semantic-symref-parse-tool-output-one-line): Fix the search
35467         regexp to match MS-Windows file names with drive letters.
35468         (Bug#19468)
35469         * lisp/cedet/semantic/symref/grep.el
35470         (semantic-symref-grep-use-template): Remove "--color=always" from
35471         Grep switches on MS-Windows.
35472         (semantic-symref-grep-shell): Use shell-file-name as the default
35473         value, so this works not only on Posix platforms.
35474         (semantic-symref-perform-search): Use shell-quote-argument instead
35475         of literal '..' for portable quoting of Grep command-line
35476         argument.  Use shell-command-switch instead of a literal "-c".
35477         * lisp/cedet/semantic/bovine/gcc.el
35478         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
35479         for an absolute file name in a portable way.
35481 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
35483         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
35484         (package-import-keyring, package-refresh-contents)
35485         (package-compute-transaction, package--save-selected-packages)
35486         (package-install-from-archive, package-delete)
35487         (package-menu--perform-transaction): Use `inhibit-message' instead.
35488         (package--compile): Set `warning-minimum-level' to :error.
35490 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
35492         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
35493         (terminal-init-screen): Use it (bug#20356).
35494         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
35495         (xterm--extra-capabilities-type): New const.
35496         (xterm-extra-capabilities): Use it.
35497         (xterm--version-handler): Lower the pseudo-version for `screen'.
35499 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
35501         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
35502         Always insert a newline at the end (to avoid mouse-face background
35503         tail at the last line).
35505         elisp-completion-at-point: Prioritize being quoted over funpos
35506         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
35507         Only consider function position when not inside quoted form
35508         (bug#20425).
35509         * test/automated/elisp-mode-tests.el: New file.
35511         Stop vc-print-log from jumping to the top
35512         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
35513         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
35514         is not specified.
35515         (vc-incoming-outgoing-internal): Always pass nil.
35516         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
35517         call it, and don't set vc-sentinel-movepoint (bug#15322).
35518         (vc-print-root-log): Don't fetch the root working revision, nor
35519         pass it to vc-print-log-internal.
35521 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
35523         Fix display of keyboard layouts for right-to-left scripts
35524         * lisp/international/quail.el (quail-insert-kbd-layout):
35525         Force left-to-right paragraph direction.
35527 2015-05-02  K. Handa  <handa@gnu.org>
35529         * src/cmds.c (internal_self_insert): When we insert spaces for
35530         padding, set point before the padding spaces, not after them.
35532 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
35534         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
35536 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
35538         Fix etags-xref-find for references
35539         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
35540         Use `cl-mapcan'.
35541         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
35542         directory if no tags tables are loaded (bug#19468).
35544 2015-05-02  Philipp Stephani  <phst@google.com>
35546         Update the options in whitespace-style defcustom
35547         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
35548         `repeat' because the option is really set-like.  Add missing
35549         options.  Reorder options to match the order in the
35550         documentation.  (Bug#20346)
35552 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
35554         Fix error diagnostics of c-macro-expand
35555         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
35556         too early if no start-marker string was found -- that generally
35557         means cpp exited abnormally, and we still want to show its error
35558         messages to the user.
35560         Don't require Texinfo 5.0 for Emacs documentation
35561         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
35562         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
35563         "@codequoteundirected on", respectively, to avoid requiring
35564         Texinfo 5.x for Emacs documentation.
35566 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
35568         * lisp/files.el (pwd):
35569         When called with a prefix argument, insert the current default
35570         directory at point.
35572 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
35574         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
35575         * lisp/isearch.el (isearch-mode-map): Don't inhibit
35576         function-key-map remapping for backspace (bug#20466).
35578 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
35580         Implement xref-find-references in etags and elisp-mode
35581         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
35582         (elisp-xref-find): Use it.
35583         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
35584         * lisp/progmodes/xref.el (xref-collect-references):
35585         (xref--collect-reference): New functions.
35587 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
35589         Prefer plain characters to Texinfo circumlocutions
35590         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
35591         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
35593         Fix single-quoting style in PDF manuals
35594         The PDF versions of the GNU manuals used curved single quotes to
35595         represent grave accent and apostrophe, which made it a pain to cut
35596         and paste code examples from them.  Fix the PDF versions to use
35597         grave accent and apostrophe for Lisp source code, keystrokes, etc.
35598         This change does not affect the info files, nor does it affect
35599         ordinary uses of curved single quotes in PDF.
35600         * doc/emacs/docstyle.texi: New file, which specifies treatment for
35601         grave accent and apostrophe, as well as the document encoding.
35602         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
35603         * doc/lispintro/emacs-lisp-intro.texi:
35604         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
35605         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
35606         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
35607         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
35608         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
35609         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
35610         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
35611         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
35612         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
35613         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
35614         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
35615         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
35616         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
35617         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
35618         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
35619         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
35620         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
35621         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
35622         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
35623         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
35624         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
35625         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
35626         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
35627         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
35628         * doc/misc/woman.texi:
35629         Use it instead of '@documentencoding UTF-8', to lessen the need for
35630         global changes like this in the future.
35631         * doc/emacs/Makefile.in (EMACS_XTRA):
35632         * doc/lispintro/Makefile.in (srcs):
35633         * doc/lispref/Makefile.in (srcs):
35634         Add dependency on docstyle.texi.
35635         * doc/misc/Makefile.in (style): New macro.
35636         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
35637         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
35638         Use it.
35640 2015-05-01  Glenn Morris  <rgm@gnu.org>
35642         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
35644         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
35645         (help-fns--signature): Declare.
35647         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
35649 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
35651         New macro seq-let, providing destructuring support to seq.el
35652         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
35653         to `cl-destructuring-bind' but works on all sequence types supported
35654         by `seq.el'.  Bump version number to 1.6.
35655         * test/automated/seq-tests.el: Add tests for seq-let.
35656         * doc/lispref/sequences.texi: Add documentation for seq-let.
35658 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
35660         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
35662 2015-05-01  Glenn Morris  <rgm@gnu.org>
35664         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
35666 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
35668         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
35669         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
35670         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
35671         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
35672         (Bug#20445).
35674 2015-05-01  K. Handa  <handa@gnu.org>
35676         * lisp/international/mule-cmds.el (input-method-use-echo-area):
35677         Change :type to 'boolean.
35679 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
35681         Start using proportional fonts in eww by default
35682         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
35683         it seems to work well.
35685         Fix links in tables in shr
35686         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
35687         makes (some) links in tables not work.
35689 2015-05-01  Jan D  <jan.h.d@swipnet.se>
35691         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
35693 2015-04-30  Glenn Morris  <rgm@gnu.org>
35695         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
35696         Update for 2015-02-08 change to indirect-function.
35698         * lisp/term/ns-win.el (ns-get-selection-internal):
35699         Remove declaration for function deleted 2014-10-21.
35701         * lisp/dom.el: Load subr-x when compiling, for when-let.
35703         Silence some compilation warnings
35704         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
35705         * lisp/emulation/cua-base.el (delete-active-region):
35706         * lisp/net/net-utils.el (w32-get-console-output-codepage):
35707         * lisp/term/ns-win.el (ns-own-selection-internal)
35708         (ns-disown-selection-internal, ns-selection-owner-p)
35709         (ns-selection-exists-p, ns-get-selection):
35710         Declare for compiler.
35712         Function declaration updates prompted by 'make check-declare'
35713         * lisp/emacs-lisp/package.el (lm-homepage):
35714         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
35715         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
35716         * lisp/gnus/mml.el (libxml-parse-html-region):
35717         * lisp/gnus/nnrss.el (libxml-parse-html-region):
35718         * lisp/net/eww.el (libxml-parse-html-region):
35719         * lisp/net/shr.el (libxml-parse-html-region):
35720         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
35721         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
35722         * lisp/vc/vc-git.el (vc-annotate-convert-time):
35723         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
35724         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
35725         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
35726         Update declaration.
35728         Remove compatibility code for 20-year old function renaming
35729         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
35730         Make it an obsolete alias.
35731         (idlwave-shell-filter): Change all uses to comint-output-filter.
35733 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
35735         Add ace-window face config
35736         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
35737         configuration.
35739 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
35741         Unclutter 'make doc' output a bit
35742         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
35743         Use make subst rather than sh IFS to split target string apart.
35744         This makes 'make' output easier to follow.
35746         Merge from gnulib
35747         * doc/misc/texinfo.tex: Update from gnulib.
35749 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
35751         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
35752         (package-menu--print-info): Obsolete.
35753         (package-menu--print-info-simple): New function.
35754         (package-menu--refresh): Use it, simplify code, and improve
35755         performance.
35756         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
35757         Tiny performance improvement.
35759         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
35761 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
35763         Omit -Wstrict-overflow workaround in GCC 5
35764         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
35765         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
35767         Merge from gnulib
35768         This incorporates:
35769         2015-04-29 extern-inline: no need for workaround in GCC 5.1
35770         2015-04-26 file-has-acl: port to CentOS 6
35771         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
35773 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
35775         Set next-error-* in xref--xref-buffer-mode
35776         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
35777         Set `next-error-function' and `next-error-last-buffer'.
35778         (xref--next-error-function): New function.
35779         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
35781 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
35783         python.el: Fix warnings on looking-back calls missing LIMIT
35784         * lisp/progmodes/python.el (python-shell-accept-process-output):
35785         Pass LIMIT arg to looking-back.
35787 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
35789         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
35790         (package--download-and-read-archives): Use pushnew instead of
35791         append.  If something terrible happened during a previous
35792         download, simply refreshing should now make things work again.
35794 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
35796         Introduce etags-xref-find-definitions-tag-order
35797         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
35798         New variable.
35799         (etags--xref-find-definitions): Use it (bug#19468).
35801 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
35803         PATH- and completion-related fixes in Eshell on MS-Windows
35804         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
35805         MS-Windows, prepend "." to list of directories produced from PATH,
35806         as Windows always implicitly searches the current directory first.
35807         (eshell-force-execution): Make it have a non-nil default value on
35808         MS-Windows and MS-DOS.
35809         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
35810         eshell-force-execution is non-nil, complete on readable files and
35811         directories, not only executables.  When running on MS-Windows,
35812         prepend "." to list of directories produced from PATH, as Windows
35813         always implicitly searches the current directory first.
35815 2015-04-29  Sam Steingold  <sds@gnu.org>
35817         Bury RCIRC buffers when there is no activity
35818         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
35819         (rcirc-bury-buffers): New function.
35820         (rcirc-next-active-buffer): When there is no new activity, use
35821         `rcirc-bury-buffers' to hide all RCIRC buffers.
35823 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
35825         Fix DBUS query result parsing for secrets-search-items
35826         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
35827         parsing.  The function assumed that return value of the
35828         SearchItems method called on a collection is a list of two lists,
35829         however this is true only when no collection is specified.  GNOME
35830         had used to incorrectly return a list of two lists in both cases,
35831         but this was already fixed:
35832         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
35833         incorrect information in the secrets-search-items’ docstring.
35834         (Bug#20449)
35836 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
35838         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
35839         Use `inhibit-message' instead of hiding the previous message
35840         with (message nil).
35842 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
35844         Remove the deprecated INTERNAL_FIELD macro by expanding it
35845         * src/lisp.h (INTERNAL_FIELD): Remove.
35846         (DEFVAR_KBOARD): Modify accordingly.
35847         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
35848         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
35849         * src/buffer.c (compact_buffer): Use BVAR.
35851 2015-04-29  Glenn Morris  <rgm@gnu.org>
35853         Replace an obsolete function alias
35854         * lisp/isearch.el (isearch-yank-x-selection):
35855         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
35856         (mouse-drag-secondary-moving):
35857         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
35858         Replace obsolete alias x-get-selection with gui-get-selection.
35860 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
35862         * lisp/mail/rmailsum.el: Use lexical-binding.
35864 2015-04-29  Glenn Morris  <rgm@gnu.org>
35866         * test/automated/package-test.el (package-test-update-archives-async):
35867         Skip test on hydra.nixos.org.
35869 2015-04-28  Glenn Morris  <rgm@gnu.org>
35871         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
35872         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
35873         (foldout-mouse-hide-or-exit): Use new names for outline functions.
35875         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
35876         Update for 2014-06-26 hideif.el change.
35878         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
35879         (rmail--decode-and-apply): New function.
35880         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
35882         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
35884 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
35886         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
35887         (package-menu--refresh): Delegate obsolete-hiding to
35888         `package--remove-hidden'.
35889         (package--remove-hidden): Disregard high-priority package if it is
35890         older than the installed one.
35892 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
35894         Update source file encoding list
35895         Update admin/notes/unicode, along with coding system cookies in
35896         other files, so that the two match each other better.
35897         * admin/notes/unicode: lisp/language/ethio-util.el and
35898         lisp/language/ethiopic.el also use utf-8-emacs.
35899         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
35900         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
35901         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
35902         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
35903         * etc/refcards/sk-survival.tex:
35904         Add "coding: utf-8" so that this file is not mishandled in a
35905         Latin-1 or Big-5 locale.
35906         * lisp/international/robin.el, lisp/org/ox-ascii.el:
35907         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
35908         * lisp/language/ethio-util.el: Fix trailer.
35910 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
35912         Fix synchronous invocation of Ispell
35913         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
35914         value to ispell-process-directory before calling ispell-init-process.
35915         Don't call set-process-coding-system if ispell-async-processp is nil.
35916         (Bug#20448)
35918 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
35920         * lisp/emacs-lisp/package.el: Skip space and comments in init file
35921         (package--ensure-init-file): Insert snippet at first
35922         non-whitespace non-comments line.  Respects local-vars at the top
35923         of the file.
35925 2015-04-28  Glenn Morris  <rgm@gnu.org>
35927         * lisp/mail/rmail.el (rmail-copy-headers):
35928         Handle rmail-nonignored-headers being nil.  (Bug#18878)
35930         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
35932         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
35933         Don't get confused by a bzrlib version mismatch warning.
35935 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
35937         Change default location of EUDC options file
35938         * etc/NEWS: Document change to EUDC options file's default location.
35939         * lisp/net/eudc-vars.el (eudc-options-file): Use
35940         `locate-user-emacs-file' to change default options file location.
35942 2015-04-27  Glenn Morris  <rgm@gnu.org>
35944         * test/automated/package-test.el (package-test-update-archives-async):
35945         Try to handle the test server script dying.
35947 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
35949         * lisp/saveplace.el (save-place-mode): New minor mode.
35950         (save-place): Redefine as an obsolete alias.
35952         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
35953         * lisp/midnight.el: Use lexical-binding.
35954         (midnight-mode): Make it a proper minor mode.
35955         (midnight-buffer-display-time): Make arg non-optional.
35956         (midnight-find): Remove.
35957         (clean-buffer-list-kill-never-regexps)
35958         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
35959         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
35960         contain functions.
35961         (clean-buffer-list): Use cl-find.
35962         Allow clean-buffer-list-kill-never-regexps to contain functions.
35964 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
35966         Bump version of seq.el to 1.5
35967         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
35968         from seq-doseq.  Bump version number of seq.el.
35970 2015-04-27  Glenn Morris  <rgm@gnu.org>
35972         * lisp/mail/rmail.el (rmail-reply):
35973         Decode subject before matching "Re:" prefix.  (Bug#20396)
35975 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
35977         * lisp/emacs-lisp/package.el: Small improvements
35978         (package--with-work-buffer-async): More informative error.
35979         (package-install-user-selected-packages): Rename to
35980         `package-install-selected-packages'.
35982 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
35984         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
35985         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
35986         (eieio--class-make): Remove leftover `tag'.
35988 2015-04-27  Glenn Morris  <rgm@gnu.org>
35990         * lisp/gnus/message.el (gnus-extract-address-components):
35991         Remove bogus declaration that was masking previous problem.
35993 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
35995         * lisp/gnus/message.el (message-insert-formatted-citation-line):
35996         Fix typo.  (Bug#20318)
35998 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
36000         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
36002         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
36003         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
36004         the buffer in yet another frame.
36005         (reftex-toc-visit-location): Make sure toc-window has focus at the end
36006         when `final' is nil.
36007         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
36008         silence warnings.  Use `--' to clarify that it's internal.
36009         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
36010         (reftex-toc-promote): Clarify unused argument.
36011         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
36012         Add `reftex--' prefix.  Fix all users.
36013         (reftex-toc-promote-prepare): Use _ for dummy variable.
36014         (reftex-toc-restore-region): Rename `m.
36016 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
36018         Fix a typo in bibtex.el
36019         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
36020         last change.  (Bug#20429)
36022         Fix redisplay of frame after loading new fonts
36023         * src/xdisp.c (redisplay_internal): When retrying redisplay of
36024         a frame because new fonts were loaded, disable all redisplay
36025         optimizations on that frame by calling SET_FRAME_GARBAGED.
36026         (Bug#20410)
36028 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
36030         * lisp/info.el (Info-menu): Properly provide the `default'
36031         (Bug#20391)
36033         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
36034         Catch errors from documentation (bug#20418).
36035         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
36037 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
36039         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
36040         Remove redundant ":group 'package".
36042 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
36044         Fix a typo in rmail.el
36045         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
36046         last commit.  (Bug#20429)
36048 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
36050         Introduce xref-prompt-for-identifier
36051         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
36052         (xref--read-identifier): Use it
36053         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
36055 2015-04-26  João Távora  <joaotavora@gmail.com>
36057         `tex-insert-quote' after single `'' opens quotes instead of closing
36058         Without this, it's very hard to precede double quotes with the
36059         apostrophe character, i.e. insert the sequence '``
36060         (quote-backquote-backquote), commonly useful in portuguese, for
36061         instance.
36062         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
36063         preceding chars making `tex-insert-quote' be in the "opening" context.
36065 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
36067         Pass `id' to `completing-read' as def instead of initial input
36068         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
36069         `completing-read' as the default value instead of initial input
36070         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
36072 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
36074         Don't freeze with unreadable processes
36075         Don't freeze if an exiting process can't be read from.  (Bug#19860).
36076         This fixes a bug I introduced in
36077         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
36078         "* process.c: Add sanity checks for file descriptors."
36079         Dmitry Gutov did most of the legwork in finding the problem.
36080         * src/process.c (wait_reading_process_output):
36081         Treat non-running processes that can't be read from
36082         the same as other non-running processes.
36084 2015-04-25  Alan Mackenzie  <acm@muc.de>
36086         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
36087         * lisp/subr.el (remove-yank-excluded-properties): Put
36088         `with-silent-modifications' around only the last three lines of code.
36090 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
36092         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
36093         (package--all-keywords): Deleted variable.
36095         * etc/NEWS: Document package-hiding functionality.
36097 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
36099         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
36101         Clarify the doc string of 'replace-regexp-in-string'
36102         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
36104         Improve doc string of 'insert-buffer-substring'
36105         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
36107         MS-Windows followup for the recent gnulib update
36108         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
36109         acl-internal.c.
36111 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
36113         Spelling fixes
36115         Merge from gnulib
36116         This incorporates:
36117         2015-04-24 file-has-acl: new module, split from acl
36118         2015-04-24 manywarnings: add GCC 5.1 warnings
36119         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
36120         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
36121         2015-04-15 acl: On Linux, check for acls without libacl
36122         2015-04-14 tempname: avoid unused parameter warnings (trivial)
36123         * lib/acl-internal.c: New file, from gnulib.
36124         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
36125         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
36126         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
36127         Update from gnulib.
36129         Port --enable-gcc-warnings to GCC 5.1 x86-64
36130         * lib-src/ebrowse.c (dump_sym):
36131         * lib-src/hexl.c (main):
36132         * src/ccl.c (ccl_driver):
36133         * src/character.c (string_escape_byte8):
36134         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
36135         * src/gnutls.c (Fgnutls_boot):
36136         * src/gtkutil.c (xg_check_special_colors):
36137         * src/image.c (x_build_heuristic_mask):
36138         * src/print.c (safe_debug_print, print_object):
36139         * src/term.c (produce_glyphless_glyph):
36140         * src/xdisp.c (get_next_display_element)
36141         (produce_glyphless_glyph):
36142         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
36143         Don't use a signed format to print an unsigned integer, or vice
36144         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
36145         * src/image.c (png_load_body, jpeg_load_body):
36146         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
36148 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
36150         Add new faces to tsdh-light-theme
36151         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
36152         definitions for Info-quoted, ace-jump-face-foreground,
36153         hl-paren-face, show-paren-match, and show-paren-mismatch.
36155 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
36157         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
36159 2015-04-24  Glenn Morris  <rgm@gnu.org>
36161         * build-aux/gitlog-to-emacslog:
36162         Use raw log format rather than wrapped one.
36164 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
36166         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
36167         (seq-doseq): Fix out-of-scope binding.
36168         Don't call `seq-length at every iteration.
36169         Reduce `if's from 3 to 2 per iteration.
36170         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
36172 2015-04-24  Glenn Morris  <rgm@gnu.org>
36174         * lisp/textmodes/text-mode.el (text-mode-hook):
36175         Move text-mode-hook-identify to default.
36177         * lisp/mouse.el (minor-mode-menu-from-indicator):
36178         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
36180         * lisp/help-fns.el (describe-function): More type checking.
36181         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
36183         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
36184         (Bug#20325)
36186 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
36188         shr: strip leading whitespace when expanding URLs
36189         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
36191 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
36193         Clarify "co-authored" some more
36195         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
36197         Clarify doc strings of functions that search for properties
36198         * src/textprop.c (Fnext_char_property_change)
36199         (Fprevious_char_property_change)
36200         (Fnext_single_char_property_change)
36201         (Fprevious_single_char_property_change, Fnext_property_change)
36202         (Fnext_single_property_change, Fprevious_property_change)
36203         (Fprevious_single_property_change): Clarify doc strings wrt return
36204         value and the optional LIMIT argument.  (Bug#20411)
36206 2015-04-24  Glenn Morris  <rgm@gnu.org>
36208         * test/automated/message-mode-tests.el (message-mode-propertize):
36209         Handle non-writable HOME; eg on hydra.nixos.org.
36211 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
36213         Avoid starting threads by w32-shell-execute
36214         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
36215         local file names, before invoking ShellExecute.  (Bug#20220)
36217 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
36219         Fix following doc-links in `widget-documentation-link-action'
36220         * lisp/wid-edit.el (widget-documentation-link-action): Make
36221         following doc-links less simplistic (Bug#20398).
36223 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
36225         Improve EUDC manual
36226         * doc/misc/eudc.texi (Troubleshooting):
36227         New LDAP troubleshooting subsection.
36229 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
36231         Omit needless "\ " after multibyte then newline
36232         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
36233         (print_object): When print-escape-multibyte is non-nil and a
36234         multibyte character is followed by a newline or formfeed, followed
36235         by a hex digit, don't output a needless "\ " before the hex digit.
36236         * test/automated/print-tests.el (print-hex-backslash): New test.
36238 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
36240         Add a new `inhibit-message' variable
36241         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
36242         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
36243         `inhibit_message' is non-zero.
36244         * etc/NEWS: Add an entry.
36245         * doc/lispref/display.texi: Add an entry for `inhibit-message',
36246         mention it in `message'.
36248 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
36250         Fix last fix in `display-buffer-record-window'.
36251         * lisp/window.el (display-buffer-record-window): Fix last fix.
36253 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
36255         Minor edits in CONTRIBUTE
36256         * CONTRIBUTE: Rearrange instructions about log messages.
36257         Use "Git" capitalized all over.
36258         Use 2 spaces between sentences.
36260 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
36262         * lisp/files.el (basic-save-buffer): Fix argument.
36264         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
36265         In case `(and (null custom-file) init-file-had-error)' do the same
36266         thing we'd do if `(null user-init-file)', which is to either error out
36267         or return nil.  This is in line with `custom-save-all' which would
36268         throw an error in that situation.  (Bug#20355)
36270         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
36271         (package-menu-hide-low-priority): New variable, see its doc.
36272         (package-archive-priorities): Update doc.
36273         (package-desc-priority): New function.
36274         (package-desc-priority-version): Use it.
36275         (package--remove-hidden): New function.
36276         (package-menu--refresh): Use it.
36278         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
36279         (package-menu--hide-obsolete): New variable.
36280         (package--remove-hidden): Use it.
36281         (package-menu-hide-obsolete): New interactive function to toggle
36282         the variable.
36283         (package--quick-help-keys): Document it.
36284         (package-menu-async): Add :version tag.
36285         (package-menu-mode-map): Bind package-menu-hide-obsolete.
36286         (package-desc-status): Indicate non-installed obsolete packages as
36287         avail-obso.
36288         (package-menu-mark-install): Allow installation of avail-obso.
36289         (package-menu--status-predicate): Sort avail-obso with available.
36291 2015-04-22  Alan Mackenzie  <acm@muc.de>
36293         On C-y, stop some text property entries being written into buffer-undo-list
36294         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
36295         `with-silent-modifications'.
36297 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
36299         In display-buffer-record-window record selected window if necessary
36300         * lisp/window.el (display-buffer-record-window): Store selected window
36301         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
36303 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
36305         Fix reftex-citation bug
36306         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
36307         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
36308         integration is enabled and there are no citations in the document
36309         so far.
36311 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
36313         Add or reset based on the presence of MERGE_HEAD
36314         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
36315         `vc-git-resolve-when-done' to `after-save-hook' in either case.
36316         (vc-git-conflicted-files): Add a TODO.
36317         (vc-git-resolve-when-done): Depending on the presence of
36318         MERGE_HEAD, either update the resolved file in the index, or
36319         remove it from there.  (Bug#20292)
36321 2015-04-21  Glenn Morris  <rgm@gnu.org>
36323         * lisp/custom.el (custom-declare-group): No need to purecopy
36324         custom-current-group-alist members following recent change to set
36325         it to nil before dumping.
36327         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
36328         (Bug#20399)
36330 2015-04-21  Daniel Colascione  <dancol@dancol.org>
36332         Unbreak no-op buffer save message
36333         * lisp/files.el (basic-save-buffer): Accept called-interactively as
36334         an argument instead of directly invoking called-interactively-p,
36335         which will always yield nil in that context.
36337 2015-04-21  Alan Mackenzie  <acm@muc.de>
36339         CC Mode: Do nothing in before/after-change-functions for text
36340         property changes
36341         Fixes bug#20266.
36342         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
36343         yank-handled-properties buffer local, and remove 'category from it.
36344         (c-called-from-text-property-change-p): New function.
36345         (c-before-change): Don't do anything if a call of the new function
36346         returns non-nil.
36347         (c-after-change): Don't do much if a call of the new function returns
36348         non-nil.
36349         (c-extend-after-change-region): Put changes to text property 'fontified
36350         inside c-save-buffer-state.
36352 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
36354         Fix byte-compiler warnings about looking-back
36355         * lisp/vc/log-view.el (log-view-end-of-defun-1):
36356         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
36357         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
36358         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
36359         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
36360         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
36361         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
36362         * lisp/org/org.el (org-insert-heading, org-sort-entries):
36363         * lisp/org/org-mouse.el (org-mouse-end-headline)
36364         (org-mouse-context-menu):
36365         * lisp/org/org-clock.el (org-clock-cancel):
36366         * lisp/man.el (Man-default-man-entry):
36367         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
36368         (rmail-ensure-blank-line):
36369         * lisp/mail/footnote.el (Footnote-delete-footnote):
36370         * lisp/mail/emacsbug.el (report-emacs-bug):
36371         * lisp/info.el (Info-follow-reference, Info-fontify-node):
36372         * lisp/info-look.el (info-lookup-guess-custom-symbol):
36373         * lisp/help-fns.el (help-fns--key-bindings):
36374         * lisp/files.el (hack-local-variables):
36375         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
36376         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
36377         (viper-complete-filename-or-exit):
36378         * lisp/emulation/viper-cmd.el (viper-backward-indent):
36379         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
36380         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
36381         * lisp/cus-edit.el (custom-face-edit-value-create):
36382         * lisp/calendar/todo-mode.el (todo-set-item-priority)
36383         (todo-filter-items-1, todo-convert-legacy-files)
36384         (todo-prefix-overlays): Add explicit second arg to looking-back.
36386 2015-04-20  Glenn Morris  <rgm@gnu.org>
36388         Avoid non-nil current-load-list at startup
36389         * src/process.c (init_process_emacs): Move Fprovide statement...
36390         (syms_of_process): ... to here.
36392         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
36394         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
36395         in emacs -Q.
36397 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
36399         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
36400         (Bug#20330)
36402 2015-04-20  Glenn Morris  <rgm@gnu.org>
36404         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
36406         Tweak exec-path in uninstalled case
36407         * src/callproc.c (init_callproc): If running uninstalled, do not
36408         include eventual installation libexec directory in exec-path.
36410 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
36412         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
36413         cache keywords.
36414         (package-menu-filter): Accept a list of keywords.
36415         (package--all-keywords): New variable to cache known keywords.
36416         (package-all-keywords): Populate it if necessary.
36417         (package-refresh-contents): Reset it.
36419         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
36420         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
36421         as special keywords which match agains package archive and status
36422         respectively.
36423         * etc/NEWS: Document it.
36425 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
36427         Describe and index "empty overlays".
36428         * doc/lispref/display.texi (Overlays): Improve indexing.
36429         (Managing Overlays): Describe "empty" overlays.
36430         (Overlay Properties, Finding Overlays): Add cross-reference to
36431         where empty overlays are described.
36433 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
36435         Spelling fixes
36437         Quote 'like this' in top-level files
36438         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
36439         Prefer to single-quote 'like this' (instead of the older style
36440         `like this').
36441         * configure.ac: Fix some space-before-tab problems that 'git commit'
36442         complained about.
36444         Use bool for boolean in textprop.c, undo.c
36445         * src/textprop.c (soft, hard): Now constants instead of macros.
36446         (validate_plist): Rewrite to avoid need for boolean local.
36447         (interval_has_all_properties, interval_has_some_properties)
36448         (interval_has_some_properties_list, add_properties)
36449         (remove_properties, get_char_property_and_overlay)
36450         (Fnext_single_char_property_change)
36451         (Fprevious_single_char_property_change, add_text_properties_1)
36452         (Fremove_text_properties, Fremove_list_of_text_properties)
36453         (copy_text_properties):
36454         * src/tparam.c (tparam1):
36455         * src/undo.c (record_change, record_property_change)
36456         (syms_of_undo):
36457         Use 'true' and 'false' for booleans.
36459 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
36461         * lisp/vc/vc-git.el (vc-git-find-file-hook):
36462         Call `smerge-start-session' even when dealing with a stash
36463         conflict (bug#20292).
36465 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
36467         Add option to eshell/clear to clear scrollback.
36468         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
36469         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
36470         scrollback contents are cleared.
36471         * etc/NEWS: Describe change.
36472         * doc/misc/eshell.texi: Add entry for `clear'.
36474 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
36476         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
36477         where either will do.
36479 2015-04-19  Steve Purcell  <steve@sanityinc.com>
36481         Assume package archive-contents are UTF8-encoded
36482         * lisp/emacs-lisp/package.el (package--read-archive-file):
36483         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
36484         downloaded and cached archive-contents files, so that non-ASCII
36485         characters in package descriptions are displayed correctly in the
36486         `list-packages' menu.  (Bug#20231)
36488 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
36490         Abort when looking at stashed changes
36491         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
36492         stashed changes (bug#20292).
36494 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
36496         Refactor low-level printing for simplicity
36497         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
36498         PRINTPREPARE; doable now that we assume C99.  All callers changed.
36499         (PRINTCHAR): Remove, as it adds more mystery than clarity.
36500         All callers changed.
36501         (strout): Assume that caller computes length.  All callers changed.
36502         (print_c_string): New function.
36503         (write_string, write_string_1): Compute length instead of asking
36504         the caller to compute it.  All callers changed.
36505         (write_string): Simplify by using write_string_1.
36506         (write_string_1): Simplify by using print_c_string.
36507         (Fterpri): Compute default val more clearly.
36508         (Fprin1_to_string, print_object):
36509         Assume C99 to avoid unnecessary nesting.
36510         (print_object): Prefer print_c_string to multiple printchar, or
36511         to calling strout with -1 length.  Coalesce into sprintf when
36512         this is easy.
36514 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
36516         Prefer "Bug#1234" in commit messages (Bug#20325)
36517         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
36518         as this isn't useful for Git.
36519         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
36521 2015-04-18  Glenn Morris  <rgm@gnu.org>
36523         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
36524         (Bug#19506)
36526 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
36528         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
36529         Do not use `chomp' as a function.  (Bug#19505)
36531 2015-04-18  Glenn Morris  <rgm@gnu.org>
36533         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
36535         * doc/emacs/misc.texi (Sorting): Small edit.
36536         (Bug#19896)
36538         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
36540 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
36542         css-mode.el: Support multi-line comment filling
36543         (Bug#20256)
36544         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
36545         comment filling.
36546         (css-adaptive-fill): New function.
36547         (css-mode): Set `adaptive-fill-function'.
36548         (scss-mode): Set `comment-continue'.
36550 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
36552         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
36553         Better error messages.
36555 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
36557         Minor improvements in Bulgarian input methods
36558         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
36559         Replace U+042C with U+045D, as the former character is not used in
36560         the modern Bulgarian language.
36561         (Bug#20350)
36563 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
36565         Improve EUDC manual
36566         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
36567         authentication schemes.  Add index items.  Shorten example server
36568         name.
36570 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
36572         Don't show both feature and function with the same name
36573         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
36574         Don't show both feature and function with the same name.
36576         (elisp--xref-identifier-location): Skip variable, if it's also
36577         a function
36578         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
36579         Avoid returning both the variable and the function for the same
36580         minor mode.
36582 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
36584         Fix fontification of keywords clobbered by the prompt
36585         * lisp/comint.el (comint-output-filter): Remove the uses of
36586         with-silent-modifications I introduced as part of the last change.
36587         This fixes, e.g., erratically missing highlighting when running
36588         ./configure --help; ./configure in a shell-mode buffer with
36589         compilation-shell-minor-mode turned on.
36591 2015-04-17  Glenn Morris  <rgm@gnu.org>
36593         * admin/authors.el (authors-valid-file-names)
36594         (authors-renamed-files-alist): Additions.
36596 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
36598         * lisp/indent.el (indent-region): Don't deactivate the mark.
36599         (Bug#20357)
36601 2015-04-17  Sam Steingold  <sds@gnu.org>
36603         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
36605 2015-04-16  Leo Liu  <sdl.web@gmail.com>
36607         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
36609 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
36611         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
36612         Don't use `pcomplete' any more.
36614 2015-04-16  Glenn Morris  <rgm@gnu.org>
36616         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
36618 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
36620         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
36621         * configure.ac (LIBJPEG): Leave it empty for MinGW.
36623 2015-04-16  Glenn Morris  <rgm@gnu.org>
36625         * lisp/replace.el (query-replace-from-to-separator):
36626         Delay initialization to avoid rogue setting after startup.
36628 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
36630         Pre-4.6 GCC succeeds with unknown option
36631         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
36632         (Bug#20338)
36634 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
36636         '[:graph:]' now excludes whitespace, not just ' '
36637         * doc/lispref/searching.texi (Char Classes):
36638         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
36639         sans whitespace (not sans space).
36640         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
36641         not just space.
36642         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
36644 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
36646         * lisp/subr.el (substitute-key-definition-key, special-form-p)
36647         (macrop): Drop deprecated second arg to indirect-function.
36648         (looking-back): Make the second arg non-optional.
36650         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
36651         command is actually sent to the shell.
36653 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
36655         Port jpeg configuration to Solaris 10 with Sun C
36656         * configure.ac: Check for jpeglib 6b by trying to link it, instead
36657         of relying on cpp magic that has problems in practice.  Check for
36658         both jpeglib.h and jerror.h features.  Remove special case for
36659         mingw32, which should no longer be needed (and if it were needed,
36660         should now be addressable by hotwiring emacs_cv_jpeglib).
36661         (Bug#20332)
36663 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
36665         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
36666         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
36667         Move to elisp-mode.el.
36668         (lisp-mode-variables): (Re)move elisp-specific settings.
36669         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
36670         from lisp-mode-variables.
36671         (elisp--font-lock-flush-elisp-buffers): New function, moved from
36672         lisp-mode.el.
36674         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
36675         Avoid pathological slowdown at top-level in large file.
36677 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
36679         Standardize names of ChangeLog history files
36680         Suggested by Glenn Morris in:
36681         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
36682         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
36683         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
36684         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
36685         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
36686         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
36687         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
36688         Remove.
36690         Split top-level entries into pre- and post-April 7
36691         This more clearly distingiushes pre-April-7 ChangeLog entries (which
36692         are for top-level files only) from post-April-7 entries (which are
36693         about files at all levels.  Problem reported by Glenn Morris in:
36694         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
36695         * ChangeLog.1: Move post-April-7 entries from here ...
36696         * ChangeLog.2: ... to this new file.
36697         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
36699 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
36701         Fix recent cus-start changes that added customize-rogues
36702         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
36703         vars early.
36704         * lisp/loadup.el ("cus-start"): Move to the end to reduce
36705         customize-rogue.
36707 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
36709         Define cl-concatenate as an alias to seq-concatenate
36710         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
36711           code by making cl-concatenate an alias to seq-concatenate.
36713 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
36715         * src/lread.c (intern_1): Make sure we'd find the symbol we add
36716         (Bug#20334)
36717         * src/xfaces.c (resolve_face_name): Don't use `intern' with
36718         Lisp_Strings.
36720 2015-04-15  Glenn Morris  <rgm@gnu.org>
36722         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
36724 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
36726         Clean up gnus-uu saving code slightly
36727         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
36728         save-restriction/widen calls make more sense.
36730 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
36732         Make [:graph:] act like [:print:] sans space
36733         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
36734         [:graph:] so that it matches everything that [:print:] does,
36735         except for space.
36736         * doc/lispref/searching.texi (Char Classes):
36737         * etc/NEWS:
36738         * lisp/emacs-lisp/rx.el (rx):
36739         Document [:graph:] to be [:print:] sans ' '.
36740         * src/character.c, src/character.h (graphicp): New function.
36741         * src/regex.c (ISGRAPH) [emacs]: Use it.
36742         (BIT_GRAPH): New macro.
36743         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
36744         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
36745         Return BIT_GRAPH for RECC_GRAPH.
36746         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
36747         and ISPRINT if BIT_PRINT.
36749 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
36751         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
36752         Don't use call-next-method in a cl-defmethod.
36754         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
36755         (eieio--class-p): Remove, provided by cl-defstruct.
36757 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
36759         Add seq-intersection and seq-difference to the seq library
36760         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
36761         New functions.
36762         * test/automated/seq-tests.el: Add tests for seq-intersection and
36763         seq-difference.
36764         * doc/lispref/sequences.texi: Add documentation for seq-intersection
36765         and seq-difference.
36767 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
36769         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
36770         to avoid leaking internals.
36772 2015-04-14  Sam Steingold  <sds@gnu.org>
36774         package--ensure-init-file: widen requires save-restriction
36776 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
36778         Improve the commit-msg Git hook for unibyte environments
36779         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
36780         in unibyte environments.  (Suggested by Paul Eggert
36781         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
36782         [:print:], based on UTF-8 sequences of the unprintable characters.
36784         Describe problems with cursor caused by Windows Magnifier
36785         * etc/PROBLEMS: Describe the problem with cursor shape on
36786         MS-Windows due to Windows Magnifier.
36787         (Bug#20271)
36789         Make [:print:] support non-ASCII characters correctly
36790         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
36791         (BIT_PRINT): New bit mask.
36792         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
36793         * src/character.c (printablep): New function.
36794         * src/character.h (printablep): Add prototype.
36795         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
36796         of 'print', 'alnum', and 'alphabetic'.
36797         * doc/lispref/searching.texi (Char Classes): Document the new
36798         behavior of [:print:].
36799         * etc/NEWS: Mention the new behavior of [:print:].
36801         Assign correct general-category and names to surrogates
36802         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
36803         surrogates.  This avoids assigning them the default
36804         general-category of 'Cn', i.e. unassigned codepoints.
36805         (unidata-get-name): Give surrogates synthetic names.
36807 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
36809         Assume C89 offsetof in xterm.c, xlwmenu.c
36810         * lwlib/xlwmenu.c (offset):
36811         * src/xterm.c (cvt_string_to_pixel_args):
36812         Use offsetof, not XtOffset.
36814 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
36816         Assume C89 offsetof in widget.c
36817         * src/widget.c (XtOffset): Remove; no longer needed.
36818         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
36820         Fix think-o in previous patch
36821         * src/window.c (count_windows, get_leaf_windows):
36822         Don't optimize count_windows incorrectly.
36824 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
36826         Avoid some int overflows in window.c
36827         * src/print.c (print_object):
36828         * src/window.c (sequence_number):
36829         * src/window.h (struct window.sequence_number):
36830         Don't assume window sequence number fits in int.
36831         * src/window.c (window_select_count):
36832         * src/window.h (struct window.use_time, window_select_count):
36833         Don't assume window use time fits in int.
36834         * src/window.c (Fsplit_window_internal):
36835         Don't assume user-supplied integer, or sum, fits in int.
36836         (Fset_window_configuration, count_windows, get_leaf_windows)
36837         (save_window_save, Fcurrent_window_configuration):
36838         Use ptrdiff_t for object counts.
36839         (Fset_window_configuration): Omit unused local 'n'.
36840         (count_windows): Simplify by writing in terms of get_leaf_windows.
36841         (get_leaf_windows): Don't store through FLAT if it's null.
36842         (extract_dimension): New static function.
36843         (set_window_margins, set_window_fringes, set_window_scroll_bars):
36844         Use it to avoid undefined behavior when converting user-supplied
36845         integer to 'int'.
36847 2015-04-13  Glenn Morris  <rgm@gnu.org>
36849         Minor doc copyedits
36850         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
36851         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
36853 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
36855         [Gnus] Catch the invalid-operation that idna.el will issue
36856         * lisp/gnus/gnus-art.el (gnus-use-idna):
36857         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
36858         * lisp/gnus/message.el (message-use-idna):
36859         Catch the invalid-operation that idna.el will issue.
36861 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
36863         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
36865 2015-04-13  Sam Steingold  <sds@gnu.org>
36867         package--ensure-init-file: widen before looking for
36868         "(package-initialize)"
36870 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
36872         Change diff-switches default to `-u' (Bug#20290)
36873         * doc/emacs/files.texi (Comparing Files): Document the new default
36874         value of `diff-switches'.
36875         * doc/emacs/trouble.texi (Sending Patches): Document the preference
36876         for unified diff format.  Escape the plus in the suggested `-F' regexp
36877         value.
36878         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
36880 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
36882         (gnus-group--setup-tool-bar-update): Fix last change
36883         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
36884         cursor-sensor-functions should be a list of functions.
36886 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
36888         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
36889         Use gmm-called-interactively-p.
36891 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
36893         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
36894         (Bug#20321)
36895         * lisp/cus-start.el (read-buffer-function): Don't advertise
36896         iswitchb-read-buffer any more.
36897         (iswitchb): Don't tweak this obsolete group any more.
36899 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
36901         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
36903         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
36904         Adding a string after a constructor's argument list will use
36905         that string as the constructor function docstring.  If this string
36906         is absent but the struct itself was given a docstring, use that as
36907         the constructor's docstring.
36908         Fixes bug#17284.
36910 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
36912         Deprecate `intangible' and `point-entered' properties
36913         * lisp/emacs-lisp/cursor-sensor.el: New file.
36914         * lisp/simple.el (pre-redisplay-functions): New hook.
36915         (redisplay--pre-redisplay-functions): New function.
36916         (pre-redisplay-function): Use it.
36917         (minibuffer-avoid-prompt): Mark obsolete.
36918         (redisplay--update-region-highlight): Adapt it to work as a function on
36919         pre-redisplay-functions.
36920         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
36921         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
36922         than point-entered to make the prompt intangible.
36923         * lisp/forms.el: Move `provide' calls to the end.
36924         (forms-mode): Don't use `run-hooks' on a local var.
36925         (forms--make-format, forms--make-format-elt-using-text-properties):
36926         Use cursor-intangible rather than `intangible'.
36927         (forms-mode): Enable cursor-intangible-mode.
36928         * lisp/isearch.el (isearch-mode): Use defvar-local.
36929         (cursor-sensor-inhibit): Declare.
36930         (isearch-mode): Set cursor-sensor-inhibit.
36931         (isearch-done): Set it back.
36932         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
36933         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
36934         any more.
36935         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
36936         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
36937         Add Edebug spec.
36938         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
36939         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
36940         inhibit-point-motion-hooks any more.
36941         (ses--cell-at-pos, ses--curcell): New functions, extracted from
36942         ses-set-curcell.
36943         (ses-set-curcell): Use them.
36944         (ses-print-cell, ses-setup): Use cursor-intangible instead of
36945         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
36946         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
36947         Use ses--cell-at-pos.
36948         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
36949         extracted from ses-command-hook.  Make them work with multiple windows
36950         displaying the same buffer.
36951         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
36952         Enable cursor-intangible-mode.
36953         (ses-command-hook): Remove cell highlight and mode-line update code.
36954         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
36955         Update for new name of text-property holding the cell name.
36956         (ses-rename-cell): Don't mess with mode-line-process.
36957         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
36958         cursor-sensor-functions property instead of point-entered.
36959         (erc-insert-timestamp-right, erc-format-timestamp):
36960         Use cursor-intangible rather than `intangible'.
36961         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
36962         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
36963         cursor-sensor-mode if needed.
36964         (erc-echo-timestamp): Adapt to calling convention of
36965         cursor-sensor-functions.
36966         (erc-insert-timestamp-right): Remove unused vars `current-window' and
36967         `indent'.
36968         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
36969         (gnus-update-group-mark-positions): Remove unused `topic' var.
36970         (gnus-group-insert-group-line): Remove unused var `header'.
36971         (gnus-group--setup-tool-bar-update): New function.
36972         (gnus-group-insert-group-line): Use it.
36973         (gnus-group-update-eval-form): Declare local
36974         dynamically-bound variables.
36975         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
36976         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
36977         (gnus-group-prepare-topics, gnus-topic-update-topic)
36978         (gnus-topic-change-level, gnus-topic-catchup-articles)
36979         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
36980         Use inhibit-read-only.
36981         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
36982         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
36983         * lisp/textmodes/reftex-index.el (reftex-display-index):
36984         Use cursor-intangible-mode if available.
36985         (reftex-index-post-command-hook): Check cursor-intangible.
36986         * lisp/textmodes/reftex-toc.el (reftex-toc):
36987         Use cursor-intangible-mode if available.
36988         (reftex-toc-recenter, reftex-toc-post-command-hook):
36989         Check cursor-intangible.
36990         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
36991         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
36992         (sgml-tags-invisible): Use with-silent-modifications and
36993         inhibit-read-only.  Enable cursor-sensor-mode.
36994         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
36995         calling convention of cursor-sensor-functions.
36996         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
36997         (table-point-entered-cell-hook, table-point-left-cell-hook):
36998         Don't autoload.
36999         (table-cell-entered-state): Remove var.
37000         (table--put-cell-point-entered/left-property)
37001         (table--remove-cell-properties):
37002         Use cursor-sensor-functions rather than point-entered/left.
37003         (table--point-entered/left-cell-function): Merge
37004         table--point-entered-cell-function and table--point-left-cell-function
37005         and adjust to calling convention of cursor-sensor-functions.
37007         Update ldef-boots.el
37009         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
37011         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
37013         Collapse successive char deletions in the undo log
37014         * src/cmds.c (remove_excessive_undo_boundaries): New function,
37015         extracted from Fself_insert_command.
37016         (Fdelete_char, Fself_insert_command): Use it.
37017         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
37018         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
37020         xterm and OSC 52: Add NEWS entry, and tweak the code
37021         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
37022         to top-level.
37023         (terminal-init-xterm-activate-set-selection): Set a terminal property.
37024         (xterm--set-selection): Use it instead of checking the value of
37025         `terminal-initted'.  Don't use string-bytes.
37027 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
37029         xterm.el: Implement OSC-52 functionality for setting the X selection
37030         * lisp/term/xterm.el (xterm-max-cut-length): New var.
37031         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
37032         New funs.
37033         (terminal-init-xterm, xterm--version-handler): Use them.
37035 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
37037         Remove left over code from when we used an obsolete/loaddefs.el file
37038         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
37039         when we used an obsolete/loaddefs.el file.
37041         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
37042         (semanticdb-without-unloaded-file-searches): Use declare.
37043         (semantic-fw-add-edebug-spec): Remove.
37045         * lisp/completion.el (completion-lisp-mode-hook):
37046         Use completion-separator-chars rather than local key binding.
37048         * src/*.c: Set deactivate_mark buffer-locally
37049         (Bug#20260)
37050         * src/insdel.c (prepare_to_modify_buffer_1):
37051         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
37052         buffer-locally.
37054 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
37056         python.el: Keep symmetry on sexp navigation with parens
37057         (Bug#19954)
37058         * lisp/progmodes/python.el
37059         (python-nav--forward-sexp): Add argument skip-parens-p.
37060         (python-nav-forward-sexp, python-nav-backward-sexp)
37061         (python-nav-forward-sexp-safe)
37062         (python-nav-backward-sexp-safe): Use it.
37063         * test/automated/python-tests.el
37064         (python-nav-forward-sexp-1): Fix test.
37066 2015-04-12  João Távora  <joaotavora@gmail.com>
37068         Don't use `setq-local' in Gnus code
37069         This might break upstream builds with older Emacsen
37070         * lisp/gnus/message.el (message-mode): Use `set' and
37071         `make-local-variable' instead of `setq-local'.
37073 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
37075         Update Makefile.in's .PHONY dependencies
37076         * Makefile.in (change-history-commit, master-branch-is-current)
37077         (no-ChangeLog): Now phony.
37079         Remove configure's --with-mmdf option
37080         * configure.ac (MAIL_USE_MMDF): Remove.
37081         * etc/NEWS: Document this.
37082         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
37083         (Bug#20308)
37085         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
37086         That way, 'make install' won't think it's a man page.
37087         Reported by Ashish SHUKLA in:
37088         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
37090         Improve 'make change-history' prereq tests
37091         * Makefile.in (gen_origin): Fix to match what's in the master branch.
37092         (no-ChangeLog, master-branch-is-current): New rules.
37093         (change-history): Depend on them, to avoid similar future problems.
37094         Escape the local-variables string to pacify Emacs when editing
37095         Makefile.in.
37097 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
37099         * test/automated/package-test.el (with-package-test):
37100         Kill Packages buffer.
37102         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
37103         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
37104         "Upgrade" last, and use capitalized instead of all-caps.
37106         * lisp/emacs-lisp/package.el: Completely silence async operations.
37107         (package--make-autoloads-and-stuff): Silence autoloads.
37108         (package--save-selected-packages): New function, silences
37109         `customize-save-variable'.
37110         (package--user-selected-p, package-install-from-buffer)
37111         (package-delete, package-install): Use it.
37112         (package-install-from-archive)
37113         (package-menu--perform-transaction): Silence.
37114         (package-menu-execute): Feedback when operation starts.
37116         Use delay-mode-hooks when visiting the init-file
37117         * lisp/emacs-lisp/package.el (package--ensure-init-file):
37118         delay-mode-hooks.
37119         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
37121         * lisp/files.el: Only message when saving if save-silently is nil.
37122         (save-silently): New variable.
37123         (files--message): New function.
37124         (find-file-noselect, save-buffer, basic-save-buffer)
37125         (basic-save-buffer-2, save-some-buffers, not-modified)
37126         (append-to-file): Use them.
37128 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
37130         Support debug declarations in pcase macros
37131         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
37132         (pcase-UPAT): Use it.  Remove "`".
37133         (pcase--edebug-match-macro): New function.
37134         (pcase-defmacro): Support debug declarations.
37135         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
37136         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
37137         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
37138         Add debug declaration.
37140         pcase.el: Edebug support for `app' and vector patterns
37141         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
37142         (pcase-UPAT): Use it.  Support `app' patterns.
37143         (pcase-QPAT): Support vector patterns.
37145         edebug.el: Disambiguate vector specifications
37146         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
37147         `(vector ...)' as a vector specification, not as a sublist.
37149         (gnus-summary-refer-thread): Don't clobber unread articles
37150         This fixes a bug where `A T' causes "random" articles to become marked
37151         as read.
37152         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
37153         gnus-newsgroup-unreads remains sorted.
37155         mouse-sel.el: Fix mouse-sel-get-selection-function
37156         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
37157         Use gui--last-selected-text-primary instead of no longer existing
37158         gui-last-selected-text.
37160         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
37162         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
37164 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
37166         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
37168         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
37169         right buffer.
37171         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
37172         (byte-compile--interactive): New var.
37173         (byte-compile--message): New function.
37174         (byte-compile-log-1, byte-force-recompile)
37175         (byte-recompile-directory, byte-recompile-file)
37176         (byte-compile-file, compile-defun)
37177         (byte-compile-file-form-defmumble, byte-compile)
37178         (byte-compile-file-form-defalias, display-call-tree): Use it.
37180         * lisp/files.el: Don't message when nothing happened.
37181         (save-some-buffers, basic-save-buffer): Before messaging to say
37182         "nothing was saved" check if (called-interactively-p 'any).
37184 2015-04-12  João Távora  <joaotavora@gmail.com>
37186         Summary: Improve sexp-based movement in message-mode
37187         Works by giving citations and smileys a different syntax.  This helps
37188         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
37189         sexp-based movement.
37190         * lisp/gnus/message.el (message--syntax-propertize): New function.
37191         (message-mode): Set syntax-related vars.
37192         (message-smileys): New variable.
37193         * test/automated/message-mode-tests.el: New file
37195 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
37197         Use bool for boolean in window.c
37198         * src/window.c: Omit unnecessary static function decls.
37199         (adjust_window_count, select_window, Fselect_window)
37200         (window_body_width, Fwindow_body_height, Fwindow_body_width)
37201         (set_window_hscroll, check_window_containing, Fwindow_at)
37202         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
37203         (unshow_buffer, replace_window, recombine_windows)
37204         (add_window_to_list, candidate_window_p, next_window)
37205         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
37206         (Fget_buffer_window, Fdelete_other_windows_internal)
37207         (replace_buffer_in_windows_safely, set_window_buffer)
37208         (Fset_window_buffer, Fforce_window_update)
37209         (temp_output_buffer_show, make_parent_window)
37210         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
37211         (resize_frame_windows, Fsplit_window_internal)
37212         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
37213         (Fresize_mini_window_internal, mark_window_cursors_off)
37214         (window_scroll, window_scroll_pixel_based)
37215         (window_scroll_line_based, scroll_command, Fscroll_other_window)
37216         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
37217         (Fmove_to_window_line, Fset_window_configuration)
37218         (delete_all_child_windows, apply_window_adjustment)
37219         (set_window_fringes, set_window_scroll_bars)
37220         (Fset_window_vscroll, foreach_window, foreach_window_1)
37221         (compare_window_configurations, Fcompare_window_configurations):
37222         Prefer 'bool', 'true', and 'false' for booleans.
37223         * src/window.h (WINDOW_MODE_LINE_LINES)
37224         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
37226 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
37228         Speed up byte-compilation and autoload generation by avoiding mode-hooks
37229         This prevents emacs-lisp-mode-hook from being run everytime an
37230         autoload file is generated, which can account for a fraction of
37231         package installation time depending on the hooks the user has
37232         configured.
37233         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
37234         * lisp/emacs-lisp/autoload.el (autoload-find-file)
37235         (autoload-find-generated-file): Use delay-mode-hooks.
37237         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
37238         (package-menu-refresh): Respect async and do new package checking.
37239         (list-packages): Use `package-menu-refresh' instead of repeating code.
37241         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
37242         (package--quick-help-keys): New variable.
37243         (package--prettify-quick-help-key): New function.
37244         (package-menu-quick-help): Use it.
37246         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
37247         (package--build-compatibility-table): Require finder.
37249         * test/automated/package-test.el: Fix new test.
37251         * lisp/emacs-lisp/package.el: Silence async operations.
37252         (package--silence): New variable.
37253         (package--message): New function.
37254         (package-import-keyring, package-refresh-contents)
37255         (package-compute-transaction, package-install, package-delete)
37256         (package-menu--perform-transaction, package-menu-execute): Use it.
37258         * test/automated/package-test.el: Test async functionality.
37259         (package-test-update-archives-async): New test.
37261 2015-04-11  Daiki Ueno  <ueno@gnu.org>
37263         Utilize `make-process' in epg.el
37264         * lisp/epg.el (epg-error-output): Abolish.
37265         (epg-context): New slot `error-buffer'.
37266         (epg--start): Use `make-process' and `make-pipe-process'.
37267         (epg--process-filter): Remove code separating stderr from stdout.
37268         (epg-wait-for-completion): Simplify `error-output' handling.
37269         (epg-reset): Dispose error buffer.
37271 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
37273         * .gitignore: Ignore doc temps and outputs.
37275         Port commit-msg to MSYS Bash+Gawk
37276         See Eli Zaretskii in:
37277         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
37278         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
37279         (cent_sign, print_at_sign, at_sign): Revert previous change.
37280         (print_at_sign): Prepend "BEGIN".
37281         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
37283         Port commit-msg to broken MS-Windows shell
37284         * build-aux/git-hooks/commit-msg (cent_sign):
37285         Just use UTF-8 here rather than ASCII + printf, as the latter fails
37286         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
37287         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
37289 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
37291         Support GnuTLS v3.4 and later on MS-Windows
37292         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
37293         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
37294         GnuTLS DLL to load according to value of libgnutls-version.
37295         (Bug#20294)
37297 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
37299         Minor quoting etc. fixes to misc manuals
37300         Fix some minor quoting and spacing issues.  Distinguish more
37301         clearly among grave accent and apostrophe (which are ASCII) and
37302         single quote (which is not).  Prefer the standard terms
37303         "apostrophe" and "grave accent" to alternative names that can be
37304         confusing.  Use apostrophes to single-quote ASCII text.
37305         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
37306         rather than approximating it in ASCII with grave accent.
37308 2015-04-11  Daiki Ueno  <ueno@gnu.org>
37310         Respect more keyword args in `make-process'
37311         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
37312         keywords as documented.
37314 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
37316         Extract ChangeLog entries when committing a directory
37317         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
37318         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
37319         Add a FIXME comment.
37320         (log-edit-changelog-entries): Extract from
37321         `log-edit-changelog-entries', handle FILE being a directory
37322         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
37324 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
37326         Fix problems found by --enable-gcc-warnings
37327         * src/process.c (create_process, Fmake_pipe_process)
37328         (Fmake_network_process): Omit unused locals.
37330         Fix commit-msg to handle scissors lines
37331         * build-aux/git-hooks/commit-msg:
37332         Ignore every line after a scissors line, such as a line generated
37333         by 'git commit -v'.  Problem reported by Johan Bockgård in:
37334         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
37336         port commit-msg to Gawk 3.0.4 (1999)
37337         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
37338         (print_at_sign, at_sign): New vars.  Use them to avoid problems
37339         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
37340         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
37342         Have commit-msg report commit failure
37343         * build-aux/git-hooks/commit-msg: If the commit is aborted,
37344         say so.  Simplify by doing this at the end.  Problem reported
37345         by Eli Zaretskii in:
37346         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
37348 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
37350         Clean up LDAP Configuration section of EUDC manual
37351         * doc/misc/eudc.texi: Combine indices.
37352         (LDAP Configuration): Use command markup.  Add index entries.
37353         Change formatting.  Wrap long lines.  Add noindent markup.
37355 2015-04-10  Daiki Ueno  <ueno@gnu.org>
37357         Add facility to collect stderr of async subprocess
37358         * src/w32.h (register_aux_fd): New function declaration.
37359         * src/w32.c (register_aux_fd): New function.
37360         * src/process.h (struct Lisp_Process): New member stderrproc.
37361         * src/process.c (PIPECONN_P): New macro.
37362         (PIPECONN1_P): New macro.
37363         (Fdelete_process, Fprocess_status, Fset_process_buffer)
37364         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
37365         (Fcontinue_process): Handle pipe process specially.
37366         (create_process): Respect p->stderrproc.
37367         (Fmake_pipe_process): New function.
37368         (Fmake_process): Add new keyword argument :stderr.
37369         (wait_reading_process_output): Specially handle a pipe process when
37370         it gets an EOF.
37371         (syms_of_process): Register Qpipe and Smake_pipe_process.
37372         * doc/lispref/processes.texi (Asynchronous Processes): Document
37373         `make-pipe-process' and `:stderr' keyword of `make-process'.
37374         * lisp/subr.el (start-process): Suggest to use `make-process' handle
37375         standard error separately.
37376         * test/automated/process-tests.el (process-test-stderr-buffer)
37377         (process-test-stderr-filter): New tests.
37378         * etc/NEWS: Mention new process type `pipe' and its usage with the
37379         `:stderr' keyword of `make-process'.
37381 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
37383         Minor quoting etc. fixes to lispref manual
37384         * doc/lispref/tips.texi (Documentation Tips):
37385         Distinguish more clearly among grave accent, apostrophe,
37386         and single quote.
37387         * doc/lispref/README, doc/lispref/buffers.texi:
37388         * doc/lispref/commands.texi, doc/lispref/control.texi:
37389         * doc/lispref/customize.texi, doc/lispref/display.texi:
37390         * doc/lispref/elisp.texi, doc/lispref/files.texi:
37391         * doc/lispref/frames.texi, doc/lispref/hash.texi:
37392         * doc/lispref/help.texi, doc/lispref/internals.texi:
37393         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
37394         * doc/lispref/markers.texi, doc/lispref/modes.texi:
37395         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
37396         * doc/lispref/os.texi, doc/lispref/positions.texi:
37397         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
37398         * doc/lispref/text.texi, doc/lispref/tips.texi:
37399         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
37400         Use American-style double quoting in ordinary text,
37401         and quote 'like this' when single-quoting in ASCII text.
37402         Also, fix some minor spacing issues.
37404 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
37406         Handle symlinked test directory in tramp-tests.el
37407         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
37408         (tramp--test-check-files): Use `file-truename' for directories.
37410 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
37412         Fix 'recenter' when visual-line-mode is turned on
37413         * src/window.c (Frecenter): Use the same code for GUI and TTY
37414         frames alike; use vmotion only for "initial" frames.  This is
37415         because vmotion doesn't support visual-line-mode.  Rewrite the
37416         'iarg >= 0' case to use move_it_* functions instead of using
37417         vmotion, for the same reason.  Fix the clipping of the argument
37418         value to support scroll-margin in all cases and avoid unwarranted
37419         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
37420         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
37421         which see.
37423 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
37425         * lisp/abbrev.el (define-abbrev-table): Refine last change.
37427         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
37428         use of c[ad]+r", so as to keep the "cl-" prefix on all
37429         cl-lib definitions.
37431         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
37432         Use inhibit-point-motion-hooks.
37434         * lisp/cedet/semantic: Remove some dead code.
37435         * lisp/cedet/semantic/util-modes.el
37436         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
37437         any more.
37438         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
37439         not supported any more.
37440         (semantic-safe): Use `declare'.
37441         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
37442         (semantic-tag-intangible-p): Remove unused functions.
37443         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
37444         Remove unused function.
37446         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
37447         (gnus-article-hide-text, gnus-article-unhide-text)
37448         (gnus-article-unhide-text-type): Remove special handling of
37449         `intangible' since that property is not used any more.
37450         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
37452 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
37454         Use the VC root in `log-edit-listfun'
37455         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
37456         `log-edit-listfun'.
37458 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
37460         Fix description of Unix time, mention new function.
37461         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
37462         Unix time.
37463         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
37464         (Basic Operations on Units): Mention `calc-convert-exact-units'.
37466 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
37468         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
37470 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
37472         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
37473         Don't add newline after the last entry.
37475 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
37477         css-mode.el: Add "not" pseudo-class
37478         (Bug#20267)
37479         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
37480         list of CSS pseudo-classes.
37482 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
37484         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
37486 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
37488         Stop messing with the EMACS env var
37489         * doc/emacs/misc.texi (Interactive Shell): Remove description of
37490         EMACS env var.
37492 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
37494         Adapt 'make change-history' to coding cookie
37495         * Makefile.in (change-history): Adjust to change of format of
37496         ChangeLog file, which now has a coding cookie before an indented
37497         copyright notice.
37499 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
37501         Adapt 'make change-history' to coding cookie
37502         * Makefile.in (change-history): Adjust to change of format of
37503         ChangeLog file, which now has a coding cookie before an indented
37504         copyright notice.
37506         gitlog-to-changelog coding cookie and mv -i
37507         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
37508         for copyright notice prototype, so that we get a proper "coding:"
37509         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
37510         existing ChangeLog.  Problems reported by Eli Zaretskii in:
37511         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
37513         Merge from gnulib
37514         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
37515         2015-04-09 gitlog-to-changelog: port to MS-Windows
37517 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
37519         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
37520         (Bug#20212)
37522 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
37524         Stop messing with the EMACS env var
37525         (Bug#20202)
37526         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
37527         * lisp/comint.el (comint-exec-1):
37528         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
37529         * lisp/progmodes/compile.el (compilation-start): Same and bring
37530         INSIDE_EMACS's format in line with other users.
37532         css-mode.el (css-smie-rules): Fix indentation after complex selectors
37533         (Bug#20282)
37534         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
37535         inner structure of selectors.
37537 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
37539         python.el: Indent docstring lines to base-indent
37540         (Bug#19595)
37541         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
37542         an initial patch.
37543         * lisp/progmodes/python.el
37544         (python-indent-context): Add :inside-docstring context.
37545         (python-indent--calculate-indentation): Handle :inside-docstring.
37546         (python-indent-region): Re-indent docstrings.
37547         * test/automated/python-tests.el (python-indent-region-5)
37548         (python-indent-inside-string-2): Fix tests.
37550         python.el: Increase native completion robustness
37551         (Bug#19755)
37552         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
37553         this and providing useful ideas.
37554         * lisp/progmodes/python.el
37555         (python-shell-completion-native-output-timeout): Increase value.
37556         (python-shell-completion-native-try-output-timeout): New var.
37557         (python-shell-completion-native-try): Use it.
37558         (python-shell-completion-native-setup): New readline setup avoids
37559         polluting current context, ensures output when no-completions are
37560         available and includes output end marker.
37561         (python-shell-completion-native-get-completions): Trigger with one
37562         tab only.  Call accept-process-output until output end is found or
37563         python-shell-completion-native-output-timeout is exceeded.
37565 2015-04-08  Samer Masterson  <samer@samertm.com>
37567         * lisp/eshell: Make backslash a no-op in front of normal chars
37568         (Bug#8531)
37569         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
37570         (eshell-parse-backslash): Return escaped character after backslash
37571         if it is special.  Otherwise, if the backslash is not in a quoted
37572         string, ignore the backslash and return the character after; if
37573         the backslash is in a quoted string, return the backslash and the
37574         character after.
37575         * test/automated/eshell.el (eshell-test/escape-nonspecial)
37576         (eshell-test/escape-nonspecial-unicode)
37577         (eshell-test/escape-nonspecial-quoted)
37578         (eshell-test/escape-special-quoted): Add tests for new
37579         `eshell-parse-backslash' behavior.
37581 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
37583         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
37584         after the file name.
37585         (Bug#20276)
37587 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
37589         Minor quoting etc. fixes to Emacs manual
37590         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
37591         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
37592         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
37593         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
37594         * doc/emacs/indent.texi, doc/emacs/macos.texi:
37595         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
37596         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
37597         * doc/emacs/search.texi, doc/emacs/trouble.texi:
37598         * doc/emacs/vc1-xtra.texi:
37599         Use American-style double quoting in ordinary text,
37600         and quote 'like this' when single-quoting in ASCII text.
37601         Also, fix some minor spacing issues.
37603         Minor quoting etc. fixes to elisp intro
37604         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
37605         American-style double quoting in ordinary text.  In ASCII text,
37606         consistently quote 'like this' instead of `like this', unless
37607         Emacs requires the latter.
37609 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
37611         * CONTRIBUTE: Mention log-edit-insert-changelog.
37613         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
37615 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
37617         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
37619 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
37621         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
37622         Fix inheritance of initargs.  (Bug#20270)
37624 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
37626         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
37627         while dowloading information.
37629         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
37630         (package--ensure-init-file): Check file contents before visiting.
37631         (package-initialize): Call it.
37632         (package-install-from-buffer, package-install): Don't call it.
37634 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
37636         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
37637         (Bug#17517)
37639 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
37641         * lisp/net/tramp-cache.el (tramp-flush-file-property):
37642         Fix nasty scoping bug.
37644 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
37646         Add notice to visual commands section
37647         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
37648         such as git call less with its -F option which omits pagination if
37649         the contents is less than one page long.  This interferes with
37650         eshell's visual (sub-)commands.
37652 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
37654         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
37655         environment variable expansion in file names.  (Bug#19839)
37657 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
37659         Prefer double-quote to accent-grave in man pages
37661 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
37663         (Bug#20257)
37664         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
37666 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
37668         Update etc/PROBLEMS.
37669         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
37670         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
37671         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
37672         respectively); other minor updates and tweaks.  (Bug#20011)
37674 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
37676         Add doc strings for some Isearch state vars
37677         * lisp/misearch.el (multi-isearch-buffer-list)
37678         (multi-isearch-file-list): Add doc strings.
37679         (Bug#20232)
37681 2015-04-07  Alan Mackenzie  <acm@muc.de>
37683         Always mark "<" and ">" in #include directives with text properties.
37684         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
37685         "anchored matcher" with an invocation of
37686         c-make-font-lock-search-function to allow fontification when there's
37687         no trailing space on an "#include <..>" line.
37689 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
37691         Generate a ChangeLog file from commit logs
37692         * .gitignore: Add 'ChangeLog'.
37693         * build-aux/gitlog-to-changelog: New file, from Gnulib.
37694         * build-aux/gitlog-to-emacslog: New file.
37695         * CONTRIBUTE: Document the revised workflow.
37696         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
37697         instead of just special cases.
37698         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
37699         (ChangeLog, unchanged-history-files, change-history)
37700         (change-history-commit): New rules.
37701         * admin/admin.el (make-manuals-dist--1):
37702         Don't worry about doc/ChangeLog.
37703         * admin/authors.el: Add a FIXME.
37704         * admin/make-tarball.txt:
37705         * lisp/calendar/icalendar.el:
37706         * lisp/gnus/deuglify.el:
37707         * lisp/obsolete/gulp.el:
37708         * lwlib/README:
37709         Adjust to renamed ChangeLog history files.
37710         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
37711         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
37712         Remove obsolete discussion of merging ChangeLog files.
37713         New section "Maintaining ChangeLog history".
37714         * build-aux/git-hooks/pre-commit:
37715         Reject attempts to commit files named 'ChangeLog'.
37716         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
37717         * make-dist: Make and distribute top-level ChangeLog if there's a
37718         .git directory.  Distribute the new ChangeLog history files
37719         instead of scattered ChangeLog files.  Distribute the new files
37720         gitlog-to-changelog and gitlog-to-emacslog.
37721         (Bug#19113)
37723         Rename ChangeLogs for gitlog-to-changelog
37724         This patch was implemented via the following shell commands:
37725         find * -name ChangeLog |
37726         sed 's,.*,git mv & &.1,
37727         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
37728         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
37729         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
37730         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
37731         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
37732         sh
37733         git commit -am"[this commit message]"
37735 This file records repository revisions from
37736 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
37737 2016-09-26c9cef49b0fceb3c5e904837ea5675fe4306ac (inclusive).
37738 2016-08-22bb813cfea53e4162409f2adc0a793ab301894 (inclusive).
37739 2016-08-05faead6df626b3737c10f98e9c4964232aa6b9 (inclusive).
37740 2016-06-19d77d8dbd5b051bb681bacaee4a6faffbbdde9 (inclusive).
37741 2016-03-04a00c6cfb5f3cafbad92bd4584a0f50343a568 (inclusive).
37742 2016-02-15decb15e0496cec0c48d980c88a5a9d7cc00da (inclusive).
37743 2016-02-04b6d89ff9288a49099f041752908b5eb9613e (inclusive).
37744 commit ba1422e12f80ae1eb2aa9d0ce80c14e3ee4b3950 (inclusive).
37745 See ChangeLog.1 for earlier changes.
37747 ;; Local Variables:
37748 ;; coding: utf-8
37749 ;; End:
37751   Copyright (C) 2015-2016 Free Software Foundation, Inc.
37753   This file is part of GNU Emacs.
37755   GNU Emacs is free software: you can redistribute it and/or modify
37756   it under the terms of the GNU General Public License as published by
37757   the Free Software Foundation, either version 3 of the License, or
37758   (at your option) any later version.
37760   GNU Emacs is distributed in the hope that it will be useful,
37761   but WITHOUT ANY WARRANTY; without even the implied warranty of
37762   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
37763   GNU General Public License for more details.
37765   You should have received a copy of the GNU General Public License
37766   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.